你的位置:首页 > 操作系统

[操作系统]linux(三)__文件权限、系统的查找、文本编辑器


1.理解文件权限及其分配

2.掌握查看文件和目录的权限

3.掌握权限文字表示法和数值表示法

4.学会使用chmod命令设置权限

5.学会使用chown命令修改属主和组

 

文件权限

查看详细信息:ls -l  fileName(LInux标准)或者ll fileName

-rw-r--r--  分别表示对当前用户可读可写、对当前用户组只可读、对其他用户只可读。这是默认权限。

 

使用chmod命令设置权限

 

用数字表示可以同时处理三组权限,而使用字符则只能一个一个修改。chmod 777 fileName  可以将所有权限打开。

 

使用chown命令修改属主和组

chown root:root test/

 

SUID:

[xiangkejin@localhost tmp]$ ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 27832 6月 10 2014 /usr/bin/passwd

passwd的拥有者是root,且拥有者权限里面本应是x的那一列显示的是s,这说明这个命令具有SUID权限

以普通用户执行这个命令时,当系统生成对应的进程后,这个进程就拥有了/usr/bin/passwd文件拥有者root的权限,只是借助,如果改成rwx普通用户就没法执行。

 

SGID:

新建用户:useradd user

创建一个组:groupadd share 

添加用户到组:

usermod -G groupA user
这样做会使你离开其他用户组,仅仅做为用户组 groupA 的成员。
应该加上 -a 选项:
usermod -a -G groupA user
-a 代表 append, 也就是将自己添加到用户组 groupA, 而不必离开原来到用户组。

更改目录的组:chgrp share share/

现在账号A新建一个文件,新建文件的拥有者和用户组都会是A!重要的是其他用户都无法访问这个文件!
所以我们需要给这个目录加入SGID权限,之后任意一个用户创建的文件,文件用户组都会是这个目录的用户组。

chmod 770  share/ 更改权限设置

 

SBIT:

drwxrwxrwt. 16 root root 4096 11月 22 19:52 tmp

当给一个目录设置了SBIT权限,当用户对目录拥有wx权限时,用户在该目录创建的文件或目录,只有自己与root才可以删除。

 

查看特殊权限的方法就是普通的ls命令:
 SUID会在所属用户权限本应是x的地方显示s
 SGID会在所属用户组权限本应是x的地方显示s
 SBIT在其它用户权限本应是x的地方显示t

 

Linux系统的查找

which查找文件、whereis查找指定文件、locate查找、find查找、find查找实例

which只能查找到可执行文件,并且只能在根据用户环境变量信息到指定路径下查找。

 查看环境变量设置 env

 vim  /root/.bash_profile修改环境变量

whereis是查找自己的数据库,数据是提前写到数据库中。帮助文档,配置文件这些。

locate查找:模糊查找,找到所有相关信息。

find查找:查找较慢,查找硬盘。

按时间查找:

#-atime  #-mtime   #-ctime   #-amin   #-mmin   #-cmin

 所以这里atime,mtime,ctime就是分别对应的“最近一次访问时间”“最近一次内容修改时间”“最近一次属性修改时间”,这里的atime的单位指的是“天”,amin的单位是分钟  

如果跟的是具体数字 find / -atime 10  表示在第十天被访问的文件(/表示从根目录开始查找),表示区间加上+-

          #find  /tmp  –atime  +5           //表示查找在五天前访问过的文件

          #find  /tmp  -atime  -5            //表示查找在五天内访问过的文件

 

根据文件名查找

    #  -name       //根据文件名查找(精确查找)

    #  -iname       //根据文件名查找,但是不区分大小写 

根据文件类型来查找文件:

  -type            f     // 普通文件

                      d     //目录文件

                      l     //链接文件

                      b     //块设备文件

                      c     //字符设备文件

                      p     //管道文件

                      s     //socket文件

文件大小查找:

find / -size +1000k  查找大于1M的文件

通配符匹配文件名:

find / -name '*pass*'   只要包含pass关键字

查找特殊权限的文件:

    -perm

          #find  /tmp  -perm  755           //查找在/tmp目录下权限是755的文件

          #find  /tmp  -perm  +222          //表示只要有一类用户(属主,属组,其他)的匹配写权限就行

          #find  /tmp  -perm  -222          //表示必须所有类别用户都满足有写权限

 

文本编辑器

普通模式:这种模式下键盘上的字符都代表着特殊操作

 跳至指定的行

「ctrl」+「g」列出光标所在行的行号。

「#G」:例如,「15G」,表示移动光标至文章的第15行行首。

 回撤上一次操作

「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次"u"可以执行多次回复

 [ctrl+r]:对使用u命令撤销的操作进行恢复

 复制

「yw」:将光标所在之处到字尾的字符复制到缓冲区中。

「#yw」:复制#个字到缓冲区

「yy」:复制光标所在行到缓冲区。

「#yy」:例如,「6yy」表示拷贝从光标所在的该行"往下数"6行文字。

「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与"y"有关的复制命令都必须与"p"配合才能完成复制与粘贴功能。

删除

「x」:每按一次,删除光标所在位置的"后面"一个字符。

「#x」:例如,「6x」表示删除光标所在位置的"后面"6个字符。

「X」:大写的X,每按一次,删除光标所在位置的"前面"一个字符。

「#X」:例如,「20X」表示删除光标所在位置的"前面"20个字符。

「dd」:删除光标所在行。

「#dd」:从光标所在行开始删除#行

插入模式:在普通模式按i键进入插入模式,按Esc退出到普通模式

命令模式:在普通模式按:键进入插入模式,按Esc退出到普通模式 

     q!强制退出

     wq保存退出

列出行号

「set nu」:输入「set nu」后,会在文件中的每一行前面列出行号

跳到文件中的某一行

「#」:「#」号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字15,再回车,就会跳到文章的第15行。

vi支持同时打开多个文件:

vi file1 file2 file3