【9.4】su、sudo、磁盘管理

本文介绍了Linux中su和sudo命令的使用,包括如何切换用户身份以及如何限制root远程登录。同时,详细讲解了df和du命令用于检查磁盘使用情况,以及磁盘分区的管理,包括fdisk的使用来添加和管理磁盘分区。
摘要由CSDN通过智能技术生成

3.7 su命令

  • SU - 用户名 切换用户(加 - 为了彻底切换用户,包括自己的配置,环境变量)

  • id 用户名 查看用户的uid,gid和组、扩展组等信息

  • whoami 查看当前用户名

[root@arslinux-01 ~]# su - arslinux
上一次登录:四 3月 21 20:04:00 CST 2019pts/0 上
[arslinux@arslinux-01 ~]$ pwd
/home/arslinux
[arslinux@arslinux-01 ~]$ whoami
arslinux
  • su - -c “命令” 用户名 不登录其他用户的情况下以指定用户身份执行命令
[arslinux@arslinux-01 ~]$ su - -c "touch /tmp/arslinux.111" arslinux
密码:
[arslinux@arslinux-01 ~]$ ll -t /tmp/ |head -3
总用量 12
-rw-rw-r--. 1 arslinux arslinux   0 3月  21 20:16 arslinux.111
drwx------. 2 root     root       6 3月  21 19:58 vmware-root_6250-725846432
[arslinux@arslinux-01 ~]$ id arslinux
uid=1000(arslinux) gid=1000(arslinux)=1000(arslinux),1005(grp2),1007(user5)
  • 如果普通用户没有家目录,前缀显示为-bash-4.2$
[arslinux@arslinux-01 ~]$ su - arslinux
密码:
上一次登录:四 3月 21 20:16:38 CST 2019pts/0 上
[arslinux@arslinux-01 ~]$ su - user5
密码:
su: 鉴定故障
[arslinux@arslinux-01 ~]$ su
密码:
[root@arslinux-01 arslinux]# passwd user5
更改用户 user5 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@arslinux-01 arslinux]# su - arslinux
上一次登录:四 3月 21 20:22:49 CST 2019pts/0 上
[arslinux@arslinux-01 ~]$ su - user5
密码:
最后一次失败的登录:四 3月 21 20:22:59 CST 2019pts/0 上
最有一次成功登录后有 1 次失败的登录尝试。
su: 警告:无法更改到 /home/user5 目录: 没有那个文件或目录
-bash-4.2$ 
-bash-4.2$ 
-bash-4.2$ 
-bash-4.2$

**解决方法:**给普通用户增加家目录

[root@arslinux-01 ~]# mkdir /home/user5
[root@arslinux-01 ~]# chown user5:user5 /home/user5/
[root@arslinux-01 ~]# cp /etc/skel/.bash* /home/user5/
[root@arslinux-01 ~]# chown -R user5:user5 !$
chown -R user5:user5 /home/user5/
[root@arslinux-01 ~]# su - user5
上一次登录:四 3月 21 20:24:06 CST 2019pts/0 上
[user5@arslinux-01 ~]$ pwd
/home/user5
  • 普通用户su 到 root 用户只要知道 root 密码就可以
[user5@arslinux-01 ~]$ pwd
/home/user5
[user5@arslinux-01 ~]$ su -
密码:
上一次登录:四 3月 21 20:23:33 CST 2019pts/0 上

3.8 sudo命令

  • sudo 让普通用户临时以指定用户的身份去执行一条命令(通常都是给普通用户授权 root 用户身份)
    visudo 更改配置文件sudoer
    visudo 可以检测语法错误,而vi则不能

  • 在配置文件中更改如下后保存退出

##Allow root to run any commands anywhere
root		ALL=(ALL)	ALL
user1	ALL=(ALL)	/usr/bin/ls, /usr/bin/cat, /usr/bin/mv
  • 命令要写绝对路径,命令之间要逗号加空格分开
    在这里插入图片描述

  • root切换到普通用户下,无法使用命令,但可以sudo 使用命令,说明visudoer中的配置起了作用

[root@arslinux-01 ~]# su - arslinux
上一次登录:四 3月 21 22:03:32 CST 2019pts/0 上
[arslinux@arslinux-01 ~]$ ls /root/
ls: 无法打开目录/root/: 权限不够
[arslinux@arslinux-01 ~]$ sudo ls /root/

我们信任您已经从系统管理员那里了解了日常注意事项。
总结起来无外乎这三点:

    #1) 尊重别人的隐私。
    #2) 输入前要先考虑(后果和风险)。
    #3) 权力越大,责任越大。

[sudo] arslinux 的密码:
111    123	   1_hard.txt	1.txt	2222.txt.bak  234    anaconda-ks.cfg
11111.txt  123.txt  1_soft.txt	1.txz~	222.txt       2.txt  gakki.jpg
  • 通过sudo给普通用户授权部分命令,而不是给普通用户密码,这样更安全

  • NOPASSWD 让普通用户不用输入密码就可以执行命令
    在这里插入图片描述

[root@arslinux-01 ~]# visudo
[root@arslinux-01 ~]# su - user5
上一次登录:四 3月 21 20:28:53 CST 2019pts/0 上
[user5@arslinux-01 ~]$ ls /root/
ls: 无法打开目录/root/: 权限不够
[user5@arslinux-01 ~]$ sudo ls /root/
111	   123	    1_hard.txt	1.txt	2222.txt.bak  234    anaconda-ks.cfg
11111.txt  123.txt  1_soft.txt	1.txz~	222.txt       2.txt  gakki.jpg
  • 也可以在sudoer里,给命令做alias别名:
    在这里插入图片描述
    原先命令位置改为别名 ARSLINUX_CMD
    在这里插入图片描述
[root@arslinux-01 ~]# visudo
[root@arslinux-01 ~]# su - arslinux
上一次登录:四 3月 21 22:05:11 CST 2019pts/0 上
[arslinux@arslinux-01 ~]$ ls /root/
ls: 无法打开目录/root/: 权限不够
[arslinux@arslinux-01 ~]$ sudo ls /root/
[sudo] arslinux 的密码:
111	   123	    1_hard.txt	1.txt	2222.txt.bak  234    anaconda-ks.cf
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值