版权声明:原创文章,转载请附加链接。 https://blog.csdn.net/qq_36749611/article/details/87954944
linux文件夹含义及其用途
- /boot:默认存放linux启动文件和内核
- /initrd:boot loader初始化的内存盘。linux启动前boot loader会将存储介质中的initrd文件加载到内存,内核启动时会在访问真正根文件前,先访问initrd文件
- /bin :普通用户可以使用的命令的存放目录
- /sbin:超级用户可以使用的命令的存放目录(其命令都具有root权限)
- /var:存放那些经常被修改的文件,包括日志,数据文件。
- /etc:全局的配置文件存放目录
- /dev:设备文件
- /mnt:临时挂载文件的目录
- /root:超级用户的主目录
- /home:普通用户目录
- /usr:主要包含应用程序和文件
- /lib:动态链接共享库
- /opt:第三方软件安装的默认目录
- /misc:可以让多用户堆积和临时转移自己的文件
- /tmp:临时文件,用来存放程序执行产生的临时文件
- /proc:特殊文件目录,可以在该目录下获取系统信息,信息产生在内存中,该目录内容不存在磁盘上
- /lost+found:突然断电,非正常关机时文件临时存放
- /media:提供挂载设备的标准位置
文件颜色含义
- 绿色文件:可执行文件或包文件
- 红色文件:压缩文件或包文件
- 蓝色文件:目录
- 白色文件:一般文件,文本文件,配置文件
- 浅蓝色文件:链接文件(ln)
- 红色闪烁:链接文件有问题
- 黄色文件:表示设备文件
- 灰色:表示其他文件
- 红框文件:附加SUID位,任意权限
文件权限
示例:查看部分文件(ls -l)
-rwxr-xr-x 1 root root 1925080 8月 29 03:47 upx-ucl
-rwxr-xr-x 1 root root 17855 1月 30 2013 urlcrazy
lrwxrwxrwx 1 root root 11 2月 1 17:25 us -> unicornscan
-rwxr-xr-x 1 root root 31440 1月 23 2017 us428control
-rwxr-xr-x 1 root root 4216 9月 6 2015 usb-devices
-rwxr-xr-x 1 root root 23152 9月 6 2015 usbhid-dump
-rwxr-xr-x 1 root root 35488 8月 30 04:20 users
-rwxr-xr-x 1 root root 14448 8月 27 2018 usleep
-rwxr-xr-x 1 root root 14328 1月 22 19:53 usnjls
如上所示:
** d rwx(所有者) rwx(所属用户组) rwx(其他)**
d:表示目录;r:表示读权限;w:表示写权限;x:表示执行权限
- 第一位表示文件类型
- -:普通文件
- d:目录文件
- l:链接文件
- b:块设备文件
- c:字符设备文件
- p:管道文件
- 1~3位表示所有者权限
- 4~6位表示所属用户组权限
- 7~9位表示其他用户权限
PS: 权限更改
chmod 777 filename:普通文件
chmod -R 777 filename:递归改变文件夹权限(更改文件夹内所有文件权限)
u:表示文件所有者
g:表示同组用户
o:表示其它用户
权限数字计算如下:
-代表0,r代表4,w代表2,x代表1,rwx就表示(4+2+1)7
如drwxrwxrwx计算方式为:
第一位是文件类型,忽略不计,按照三类用户分为三组
rwx-rwx-rwx用二进制表示为:111-111-111,分组写为十进制为7-7-7
即777,该文件拥有最高权限。
若是d--- rwx r--则计算数值为:000-111-100,十进制:74
即缺失权限用0表示。
特殊的文件权限
- 部分文件权限比较特殊,
如:
-rwsr-xr-x 1 root root 63736 7月 27 2018 /usr/bin/passwd
drwxrwxrwt 2 root root 4096 2月 26 14:26 VMwareDnD
这里面出现了新的标识位:s,t
它们就是特殊权限了:SetUID,SetGID,SBIT
使用简单案例表明这些特殊权限的重要性:
超级用户可以更改系统任何文件,而普通用户就不能任性而为了。比如:密码的修改,如果普通用户在正常情况下,可以修改/etc/shadow文件,那他的权限就很大了,可以执行危险动作。但普通用户又需要可以修改密码的权限,这时候特殊权限就可以完成这些任务,而有不会使普通用户具有高权限。
- SetUID
其作用是“让执行该命令的用户以该命令拥有者的权限去执行”,就是普通用户执行passwd时会拥有root的权限,这样就可以修改/etc/passwd这个文件了。它的标志为:s,会出现在x的地方,例:-rwsr-xr-x 。 - SetUID
同上,即让执行文件的用户以该文件所属组的权限去执行。 - SBIT
stick bit(粘滞位,针对目录,除了root用户和文件创建者其他用户不能删改目录下文件)
示例代码:
chmod u+s xxx # 设置setuid权限
chmod g+s xxx # 设置setgid权限
chmod o+t xxx # 设置stick bit权限,针对目录
chmod 4775 xxx # 设置setuid权限
chmod 2775 xxx # 设置setgid权限
chmod 1775 xxx # 设置stick bit权限,针对目录