特殊权限set_uid默认情况下 , 在新安装好的Linux系统下 , 仅有一个命令是拥有set_uid特殊权限的 .

拥有s权限的命令(文件) : 为了确保非所有者用户 , 在使用该命令时,临时拥有所有者的身份 ; 给一个文件设置set_uid特殊权限,前提是该文件是一个可执行的二进制文件(一般都是给命令加上这样的特殊权限) , 否则没有任何意义 , 就如给一个文件夹设置一个set_uid权限一样 , 没有任何实际意义 .

1. 给命令加上set_uid特殊权限格式 chmod u+s 命令的文件路径 chmod u+s /usr/bin/ls chmod u-s /usr/bin/ls/root/目录的权限 , 是只有root用户和root组下的用户才能访问的 , 其他用户没有任何权限 .[[email protected] ~]# ls -ld /root/dr-xr-x---. 3 root root 178 6月   8 14:16 /root/那么如果用一个普通用户去查看/root/目录下的内容时 , 肯定会报权限不足的错误 .[[email protected] ~]$ ls -l /root/ls: 无法打开目录/root/: 权限不够给ls命令添加上set_uid特殊命令后 , 验证能否临时加上只有root用户才有的查看/root/目录的权限[[email protected] ~]# which lsalias ls=‘ls --color=auto‘

/usr/bin/ls[[email protected] ~]# ls -l /usr/bin/ls-rwxr-xr-x. 1 root root 117656 11月  6 2016 /usr/bin/ls[[email protected] ~]# chmod u+s /usr/bin/ls[[email protected] ~]# !lsls -l /usr/bin/ls-rwsr-xr-x. 1 root root 117656 11月  6 2016 /usr/bin/ls[[email protected] ~]#

切换到allin1的普通用户 , 再次使用ls命令 , 看看普通用户是否拥有了root用户的权限 , 可以查看/root/目录[[email protected] ~]# ssh -p 22 [email protected]130Last login: Fri Jun  9 08:54:21 2017 from 192.168.245.132[[email protected] ~]# whoamiroot

[[email protected] ~]# su - allin1上一次登录:五 6月  9 08:54:30 CST 2017pts/3 上

[[email protected] ~]$ whoami

allin1

[[email protected] ~]$ ls -l /root/

总用量 8-rwx--x--x. 1 root root    0 6月   8 14:16 2.txt

-rw-------. 1 root root 7728 6月   6 22:11 anaconda-ks.cfg.1[[email protected] ~]$

2. 给命令添加set_uid特殊权限的第二种方式格式 : chmod u=rws 命令文件路径 chmod u=rws /usr/bin/ls

这样修改后的ls命令的权限 , 和第一种方式修改后的ls命令权限有一些区别 , 但是效果却一样[[email protected] ~]# chmod u-s /usr/bin/ls[[email protected] ~]# ls -l /usr/bin/ls-rwxr-xr-x. 1 root root 117656 11月  6 2016 /usr/bin/ls

[[email protected] ~]# chmod u=rws /usr/bin/ls[[email protected] ~]# ls -l /usr/bin/ls-rwSr-xr-x. 1 root root 117656 11月  6 2016 /usr/bin/ls

[[email protected] ~]#

这样添加set_uid的特殊权限后 , ls命令的权限变成rwS , 是一个大写的S , 而第一种方式添加特殊权限后 , ls命令的权限是rws , 是一个小写的s ... 这两者的区别是 , 第二种方式 , 缺少了x权限 , 要想也成为小写的s , 那么也可以额外在添加上x权限 , 不过这个并不影响ls命令临时拥有了root用户权限 .[[email protected] ~]$ ls -l /usr/bin/ls

-rwSr-xr-x. 1 root root 117656 11月  6 2016 /usr/bin/ls

[[email protected] ~]$ ls -l /bin/ls

-rwSr-xr-x. 1 root root 117656 11月  6 2016 /bin/ls

[[email protected] ~]$ ls -l /root/

总用量 8-rwx--x--x. 1 root root    0 6月   8 14:16 2.txt

-rw-------. 1 root root 7728 6月   6 22:11 anaconda-ks.cfg.1[[email protected] ~]$

加上x权限[[email protected] ~]# chmod u+x /usr/bin/ls[[email protected] ~]# ls -l /usr/bin/ls-rwsr-xr-x. 1 root root 117656 11月  6 2016 /usr/bin/ls

linux set权限,Linux 特殊权限set_uid(示例代码)相关推荐

  1. linux 卸载 bison,linux-无法编译Bison示例代码

    我正在阅读LFS,并且遇到过野牛,在其他地方之前我都看过它,所以我认为我应该多了解一点.我发现this page from UC Riverside CS department,示例代码不起作用.有人 ...

  2. linux 蓝牙脚本,arm linux串口蓝牙工具移植及使用(示例代码)

    ap6212中串口蓝牙在linux下的使用记录 一.linux蓝牙工具移植 主要使用到的工具及相关库如下: bluez-libs-3.36 libxml2-2.7.4 dbus-1.0.2 glib- ...

  3. linux运维初学作业,Linux运维班第二次作业(示例代码)

    一.列出当前系统上所有已经登录的用户的用户名(同用户登录多次只显示一次). 题目并没有说明取出的用户名是否允许排序处理,所以可写成: # who | cut -d' ' -f1 | sort -u 二 ...

  4. linux搜索关键字并定位,Linux系统中文件定位与查找(示例代码)

    Linux系统中文件查找 关键词 文件查找 | find | locate 本文主要介绍有关文件查找的两个命令--find和locate,以及压缩打包的命令--compress, gzip,bzip2 ...

  5. Linux内核:网络过滤器简介与示例代码

    目录 简单的例子 实施 用户空间处理 Linux的一大优点是其网络功能.路由器,交换机等许多网络产品均基于嵌入式Linux操作系统. 网络过滤是Linux内核中很好的基础结构,它使我们能够过滤和操作网 ...

  6. linux ipc shmget 例子,Linux IPC之共享内存C 事例(示例代码)

    简介 共享内存(shared memory)是最简单的Linux进程间通信方式之一.使用共享内存,不同进程可以对同一块内存进行读写.由于所有进程对共享内存的访问就和访问自己的内存空间一样,而不需要进行 ...

  7. linux一号进程和二号进程,Linux系统管理10——进程和计划任务管理(示例代码)

    Linux系统管理10--进程和计划任务管理 一.程序和进程的关系 1.程序 ·保存在硬盘.光盘等介质中的可执行代码和数据 ·静态保存的代码 2.进程 ·在CPU及内存中运行的程序代码 ·动态执行的代 ...

  8. linux环境用pycharm开发,Linux中部开发环境(Pycharm)(示例代码)

    你可以通过下面网站获取 PyCharm .屏幕中央有一个很大的 'Download' 按钮. https://www.jetbrains.com/pycharm/download/#section=l ...

  9. linux验证文件的完整性,linux中校验文件完整性(md5,sha1)(示例代码)

    经常在Linux下下载软件的人,一定会有一个良好的习惯:校验文件的hash,以确定文件的完整性甚至是安全性.我配置环境的时候也恰好用到了,笔者的是一个lubuntu的机子.这里我大致做个记录.(不了解 ...

最新文章

  1. 使用 Sticky-Kit 实现基于 jQuery 的元素固定效果
  2. 基于kryo序列化方案的memcached-session-manager多memcached...
  3. 【c语言】输入输出格式练习
  4. android 9.0室内定位方案,Android GPS室内定位问题的解决方法(location为null)
  5. 通信专业学python有用吗-通信算法工程师需要学python吗
  6. c++层次遍历_动画:二叉树遍历的多种姿势
  7. 2018091-2 博客作业
  8. 64 位 win7(2008 r2) 使用PLSQL Developer x86 32bit的解决方法
  9. 外连接OUTER JOIN(三十五)
  10. python程序员工资-均薪3万?Python程序员就业各岗位薪资一览,你拖后腿了吗?...
  11. jQuery回调、递延对象总结(中篇) —— 神奇的then方法
  12. python github 12306 文贤平_GitHub排名第一!免费最强“抢票神器”在手,程序员抢票再不用跪求加速包...
  13. SQL Server不允许保存更改【解决】
  14. Java正则表达式全解
  15. Windows2012安装AppFabric失败返回1603错误的解决方案
  16. 恶意程序新趋势-钻粪坑+数签
  17. 采样示波器和实时示波器的原理及优势
  18. python eel 无边框_荐帮你解剖Python的一个轻量级桌面GUI开发第三方库:Eel,让它体无完肤...
  19. IDEA安装流程(dear dad级教程)
  20. web端接收读卡器卡片信息

热门文章

  1. Windows坐标系统
  2. 【剑指offer】面试题68 - I:二叉树的最近公共祖先(Java)
  3. Leetcode--164. 最大间距
  4. java游戏应龙女魃转世_应龙和女魃的凄美爱情,究竟是爱情,还是阴谋?
  5. h命令可以获取mysql客户端的帮助信息_如何获取MySQL帮助信息
  6. Python爬虫用Selenium抓取js生成的文件(一)
  7. python实现采样函数_python中resample函数实现重采样和降采样代码
  8. centos7调节虚拟机字体_初次安装虚拟机中Ubuntu16.04系统设置的一些小问题(小白教程)...
  9. VS2015无法打开包括文件corecrt.h 无法打开文件ucrtd.lib
  10. Verilog HDL语言实现ROM、RAM+有限状态机