文档介绍:第八章系统管理--- 任务管理与进程管理
本章目标
了解任务管理的作用
学会在linux环境下配置at服务与cron服务
熟练掌握多线程管理的指令操作
su命令
有时您可能想作为其他用户发出命令。
简单的方法就是用su命令。用su, 您能‘变成’ root(或其他的用户)登录。
su命令后不接任何用户名时将当前用户名转换为root用户,需要提供root口令。
su命令
在下面的例子中, blarg用户决定做一些root要做的事:
[******@bigdog blarg]$ su
Password:
[******@bigdog blarg]#
可以看到, 输入su命令后, 要求输入口令-- root的口令。正确输入后, 出现了通常的shell 提示符。如果仔细看, 会发现这个shell提示符有所不同。第一, 它以root开始, 表明当前用户已经改变了。其次, 提示符的结束字符不同, 从美元符号($)变成了井号(#)。这是表明shell是以root运行。
su命令
也可以用su变成其他用户。必须作为root运行su, 给出用户名。所以, 从root变成blarg, 需输入命令su blarg。这时不需要口令-- 您已经是root, 所以口令是多余的。
su和su –的区别
su –命令用于转换当前用户到指定的用户帐号,并改变相应的环境变量为新用户的值。
sudo通过维护一个特权到用户名映射的数据库将特权分配给不同的用户,这些特权可由数据库中所列的一些不同的命令来识别,为获得某一特权,有资格的用户只需简单的输入sudo与命令之后就可以按照提示输入口令(用户自己的口令,不是root的口令)。
sudo由文件/etc/sudoers进行配置,其中包含所有可以访问sudo的用户列表并定义了他们的特权。如:/etc/sudoers
liming ALL=(ALL) ALL
使用户liming作为root身份访问所有应用程序。
liming用户要以root身份执行useradd命令:
sudo /usr/sbin/useradd sam
命令中要写绝对路径。
配置文件/etc/sudoers必须使用visudo来编辑。
需要把linux中存在的用户名、主机名和许可的命令列表以标准的格式加入/etc/sudoers并保存就可以生效。
如:允许用户gem在主机sun上执行reboot和shutdown命令:
gem sun=/usr/bin/reboot, /sbin/shutdown
注:命令一定要绝对路径,避免与其它目录的同名命令冲突,造成安全隐患。
gem用户想执行reboot命令时:
$ sudo /usr/bin/reboot
可以利用别名简化配置。别名类似组的概念,有用户别名、主机别名和命令别名。多个用户可以先用一个别名来定义,然后规定他们可以执行什么命令,规定时就可以使用别名。User_Alias、Host_Alias、Cmnd_Alias。
Host_Alias SERVER=no1
User_Alias ADMINS=liming,gem
Cmnd_Alias SHUTDOWN=/sbin/halt, /sbin/shutdown, /sbin/reboot
ADMINS SERVER=SHUTDOWN