Linux可以支持多用户,多用户组,用户加入多个组,创建新用户和组都需要root执行。
创建组和用户的命令,CentOS和Debian是有区别的,理论上讲,CentOS的命令就是Liunx原始命令,Debian虽然也能执行,但缺失一些功能细节,而Debian的命令则是通过Perl脚本的方式执行,两者虽然相似,但实现方式和用户体验有所不同。
CentOS
groupadd 用户组名
groupdel 用户组名
useradd [-g -d] 用户名
-g指定用户的组,不指定-g,会创建同名组并自动加入,指定-g需要组已经存在,如果已经存在同名组,必须使用-g,否则会提示:useradd: group test exists - if you want to add this user to that group, use -g.
-d指定用户HOME路径,不指定,HOME目录默认在:/home/用户名
创建成功后再通过passwd命令设置密码
userdel [-r] 用户名
-r指删除用户的HOME目录,不使用-r,删除用户是,保留用户目录
Debian
addgroup 用户组名
delgroup 用户组名
adduser [-home 用户目录] [-gid 已存在的用户组id] 用户名
通过此命令,会依次输入密码、确认密码等信息
deluser [--remove-home] 用户名
以下命令通用
w #详细信息,包括当前账号在其它客户端的登录信息
who #账号及登录时间,包括当前账号在其它客户端的登录信息
whoami #仅显示当前使用的账号
id [用户名] #用户名为被查看的用户,如果不提供则查看当前用户信息
groups #当前账号所属的组
groups 用户名 #用户所在的基本组 : 附加组(一个用户多个组)
usermod -g 用户组 用户名
usermod -aG 用户组 用户名
-a 代表 append,意思是追加用户到一个特定的组,而不是更改用户的主组。
-G 允许指定用户应该被添加到的附加组。这不会更改用户的主组,只是将用户添加到指定的组中。
usermod为修改乎用户属性的命令,它有很多可选项,除上面提到的两种外,还有:
-c 填写用户账户的备注信息
-e 账户的到期时间,格式为 YYYY-MM-DD
-L 锁定用户禁止其登录系统
-U 解锁用户,允许其登录系统
-s 变更默认终端 /sbin/nologin为禁止用户登录
-u 修改用户的UID
-d -m连用,可重新指定用户的家目录并自动把旧的数据转移过去
gpasswd -a 用户名 组名
gpasswd -d 用户名 组名
gpasswd看起来和usermod相似,但却有本质区别:
gpasswd只能操作用户附加组,即把用户添加到附加组,或者把用户的附加组删除,用户基本组保持不变
cat /etc/passwd
共有7份信息,分别是:用户名:密码(用X表示):用户ID:组ID:描述信息(无用):HOME目录:执行终端(默认bash)
cat /etc/group
共有3分信息,分别是:组名称:组认证(显示X):组ID
sudo命令
使用sudo命令,可以为普通用户临时授予root权限,语法:
sudo 命令
并不是所有用户都有权利使用sudo,需要通过root用户为普通用户配置sudo权限后才可以使用,配置方法:
切换到root命令,执行visudo命令,会自动通过vi编辑器打开:/etc/sudoers文件
最后一行添加
用户名 ALL=(ALL:ALL) NOPASSWD:ALL
其中最后的NOPASSWD:ALL表示使用sudo命令,无需输入密码
如果没有/etc/sudoers文件或visudo命令不能执行,使用下面方法进行安装
apt-get install vim
apt-get install sudo
update-alternatives --config editor
在给出的选项中选择:vim.tiny
然后再次执行:visudo
上一篇:linux查看带宽使用情况