首页 > 代码库 > Linux第四节

Linux第四节

三期第三讲
1.组管理/用户管理(重要文件系统会实时备份 file-)
  vim/etc/group: 组管理文件://组名:密码控位键:组id:成员
  vim/etc/gshadow:组密码管理文件:// 组名:密码:管理员:成员
2.groupadd
  作用:增加组
  语法: groupadd [-g gid [-o] [-r] [-f]]

3.groupdel
  作用:删除组

4.主组、附属组
  :创建用户a是默认创建用户a和该用户id 的组,当此用户加入其它组b后, 其它组b为用户组a的附属组.

4.基本权限管理
  :新建文件权限为(rw-r--r--)
  新建目录权限为(rwxr-xr-x)

5.chmod
  作用:修改文件权限(= 赋值不管存在与否, + 增加权限)
  语法1:chmod u=rwx,g=r--,o=r--(ugo=r) filename
  语法2:chmod 744 filename
  语法3:chmod u+x filename

  chmod go+x install.log
  chmod go=rw

6.chown
  作用:修改文件属主、属组
  语法:chown user:group filename
  PS:还可以单独修改属主或属组,命令语法为chown user filename和chown :group filename

7.umask 参考:http://blog.itpub.net/7318139/viewspace-920215/
  作用:通过设置umask值,来控制新建目录文件及普通文件的初始权限(指定在建立文件时预设的权限掩码)
  语法:umask=022(可自定义)
  原理:目录文件的默认完整权限是777(rwxrwxrwx),减掉umask的022(----w--w-),所以新建目录文件权限为(rwxr-xr-x)755;
  普通文件的默认完整权限是666(rw-rw-rw-),减掉umask的022(----w--w-),所以新建目录文件权限为(rw-r--r--)644。
  (对于文件来说,这一数字的最 大值分别是6。系统不允许你在创建一个文本文件时就赋予它执行权限,必须在创建后用chmod命令增加这一权限。目录则允许设置执行权限,  这样针对目录来 说,umask中各个数字最大可以到7)
  一个文件是否可以被删除取决于上级目录权限

8.vim
  作用:修改文件
  模式: 默认进来是一般模式、i 编辑模式、esc 退出编辑 、shift+: 底行模式
  参数: w: write/q:quit/! force
    编辑模式:
      a:光标之后插入内容
      A:光标最后插入内容
      o:当前光标下新行插入内容
      O:当前光标上新行插入内容
      x:向后删除
      X:向前删除
      u:撤销当前操作
      U:撤销所有操作
      shift+D :删除光标之后的字符

 

 

 

 

 

---补充权限---
其实在UNIX的实现中,文件权限用12个二进制位表示,如果该位置上的值是1,表示有相应的权限,如果是0则没有相应权限
第11位为SUID位,第10位为SGID位,第9位为sticky位,第8-0位对应于上面的三组rwx位
11 10 9 8 7 6 5 4 3 2 1 0
S G T r w x r w x r w x
第9位表示文件类型,可以为p、d、l、s、c、b和-:
p表示命名管道文件 -pipe
d表示目录文件 -directory
l表示符号连接文件 -link
-表示普通文件 -
s表示socket文件 -socket
c表示字符设备文件 -Character device
b表示块设备文件 -block

第8-6位、5-3位、2-0位分别表示文件所有者的权限,同组用户的权限,其他用户的权限,其形式为rwx:
(以上的其他用户,不包括root这个super user。)
r表示可读,可以读出文件的内容 --数字4表示
w表示可写,可以修改文件的内容 --数字2表示
x表示可执行,可运行这个程序 --数字1表示
没有权限的位置用-表示

chmod u+s filename 设置SUID位
chmod u-s filename 去掉SUID设置
chmod g+s filename 设置SGID位
chmod g-s filename 去掉SGID设置

-rwsrwxswt ======>出现了t,t的作用在内存中尽量保存a.txt,节省系统再加载的时间.
从s和S中我们可以看出在设置su前,脚本相应的执行权限有没有被设置(有则s,没有则S)。
对于sgid的设置时也类似。粘性位则用t和T表示,但其中包含的意义是一样的。

rwsrw-r– 表示有setuid标志
rwxrwsrw- 表示有setgid标志
rwxrw-rwt 表示有sticky标志

chmod 4777 //是设sid
chmod 2777 //是设置gid
chmod 1777 //是设sticky-- t 该位可以理解为防删除位. 一个文件是否可以被>某用户删除,主要取决于
该文件所属的组是否对该用户具有写权限. 如果没有写权限, 则这个目录下的所有文件都不
能被删除, 同时也不能添加新的文件. 如果希望用户能够添加文件但同时不能删除文件, 则
可以对文件使用sticky bit位

0: 不设置特殊权限
1: 只设置sticky
2 : 只设置SGID
3: 只设置SGID和sticky
4 : 只设置SUID
5 : 只设置SUID和sticky
6 : 只设置SUID和SGID
7 : 设置3种权限

Linux第四节