FHS:文件结构标准  

  /bin: 存放可执行的二进制程序,管理员和普通用户都可以使用

  /sbin:管理员才能执行的命令

    运行正常功能的程序存放位置

    /usr/bin

    /usr/sbin

    用来存放第三方软件的程序

    /usr/local/bin

    /usr/local/sbin

  /boot:存放系统引导文件:内核、ramfs文件、bootloader(grub)

  /dev:设备文件存放目录

  /etc:配置文件的集中存放目录

    /etc/sysconfig:系统级别的应用

    /etc/init.d:系统服务脚本

  /home :普通用户,默认在/home下有一个与其名称同名目录,作为用户的家目录

  /root:管理员的家目录

  /lib,/lib64:库文件

  /media:专用挂载位置,通常用来挂载便携式设备

  /mnt:专用挂载位置,挂载额外的存储设备

  /misc:杂项,备用目录

  /opt:可选目录,但通常用来安装第三方软件

  /proc:所显示的文件都不是文件,伪文件系统,运行中的内核参数的映射

  /sys:伪文件系统,系统级别的用于配置硬件设备相关的参数

  /srv:为服务提供数据存放位置的

  /tmp:临时文件系统:默认存放30天

  /usr:shared 所有遵循协议的系统都可以使用,readonly 只读

   /usr/include:头文件存放位置

  /var:经常发生变化的文件

    /var/log

    /var/lock

    /var/run

    /var/cache


文件命名规则:

  1.长度不能超过255个字符

  2.不能使用/做文件名

  3.严格区分大小写

路径:

  相对路径:相对于当前位置而开始的文件引用路径

  绝对路径:由跟开始的文件引用路径

系统操作:

  目录管理

    ls  查询当前目录下的文件

    cd  切换目录

    pwd  查看当前文件的路径

    tree 查看目录树

       yum -y install tree 

    mkdir 创建空目录

      -p :

      -v : 详细信息

      rmdir 删除目录(不跟参数只能删除空目录)

  文件管理(filename指文件名)

    创建文件:

      touch 修改文件的时间戳,如果文件不存在就默认创建

        -m 修改文件的访问时间戳 

        -a 修改文件的修改时间戳

        -t

        -c

      stat 查看文件源数据或属性(时间戳)

      创建文件可以使用文件编辑器

      file 查看文件内容内型

      nano filename

    删除文件:

      rm filename

        rm -i 交互式,即在操作时会出提示

        rm -f 强行删除

        rm -r 删除目录,递归删除目录下的所有文件

    复制文件

       cp:copy

         格式

           cp 源 目标 (源可是多个,目标只能一个)

              说明: 可以复制一个文件到一个文件,多个文件到一个目录

 不可以多个文件复制到一个文件,不可以多个文件复制到多个目录

           cp file1 file2 file3 为:将file1和file2复制到file3

           cp file1 file2

              说明:如果目标是目录,并且存在,即将源文件存放在目标目录下并保持原名字

      如果目标不存在,且目标是个文件,即将源文件复制到目标目录,并改为目标文件名

 如果目标不存在,且目标是个目录,即创建目标目录并将源文件存放在目录下并保持原名字

 如果源是多个,目标必须是目录

           cp -r 递归复制目录和目录下的所有文件

           cp -i 交互式

           cp -f 强行复制

           cp -p 

           cp -a 归档存放

    移动文件

      mv:move

  格式:

         mv 源 目标

           mv file1 file2

              移动源文件file1到目标文件,并改名为file2

            说明:可以移动一个文件到另一个文件

如果目标目录不存在,就创建目录并移动到目录下,保留原名字

如果目录存在,就移动到目标目录下,并保存目录

如果移动的是目录,目标存在,但是是文件,就不可以移动

mv -t 目标 源

    命令:install

      说明:

  可以复制一个源到一个目录

  可以复制多个源到一个目录

 -d 表示可以创建目录

 -m 指定复制后的权限,默认为 rwxr-xr-x


    查看文本:(filename 指文件名)

      cat  filename  连接并显示

        cat -n filename    显示文件并显示行号

        cat -E filename    显示没一行的行结束符

          翻页:  shift + pageUp

              shift + pageDown

      tac filename    倒序行显示文本  

      more filename  向后翻页  

      less filename  向后翻页   q键退出  

      head filename  查看文件的前n行,默认是10行

        head -n filename   指定显示文件的前n行  

      tail filename  查看文件的后n行

        tail -n filename   指定显示文件的后n行

        tail -f filename   指定显示文件的后n行且不退出,等待显示后续追加新内容

    

    文本处理:

      cut    文本剪切

        -d 指定字段分隔符,默认是空格

        -f 指定要显示的字段

          -f 1   显示第一个字段

          -f 1,3  显示第一个和第三个字段(离散表示法)

          -f 1-3  显示第一个到第三个字段(连续表示法,取范围)

        示例:

          cut -d : -f1,7 /etc/passwd    说明:显示文本/etc/passwd中以:分开的第1和第7字段

          cut -d : -f1-3 /etc/passwd    说明:显示文本/etc/passwd中以:分开的第1到第3字段

      

      join  文本合并


      文本处理三大利器:sed  awk  grep


    文本排序

      sort  只对输出显示做排序,不影响源文件

          默认是按ASCL码排序

        -n  数值排序

        -r  降序排序

        -t   指定字段分隔符

        -k   以哪个字段为关键字进行排序

       示例:sort -t: -k3 -n /etc/passwd 说明:/etc/passwd中以:为分隔符(-t:),指定以第3字段(-k3)按数值(-n)排序      

        -u   相同的行只显示一次

        -f   排序时不区分字符大小写


      uniq  

        uniq -d    只显示重复的行

        uniq -D   显示所有重复的行

        uniq -c    显示文本中行重复的次数

    

    文本统计

      wc (word count)

        -c  字节数

        -m  字符数

        -l  行数

       -w  单词数

        -L  最长的行的字符数


    字符处理

      tr  转换或删除字符  

        用法: tr [OPTION]... SET1 [SET2]

          示例:tr 'a' 'A' < filename    把filename中的小写a替换成大写A      

        tr -d   删除出现字符集中的所有字符


权限管理:

   owner,group,other

   属主,属组,其他

   权限:read write execute

          r   w    x

    文件:

      r:可以使用内容查看类的命令来显示其相关内容

      w: 可以使用编辑器修改其内容

      x:可以将其发起一个进程

    目录:

      r:可以使用ls命令查看目录内容的文件信息

      w:可以创建、删除文件

      x:可以使用ls -l命令来查看目录内容的文件信息,并且可以使用cd命令切换此目录为工作目录:


      用户的不拥有某位权限,则使用-占位

      r-x:读和执行的权限

      r--:只读权限

      rw-:读写权限

    权限换算:

      十进制 二进制  字符

      0    000    --- 无权限

      1     001    --x 只执行

      2    010    -w- 只写

      3    011    -wx 写和执行

     4    100    r-- 只读

     5    101    r-w 读和执行

     6    110    rw- 读写

     7    111    rwx 读写执行


用户与组

   用户ID:UID

    /etc/passwd

   组ID:GID

    /etc/group

   用户密码保存文件:/etc/shadow

   组密码保存文件:/etc/gshadow


   用户类型

    管理员:root,UID永远为0

    普通用户:UID范围:1-65535

      系统用户:1-499  允许后台进程的用户

      一般用户:500-65535

   用户组类型

    私有组

    基本组    

    附加组


/etc/passwd 字段说明:

   1.  account:  用户名

   2.  password:  密码占位符X

   3.  UID      用户ID

   4.  GID      基本组ID

   5.  GECOS    用户的注释信息(有时为空)

   6.  home dir  家目录

   7.  SHELL    用户的默认shell

    

  cat /etc/shells    查看当前主机的安全shell

  

/etc/shadow 字段说明:

   1.  account:登录名

   2.  encrypted passwoed :加密的密码

        !!和*表示锁定用户,不允许登陆

   3.  上次修改密码的时间      

   4.  密码最短使用期限(0表示不作限定)

   5.  密码最长使用期限

   6.  密码过期前的警告时间

   7.  密码过期后到锁定前的时间

   8.  密码有效期

   9.  保留字段

 

用户管理命令:

  useradd  userdel  usermod  passwd chsh  chfn finger  id chage


/etc/passwd:

  用户名:密码占位符:UID:GID:注释:家目录:默认shell


创建用户:useradd [options] USERNAME   

  [options]选项

  -u  UID  指定用户ID   

    示例:useradd -u 501 Username  说明:创建一个UID为501的用户:Username

  -g   GID  指定基本组(必须事先存在才可以)

    示例:useradd -g 306 -r -u 306 user2  说明:创意一个指定GID为306,UID为306的系统用户:user2

  -G   GID...  指定附加组 (组必须事先存在,可以有多个)

  -c "COMMENT"  指定注释信息

  -d   /path/to/somedirectory   指定家目录,默认为/home,-d后跟一个路径即可

    示例:useradd -d /home/blade user4  说明:创建一个家目录为 /home/blade的用户:user4

  -s   指定shell的路径 一定要是/etc/shells中的安全shell

    示例:useradd -s /sbin/nologin user5  说明:创建一个安全shell的用户:user5 ,user5不可登陆

      /etc/shells 中的shell为安全shell

  -r  创建系统用户


删除用户:userdel [options] USERNAME

    如果删除时不加参数,用户的家目录是不会删除的

  -r 同时删除用户的家目录


修改用户:usermod 

  -u 指定用户UID

    示例:usermod -u 2002 user1    说明:修改用户user1的UID为2002

  -g 指定组GID(特别说明:改为的目标组名必须存在)

  -a -G GID:  不适用-a选项,会覆盖此前的附加组,加-a 追加新的附加组

  -d -m  为用户指定新的家目录,且移动前家目录下的文件      

  -s  修为用户的shell

  -l  修改用户登陆名

  -L  锁定账号,类似于禁用,不能登录

  -U  解锁账号


密码管理:passwd [USERNAME]

  --stdin   标准输入读取密码,从其他地方读取信息获取密码

    示例:echo "centos" | passwd --stdin USERNAME  说明:通过管道获取centos字符串给USERNAME获取密码


  -d  删除用户密码

  -l  锁定用户账户

  -u  解锁用户账号

    示例:passwd -d USERNAME    

    

chsh:  修改用户的默认shell


chfn:  修改注释信息  

  

pwck:检查用户账户完整性  


finger 

  centos 6.5 需安装finger

  yum -y install finger


id:查看用户的账号属性信息(不跟参数会查询当前用户信息)

  -u 显示UID

  -g 显示GID

  -n 显示name


组管理:

创建组:groupadd

  -g   GID,指定组ID

    示例:groupadd -g 306 group1  说明:创建GID为306的组:group1

  -r  创建系统组

    

修改组信息:groupmod  

  -g  修改组ID

  -n  修改组名


删除组:groupdel  


为组设定密码

gpasswd [GNAME组名]


chage 改变用户密码的过期信息

  -d 指定密码最近一次修改时间

  -E 过期时间

  -r 非活动时间

  -m 最短使用期限

  -M 最长使用期限

  -W 警告时间


文件权限管理命令:(/path/to/表示路径)

chown:改变文件属主(只有管理员可以使用)

  # chown USERNAME file,...    说明:把文件 (file,...)的属主改为:USERNAME

  选项:

   -R:递归修改,修改目录及其内部文件的属主

   --reference=/path/to/somefile file,...    

    说明:把文件 (file,...)的属主改为(/path/to/)路径下的somefile文件一样的属主

  

  chown USERNAME:GROUPNAME file,...

    说明:同时修改文件(file,...)的属组和属主

  

chgrp:改变文件的属组(只有管理员可以使用)  

  # chown GROUPNAME file,...    说明:把文件 (file,...)的属组改为:GROUPNAME

  选项:

    -R:递归修改,修改目录及其内部文件的属组

    --reference=/path/to/somefile file,...    

    说明:把文件 (file,...)的属组改为(/path/to/)路径下的somefile文件一样的属组

  

chmod:修改文件的权限(file只文件名)

  1.修改三类用户的权限

    chmod MODE file,...    (MODE指文件的8进制权限)

      -R   递归修改

      --reference=/path/to/somefile file

      

  2.修改某类用户或某些类用户权限

    u:属主    g:属组  o:其他用户    a:所有

    chmod 用户类别=MODE file

      示例:chmod u=rwx file    说明:修改文件file的属主权限为rwx

          chmod a=rwx file    说明:修改文件file的所有用户权限为rwx

          chmod g=r,o=r file    说明:修改文件file的属组和其他用户的权限为r


  3.修改某类用户的某位或者某些为的权限

    chmod 用户类别+|-MODE file       说明:给某类用户加上一个没有的权限或者取消一个拥有的权限

      示例:chmod u-x file      说明:取消文件file的属主u的x权限

          chmod g+x o-w file    说明:给文件file的属组加上x的权限,其他用户o取掉w权限

          chmod a+x file      说明:给所有类用户加上x权限

          chmod u-wx file      说明:取消文件file的属组的wx权限