目录
shell命令及运行原理
Linux操作系统,我们称之为“核心”,但是一般用户不能直接使用kernel(核心)。而是通过使用kernel的外壳程序,也就是shell,来与kernel沟通。为何如此呢?
shell最简单的定义:命令行解释器 主要功能包括:将使用者的命令给核心处理,将核心的处理结果翻译给使用者。
shell对于Linux,主要是对我们的指令进行解析,将解析指令给LInux内核。反馈结果通过内核运行出结果,通过shell解析给用户。
Linux权限的概念
Linux下有两种用户: root(超级用户)、普通用户。
- root:可以在linux系统下做任何事情、不受限制
- 普通用户:在linux下做有限的事情。
- 超级用户的指令提示是“#”,普通用户的指令提示是“$"。
Linux权限管理
1 文件访问者分类
- 文件所有者 u -- User
- 文件所属组 g -- Group
- 其他用户 o -- Others
2 文件类型和访问权限
d rwxr-xr-x 2 root root 4096 Nov 15 21:11 dir
d rwxr-xr-x 2 root root 4096 Dec 25 13:05 tmp
- rw-r- -r- - 1 root root 610 Dec 25 13:07 tmp.zip
- 第1位:文件类型
- 第2-10位:基本权限
- 权限前3位:User的权限
- 权限中间三位:Group的权限
- 权限后三位:Others的权限
文件类型
d:文件夹
-:普通文件
l:软链接(类似Windows的快捷方式)
b:块设备文件(例如硬盘、光驱等)
p:管道文件
c:字符设备文件(例如屏幕等串口设备)
s:套接口文件
基本权限
r(读):Read对文件,具有读取文件内容的权限;对目录来说,具有浏览目录信息的权限
w(写):Write对文件,具有修改文件内容的权限;对目录来说,具有删除移动目录内文件的权限
x(执行):execute对文件,具有执行文件的权限;对目录来说,具有进入目录的权限
粘滞位
在一个公用目录中,只需要用户具有w权限,就可以删除任意的文件,而不论用户是否有该文件的w权限。
为了解决这个问题,就有了粘滞位的概念。
[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": 不允许的操作
关于权限的总结
目录可执行权限表示的是你是否可以在目录下执行命令
如果没有 -x权限,则无法对目录执行任何命令,甚至无法cd进入,即使有 -r权限。
如果有 -x权限,而没有-r权限。则可以执行命令,可以cd进目录。但不能读出目录下的文档。