? ? ?在linux基础命令第五弹中http://t.csdnimg.cn/Fu5cJ我们学到了关于如何查看命令选项的帮助手册,到此,基础命令的学习先告一段落,我们来学习linux有关用户和权限的问题,这是很有必要的,如果任何人都可以修改我们的文件内容,那岂不是乱套了?所以我们有些是不能修改的,什么可以修改,什么不能修改,下面就带你看看!
? ? ?无论是windows还是linux,都采用多用户管理的模式进行权限管理
? ? ?在linux系统中,拥有最大权限的用户为:root,而在其他时间我们一直使用的是普通用户:azfei,而不同的用户又可以组成用户组
? ? ? ?root用户拥有最大的权限,而普通用户在许多地方的权限是受限的,比如:
? ? ? ?我们想要在普通用户状态下,在根目录下创建test目录,发现是无法创建的:
? ? ? ?而当我们切换到root用户后,发现这个命令就可以执行了:
? ? ? 总的来说,普通用户的权限一般在其HOME目录内是不受限的,一旦超出了这个范围,大多数地方,只有只读和执行权限,没有修改权限。
? ? ? ?在此之前,我就对su、su root、su - root、sudo命令进行了简单的讲解和区分,su(Switch User)命令就是用于账户切换的系统命令
? ? ? ?语法:su [-] 用户名
? ? ? ? ? ? ? ? ??[-]是可选的,表示是否在切换用户后加载环境变量,后面再说
? ? ? ? ? ? ? ? ? 参数表示要切换到的用户名,切换用户后可以通过exit命令退回到上一个用户,也可以使用ctrl+d。
? ? ? ? ? ? ? ? ? 普通用户切换到root用户需要输入密码,而root用户切换到其他用户无需密码
? ? ? ?虽然我们可以使用root,但长时间的使用还是可能会带来系统损坏的问题,所以我们找个代理人sudo,用它来为普通的命令授权,临时以root身份执行。
? ? ? ?语法:sudo 其他命令
? ? ? ?我们仍需要为普通用户配置sudo认证
? ? ? ? 切换到root用户,执行visudo命令或者vim /etc/sudoers,在文件的最后添加这行文字
azfei ALL=(ALL) NOPASSWD:ALL
? ? ? ? ? ?最后通过wq保存,此时再切换到普通用户,执行的命令就以root的身份运行了。
? ? ? ? ? linux系统可以配置多个用户、多个用户组、用户加入多个用户组中。
? ? ? ? ? linux中关于权限的管控级别有2个:1是针对用户的权限控制,2是针对用户组的权限控制。
? ? ? ? ? 针对某个文件,可以控制用户的权限,也可以控制用户组的权限,所以我们需要学习有关用户和用户组的基础命令。
? ? ? ? ? ? 接下来的命令都需要root用户执行
? ?? ? ? ? ?创建用户组
groupadd 用户组名
? ? ? ? ? ? 删除用户组
groupdel 用户组名
? ? ? ? ? ? ?接下来的命令都需要root用户执行
? ? ? ? ? ? ?创建用户
useradd [-g -d] 用户名
选项:-g指定用户的组,不指定会创建同名组并自动加入,所以使用这个选项需要组已经存在
-d指定用户HOME路径,不指定HOME目录默认在:/home/用户名
? ? ? ? ? ? ?删除用户
userdel [-r] 用户名
选项:-r,删除用户的HOME目录,不使用删除时,HOME目录保留
? ? ? ? ? ? 查看用户所在组
id [用户名]
如果没有参数则查看自身
? ? ? ? ? ?修改用户所在组
usermod -aG 用户 用户组名 将指定用户加入指定用户组
? ? ? ? ? 使用getent命令,也可以查看系统中有哪些用户组
? ? ? ? ? ?语法:getent group
? ? ? ? ? ? ? ? ? ? ?查看的信息包括组名称、组认证、组ID
? ? ?今天的学习就到这里了,下次我们学习有关权限控制操作的命令,再见!