LAMP编程之Linux(3)

LAMP编程之Linux(3)

6、sudo(重点)

问题:reboot、shutdown、init、halt,在普通用户身份上都是操作不了,但是有些特殊的情况下又需要有执行权限。又不可能让root用户把自己的密码告诉普通用户,这个问题该怎么解决?

 

该问题是可以被解决的,可以使用sudoswitch user do)命令来进行权限设置。Sudo可以让管理员(root)事先定义某些特殊命令谁可以执行

 

默认sudo中是没有除root之外用户的规则,要想使用则先配置sudo。

 

Sudo配置文件:/etc/sudoers

该文件默认只读,不允许修改,因此不能直接修改。

 

a. 配置sudo文件请使用“#visudo”(后不加任何内容),打开之后其使用方法和vim一致

 

b. 配置普通用户的权限

  

Root表示用户名,如果是用户组,则可以写成“%组名”

ALL:表示允许登录的主机(地址白名单)

(ALL):表示以谁的身份执行,ALL表示root身份

ALL:表示当前用户可以执行的命令,多个命令可以使用“,”分割

 

案例:使用admin这个用户,赋予其添加用户权限。

注意:在写sudo规则的时候不建议写直接形式的命令,而是写命令的完整路径。

路径可以使用which(whereis亦可)命令来查看

语法:#which 指令名称

Whereis会找出一些非可执行文件,建议使用which

在添加好对应的规则之后就可以切换用户,切换到普通用户admin,再去执行:

此时要想使用刚才的规则,则以以下命令进行:

#sudo 需要执行的指令(就是放权的指令名称)

此时输入的密码是当前执行sudo指令的用户的密码,而非root密码。

 

在输入sudo指令之后需要输入当前的用户密码进行确认的操作(不是root用户密码),输入之后在接下来5分钟内再次执行sudo指令不需要密码

 

补充:在普通用户下怎么查看自己具有哪些特殊权限呢?

#sudo  -l                          表示list

最后:sudo不是任何Linux分支都有的命令,常见centos与ubuntu都存在sudo命令。

 

作业:使用sudu实现让普通用户具备添加、删除用户的权限。

二、运行级别

运行模式也可以称之为运行级别(Running Level

 

在linux中存在一个进程:init (initialize,初始化),进程id是1。

查看进程:#ps -ef|grep init

该进程存在一个对应的配置文件:inittab(系统运行级别配置文件,位置/etc/inittab)

 

文件的主要内容:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值