文件权限
- 所有者:
u - 所属组:
g - 其他用户:
o增加权限:
chmod u/g/o +r/w/x,取消权限:-r/w/xr、w、x的权限值可表示为4、2、1
用户管理
useradd <username>passwd <username>,为新添加的用户设置密码或为已有的用户更改密码上述命令只有
root才有权限执行
为了避免不可逆的破坏操作系统的操作发生,实际应用中通常不用root身份登录OS。此时如果想执行类似的受限命令,我们需要在命令前加上sudo:
| 123456789101112131415 | [root@hadoop ~]# su hadoop[hadoop@hadoop root]$ useradd tombash: /usr/sbin/useradd: 权限不够[hadoop@hadoop root]$ sudo useradd tomWe trust you have received the usual lecture from the local SystemAdministrator. It usually boils down to these three things: #1) Respect the privacy of others. #2) Think before you type. #3) With great power comes great responsibility.[sudo] password for hadoop:hadoop 不在 sudoers 文件中。此事将被报告。 |
|---|---|
su [username],通过用户名切换到指定用户,若未指定用户名则默认切换到root
上述我们切换到普通用户hadoop并试图通过sudo再次执行受限命令,却又被提示hadoop用户不在sudoers文件中。
这是因为普通用户要想通过sudo片刻获得执行某些特权命令必须让root事先在/etc/sudoers中添加相关的配置,如配置hadoop可以在任何位置执行任何命令(这是最大的权限范围,也是root的):
| 123456789101112131415161718 | [hadoop@hadoop root]$ su 密码:[root@hadoop ~]# vi /etc/sudoers…## Next comes the main part: which users can run what software on## which machines (the sudoers file can be shared between multiple## systems).## Syntax:#### user MACHINE=COMMANDS#### The COMMANDS section may have other options added to it.#### Allow root to run any commands anywhereroot ALL=(ALL) ALLhadoop ALL=(ALL) ALL #配置hadoop可以在哪些地方执行哪些特权命令… |
|---|---|
/etc/sudoers默认是只读的,可通过:wq!强制保存。
于是hadoop就可以执行特权命令了:
| 1234567891011 | [root@hadoop testvi]# su hadoop[hadoop@hadoop testvi]$ sudo useradd tom[sudo] password for hadoop:[hadoop@hadoop testvi]$ sudo passwd tom更改用户 tom 的密码 。新的 密码:无效的密码: WAY 过短无效的密码: 过于简单重新输入新的 密码:passwd: 所有的身份验证令牌已经成功更新。 |
|---|---|
————————————————
