特殊权限以及软、硬链接

特殊权限

文件或目录的特殊权限共有三类:suid、sgid以及sticky。

root用户是超级用户,不管一个文件的权限(普通权限)是怎样的,root都可以编辑。(若有隐藏权限,root可以先去掉隐藏权限,然后再编辑)

这里的/etc/shadow文件没有任何权限,但是root用户依然可以编辑它,使用vi编辑器,然后wq!保存退出。

suid

针对可执行文件设置,运行该命令时,临时获得命令拥有者的权限。

例如,可执行文件/usr/bin/passwd,因为有suid权限,所以普通用户在使用passwd这个命令时,将获得拥有者root的权限。使用passwd命令,实际上是更改/etc/shadow这个密码配置文件,这个配置文件没有任何权限,只有root能修改,所以就算/usr/bin/passwd这个文件针对其他人有x权限,但也执行不成功,因为其他人没有权限去修改/etc/shadow这个文件,所以需要给它suid权限,让它以root的身份运行这个命令。

chmod u+s 文件名:设置suid权限。

chmod u-s 文件名:撤掉suid权限。

如果使用 chmod u=rws 文件名,那么则会显示rwS,因为没有设置x权限。虽然一般不会出问题,但最好还是使用上面的+-来添加或删除suid权限。

sgid

可以针对可执行文件设置,也可以针对目录设置。

针对可执行文件设置时,运行该命令时,临时获得命令拥有组的权限。

chmod g+s 文件名:设置sgid权限。

chmod g-s 文件名:撤销sgid权限。

针对目录设置时,在该目录下新创建的所有文件或目录都会继承父目录的拥有组。(设置sgid之前本身就存在的子目录或者子文件不受影响)

sticky

粘滞位,或者叫防删除位。

针对目录设置,在该目录下的所有文件或目录只能被以下三类人删除:

1.该目录下的文件或目录的拥有者

2.该目录的拥有者(若拥有w权限)

3.root用户

chmod o+t 目录名:设置sticky权限。

chmod o-t 目录名:撤销sticky权限。

一个文件或目录能否被删除不是看它自己的w权限,而是要看它上级目录是否有w权限。

当一个目录被设置了sticky位时,而某个用户是这个目录的拥有者且拥有w权限,那么这个用户可以删除这个目录里面的所有文件,不管这些文件的拥有者是不是他。sticky权限只针对其他人!

数字法更改特殊权限:chmod  ----  文件名。(第一位数字代表特殊权限)

suid=4,sgid=2,sticky=1。

软、硬链接

硬链接

linux下的文件是通过索引节点(Inode)来识别文件的,硬链接可以认为是一个指针,指向文件索引节点的指针,系统并不为它重新分配inode。多个文件名指向同一索引节点是存在的,一般这种链接就是硬链接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。因为对应该索引节点有一个以上的链接,所以只删除一个链接并不影响索引节点本身和其它的链接,只有当最后一个链接被删除后,文件的数据块才会被释放,也就是说,文件才会被彻底删除。

每添加一个硬链接,文件的链接数就加1。

互为硬链接的文件的所有属性都相同(inode号、权限、修改时间等)。

硬链接之间存在同步机制,一处数据的改变会实时同步到另一处。

如果我们删除硬链接文件的原文件,硬链接文件仍然存在,而且保留了原有的内容。这时,系统就“忘记”了它曾经是硬链接文件,而把它当成一个普通文件。(一般来说硬链接里不存在原文件和链接文件的概念,只说它们互为硬链接,都一样)

互为硬链接的文件虽然显示的大小一样,但实际上只占用一份磁盘空间。

硬链接不像软链接那么好找,不会直接标识出来,但后面讲到的find命令可以找到硬链接。

硬链接有两个限制:

1.硬链接只针对文件,不能用于目录。

2.互为硬链接的文件必须在同一个文件系统(分区)里。因为每个文件系统都有自己一套inode表,不同文件系统中可能会有inode号一样的文件,这样的话做硬链接就会出问题。

使用方法:ln 原文件 链接文件

软链接

又叫符号链接,相当于windows中的快捷方式,里面包含的是到原文件的路径。

可以针对文件或目录,也可以链接不同文件系统的文件。

软链接原文件和链接文件拥有不同的inode号,表明他们是两个不同的文件。他们的各项属性均不相同。软链接的大小跟到原文件的路径有关,路径越长软链接越大。

对链接文件进行操作(读写),实际上是对原文件的操作。

删除原文件或者移动原文件到其他路径,则链接失效。

使用方法:ln -s 原文件 链接文件

原文地址:http://blog.51cto.com/12272471/2092724

时间: 2024-11-18 01:45:30

特殊权限以及软、硬链接的相关文章

inode 、软(硬)链接及fork与vfork

一.inode.软/硬链接 (一).1.inode 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区".每个扇区储存512字节(相当于0.5KB). 操作系统读取硬盘的时候[不会一个个扇区地读取,这样效率太低],而是一次性连续读取多个扇区,即一次性读取一个"块".这种由多个扇区组成的"块",是文件存取的最小单位. 文件数据都储存在"块"中.而文件的创建者.文件的创建日期.文件的大小等等信息需要一个区域进行存储文件信息.这种储存文

LINUX系统中,软/硬链接和inode的一些关系。

前言:众所周知硬盘是计算机不可缺少的一部分,不管这个计算机上运行着的是什么系统,但是存储设备,都是必不可少的,而inode则是磁盘存储时无法替代的一部分.所以我想谈一下在linux系统中关于inode和软/硬链接的一些个人见解. 目录: 什么是inode 什么是硬链接 什么是软链接 软/硬链接在linux上的基本使用方法 软/硬链接和inode的联系 一,什么是inode 理解inode,要从文件储存说起.文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector).每个扇区储存5

特殊权限set_uid set_gid stick_bit 软/硬链接文件

一.特殊权限set_uidset_uid:作用是保证普通用户临时拥有该命令所有者的身份,它就会临时拥有root用户的身份(给一个文件设置set_uid的前提是保证该文件是一个二进制.可执行的文件)[[email protected] ~]# which passwd/usr/bin/passwd[[email protected] ~]# ls -l /usr/bin/passwd-rwsr-xr-x. 1 root root 27832 Jun 10 2014 /usr/bin/passwd

find,vim的编程设置,SUID,SGID,SBIT,软.硬链接,重定向

1.find命令: 基本格式:find 路径 选项 参数 -name  : 根据文件名字查找 -size  :根据文件大小查找    +(比这个大)  -(比这个小) -type  :根据文件类型查找    - 普通文件 -d 目录 -l 链接文件 -c 字符设备文件 -b 块设备文件 -p 管道文件 -uid   : 根据用户的UID查找 -gid   :根据用户所属组查询 -nouser :查询没有所属用户的 -nogroup:查询没有所属组的 -perm  :根据权限查找 最后可以-exe

软/硬链接指令:ln

语法: ln  [选项]  原文件  目标文件 选项: -s 创建软连接(创建软链接时,若所在文件夹不一致,原文件要使用绝对路径) 硬链接特征: 1.拥有相同i节点和存储block块,可以看成是同一个文件 2.可以通过i节点来识别硬链接 3.不能跨分区 4.不能针对目录使用 软链接特征: 1.类似windows快捷方式 2.拥有自己的i节点和Block块,但数据块中只保存原文件的文件名和i节点号,并没有实际的文件数据 3.lrwxrwxrwx 4.删除原文件,软链接不能使用

RHCE系列之文件管理----硬链接和软链接

Linux 文件系统最重要的特点之一是它的文件链接. 链接是对文件的引用,这样你可以让文件在文件系统中多处被看到. 在 Linux 中,链接可以如同原始文件一样来对待.链接可以与普通的文件一样被执行.编辑和访问.对系统中的其它应用程序而言,链接就是它所对应的原始文件.当你通过链接对文件进行编辑时,你编辑的实际上就是原始文件.切记,链接并不是文件的副本. 在linux系统中,链接可分为两类:一类被称为硬链接(Hard Link),另一类被称为软链接或符号链接(Symbolic Link). 硬链接

Linux 硬链接与软链接 目录结构

理解 Linux 的硬链接与软链接 目录结构 /              根目录 ├── bin     存放用户二进制文件 ├── boot    存放内核引导配置文件 ├── dev     存放设备文件 ├── etc     存放系统配置文件 ├── home    用户主目录 ├── lib     动态共享库 ├── lost+found  文件系统恢复时的恢复文件 ├── media   可卸载存储介质挂载点 ├── mnt     文件系统临时挂载点 ├── opt     附

ln 软链接,硬链接 详解

这里说一下 ln ,这个是 linux  下创建链接的命令 链接分为两种 : 硬链接 , 符号链接(也叫 软链接) 硬链接 : 指向同一个 inode 的不同路径 软链接 : 指向另一个的链接(存的是字符个数,也就是大小为对应目录字符个数),所以软链接 权限不影响 硬链接 : 用法 :  ln  源文件  生成的链接文件 用 ls -l 可以看出来一个文件被硬链接的次数,ls -l 的结果在 username 前面的数值 用 ls -il  可以看出来 硬链接文件都是指向同一个 inode 节点

特殊权限set_uid,set_gid,stick_bit和软、硬链接

● suid前面讲的文件权限都是3位数,其实在前面还有一位,就是特殊权限,set uid,set gid,stick bit.该权限针对二进制可执行文件,使文件在执行阶段具有文件所有者的权限.例如passwd命令,当普通用户执行passwd命令时,可以临时获得root权限,从而可以更改密码. [[email protected] ~]# ll /usr/bin/passwd-rwsr-xr-x. 1 root root 25980 2月 22 2012 /usr/bin/passwd 数字表示为