
正文开始——
Linux 严格意义上说的是⼀个操作系统,我们称之为“核心(kernel)”,但我们⼀般用户,不能直接使用kernel。而是通过kernel的“外壳”程序,也就是所谓的shell,来与kernel沟通。如何理解?为什么不能直接使用kernel?
从技术角度,Shell的最简单定义:命令行解释器(command Interpreter)主要包含:
对⽐windows GUI ,我们操作windows 不是直接操作windows内核,⽽是通过图形接⼝,点击,从⽽完成我们的操作(⽐如进⼊D盘的操作,我们通常是双击D盘盘符.或者运⾏起来⼀个应⽤程序)。
shell 对于Linux ,有相同的作⽤,主要是对我们的指令进⾏解析,解析指令给Linux内核。反馈结果在通过内核运⾏出结果,通过shell解析给⽤⼾。(shell是所有外壳程序的统称)

帮助理解:如果说你是⼀个闷骚且害羞的程序员,那shell就像媒婆,操作系统内核就是你们村头漂亮的且有让你⼼动的MM⼩花。你看上了⼩花,但是有不好意思直接表⽩,那就让你家⼈找媒婆帮你提亲,所有的事情你都直接跟媒婆沟通,由媒婆转达你的意思给⼩花,⽽我们找到媒婆姓王,所以我们叫它王婆, 它对应我们常使⽤的bash。

超级用户的命令提示符是“#”,普通用户的命令提示符是“$”。
例如,要从root⽤⼾切换到普通⽤⼾user,则使⽤ su user。 要从普通⽤⼾user切换到root⽤⼾则使⽤ su root(root可以省略),此时系统会提⽰输⼊root⽤⼾的密码。
(1)⽂件访问者的分类(⼈)
(2)⽂件类型和访问权限(事物属性)
⽂件类型:
基本权限:
功能:设置⽂件的访问权限
格式:chmod [参数] 权限 ⽂件名
常⽤选项:
chmod命令权限值的格式:
功能:修改⽂件的拥有者
格式:chown [参数] ⽤⼾名 ⽂件名
实例:
功能:修改⽂件或⽬录的所属组
格式:chgrp [参数] ⽤⼾组名 ⽂件名
常⽤选项:-R 递归修改⽂件或⽬录的所属组
实例: chgrp users /abc/f2
功能:
格式:umask 权限值
说明:将现有的存取权限减去权限掩码后,即可产⽣建⽴⽂件时预设权限。超级⽤⼾默认掩码值为0022,普通⽤⼾默认为0002。
实例:
功能说明:辨识⽂件类型。
语法: file [ 选项 ] ⽂件或⽬录 ...
常⽤选项:
(1)修改/etc/sudoers ⽂件分配⽂件
# chmod 740 /etc/sudoers
# vi /etc/sudoer格式:接受权限的⽤⼾登陆的主机 =(执⾏命令的⽤⼾) 命令
(2)使⽤ sudo 调⽤授权的命令
$ sudo –u ⽤⼾名 命令实例:
$ sudo -u root /usr/sbin/useradd u2于是, 问题来了~~ 换句话来讲, 就是只要⽤⼾具有⽬录的写权限, ⽤⼾就可以删除⽬录中的⽂件, ⽽不论这个⽤⼾是否有这个⽂件的写权限。
这好像不太科学啊, 我张三创建的⼀个⽂件, 凭什么被你李四可以删掉? 我们⽤下⾯的过程印证⼀下。
[root@localhost ~]$ chmod 0777 /home/
[root@localhost ~]$ ls /home/ -ld
drwxrwxrwx. 3 root root 4096 9⽉ 19 15:58 /home/
[root@localhost ~]$ touch /home/root.c
[root@localhost ~]$ ls -l /home/
总⽤量 4
-rw-r--r--. 1 root root 0 9⽉ 19 15:58 abc.c
drwxr-xr-x. 27 litao litao 4096 9⽉ 19 15:53 litao
-rw-r--r--. 1 root root 0 9⽉ 19 15:59 root.c
[root@localhost ~]$ su - litao
[litao@localhost ~]$ rm /home/root.c #litao可以删除root创建的⽂件
rm:是否删除有写保护的普通空⽂件 "/home/root.c"?y
[litao@localhost ~]$ exit
logout为了解决这个不科学的问题, Linux引⼊了粘滞位的概念。
[root@localhost ~]$ chmod +t /home/ # 加上粘滞位
[root@localhost ~]$ ls -ld /home/
drwxrwxrwt. 3 root root 4096 9⽉ 19 16:00 /home/
[root@localhost ~]$ su - litao
[litao@localhost ~]$ rm /home/abc.c #litao不能删除别⼈的⽂件
rm:是否删除有写保护的普通空⽂件 "/home/abc.c"?y
rm: ⽆法删除"/home/abc.c": 不允许的操作当⼀个⽬录被设置为"粘滞位"(⽤chmod + t),则该⽬录下的⽂件只能由