用八进制4000表示setuid, 用八进制2000表示setgid权限位, 用八进制1000表示sticky bit,
chmod 4755 /bin/rm //设置rm的权限为4755。 chmod 2770 /home/XXX //设置目录的权限为2770 chmod 1000 /home/xxx //设置目录的权限为1000
特殊权限set_uid
set_uid 普通用户临时拥有该命令所有者的权限,适用于二进制可执行文件。
set_uid(文件(二进制文件、可执行),在执行阶段该用户具有文件所有者的权限):
chmod u+s /usr/bin/ls //给普通用户临时拥有ls命令的权限
当文件、目录或者命令具有X权限时,
加上setuid、setgid那么他显示的是小写的s,
如果没有X权限那么他显示的是大写的S。
-rwSr--r--. 没有x权限 -rwsr--r--. 有x权限
特殊权限set_gid
set_gid(目录,用户在此目录下创建的文件具有和该目录所属的用户组一样):
chmod g+s xxx
setgid可以设置目录下的文件能自动继承目录的组。
chmod 2770 /home/XXX
sticky bit (目录,防删除位,用户创建的文件,别的用户无法删除):chmod o+t xxx
系统目录/tmp默认就是t权限
软连接:
文件本身存储了另外文件的路径或者目录
创建软件接:
支持文件和目录,源文件删除,则连接失效。
ln -s 源文件(绝对路径) 软连接(就是快捷方式)
如果源文件不存在,创建软连接后,则会高亮闪烁。
实际应用:适用于当前分区不够,而又不能改变文件路径,建立软连接,将数据写到别的分区去。
例:/boot/abc.log 日志文件很大,分区不够了,
又不能改变这个文件的路径,因为会影响服务,
这个时候可以建立软连接,
首先拷贝当前的日志文件挪到根分区,
cp /boot/abc.log /cba.log
删除原来的日志文件,并创建软连接
rm /boot/abc.log; ln -s /cba.log /boot/abc.log ;
创建硬链接:
只支持对文件做硬连接,且不能跨分区,源文件可删除,
ln 源文件 新连接文件 (可以加-d ,为硬连接,不加默认是硬连接)