一、常用命令:
(1)创建用户命令两条:
adduser
useradd
(2)用户删除命令:
userdel
二、两个用户创建命令之间的区别
adduser: 会自动为创建的用户指定主目录、系统shell版本,会在创建时输入用户密码。
useradd:需要使用参数选项指定上述基本设置,如果不使用任何参数,则创建的用户无密码、无主目录、没有指定shell版本。
三、使用adduser
例如:
$ adduser apple
输出显示:
这样在创建用户名时,就创建了用户的主目录以及密码。
默认情况下:
adduser在创建用户时会主动调用 /etc/adduser.conf;
在创建用户主目录时默认在/home下,而且创建为 /home/用户名
如果主目录已经存在,就不再创建,但是此主目录虽然作为新用户的主目录,而且默认登录时会进入这个目录下,但是这个目录并不是属于新用户,当使用userdel删除新用户时,并不会删除这个主目录,因为这个主目录在创建前已经存在且并不属于这个用户。
为用户指定shell版本为:/bin/bash
因此常用参数选项为:
(1) –home: 指定创建主目录的路径,默认是在/home目录下创建用户名同名的目录,这里可以指定;如果主目录同名目录存在,则不再创建,仅在登录时进入主目录。
(2) –quiet: 即只打印警告和错误信息,忽略其他信息。
(3) –debug: 定位错误信息。
(4) –conf: 在创建用户时使用指定的configuration文件。
(5) –force-badname: 默认在创建用户时会进行/etc/adduser.conf中的正则表达式检查用户名是否合法,如果想使用弱检查,则使用这个选项,如果不想检查,可以将/etc/adduser.conf中相关选项屏蔽。如:
四、使用useradd
注意: 在使用useradd命令创建新用户时,不会为用户创建主目录,不会为用户指定shell版本,不会为用户创建密码。
例如:
1、不使用任何参数选项创建用户:
例如创建新用户 tt
$ sudo useradd tt
(1)需要为用户指定登录密码:
(2)需要为用户指定shell版本和用户登录主目录
如上图所示,最后一行行首只出现:
$
查看shell版本,发现是/bin/sh:
说明这是没有指定shell版本
用户登录后的所在目录为根目录: /
虽然$HOME环境变量为/home/tt
2、为用户指定参数的useradd命令:
常用命令行选项:
(1) -d: 指定用户的主目录
(2) -m: 如果存在不再创建,但是此目录并不属于新创建用户;如果主目录不存在,则强制创建; -m和-d一块使用。
(3) -s: 指定用户登录时的shell版本
(4) -M: 不创建主目录
例如:
$ sudo useradd -d “/home/tt” -m -s “/bin/bash” tt
解释: -d “/home/tt” :就是指定/home/tt为主目录
-m 就是如果/home/tt不存在就强制创建
-s 就是指定shell版本
修改tt密码:
$ sudo passwd tt
五、删除用户命令
userdel
(1)只删除用户:
sudo userdel 用户名
(2)连同用户主目录一块删除:
sudo userdel -r 用户名
如果创建时主目录已经存在,即主目录不属于当前要删除的用户,则无法删除主目录,例如:
可以看出无法删除已有主目录/home/tt。
六、相关文件:
/etc/passwd – 使 用 者 帐 号 资 讯,可以查看用户信息
/etc/shadow – 使 用 者 帐 号 资 讯 加 密
/etc/group – 群 组 资 讯
/etc/default/useradd – 定 义 资 讯
/etc/login.defs – 系 统 广 义 设 定
/etc/skel – 内 含 定 义 档 的 目 录
更多详情见请继续阅读下一页的精彩内容: http://www.linuxidc.com/Linux/2017-02/140794p2.htm
修改使用者模式可以使用usermod命令实现。
一、usermod常用命令介绍:
-a: 仅和-G一块使用,将用户添加到附属组群。
-d: 修改用户登入时的目录,例如一般的用户登录时,默认进入预先设定的主目录,某些时候为了方便登录时就需要进入比较复杂的路径时,可以使用这个选项设置进入时目录。
-g: 修改用户所属群组。
-G: 修改用户所属的附加群组;在改变用户sudo权限时就可以使用这个选项。
-s: 修改用户登录后所使用的shell版本
二、sudo权限
用户获取sudo权限,可以使用两种办法
1、修改/etc/sudoers文件,将用户名添加到sudo权限组,例如
2、第二种办法就是修改用户附属组:
可以使用usermod或者gpasswd修改
(1)使用usermod修改
$ sudo usermod -a -G sudo tt
修改后的结果可以查看/etc/group,可以看到sudo这一栏中包含tt
可能涉及的文件:
FILES
/etc/group
Group account information.
/etc/gshadow
Secure group account information.
/etc/passwd
User account information.
/etc/shadow
Secure user account information.
(2)使用gpasswd
常用命令:
-a: 将用户增加到指定组
-d: 将用户从指定组删除
其他选项:
-M 设置group成员列表
-A 设置组的管理员列表
例如:
将 tt 增加为sudo组成员:
sudo gpasswd -a tt sudo
将 tt 从sudo组删除:
sudo gpasswd -d tt sudo
三、解决每次使用sudo时均需输入密码,太麻烦了。
解决办法:
修改 /etc/sudoers文件
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-02/140794.htm