精华内容
下载资源
问答
  • linux创建文件

    万次阅读 多人点赞 2019-07-14 21:11:06
    linux创建文件 1、在 Linux 上使用重定向符(>)创建一个文件 标准重定向符允许我们创建一个 0KB 的空文件。它通常用于重定向一个命令的输出到一个新文件中。在没有命令的情况下使用重定向符号时,它会创建一个...

    linux创建文件

    1、在 Linux 上使用重定向符(>)创建一个文件

    标准重定向符允许我们创建一个 0KB 的空文件。它通常用于重定向一个命令的输出到一个新文件中。在没有命令的情况下使用重定向符号时,它会创建一个文件。
    但是它不允许你在创建文件时向其中输入任何文本。然而它对于不是很勤劳的管理员是非常简单有用的。只需要输入重定向符后面跟着你想要的文件名。
    在这里插入图片描述

    2、 在 Linux 上使用 touch 命令创建一个文件

    touch 命令常用于将每个文件的访问和修改时间更新为当前时间。
    如果指定的文件名不存在,将会创建一个新的文件。touch 不允许我们在创建文件的同时向其中输入一些文本。它默认创建一个 0KB 的空文件。
    在这里插入图片描述

    3、 在 Linux 上使用 echo 命令创建一个文件

    echo 内置于大多数的操作系统中。它常用于脚本、批处理文件,以及作为插入文本的单个命令的一部分。
    它允许你在创建一个文件时就向其中输入一些文本。当然也允许你在之后向其中输入一些文本
    在这里插入图片描述
    你可以使用两个重定向符 (>>) 添加其他内容到同一个文件。
    在这里插入图片描述
    此时会追加内容在其中;

    4、 在 Linux 上使用 printf 命令创建一个新的文件

    用法同echo;

    5、 在 Linux 中使用 cat 创建一个文件

    cat 表示串联concatenate。在 Linux 经常用于读取一个文件中的数据。
    cat 是在类 Unix 系统中最常使用的命令之一。它提供了三个与文本文件相关的功能:显示一个文件的内容、组合多个文件的内容到一个输出以及创建一个新的文件。(LCTT 译注:如果 cat 命令后如果不带任何文件的话,下面的命令在回车后也不会立刻结束,回车后的操作可以按 Ctrl-C 或 Ctrl-D 来结束。)
    在这里插入图片描述
    文件里面的内容是输入的内容;
    如果你想向同一个文件中添加其他内容,使用两个连接的重定向符(>>)。
    在这里插入图片描述

    6、 在 Linux 上使用 vi/vim 命令创建一个文件

    vim 是一个向上兼容 vi 的文本编辑器。它通常用来编辑所有种类的纯文本。在编辑程序时特别有用。
    vim 中有很多功能可以用于编辑单个文件。
    在这里插入图片描述
    输入完之后会进入文件进入编辑模式;

    7、在 Linux 上使用 nano 命令创建一个文件

    nano 是一个编辑器,它是一个自由版本的 pico 克隆。nano 是一个小且用户友好的编辑器。它复制了 pico 的外观及优点,并且是一个自由软件,它添加了 pico 缺乏的一系列特性,像是打开多个文件、逐行滚动、撤销/重做、语法高亮、行号等等。
    在这里插入图片描述

    8、 在 Linux 上使用 head 命令创建一个文件

    head 命令通常用于输出一个文件开头的一部分。它默认会打印一个文件的开头 10 行到标准输出。如果有多个文件,则每个文件前都会有一个标题,用来表示文件名。

    9、 在 Linux 上使用 tail 创建一个文件

    在这里插入图片描述

    10、 在 Linux 上使用 truncate 命令创建一个文件

    在这里插入图片描述

    》》》博主长期更新学习心得,推荐点赞关注!!!
    》》》若有错误之处,请在评论区留言,谢谢!!!

    展开全文
  • 入门学习Linux常用必会60个命令实例详解doc/txt

    千次下载 热门讨论 2011-06-09 00:08:45
    Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不开使用系统提供的命令。要想真正理解Linux系统,就必须从Linux...
  • Linux总结

    千次阅读 多人点赞 2020-01-14 20:36:45
    二 、初探Linux 2.1 Linux简介 2.2 Linux诞生简介 2.3 Linux的分类 三 、Linux文件系统概览 3.1 Linux文件系统简介 3.2 文件类型与目录结构 四 、Linux基本命令 4.1 目录切换命令 4.2 目录的操作命令(增删改...

    请多多支持博主,点赞关注一起进步哦~

    文章目录

    一、认识操作系统

    1.1、操作系统简介

    1. 操作系统(Operation System,简称OS)是管理计算机硬件与软件资源的程序,是计算机系统的内核与基石;
    2. 操作系统本质上是运行在计算机上的软件程序 ;
    3. 为用户提供一个与系统交互的操作界面 ;
    4. 操作系统分内核与外壳(我们可以把外壳理解成围绕着内核的应用程序,而内核就是能操作硬件的程序)。
      在这里插入图片描述

    1.2、操作系统简单分类

    1. Windows: 目前最流行的个人桌面操作系统 ,不做多的介绍,大家都清楚。
    2. Unix: 最早的多用户、多任务操作系统 .按照操作系统的分类,属于分时操作系统。Unix 大多被用在服务器、工作站,现在也有用在个人计算机上。它在创建互联网、计算机网络或客户端/服务器模型方面发挥着非常重要的作用。
      在这里插入图片描述
    3. Linux: Linux是一套免费使用和自由传播的类Unix操作系统.Linux存在着许多不同的Linux版本,但它们都使用了 Linux内核 。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。

    在这里插入图片描述
    在这里插入图片描述

    1.3、企业级与个人操作系统区别

    在这里插入图片描述
    常用的企业级操作系统有:

    • Windows Server
    • Unix
    • Linux

    二、Linux前世今生

    2.1、Linux简介

    • 类Unix系统: Linux是一种自由、开放源码的类似Unix的操作系统
    • Linux内核: 严格来说,Linux这个词本身只表示Linux内核
    • Linux之父: 一个编程领域的传奇式人物。他是Linux内核的最早作者,随后发起了这个开源项目,担任Linux内核的首要架构师与项目协调者,是当今世界最著名的电脑程序员、黑客之一。他还发起了Git这个开源项目,并为主要的开发者。
      在这里插入图片描述

    2.2、Linux诞生

    • 1991年,芬兰的业余计算机爱好者Linus Torvalds林纳斯·托瓦茨)编写了一款类似Minix的系统(基于微内核架构的类Unix操作系统)被ftp管理员命名为Linux 加入到自由软件基金的GNU计划中;
    • Linux以一只可爱的企鹅作为标志,象征着敢作敢为、热爱生活。
    • Linux特点:免费、开源
    • 版本:1991年林纳斯·托瓦茨编写发布了Linux0.0.1版本,具有重大影响。1994年3月,正式发布了Linux1.0版本

    2.3、Linux分类

    Linux根据原生程度,分为两种:

    1. 内核版本: Linux不是一个操作系统,严格来讲,Linux只是一个操作系统中的内核。内核是什么?内核建立了计算机软件与硬件之间通讯的平台,内核提供系统服务,比如文件管理、虚拟内存、设备I/O等;
    2. 发行版本: 一些组织或公司在内核版基础上进行二次开发而重新发行的版本。Linux发行版本有很多种(ubuntu和CentOS用的都很多,初学建议选择CentOS),如下图所示:
      在这里插入图片描述

    三、Linux文件系统概览

    3.1、Linux文件系统简介

    在Linux操作系统中,所有被操作系统管理的资源,例如网络接口卡、磁盘驱动器、打印机、输入输出设备、普通文件或是目录都被看作是一个文件。

    也就是说在LINUX系统中有一个重要的概念:一切都是文件。其实这是UNIX哲学的一个体现,而Linux是重写UNIX而来,所以这个概念也就传承了下来。在UNIX系统中,把一切资源都看作是文件,包括硬件设备。UNIX系统把每个硬件都看成是一个文件,通常称为设备文件,这样用户就可以用读写文件的方式实现对硬件的访问。

    3.2、文件类型与目录结构

    3.2.1、文件类型

    Linux支持5种文件类型 :
    在这里插入图片描述

    3.2.2、目录结构

    Linux的目录结构如下:

    Linux文件系统的结构层次鲜明,就像一棵倒立的树,最顶层是其根目录:
    在这里插入图片描述
    常见目录说明:

    • /bin: 存放二进制可执行文件(ls、cat、mkdir等),常用命令一般都在这里;
    • /etc: 存放系统管理和配置文件(重要);
    • /home: 存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示;
    • /usr : 用于存放系统应用程序(使用yum命令下载的软件包会在这里);
    • /opt: 额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把tomcat等都安装到这里;
    • /proc: 虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息;
    • /root: 超级用户(系统管理员)的主目录(特权阶级o);
    • /sbin: 存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序。如ifconfig等;
    • /dev: 用于存放设备文件;
    • /mnt: 系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统;
    • /boot: 存放用于系统引导时使用的各种文件;
    • /lib : 存放着和系统运行相关的库文件 ;
    • /tmp: 用于存放各种临时文件,是公用的临时文件存储点;
    • /var: 用于存放运行时需要改变数据的文件,也是某些大文件的溢出区,比方说各种服务的日志文件(系统启动日志等。)等;
    • /lost+found: 这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里。

    四、Linux基本命令

    4、目录命令

    4.1、目录切换命令

    • cd usr 切换到该目录下usr目录
    • cd ..(或cd../) 切换到上一层目录
    • cd / 切换到系统根目录
    • cd ~ 切换到用户主目录 (root用户就是/root,普通用户就是/home)
    • cd - 切换到上一个操作所在目录
    • cd /tmp/test 使用绝对路径切换
    • cd test 使用相对路径

    4.2、目录操作命令

    1. mkdir 目录名称 增加目录
      示例:

      • mkdir test
      • mkdir-p test/a/b/c:创建多级目录(使用相对路径)
      • mkdir-p/opt/test/aa/cc:创建多级目录(使用绝对路径)
    2. ls或者ll(ll是ls -l的别名,ll命令可以看到该目录下的所有目录和文件的详细信息):查看目录信息

      参数:

      • -l 以列表形式查看
      • -h 以一种人性化的方式查看,也是文件的大小以合适的单位显示
      • -a 查看所有文件,包括隐藏文件
      • -i 显示出文件的i节点号
    3. find 目录 参数 寻找目录(查)

    4. pwd 查看所在目录位置

      示例:

      • 列出当前目录及子目录下所有文件和文件夹: find .
      • /home目录下查找以.txt结尾的文件名:find /home -name "*.txt"
      • 同上,但忽略大小写: find /home -iname "*.txt"
      • 当前目录及子目录下查找所有以.txt和.pdf结尾的文件:find . \( -name "*.txt" -o -name "*.pdf" \)find . -name "*.txt" -o -name "*.pdf"
    5. mv 目录名称 新目录名称 修改目录的名称(改)

      注意:mv的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包等进行 重命名的操作。mv命令用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。后面会介绍到mv命令的另一个用法。

    6. mv 目录名称 目录的新位置 移动目录的位置—剪切(改)

      注意:mv语法不仅可以对目录进行剪切操作,对文件和压缩包等都可执行剪切操作。另外mv与cp的结果不同,mv好像文件“搬家”,文件个数并未增加。而cp对文件进行复制,文件个数增加了。

    7. cp -r 目录名称 目录拷贝的目标位置 拷贝目录(改),-r代表递归拷贝

      注意:cp命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不 用写-r递归
      参数:

      • -a =-pdr
      • -p 同时复制文件属性,比如修改日期
      • -d 复制时保留文件链接
      • -r: 复制文件夹时,递归复制子文件夹
      • -l 不复制,而是创建指向源文件的链接文件,链接文件名由目标文件给出。
      • note:可以在拷贝的同时重命名
    8. rm [-rf] 目录: 删除目录(删)

      注意:rm不仅可以删除目录,也可以删除其他文件或压缩包,为了增强大家的记忆, 无论删除任何目录或文件,都直接使用rm -rf 目录/文件/压缩包
      参数:

      • -r:递归删除
      • -f:强制删除 即没有提醒

    5、文件命令

    5.1、文件操作命令

    1. touch 文件名称: 文件的创建(增)
      创建文件 可以一次创建多个文件,以空格隔开

    2. cat/more/less/tail 文件名称: 文件的查看(查)
      -n:带行号

      • cat 查看显示文件内容
      • more 分页查看文件内容: 可以显示百分比,回车可以向下一行, 空格可以向下一页,q可以退出查看
        操作参数:
        进入浏览模式后:
        • f或者空格:下一页
        • enter:一行一行往下翻
        • q:退出
      • less 可以使用键盘上的PgUp和PgDn向上 和向下翻页,q结束查看
        操作参数:
          - 空格翻页
          - 回车换行
          - pageup:上一页
          - pagedown:下一页
          - 上箭头:向上翻
          - 下箭头:向下翻
          - /搜索词 n向下找
      • head -n 查看文件前n行。缺省-n显示前10行
      • tail-10 查看文件的后10行,Ctrl+C结束

      注意:命令 tail -f 文件 可以动态显示文件末尾内容,对某个文件进行动态监控,例如tomcat的日志文件, 会随着程序的运行,日志会变化,可以使用tail -f catalina-2016-11-11.log 监控文件的变化

    3. in 链接命令
        -s创建软连接
        硬链接和cp -p的区别是硬链接会同步更新
        源文件如果丢失,硬链接依然存在。
        硬链接和源文件的i节点相同。
        硬链接不能夸分区,软连接可以跨分区。
        硬链接不可以链接目录,链接可以
        软连接文件具有的权限是ugo都是rwx

    4. rm -rf 文件 删除文件(删)

      同目录删除:熟记 rm -rf 文件 即可

    5.2、vim文件操作命令

    vim编辑器是Linux中的强大组件,是vi编辑器的加强版,vim编辑器的命令和快捷方式有很多,但此处不一一阐述,大家也无需研究的很透彻,使用vim编辑修改文件的方式基本会使用就可以了。

    在实际开发中,使用vim编辑器主要作用就是修改配置文件,下面是一般步骤:

    vim 文件------>进入文件----->命令模式------>按i进入编辑模式----->编辑文件 ------->按Esc进入底行模式----->输入:wq/q! (输入wq代表写入内容并退出,即保存;输入q!代表强制退出不保存。)

    1. i,a: 命令模式–>编辑模式
    2. ecs: 编辑模式–>命令模式(底行模式)
    3. 命令模式(底行模式下):
      • q!: 强制退出
      • q: 退出
      • wq: 保存并退出 (wq以及wq!,则不管有没有修改,都会强制更新修改时间,有时没修改的东西会让人误以为改了)
      • wq!: 保存并强制退出
      • x: 保存并退出(个人推荐使用,:x在由修改操作时会保存并退出,更新修改时间)
    4. set nu: 显示行号 set nonu: 取消行号
    5. 翻页查看:
      • 上一页:page up
      • 下一页: page down
    6. 跳转到指定的行:
      • gg: 跳转到第一行
      • G: 跳转到最后一行
      • 100G: 跳转到指定行,如100G就是第100行,nG:第n行
    7. /要查找的内容: 查找
    8. yy: 复制当前行
    9. p: 粘贴到当前所在行的下一行
      • 粘贴一次就输入一个p
      • 多次就多个p,如10p就粘贴10次
    10. 查找并替换:
      方式一:开始行号,结束行号s/查找的单词/替换的单词
      如:1,3s/f/XXX: 替换1到3行的f为XXX
      1,$s/f/YYY: 替换1到所有行的f为YYY
      方式二:gc方式
      %s/aaa/bbb/gc 意思就是检索所有行,挨个询问替换aaa为bbb,手动判断y是替换,n是不替换,a是替换所有,q是退出。
      • 参数:
        y - yes 替换
        n - no 不替换
        a - all 替换所有
        q - quit 退出替换
        l - last 最后一个,并把光标移动到行首
        ^E 向下滚屏
        ^Y 向上滚屏
    11. u: 撤销操作
    12. **dd:**删除当前行

    6、用户、组管理命令

    6.1、用户、组操作(权限)

    1. 查看功能命令
      • 查看个人信息
        • whoami: 查看当前登录的用户
        • who: 查看当前的账户 显示的格式为: 登录用户名 登录终端(tty:本地登录 pts:远程终端) 登录时间 ip地址
        • w: 查看更详细的用户登录信息。
        • groups: 查看当前用户所在的组
        • id: 查看当前登录的用户的uid和groupid
      • 查看系统信息
        • vim /etc/passwd: 查看所有的用户列表
        • vim/etc/group: 查看所有的组列表
    2. 用户的切换
      • su [用户名]
        比如:su zhangsan
      • su:默认切换到root
    3. 创建用户
      • useradd 用户名:新建一个用户,一个同名的组,/home/同名的文件夹(uid,gid自增)
      • useradd -u 用户id 用户名
      • useradd -b /路径 用户名
      • useradd -g 用户组 用户名: 新建用户,放到指定的用户组中
    4. 修改密码
      passwd 用户名
    5. 删除用户
      • userdel lisi: 仅删除用户
      • userdel -r Wangwu: 删除用户以及目录(-r将关联的文件一并删除)
      • userdel -rf wangwu: 删除登录用户以及目录:(-f强制)
    6. 新建用户组
      • groupadd 组名
      • groupadd -g 组id 组名
    7. 修改用户名、组
      • usermod -l 新的登录名 old 登录名: 修改登录名
      • usermod -g 新组名 登录名: 修改用户所在的组

    6.2、用户、组小结

    6.2.1、Linux 用户管理

    Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。

    用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。

    Linux用户管理相关命令:

    • useradd 选项 用户名:添加用户账号
    • userdel 选项 用户名:删除用户帐号
    • usermod 选项 用户名:修改帐号
    • passwd 用户名:更改或创建用户的密码
    • passwd -S 用户名 :显示用户账号密码信息
    • passwd -d 用户名: 清除用户密码

    useradd命令用于Linux中创建的新的系统用户。useradd可用来建立用户帐号。帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号。使用useradd指令所建立的帐号,实际上是保存在/etc/passwd文本文件中。

    passwd命令用于设置用户的认证信息,包括用户密码、密码过期时间等。系统管理者则能用它管理系统用户的密码。只有管理者可以指定用户名称,一般用户只能变更自己的密码。

    6.2.2、Linux系统用户组的管理

    每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux 系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。

    用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新。

    Linux系统用户组的管理相关命令:

    • groupadd 选项 用户组 :增加一个新的用户组
    • groupdel 用户组:要删除一个已有的用户组
    • groupmod 选项 用户组 : 修改用户组的属性

    7、权限命令

    7.1、理解

    操作系统中每个文件都拥有特定的权限、所属用户和所属组。权限是操作系统用来限制资源访问的机制,在Linux中权限一般分为读(readable)、写(writable)和执行(excutable),分为三组。分别对应文件的属主(owner),属组(group)和其他用户(other),通过这样的机制来限制哪些用户、哪些组可以对特定的文件进行什么样的操作。通过 ls -lll 命令我们可以查看某个目录下的文件或目录的权限

    示例:在随意某个目录下 ls -l 或 *ll

    在这里插入图片描述
    第一列的内容的信息解释如下:
    在这里插入图片描述

    下面将详细讲解文件的类型、Linux中权限以及文件有所有者、所在组、其它组具体是什么?

    文件的类型:

    • d: 代表目录
    • -: 代表文件
    • l: 代表软链接(可以认为是window中的快捷方式)

    Linux中权限分为以下几种:

    • r:代表权限是可读,r也可以用数字4表示
    • w:代表权限是可写,w也可以用数字2表示
    • x:代表权限是可执行,x也可以用数字1表示

    文件和目录权限的区别:

    对文件和目录而言,读写执行表示不同的意义。

    对于文件:

    权限名称可执行操作
    r可以使用cat查看文件的内容
    w可以修改文件的内容
    x可以将其运行为二进制文件

    对于目录:

    权限名称可执行操作
    r可以查看目录下列表
    w可以创建和删除目录下文件
    x可以使用cd进入目录

    需要注意的是超级用户可以无视普通用户的权限,即使文件目录权限是000,依旧可以访问。
    在linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其它组的概念。

    • 所有者(user(owner) u)

      一般为文件的创建者,谁创建了该文件,就天然的成为该文件的所有者,用ls ‐ahl命令可以看到文件的所有者 也可以使用chown 用户名 文件名来修改文件的所有者 。

    • 文件所在组(group g)

      当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组 用ls ‐ahl命令可以看到文件的所有组 也可以使用chgrp 组名 文件名来修改文件所在的组。

    • 其它组(other o)

      除开文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组

    我们再来看看如何修改文件/目录的权限。

    7.2、chmod

    chmod: 修改文件/目录的权限的命令

    示例:修改/test下的aaa.txt的权限为属主有全部权限,属主所在的组有读写权限,
    其他用户只有读的权限

    chmod u=rwx,g=rw,o=r aaa.txt

    上述示例还可以使用数字表示:

    chmod 764 aaa.txt

    综合实例:

    • chmod u+x a.txt
    • chmod g+w,o-r a.txt //同时做多个权限的修改
    • chmod g=rwx a.txt
    • chmod 640 a.txt
    • chmod -R 777 testdir //把目录和下面所有文件的权限
    • chmod u-x,g-r,o+x test 只修改当前文件夹的权限,子文件不变
    • chmod -R u-x,g-r,o+x test 递归修改文件夹的权限

    7.3、chown

    chwon: 更改文件所有者,只有root可以更改.
    修改拥有者:拥有组–》chown (change owner)
    语法:
    chown -R 拥有者:拥有组 文件夹
    chown root a.txt //把a.txt更改为root所有

    【问题】如果普通用户,出现了对文件没有访问权限,如何解决?

    • 修改文件的权限:chmod
    • 修改文件的拥有者:chown

    7.4、chgrp

    chgrp: 更改所属组

    chgrp admin biubiubiu //把biubiubiu的所属组更改为admin

    7.5、umask -S

    umask -S查看创建文件的缺省权限,即默认权限

    umask 023: 修改文件的缺省权限为777-023=754。即-rwxr-xr–

    7.6、如何将普通用户hadoopenv升级为超级管理员?

    /etc/sudoers

    1. 先修改该文件的权限
      chmod u+w /etc/sudoers
    2. 然后添加一行(不需要密码了)
      hadoopenv ALL=(ALL)NOPASSWD:ALL
    3. 然后hadoopenv就穿上了黄马褂,可以用sudo 来执行root的权限
      sudo mkdir xx
    4. 修改完后,再修改回来(记得再把门关上)
      chmod u-w /etc/sudoers

    补充一个比较常用的东西:

    假如我们装了一个zookeeper,我们每次开机到要求其自动启动该怎么办?

    1. 新建一个脚本zookeeper
    2. 为新建的脚本zookeeper添加可执行权限,命令是:chmod +x zookeeper
    3. 把zookeeper这个脚本添加到开机启动项里面,命令是:chkconfig --add zookeeper
    4. 如果想看看是否添加成功,命令是:chkconfig --list

    8、压缩解压命令

    8.1、打包并压缩文件

    Linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。

    而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz。
    命令:tar -zcvf 打包压缩后的文件名 要打包压缩的文件
    其中:

    z:调用gzip压缩命令进行压缩
    c:打包文件
    v:显示运行过程
    f:指定文件名

    比如:假如test目录下有三个文件分别是:aaa.txt bbb.txt ccc.txt,如果我们要打包test目录并指定压缩后的压缩包名称为test.tar.gz可以使用命令:tar -zcvf test.tar.gz aaa.txt bbb.txt ccc.txt或:tar -zcvf test.tar.gz /test/

    8.2、解压压缩包

    命令:tar [-xvf] 压缩文件
    其中:x:代表解压

    示例:

    1 将/test下的test.tar.gz解压到当前目录下可以使用命令:tar -xvf test.tar.gz

    2 将/test下的test.tar.gz解压到根目录/usr下:tar -xvf test.tar.gz -C /usr(- C代表指定解压的位置)

    8.3、按格式分类

    • .gz格式

      • 压缩:gzip 文件名 只能压缩文件不能压缩目录,压缩完源文件也不见了
      • 解压缩:gunzip/gzip -d 压缩包名称
    • tar:

      • tar -zcvf 压缩后文件名 打包的目录 :生成.tar.gz文件 注:这个命令先用tar归档,然后把归档的包压缩成.gz
      • tar -zxvf 要解压的文件名 :解压缩.tar.bz2的文件
      • tar -jcvf 压缩后的文件名 打包的目录:生成.tar.bz2 注:这个命令先用tar归档,然后把归档的包压缩成.bz2
      • tar -jxvf 要解压的文件名 :解压.tar.bz2的文件
    • zip:

      • zip -r 压缩生成的文件名 要压缩的目录
      • zip 压缩生成的文件名 要压缩的文件
    • unzip:

      • unzip 要解压缩的文件
    • bzip2:

      • bzip2 -k 要压缩的文件名 -k选项:保留源文件
      • bunzip2 -k 要解压的文件名 -k选项:保留压缩包

    9、文件搜索命令

    9.1、find

    find:搜索制定范围内的文件
    find [搜索范围] [匹配条件]
    [匹配条件] 参数:

    • -name 按文件名搜索

    • -iname 根据文件名查找,不区分大小写

    • -size +n大于 -n小于 n等于 这个n是数据块,在Linux中一个数据块是512字节大小

    • -user 根据所有者查找

    • -group 根据所属组查找

    • 根据文件属性查找:

      • -amin 访问时间 access
      • -cmin 根据文件属性被修改的时间 change
      • -mmin 根据文件内容被修改的时间 modify
          例: find /etc -cmin -5 :查找/etc目录下五分钟内被修改过属性的文件和目录
    • -a 两个条件同时满足
          find /etc -size +10 -a -size -50

    • -o 两个条件满足一个即可

    • -type
          f 文件 d 目录 l软连接文件

    • -inum 根据i节点查找

    • 对找到的结果进行操作
          -exec 或者 -ok 命令 {} ;
          例如:
            find /etc -name init* -exec ls -l {} ; 对找到的文件名按列表查看

    例子:

    • find /etc -name init :搜索目录/etc下面所有的init文件,精确匹配,包括子目录中的init文件
    • find / -size +204800 搜索大于100M的文件

    9.2、locate

    locate:
    1、查找速度非常快,因为它维护了一个文件库。
    2、缺点就是新建立的文件没有很快收录到文件库

    • locate 文件名
    • updatedb 更新locate的文件资料库 文件资料库不收录/tmp下的文件
    • -i 不区分大小写

    示例:

    # 更新数据,新建文件后,需要使用此命令
    updatedb
    # 在系统上查找所有包含vimrc的文件
    locate vimrc
    # 使用正则表达式
    locate --regexp vim*
    

    9.3、which

    which :查找命令的目录以及别名
    which 命令

    [root@biubiubiu /]# which vi
    alias vi='vim'
    	/usr/bin/vim
    

    9.4、whereis

    whereis :搜索命令所在目录及帮助文档路径
    whereis 命令

    [root@biubiubiu /]# whereis vi
    vi: /usr/bin/vi /usr/share/man/man1/vi.1.gz /usr/share/man/man1p/vi.1p.gz
    
    

    9.5、grep

    grep:在文件中搜寻字符串匹配的行并输出,多个文件以空格隔开
    参数:

    • -i不区分大小写
    • -v排除指定字符串
    • -E 以正则表达式的方式搜索
    • -F 以普通文本的方式搜索
    • -n 显示搜索到的内容在文件中的行号。

    示例:

    #多文件查询
    grep leo logs.log logs_back.log
    
    #查找即包含leo又包含li的行
    grep leo logs.log | grep li
    
    #查找匹配leo或者匹配li的行
    grep leo | li logs.log
    
    #显示匹配行前2行
    grep leo logs.log -A2
    
    #显示匹配行后2行
    grep leo logs.log -B2
    
    #显示匹配行前后2行
    grep leo logs.log -C2
    
    #不区分大小写
    grep -i leo logs.log
    
    #使用正则表达式
    grep -e '[a-z]\{5\}' logs.log
    
    #查找不包含leo的行
    grep -v leo logs.log
    
    #统计包含leo的行数
    grep -c leo logs.log
    
    #遍历当前目录及所有子目录查找匹配leo的行
    grep -r leo .
    
    #在当前目录及所有子目录查找所有java文件中查找leo
    grep -r leo . --include "*.java"
    
    #查找并输出到指定文件
    grep leo logs.log > result.log
    
    #查找以leo开头的行
    grep ^leo logs.log
    
    #查找以leo结尾的行
    grep leo$ logs.log
    
    #查找空行
    grep ^$ logs.log
    

    10、帮助命令

    10.1、man

    man:查看命令或者配置文件的帮助信息
      man 命令/配置文件
      在手册里面,可以输入/要查找的str
      man ls
      在这里插入图片描述
      man services
      man fstab //直接输入配置文件的名字,而不需要使用绝对路径 重点查看name选项和配置文件的格式。
      如果一个命令即使命令又是配置文件,那么可以使用一个序号进行区分,比如:
      man 1 passwd 查看命令passwd的帮助
      man 5 passwd 查看配置文件passwd的帮助

    10.2、whatis

    whatis 命令:得到命令的简要信息

    [root@biubiubiu /]# whatis ls
    ls (1)               - list directory contents
    ls (1p)              - list directory contents
    [root@biubiubiu /]# whatis id
    id (1)               - print real and effective user and group IDs
    id (1p)              - return user identity
    [root@biubiubiu /]# 
    

    10.3、apropos

    apropos 配置文件名:查看配置文件的简短信息

    [root@biubiubiu etc]# apropos yum.conf
    yum-config-manager (1) - manage yum configuration options and yum repositories
    yum.conf (5)         - Configuration file for yum(8).
    [root@biubiubiu etc]#
    

    10.4、help

    help 命令:

    • 查看shell内置命令的帮助信息。
    • shell内置命令是没有命令路径。
    • 不能使用man查看帮助。

    help cd
    在这里插入图片描述
    ls --help
    在这里插入图片描述

    11、网络命令

    11.1、write

    write:给在线用户发送信息,用户不在线不行。以Ctrl+D保存

    write 用户名

    11.2、wall

    wall:给所有用户名发送信息

    wall 要发送的信息

    11.3、ping

    ping:测试网络连通性
    ping ip地址
    参数:
      -c 要ping的次数

    11.4、ifconfig

    • ifconfig: 直接回车查看当前网卡信息

    • ifconfig 网卡名 ip地址: 临时修改网络ip
      示例:
          ifconfig th0:0 192.168.1.100 netmask 255.255.255.0
            给th0这个网卡新添加一个ip
          ifconfig eth0:0 down
          ifconfig eth0:0 up

    • ifdown th0: 禁用th0这块网卡

    • ifup th0: 开启th0这块网卡

    11.5、mail

    mail:邮件命令
    mail 要发送的用户名
    mail 直接回车 查看命令
    参数:
        help :查看支持的命令格式
        输入序列号:查看邮件详细内容
        h: 回到邮件列表
        d 序列号:删除序列号对应的邮件

    11.6、nslookup

    nslookup:查看网站ip地址

    nslookup www.baidu.com 查看百度的ip地址

    11.7、netstat

    netstat:显示网络相关信息
    参数:

    • -t :tcp协议
    • -u :udp协议
    • -l:监听
    • -r:路由
    • -n:显示ip地址和端口号

    netstat -tlun:查看本机监听的端口
    netstat -an:查看所有的监听信息
    netstat -rn :查看路由表,即网管

    11.8、wget

    wget 文件地址 下载文件
    参数:

    • -h:显示帮助说明;
    • -b:后台下载;
    • -c:继续上次终端的下载任务;
    • -r:递归下载文件

    实例:

    1. wget http://search.maven.org/remotecontent?filepath=log4j/log4j/1.2.17/log4j-1.2.17.tar.gz 下载单个文件
    2. wget -i fileList 下载多个文件(fileList里需要有多个url)
    3. wget -c http://search.maven.org/remotecontent?filepath=log4j/log4j/1.2.17/log4j-1.2.17.tar.gz 断点下载
    4. wget -b http://search.maven.org/remotecontent?filepath=log4j/log4j/1.2.17/log4j-1.2.17.tar.gz 后台下载
    5. wget --limit-rate=400k http://search.maven.org/remotecontent?filepath=log4j/log4j/1.2.17/log4j-1.2.17.tar.gz 限速400k下载

    11.9、service network restart

    service network restart:重启网络服务。

    11.9.1、telnet

    telnet 域名或ip
      远程管理与端口探测
      如: telnet 192.168.2.3:80
        探测192.168.2.3是否开启了80端口

    11.9.2、mount

    mount:挂载命令
      mount -t iso9660 /dev/sr0 /mnt/cdrom :把sr0挂载到cdrom

    12、关机重启命令

    在这里插入图片描述

    12.1、shutdown

    shutdown:这个关机命令更安全一些,不推荐使用其他关机命令。
      -h:关机
    shutdown -h now 立刻关机
    shutdown -h 20:30 八点半关机
      -r:重启
    shutdown -r now 相当于reboot,立刻重启
      -c:取消上次的关机命令
    shutdown -c: 取消

    12.2、reboot

    reboot 等于 shutdown -r now 立刻重启

    12.3、logout

    logout:退出当前用户,返回到登录界面

    13、常用快捷键

    1. ctrl+c:强制终止当前命令
    2. ctrl+l:清屏
    3. ctrl+a:光标移动到命令行首
    4. ctrl+e:光标移动到命令行尾
    5. ctrl+u:从光标所在位置删除到行首
    6. ctrl+z:把命令放入后台
    7. ctrl+r:在历史命令中搜索

    14、yum命令

    1. yum list :获取服务器上所有可用的软件的列表
    2. yum search 关键字:搜索服务器上所有和关键字相关的包
    3. yum -y install 包名:安装软件包
      参数:
      • install:安装
      • -y:自动回答yes
    4. yum -y update 包名:升级软件包
      参数:
      • update:升级
      • -y:自动回答yes
      • 如果没有包名,就会升级所有的软件包,包括Linux内核。慎用
    5. yum -y remove 包名:卸载软件包
      参数:
      • remove:卸载
      • -y:自动回答yes
      • 注:yum会自动卸载依赖包,而很有可能这个依赖包也被别的包依赖,所以很危险,慎用。
    6. yum grouplist:列出所有可用的软件组列表
    7. yum groupinstall 软件组名:安装指定软件组,组名可以由grouplist查询出来
      注:如果查询出来的软件组名中间有空格,要使用""引起来。
    8. yum groupremove 软件组名:卸载指定软件组

    五、其它杂项

    15、ps和kill

    ps 静态查看系统进程,系统默认安装
    ps -aux | grep 文件名 或 ps -ef | grep 文件名 根据文件名过滤进程(最常配合kill使用)
    ps -u 用户名 根据用户过滤进程

    lsof -Pti :端口号 通过端口号获得进程pid

    kill -9 pid: 杀死指定pid的进程,强行杀死。

    16、top

    top: 动态查看系统的状态

    17、history

    history 查看历史命令

    执行历史命令:
      !! 执行上一条命令
      !n 执行历史命令的中第n条
      !-n 执行导数第n条
      !string 执行以string开头的历史命令行
      !?string? 执行包含string的历史命令行

    18、alias和unlias

    18.1、alias:给命令起别名

    alias 命令='别名'
    示例: alias vi='vim'
    alias -p :查看已存在的别名

    但是仅仅是这样改的话,当系统重启之后就会失效。
    想要永久生效,需要修改根目录下.bashrc配置文件

    [root@biubiubiu ~]# vi .bashrc 
    

    在这里插入图片描述
    配置完成后需要使配置文件生效

    [root@biubiubiu ~]# source .bashrc 
    

    18.2、unlias :取消别名

    unlias name
    示例:unlias vi

    如果是之前修改了配置文件,需要再次去修改删掉。

    19、cal

    cal:查看某一年的日历,可以是1-9999中的任意一年
     示例:
      cal 2020 2020年日历

    20、网络配置

    20.1、三个网络配置文件

     /etc/sysconfig/network-scripts/ifcfg-网卡
     /etc/sysconfig/network
     /etc/resolv.conf # dns
    

    20.2、配置ip

    在这里插入图片描述

    20.3、远程执行命令

    ssh root@192.168.8.15

    21、CentOS环境变量配置

    CentOS的环境变量配置文件体系是一个层级体系,这与其他多用户应用系统配置文件是类似的,有全局的,有用户的,有shell的,另外不同层级有时类似继承关系。下面以PATH变量为例。

    1. 修改/etc/profile文件,将影响全局,所有用户
      /etc/profile在系统启动后第一个用户登录时运行。
      在/etc/profile文件中添加
      java export PATH=/someapplication/bin:$PATH
      要使修改生效,可以重启系统,或者执行
      java source /etc/profile echo $PATH

    2. 修改/etc/environment,将影响全局
      /etc/environment文件与/etc/profile文件的区别是:/etc/environment设置的是系统的环境,而/etc/profile设置的是所有用户的环境,即/etc/environment与用户无关,在系统启动时运行。
      在/etc/environment文件中添加
      java PATH=/someapplication/bin:$PATH
      CentOS和大多Linux系统使用$访问环境变量,环境变量PATH中使用冒号:分隔。而Windows中使用两个%访问环境变量,PATH使用分号;分隔,例如:

      java set PATH=E:\someapplication\bin;%PATH%

    3. 修改~/.bash_profile(首选),将影响当前用户。在~/.bash_profile文件中添加

      java export PATH=/someapplication/bin:$PATH

    4. 修改/etc/bashrc(Ubuntu和Debian中是/etc/bash.bashrc),影响所有用户使用的bash shell。
      /etc/bashrc顾名思义是为初始化bash shell而生,在bash shell打开时运行。
      这里bash shell有不同的类别:登录shell和非登陆shell,登录shell需要输入用户密码,例如ssh登录或者su - 命令提权都会启动login shell模式。非登陆shell不会执行任何profiel文件;交互shell和非交互shell,提供命令提示符等待用户输入命令的是交互shell模式,直接运行脚本文件是非交互shell模式,一般情况下非交互shell模式不执行任何bashrc文件。根据以上情况,选择是否修改/etc/bashrc。

    5. 修改~/.bashrc,影响当前用户使用的bash shell。

    6. 在终端中执行以下命令,只影响当前终端。
      java export PATH=/someapplication/bin:$PATH

    22、防火墙firewall

    1、开放端口

    firewall-cmd --zone=public --add-port=5672/tcp --permanent # 开放5672端口

    firewall-cmd --zone=public --remove-port=5672/tcp --permanent #关闭5672端口

    命令含义:
    
    –zone #作用域
    
    –add-port=80/tcp #添加端口,格式为:端口/通讯协议
    
    –permanent #永久生效,没有此参数重启后失效
    

    firewall-cmd --reload # 配置立即生效

    2、查看防火墙所有开放的端口

    firewall-cmd --list-ports

    firewall-cmd --zone=public --list-ports

    3.、关闭防火墙

    如果要开放的端口太多,嫌麻烦,可以关闭防火墙,安全性自行评估

    systemctl stop firewalld.service

    #重启firewall 
    firewall-cmd --reload 
    #停止firewall 
    systemctl stop firewalld.service 
    #禁止firewall开机启动 
    systemctl disable firewalld.service 
    
    	查看防火墙状态:firewall-cmd --state
    	关闭防火墙: systemctl stop firewalld.service
    	禁止防火墙开机启动:systemctl disable firewalld.service
    

    4、查看防火墙状态

    firewall-cmd --state

    5、查看监听的端口

    netstat -lnpt

    img

    PS:centos7默认没有 netstat 命令,需要安装 net-tools 工具,yum install -y net-tools

    6、检查端口被哪个进程占用

    netstat -lnpt |grep 5672

    img

    7、查看进程的详细信息

    ps 6832

    img

    8、中止进程

    kill -9 6832

    23、IO Stream

    标准流:
    stdin:标准输入,编号为0,用于程序从键盘等设备接收数据。输入流被EOF(文件结尾)终止
    stdout:标准输出,编号1,用于程序向终端等设备写入数据
    stderr:标准错误,编号2,用于向终端等设备显示错误消息
    重定向I/O Stream到文件:
    
    选项说明模式
    <重定向stdin
    >重定向stdout覆盖
    >>重定向stdout追加
    2>重定向stderr覆盖
    2>>重定向stderr追加
    案例:
    [root@os1 test_data]# cat startxx.sh 1>>output.log 2>>output_err.log
    

    24、date

    date --help
    date +%Y-%m-%d #2017-12-23
    date +%H:%M:%S #13:29:03
    date +%I:%M:%S #12小时时间显示
    date +%c #locale的完整日期和时间
    date -u #UTC日期和时间
    date -R #RFC-2822格式
    date -Iseconds #ISO-8601格式
    date -s “2019-07-09 16:12:00“ #设置时间
    

    25、yum安装

    一、下载yum安装包并解压

    wget http://yum.baseurl.org/download/3.4/yum-3.4.3.tar.gz
    tar xvf yum-3.4.3.tar.gz
    

    二、进入yum-3.4.3文件夹中进行安装,执行安装指令

    cd yum-3.4.3
    sudo apt install yum
    

    三、更新到新版本

    yum check-update
    yum -y update
    yum clean all
    

    请多多支持博主,点赞关注一起进步哦~

    展开全文
  • Linux目录结构

    万次阅读 2019-01-11 09:47:18
    引用:尚硅谷韩老师的《尚硅谷-Linux-经典升级》日常总结 安装位置总结: 1、软件安装目录 系统级目录:/usr:系统级的目录,可以理解为C:/Windows/,/usr/lib理解为C:/Windows/System32。 用户级程序目录:/usr...

    引用:尚硅谷韩老师的《尚硅谷-Linux-经典升级 日常总结


    安装位置总结:

    1、软件安装目录

    1. 系统级目录:/usr:系统级的目录,可以理解为C:/Windows/,/usr/lib理解为C:/Windows/System32。
    2. 用户级程序目录:/usr/local:用户级的程序目录,可以理解为C:/Progrem Files/。用户自己编译的软件默认会安装到这个目录下
    3. 用户级程序目录:/opt:用户级的程序目录,可以理解为D:/Software,opt有可选的意思,这里可以用于放置第三方大型软件(或游戏),当你不需要时,直接rm -rf掉即可。在硬盘容量不够时,也可将/opt单独挂载到其他磁盘上使用。

    2、源码放置

    1. 系统级源码:/usr/src:系统级的源码目录。
    2. 用户级源码:/usr/local/src:用户级的源码目录。


    /opt

    Here’s where optional stuff is put. Trying out the latest Firefox beta? Install it to /opt where you can delete it without affecting other settings. Programs in here usually live inside a single folder whick contains all of their data, libraries, etc.
    这里主要存放那些可选的程序。你想尝试最新的firefox测试版吗?那就装到/opt目录下吧,这样,当你尝试完,想删掉firefox的时候,你就可 以直接删除它,而不影响系统其他任何设置。安装到/opt目录下的程序,它所有的数据、库文件等等都是放在同个目录下面。
    举个例子:刚才装的测试版firefox,就可以装到/opt/firefox_beta目录下,/opt/firefox_beta目录下面就包含了运 行firefox所需要的所有文件、库、数据等等。要删除firefox的时候,你只需删除/opt/firefox_beta目录即可,非常简单。

    /usr/local

    This is where most manually installed(ie. outside of your package manager) software goes. It has the same structure as /usr. It is a good idea to leave /usr to your package manager and put any custom scripts and things into /usr/local, since nothing important normally lives in /usr/local.

    这里主要存放那些手动安装的软件,即不是通过“新立得”或apt-get安装的软件。它和/usr目录具有相类似的目录结构。让软件包管理器来管理/usr目录,而把自定义的脚本(scripts)放到/usr/local目录下面,我想这应该是个不错的主意。
     


    基本介绍:

    linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录。深刻理解linux树状文件目录是非常重要的。记住一句经典的话:在Linux世界里,一切皆文件

     1、 /bin (/usr/bin 、 /usr/local/bin)
             • 是Binary的缩写, 这个目录存放着最经常使用的命令

    2、/home 
             • 存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。

    yuan是我创建的普通用户。

     3、/root
             • 该目录为系统管理员,也称作超级权限者的用户主目录。

    4、/etc
             • 所有的系统管理所需要的配置文件和子目录 my.conf 。

    5、/usr 
             • 这是一个非常重要的目录,用户的很多应用程序文件都放在这个目录下,类似与windows下的program files目录。

    6、/usr/local
             • 这是另一个给主机额外安装软件所安装的目录。一般是通过编译源码方式安装的程序。

    7、/boot
             • 存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。

    8、/media
             • linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。

    9、/mnt
             • 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt/上,然后进入该目录就可以查看里的内容了。

    比如虚拟机设置的共享文件夹。

     

    10、/var
             • 这个目录中存放着在不断扩充着的东西,习惯将经常被修改的目录放在这个目录下。
    包括各种日志文件。

    11、/sbin (/usr/sbin 、 /usr/local/sbin)
             • s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。

    12、/lib
             • 系统开机所需要最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。

    13、/lost+found
             • 这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件

    14、/proc
             • 这个目录是一个虚拟的目录,它是系统内存的映射,访问这个目录来获取系统信息。

    15、/srv
             • service缩写,该目录存放一些服务启动之后需要提取的数据。

    16、/sys
             • 这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统。

    17、/tmp
             • 这个目录是用来存放一些临时文件的。

    18、/dev 
             • 类似于windows的设备管理器,把所有的硬件用文件的形式存储。

    19、/opt 
             • 这是给主机额外安装软件所摆放的目录。如安装ORACLE数据库就可放到该目录下。(存放安装包)
    默认为空。

    20、/selinux [security-enhanced linux] 360
             • SELinux是一种安全子系统,它能控制程序只能访问特定文件。

     

    https://blog.csdn.net/wangrongrongwq/article/details/79624797

     

     


     /etc/hosts

    1、关于/etc/host,主机名和IP配置文件

    Hosts - The static table lookup for host name(主机名查询静态表

    hosts文件是Linux系统中一个负责IP地址与域名快速解析的文件,以ASCII格式保存在“/etc”目录下,文件名为“hosts”(不同的linux版本,这个配置文件也可能不同。比如Debian的对应文件是/etc/hostname)。hosts文件包含了IP地址和主机名之间的映射,还包括主机名的别名。在没有域名服务器的情况下,系统上的所有网络程序都通过查询该文件来解析对应于某个主机名的IP地址,否则就需要使用DNS服务程序来解决。通常可以将常用的域名和IP地址映射加入到hosts文件中,实现快速方便的访问。

    这个文件显示了域名和网址之间的映射情况。在这个文件里出现的网址,访问的时候不需要使用DNS协议,而是直接读取域名。

    在文件末尾添加一行

    192.168.1.23    www.baidu.com

    这样在浏览器里输入百度网址,会发现百度首页永远出现不了了! 

    2、配置文件

    这个文件可以配置主机ip及对应的主机名,对于服务器类型的linux系统其作用还是不可忽略的。在局域网或是INTERNET上,每台主机都有一个IP地址,它区分开每台主机,并可以根据ip进行通讯。但IP地址不方便记忆,所以又有了域名。在一个局域网中,每台机器都有一个主机名,用于区分主机,便于相互访问。

    Linux主机名的相关配置文件就是 /etc/hosts; 这个文件告诉本主机哪些域名对应那些ip,那些主机名对应哪些ip:比如文件中有这样的定义
    192.168.1.100 linumu100 test100

    假设192.168.1.100是一台网站服务器,在网页中输入http://linumu100或http://test100就会打开192.168.1.100的网页。通常情况下这个文件首先记录了本机的ip和主机名:
    127.0.0.1 localhost.localdomain localhost

    3、配置文件格式说明

    一般/etc/hosts 的内容一般有如下类似内容:
             127.0.0.1 localhost.localdomain localhost 
             192.168.1.100 linmu100.com linmu100 
             192.168.1.120 ftpserver ftp120 

    一般情况下hosts文件的每行为一个主机,每行由三部份组成,每个部份由空格隔开。其中#号开头的行做说明,不被系统解释。
    hosts文件的格式如下:
      IP地址 主机名/域名 
           第一部份:网络IP地址;
           第二部份:主机名或域名;
           第三部份:主机名别名;

    当然每行也可以是两部份,即主机IP地址和主机名;比如 192.168.1.100 linmu100。

    这里可以稍微解释一下主机名(hostname)和域名(Domain)的区别:

    主机名通常在局域网内使用,通过hosts文件,主机名就被解析到对应ip;域名通常在internet上使用,但如果本机不想使用internet上的域名解析,这时就可以更改hosts文件,加入自己的域名解析。


    4、hosts文件可以帮助解决哪些问题

    4.1 远程登录linux主机过慢问题
        有时客户端想远程登录一台linux主机,但每次登录输入密码后都会等很长一段时间才会进入,这是因为linux主机在返回信息时需要解析ip,如果在linux主机的hosts文件事先加入客户端的ip地址,这时再从客户端远程登录linux就会变很快。
      注:这里所说的远程登录不仅仅是ssh,还可能是mysql远程登录,或是文件共享的查询等。
    4.2 双机互连
        当两台主机只是双机互连时,这时两台主机都需要设置自己的ip,同时在对方的hosts文件里加入自己的ip和主机名。
    5、主机名修改工具 hostname
      其实主机名的修改也有专用工具,就是hostname
      hostname - show or set the system’s host name
    显示主机名 hostname
      linmu100
      此主机的主机名是linmu100,不加参数是用来显示当前主机的主机名;
    临时设置主机名hostname test100
      注:通过hostname 工具来设置主机名只是临时的,下次重启系统时,此主机名将不会存在;
    显示主机IP: hostname -i
      192.168.1.100

    展开全文
  • 初探Linux系统

    千次阅读 2019-06-09 22:29:52
    初探Linux系统前言学习的框架认识Linux系统文件树流图文件树结构释义:电子书链接 前言 linux是一个很强大开源的系统,笔者作为一个嵌入式Linux学习者,同样被Linux的开源文化深深的吸引着。对于大部分职业可能...

    前言

    linux是一个很强大开源的系统,笔者作为一个嵌入式Linux学习者,同样被Linux的开源文化深深的吸引着。对于大部分职业可能Windows已经够好了,但是在程序员眼里,Linux开源的文化才是归属地。对对对,就是喜欢内核里面有着各种各样骚操作的代码,喜欢着基于Linux内核的各种各样的开源软件。而被Linux深深吸引的我,为了系统的学习Linux系统,所以我和大家一起学习这个牛逼的不行的系统,有什么意见或建议可以私信我,也可以留言评论,大家一起学习,一起进步。

    学习的框架

    基本shell指令
    管理Linux系统
    Makefile
    简单的shell脚本
    1. 基本shell指令和脚本语言可以参考帖子博客,也可以跟着我一起学习,没有推荐的书籍,但笔者这里有一本《Linux命令行与shell脚本编程大全(第3版)》和《鸟哥的Linux私房菜-基础篇(第四版)》网络评价不错,我会上传到我的博客,有需要的可以去下载。
    2. Makefile的学习可以参考《GNU Make》和《跟我一起写Makefile》评价不错,我也上传到我的博客中。

    认识Linux系统

           与Windows不同,Windows是可视化窗口界面,安装软件,存放文件,卸载什么的,都是鼠标点点,硬盘分区更是把各种文件归了类,非常清晰明了。在Linux中,有一句话,基本上每个人都会说,那就是一切皆文件,对于熟悉Linux的人来说,这些都是很清晰的,但是对于不熟悉的人来说,却会说“很麻烦,不好用”之类的话。其实,Linux和Windows一样清晰,存放文件是以文件树的形式体现的,而操作是以终端窗口体现的。

    文件树流图

    /
    bin
    sbin
    etc
    rc passwd fdprm...
    dev
    makedev.local console hd sd fd...
    proc
    var
    lib local lock log...
    tmp
    usr
    bin man info include...
    home
    boot
    lib
    module...
    opt
    mnt
    media
    srv

    文件树结构释义:

    根文件目录主文件目录子文件目录解释
    /bin系统文件和目录包含了引导启动所需的命令或普通用户可能用的命令(可能在引导启动后).这些命令都是二进制文件的可执行程序,多是系统中重要的系统文件
    sbin系统文件和目录系统管理命令,存放管理员需要的程序和一些重要的二进制文件,一般不给普通用户使用
    etc系统文件和目录系统管理和配置文件,包含了用户信息,系统初始化文件
    /etc/rc或/etc/rc.d或/etc/rc?.d启动、或改变运行级时运行的脚本或脚本的目录
    /etc/passwd用户数据库,其中的域给出了用户名、真实姓名、用户起始目录、加密口令和用户的其他信息
    /etc/fdprm软盘参数表,用以说明不同的软盘格式.可用setfdprm 进行设置
    /etc/fstab指定启动时需要自动安装的文件系统列表.也包括用swapon -a启用的swap区的信息
    /etc/group组信息,包括组的各种数据
    /etc/inittab初始化的配置文件
    /etc/issue包括用户在登录提示符前的输出信息,通常包括系统的一段说明或欢迎信息,具体内容由系统管理员确定
    /etc/magic“file”的配置文件,包含不同文件的格式说明,“file”基于它猜测文件类型
    /etc/motdmotd是message of the day的缩写,用户成功登录后自动输出,内容由系统管理员确定,常用于通告信息,如计划关机时间的警告等
    /etc/mtab当前安装的文件系统列表,由脚本初始化,并由 mount 命令自动更新,当需要一个当前安装的文件系统的列表时使用(例如 df 命令)
    /etc/shadow在安装了影子(shadow)口令软件的系统上的影子口令文件,影子口令文件将/etc/passwd文件中的加密口令移动到/etc/shadow中,而后者只对超级用户(root)可读,这使破译口令更难,以此增加系统的安全性
    /etc/login.defslogin命令的配置文件
    /etc/termcap终端性能数据库,说明不同的终端用什么“转义序列”控制,写程序时不直接输出转义序列(这样只能工作于特定品牌得终端),而是从/etc/termcap中查找要做的工作的正确序列。这样,多数的程序可以在多数的终端上运行
    /etc/profile、/etc/csh.login、/etc/csh.cshrc登录或启动时bourne或C shell执行的文件,这允许系统管理员为所有用户建立全局缺省环境
    /etc/printcap针对打印机,类似termcap,但语法不同
    /etc/securetty确认安全终端,即哪个终端允许超级用户(root)登录,一般只列出虚拟控制台,这样就不可能(至少很困难)通过调制解调器或网络闯入系统并获得超级用户权限
    /etc/shells列出可以使用的shell.chsh命令允许用户在本文件指定范围内改变登录的shell 提供一台机器ftp服务的服务进程ftpd检查用户shell是否列在/etc/shells文件中,如果不是,将不允许该用户登录
    dev设备文件设备特殊文件,即设备驱动程序生成的设备节点,用户可以通过访问外部设备,设备文件用特殊的约定命名,这在设备列表中有说明,设备文件在安装时有系统产生,以后可以用/dev/makedev/描述
    /dev/makedev.local是系统管理员为本地设备文件(或连接)写的描述文稿(即一些非标准设备驱动,不是标准makedev的一部分)
    /dev/console系统控制台,直接和系统连接的监视器也就是电脑屏幕
    /dev/hdIDE硬盘驱动程序接口,如/dev/hd是指第一个硬盘,hda1是/dev/hda1的第一个分区
    /dev/sdSCSI磁盘驱动程序接口,如有系统有SCSI硬盘,就不会访问/dev/hda而会访问/dev/sda
    /dev/fd软盘设备驱动程序
    /dev/stSCSI磁盘驱动器驱动程序
    /dev/tty虚拟控制台支持,tty1就是第一个虚拟控制台
    /dev/pty远程登录伪终端支持,进行Telnet登录时就要用到
    /dev/ttys计算机串口,对于DOS来说就是COM口
    /dev/cua串口,与调制解调器一起使用的设备
    /dev/null黑洞,所有写入该设备的信息都将消失,例如:当想要将屏幕上的输出信息隐藏起来时,只要将输出信息输入到/dev/null中即可。
    proc系统文件或目录是系统内存的映射,可直接访问这个目录来获取系统信息,这些信息是由系统自己产生,该目录的内容不再硬盘上而在内存上
    var系统文件或目录包含系统一般运行时要改变的数据,通常这些数据所在的目录的大小是要经常变化的或扩充的,每个系统是特定的,不通过网络和其它计算机共享,系统产生的不可自动销毁的缓存文件、日志记录。(系统和程序运行后产生的数据、不对外提供服务、只能用户手动清理)(包括mail、数据库文件、日志文件)
    /var/catman包括了格式化过的帮助( man )页.帮助页的源文件一般存在/usr/man/man中;有些man页可能有预格式化的版本,存在/usr/man/cat中,而其他的man页在第一次看时都需要格式化,格式化完的版本存在/var/man中,这样其他人再看相同的页时就无须再格式化了,/var/catman 经常被清除,就像清除临时目录一样
    /var/lib存放系统正常运行时要改变的文件
    /var/local存放系统正常运行时要改变的文件
    /var/lock锁定文件.许多程序遵循在/var/lock中产生一个锁定文件的约定,以用来支持他们正在使用某个特定的设备或文件,其他程序注意到这个锁定文件时,就不会再使用这个设备或文件
    /var/log各种程序的日志( log )文件,尤其是login (/var/log/wtmp log纪录所有到系统的登录和注销)和syslog (/var/log/messages 纪录存储所有核心和系统程序信息),/var/log 里的文件经常不确定地增长,应该定期清除
    /var/run保存在下一次系统引导前有效的关于系统的信息文件,例如:/var/run/utmp 包含当前登录的用户的信息
    /var/spool放置“假脱机( spool )”程序的目录,如mail、news、打印队列和其他队列工作的目录
    tmp公用的临时文件存储点,保存在使用完毕后可随时销毁的缓存文件。(有可能是由系统或程序产生、也有可能是用户主动放入的临时数据、系统会自动清理)
    usr系统或个人所有的程序安装在usr目录里,一般为系统发行时自带相当于Windows下的C:\Program files
    /usr/bin集中了几乎所有用户命令,是系统的软件库,另有些命令在/bin 或/usr/local/bin中
    /usr/sbin包括了根文件系统不必要的系统管理命令,例如多数服务程序
    /usr/man、/ usr/info、/usr/doc这些目录包含所有手册页、gnu信息文档和各种其他文档文件.每个联机手册的“节”都有两个子目录,例如: / usr/man/man1中包含联机手册第一节的源码(没有格式化的原始文件),/usr/man/cat1包含第一节已格式化的内容.l联机手册分为以下九节:内部命令、系统调用、库函数、设备、文件格式、游戏、宏软件包、系统管理和核心程序
    /usr/include包含了c语言的头文件,这些文件多以.h结尾,用来描述c语言程序中用到的数据结构、子过程和常量,为了保持一致性,这实际上应该放在/usr/lib下,但习惯上一直沿用了这个名字
    /usr/lib包含了程序或子系统的不变的数据文件,包括一些site-wide配置文件,名字lib来源于库(library);编程的原始库也存在/usr/lib里,当编译程序时,程序便会和其中的库进行连接,也有许多程序把配置文件存入其中
    /usr/local本地安装的软件和其他文件放在这里,这与/usr类似,用户可能会在这发现一些比较大的软件包,如tex、emacs等!
    home用户用户自己的目录,可以在此存储自己文件,资料等!
    boot系统文件或目录引导加载文件以及映像文件等
    lib程序库文件根文件系统上的程序所需的共享库,存放了根文件系统程序运行所需的共享文件,这些文件包含了可被许多程序共享的代码,以避免每个程序都包含有相同的子程序的副本,故可以使得可执行文件变得更小,节省空间
    /lib/modules目录包含系统核心,可加载各种模块,尤其是那些在恢复损坏的系统时重新引导系统所需的模块(例如网络和文件系统驱动).
    opt三方软件安装文件夹,相当于Windows下的除C盘外的其它盘
    mnt用户临时挂载点
    media有些linux的发行版使用这个目录来挂载那些usb接口的移动硬盘(包括U盘)、CD/DVD驱动器等等
    srv主要用来存储本机或本服务器提供的服务或数据(用户主动生产的数据、对外提供服务)

           由上面可以知道,红字部分都是重要文件夹,有时候会根据自己的需要修改一些文件,根文件夹下的home文件夹使我们自己可以配置的,三方软件一般要安装到opt文件夹里面。我们可以在home里面新建DEFGH当做我们的盘作为区分,三方软件安装在opt文件夹下,可以把运行脚本建立软连接到home的一个文件夹内,相当于Windows下的快捷方式。这样一看其实结构也是很清晰的。

    电子书链接

    可以加入群聊:667039215找群主获取
    Linux命令行与shell脚本编程大全第三版
    鸟哥的Linux私房菜-基础篇》第四版
    跟我一起写Makefile 高清无码文档
    GNU make中文手册

    展开全文
  • linux--Linux目录及每个目录的详细介绍

    千次阅读 多人点赞 2017-08-31 17:53:38
    Linux目录和Windows目录有着很大的不同,Linux目录类似一个树,最顶层是其根目录,如下图:   二、注 1、可以使用tool tree 查看 tree / 2、fhs文件系统介绍(linux)   三、各目录介绍 /bin 二进制可...
  • Linux目录的建立

    千次阅读 2017-09-20 10:51:56
     Linux使用标准的目录结构,在安装的时候,安装程序就已经为用户创建了文件系统和完整而固定的目录组成形式,并指定了每个目录的作用和其中的文件类型。  /根目录  ┃ ┏━━┳━━━┳━━━┳━━━╋━...
  • LinuxLinux文件目录

    千次阅读 2018-08-01 20:00:40
    从文件管理的角度来看,文件分为数据文件和目录文件。由于目录文件是管理文件,所以从管理的角度来看,文件中目录的结构就会直接影响文件管理效果。目前,常见的目录结构有两种:一体化目录和分立式目录。   一体...
  • Windows10下安装Linux子系统

    万次阅读 2019-07-09 22:45:29
    文章目录Windows10下安装Linux子系统版本说明目录一、初衷二、资料收集三、官方安装说明1、准备2、安装所选的 Linux 分发版打开 Microsoft Store,然后选择你喜爱的 Linux 分发3、完成初始化的发行版4、疑难解答:...
  • Linux目录结构和作用

    万次阅读 多人点赞 2018-03-20 14:02:59
    /etc存放系统管理和配置文件/home存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示 /usr用于存放系统应用程序,比较重要的目录/usr/local 本地系统管理员软件...
  • Oracle Linux 7.5安装oracle 12cR2数据库

    千次阅读 2018-12-27 16:53:01
    Oracle Linux 7.5安装oracle 12cR2数据库 1 安装Oracle之前的环境准备 1.1 预先准备安装oracle所需的RPM包(本次yum安装12cR2的基础环境RPM包进行全部基础包安装和参数设置,需要能访问外网且配置DNS) ...
  • 双系统 Win10下安装Linux(单/双硬盘)

    千次阅读 多人点赞 2019-09-12 07:32:34
    双系统 Win10下安装Linux(单/双硬盘)
  • @Linux目录详解,软件应该安装到哪个目录 转自:https://www.w3h5.com/post/336.html   我们应该知道 Windows 有一个默认的安装目录专门用来安装软件。Linux 的软件安装目录也应该是有讲究的,遵循这一点,对...
  • Linux目录结构及详细介绍

    万次阅读 多人点赞 2017-06-02 14:27:16
    /:根目录,位于Linux文件系统目录结构的顶层,一般根目录下只存放目录,不要存放文件,/etc、/bin、/dev、/lib、/sbin应该和根目录放置在一个分区中。 /bin,/usr/bin:该目录为命令文件目录,也称为二进制目录。...
  • LINUX内核目录文件说明

    万次阅读 多人点赞 2018-08-03 09:40:31
    内核空间和用户空间  在下载内核前,我们应该讨论一些重要的术语和事实。首先了解一下内核空间和用户空间 ... Linux内核是一个宏内核,这意味着整个操作系统都运行在内核预留的内存里。 内...
  • bin(binary) :常见linux命令、系统所有用户命令目录文件 dev(device) : 设备驱动存储目录文件 media: 多媒体及挂载目录 proc (process):进程信息文件 sbin(superuser binary) : root用户命令文件 var ...
  • 对于linux文件目录操作函数其实使用命令就能实现,但是其实对于一些命令本质上就是调用系统函数的,比如:madir,umask,chown等命令。 获取文件信息主要函数 #include &lt;sys/types.h&gt; #include ...
  • Linux目录及每个目录的详细介绍

    千次阅读 多人点赞 2019-07-09 21:49:58
    Linux目录及每个目录的详细介绍 【常见目录说明】 目录 /bin 存放二进制可执行文件(ls,cat,mkdir等),常用命令一般都在这里。 /etc 存放系统管理和...
  • Linux切换目录操作详解,超详细!

    千次阅读 2018-12-06 21:30:20
    Linux系统的目录结构不同于windows。从我们更熟悉的Windows说起。下面是windows的目录结构: 可以看到所有目录,Windows由若干个盘符组成(C\D\E\F\G。。。。)系统硬盘被分为这几大部分。如果做过硬盘分区,会...
  • linux目录注释

    千次阅读 2017-06-01 09:32:01
    linux各主要目录注释
  • Linux系统根目录详解

    千次阅读 2017-08-31 14:00:55
    linux系统在使用的时候,一定要搞清楚根目录中各个目录的详细作用。 在部署JDK,Tomcat等时,才能理解每个文件应对应存放的位置。 尤其是在shell脚本编写时,需要更加清楚根目录的分布。
  • linux目录下各子目录的作用

    千次阅读 2019-04-19 16:54:59
    前段时间老师给我们布置了一道题,写出linux目录各子目录的作用。我查了一晚上的资料,结果都不全,让我在各个网站,博客寻找了好久。终于让我完整的找到了。现在就向大家分享我的资源(为了找齐,花费了宝宝好长...
  • Linux目录各个文件夹介绍及说明

    千次阅读 2019-01-01 22:36:45
    /home 用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示 /lib 标准程序设计库,又叫动态链接共享库,作用类似windows里的.dll文件 /sbin 系统管理命令,这里存放的是系统管理员使用的管理...
  • Linux的分区与目录

    千次阅读 2018-10-22 23:47:36
    一、Linux中分区与目录的区别与联系 区别:Linux的分区是物理上的概念,从物理上将存储空间分开;Linux目录是逻辑上的概念,Linux目录树实际上是一个分区之间的数据逻辑结构关系,不是物理结构; 联系:一个分区...
  • linux 目录遍历

    千次阅读 2014-01-16 09:39:39
    linux 中,如何遍历指定目录下的所有文件夹呢? 要求能搜索结果中包含隐藏文件夹 脚本名:ergodic_folder.sh 脚本内容: Shell代码  #!/bin/sh  list_alldir(){   for file2 in...
  • Linux扩展根目录下的空间

    千次阅读 2017-06-23 11:29:09
     输入n,提示后输入p,用于创建分区编号,新建的linux虚拟机一般会有两个sda分别是sda1和sda2,所以这里应该在输入p后,输入3,表示分配新的sda3。输入3后回车,发现提示:  First cylinder(N-M, default N...
  • Linux实用教程(第三版)

    万次阅读 多人点赞 2019-08-27 22:55:59
    第一章 Linux系统初步了解 本章内容 1.1 Linux系统简介 1.2 Linux系统的特点和组成 1.3 Linux版本介绍 1.4 Red Hat Linux系统概述 1.1 Linux系统简介 1.1.1 什么是Linux 1.1.2 Linux系统的产生 1.1.3 Linux...
  • Linux 下,我们看到的是文件夹(目录): 在早期的 UNIX 系统中,各个厂家各自定义了自己的 UNIX 系统文件目录,比较混乱。Linux 面世不久后,对文件目录进行了标准化,于1994年对根文件目录做了统一的规范,...
  • Linux】一步一步学Linux——Linux系统目录详解(09)

    千次阅读 多人点赞 2019-07-08 23:10:18
    00. 目录 文章目录00. 目录01. 文件系统介绍02. 常用目录介绍03....Win和Linux文件系统区别 (了解) 在 windows 平台下,打开“计算机”,我们看到的是一个个的驱动器盘符: [外链图片转存失败(img-F...
  • 详解linux下mnt目录作用

    千次阅读 2020-04-21 10:49:15
    linux下mnt目录的作用: mount 英文解释: 登上; 爬上; 攀登; 骑上; 乘上; 跨上 可直接理解为“挂载” 挂接光驱、USB设备的目录,加载后,会在mnt里多出相应设备的目录。mnt是mount的缩写。 Mount命令: 需要注意...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 198,873
精华内容 79,549
关键字:

linux目录区

linux 订阅