2018.3.29 二周第四次课

特殊权限set_uid

概念:set_uid,当普通用户执行passwd命令时,可以**临时**拥有root权限。
set_uid 该权限针对二进制**可执行文件**,如:ls passwd

如下命令,查看

[[email protected] ~]# which passwd #查看这个命令在哪
/usr/bin/passwd
[[email protected] ~]# ls -l /usr/bin/passwd #查看passwd文件权限
-rwsr-xr-x. 1 root root 27832 6月 10 2014 /usr/bin/passwd #这里的s表示什么含义呢,s就是set_uid的权限,这个权限可以让普通用户(所有者)当他执行带set_uid这个命令时,这时候他就会被赋予这个所有者的临时权限。

修改密码权限的配置文件在:/etc/shadow下

[[email protected] ~]# ls /etc/shadow
/etc/shadow
[[email protected] ~]# ls -l !$ #在这里我们可以看见,这个文件是非常严谨,禁止任何用户对它进行任何操作。
ls -l /etc/shadow
----------. 1 root root 645 3月 28 21:58 /etc/shadow

注:在这里,root是超级用户权限,可以对他进行操作。

如何让一个普通用户临时拥有root权限,操作如下:

[[email protected] ~]# useradd zhang-02 #创建一个zhang-02的用户
[[email protected] ~]# tail -n3 /etc/passwd #查看最后三行是否创建成功
zhangzhen-03:x:1000:1000::/home/zhangzhen-03:/bin/bash
user1:x:1001:1001::/home/user1:/bin/bash
zhang-02:x:1002:1002::/home/zhang-02:/bin/bash
[[email protected] ~]# su - zhang-0 #切换用户
[[email protected] ~]$ whoami #查看当前是哪个用户登录的
zhang-02

如何给一个可执行的文件添加“s”(让普通用户临时拥有所有者权限),例如下:

[[email protected] ~]$ ls /root/ #普通用户没有访问的权限
ls: 无法打开目录/root/: 权限不够
[[email protected] ~]$ ls -ld /root/ #来看一下这个文件的权限,因为是普通用户,所以访问不了root
dr-xr-x---. 6 root root 185 3月 29 00:21 /root/

在这里,我们回到root用户下,执行:

.
在这里,绿色的/usr/bin/ls还并没有赋予“s权限”

我们可以给这个ls文件添加“s”权限
[[email protected] ~]# chmod u+s /usr/bin/ls
再来查看这个文件权限

添加成功!

再回到普通用户下,实验一下是否可以查看root下的文件呢

[[email protected] ~]$ ls /root/ #ok,这这里可以查到
anaconda-ks.cfg dior dior2 dior3
[[email protected] ~]$ ls -ld /root/
dr-xr-x---. 6 root root 185 3月 29 00:21 /root/

**如何删除已添加的“s”,权限,命令如下:

[[email protected] ~]# chmod u-s /usr/bin/ls

特殊权限set_gid (可以针对目录,所属组的身份,)该目录的背景颜色的是×××

概念:其功能和操作和set uid是一样的
该权限可以作用在二进制可执行文件,也可以作用在目录上;
当作用在文件上时,其功能和操作和set uid是一样的;
它会使文件在执行阶段具有文件所属组的权限;
目录被设置这个权限后,任何用户在此目录下创建的文件都具有和该目录所属的组相同的组。

操作命令如下:

特殊权限stick_bit

概念:可以理解为防删除位,文件是否可以被某用户删除;
主要取决于该文件所在的目录是否对该用户具有写权限;
如果没有写权限,则这个目录下的所有文件都不能删除;
同时也不能添加新的文件。
如果希望用户能够添加文件但不能删除该目录下其他用户的文件时;
则可以对父目录增加该权限,如设置后,就算用户对目录具有写权限;
也是不能删除其他用户的文件。
命令如下:chmod u=b /tmp/

示例
在普通用户下创建个文件

[[email protected] tmp]$ touch zhang1 #在/tmp下创建个zhang1的文件
[[email protected] tmp]$ ls
zhang1
[[email protected] tmp]$ chmod 777 zhang1 #赋予最高的权限
[[email protected] tmp]$ ls -l zhang1#查看这个文件的所有者和所属组是谁
-rwxrwxrwx. 1 zhang-02 zhang-02 13 3月 29 23:26 zhang1

切到另外一个普通用户 user1下,查看是否可以编辑和删除。

[[email protected] tmp]# su - user1
[[email protected] tmp]$ ls
zhang1
[[email protected] tmp]$ vi zhang1 # 可以编辑,已测试
[[email protected] tmp]$ rm -f zhang1 #但是在这里并不可以删除
rm: 无法删除"zhang1": 不允许的操作

软链接文件

概念:软连接类似于windows的快捷方式,
软链接不只可以连接文件,也可以链接目录。
软连接后面可以跟绝对路径;
也可以跟相对路径,相对路径的话得在你要去的目录下
命令如下:ln -s [源文件] [目标文件]
### 建议使用绝对路径。
如果你创建软连接不存在的时候,会红色常闪,那么直接在这个路径下touch一个文件即可。

软连接是什么样子呢,如下图,浅蓝色:

如何创建软链接,命令如下:ln -s [源文件] [目标文件]
例:

[[email protected] /]# mkdir /root/111
[[email protected] /]# ln -s /tmp/yum.log /root/111/
[[email protected] /]# ls -l /root/111/
总用量 0
lrwxrwxrwx. 1 root root 12 3月 29 23:55 yum.log -> /tmp/yum.log

如何创建软链接目录,操作如下:ln -s [源目录] [目标目录]

[[email protected] /]# ln -s /tmp/dior/ /root/111/zhang
[[email protected] /]# ls -l /root/111
总用量 0
lrwxrwxrwx. 1 root root 12 3月 29 23:55 yum.log -> /tmp/yum.log
lrwxrwxrwx. 1 root root 10 3月 29 23:59 zhang -> /tmp/dior/

硬链接文件

概念:硬链接不支持对目录做硬链接,只支持对文件做。
即便是硬链接源地址被删除,也不受影响,相当于windows复制。
inode号如果相同有N个文件,也不会占用空间,因为数据都存在了inode里面。
文件做硬链接可以,但是有一个前提,不可以跨分区
命令如下 :ln [源地址] [目标地址]

查看inode号:

#如下命令中,第二段表示inode号
[[email protected] ~]# ls -l
总用量 8
drwxr-xr-x. 2 root root 34 3月 29 23:59 111
-rw-------. 1 root root 6901 3月 27 22:40 anaconda-ks.cfg
drwxr-xr-x. 2 root user1 32 3月 28 22:44 dior
d---------. 3 root root 45 3月 28 23:26 dior2
drwxrwxr-x. 2 root root 19 3月 29 00:22 dior3
[[email protected] ~]# ls -i #查看inode号
499815 111 33574978 anaconda-ks.cfg 499801 dior 33575028 dior2 16784710 dior3

原文地址:http://blog.51cto.com/13646023/2092760

时间: 2024-10-07 09:29:35

2018.3.29 二周第四次课的相关文章

二周第四次课(12月21日)

二周第四次课(12月21日)2.18 特殊权限set_uid2.19 特殊权限set_gid2.20 特殊权限stick_bit2.21 软链接文件2.22 硬连接文件 特殊权限: set_uid (拥有者特殊权限:) #chmod命令: 文件权限属性设置: chmod命令用来变更文件或目录的权限. 在UNIX系统家族里,文件或目录权限的控制分别以; 读取.写入.执行3种一般权限来区分,另有3种特殊权限可供运用. 用户可以使用chmod指令去变更文件与目录的权限, 设置方式采用文字或数字代号皆可

二周第四次课(2月1日)笔记

二周第四次课(2月1日)2.18 特殊权限set_uid2.19 特殊权限set_gid2.20 特殊权限stick_bit2.21 软链接文件2.22 硬连接文件 2.18 特殊权限set_uid特殊权限set_uid普通用户可以用passw改自己的密码.改密码要改一个密码的文件ahadow,普通用户不可能改.要想普通用户能改自己密码,又不能写文件,要设置set_uid.set_uid可以使普通用户临时获得passwd文件的root的身份. 有没有x权限都可以执行 2.19 特殊权限set_g

二周第四次课(2月1日)

2.18 特殊权限set_uid 2.19 特殊权限set_gid 2.20 特殊权限stick_bit 2.21 软链接文件 2.22 硬连接文件 2.18 特殊权限set_uid #which passwd /usr/bin/passwd # ls -l /usr/bin/passwd -rwsr-xr-x. 1 root root 27832 6月  10 2014 /usr/bin/passwd -rws中的s是 set_uid的权限 passwd  支持让普通用户更改自己密码 改密码需

二周第四次课

2.18 特殊权限set_uid set_uid使二进制的执行程序,普通用户在执行时临时有所有者身份 set uid设置了非可执行文件没有意义 #ll /usr/bin/passwd -rwsr-xr-x. 1 root root 27832 Jun 10  2014 /usr/bin/passwd ll /etc/shadow ----------. 1 root root 640 Dec  1 03:48 /etc/shadow gpasswd -d aiker root //从root组删

2018.4.13 三周第四次课

进入编辑模式 概念:在一般模式下不可以修改某个字符,如果要修改字符,只能进入编辑模式: 从一般模式进入编辑模式只需要按如下7个字母任意一个即可. 在进入编辑模式时,在屏幕的尾行会显示"INSERT或REPLACE"的字样(插入) 从编辑模式回到一般模式,只需要按"ESC"键即可. "编辑命令介绍: i 在当前字符前插入: I 在光标所在行的行首插入: a 在当前字符后插入: A在光标所在行的行尾插入 o 在当前行的下一行插入新一行 O 在当前行的上一行插入

2018.4.21 五周第四次课(shell特殊符号,cut截取等命令)

shell特殊符号_cut命令 概念:cut命令用来截取某一个字段 格式:cut -d '分割字符' [-cf] n,这里的n是数字,该命令选项有如下几个: - d 后面跟分割字符,分割字符要用单引号括起来 - c 后面接的是第几个字符 - f 后面接的是第几个区块 cut命令用法如下 [[email protected] do]# cat /etc/passwd |head -2root:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/no

五周第四次课(1月11日) 8.6 管道符和作业控制 8.7/shell变量 8.8 shell变量 8.9 环境变量配置文件

五周第四次课(1月11日)8.6 管道符和作业控制8.7/shell变量8.8 shell变量8.9 环境变量配置文件扩展bashrc和bash_profile的区别 http://ask.apelearn.com/question/7719 简易审计系统: http://www.68idc.cn/help/server/linux/2014042190951.html 关于PROMPT_COMMAND环境变量的含义 http://www.linuxnote.org/prompt_command

二周第五次课(12月22日)

二周第五次课(12月22日)2.23/find命令2.24/find命令2.25/ find命令2.26 文件名后缀 其他搜索文件命令: · which搜索文件是从环境变量PATH里找的 · whereis在事先准备好的库里搜索 ·  locate需要安装mlocate包,之后使用updatedb命令生成一下文件列表路径数据库,然后才能搜索. 快捷键: ctrl + l清屏 crtl + d 退出终端 ctrl + c 终止运行或暂停 crtl +u 删除光标前面所有的 crtl + e光标挪到

三周第四次课(2月8日)

三周第四次课(2月8日)4.1df命令4.2du命令4.3/4.4磁盘分区 4.1df命令 用命令man查df的说明文档 命令df 命令df -h 命令df -i:查看inodes使用状况. 命令df -M:表示以MB 为单位显示. 4.2命令du 命令du用来查看文件和目录的大小. 4.3 磁盘分区(上) 4.3 磁盘分区(下)在vm10添加新硬盘 选10G 点完成. 原文地址:http://blog.51cto.com/461565/2070531