-- 暂无子节点 --
adduser:向导模式,
会自动为创建的用户指定主目录、系统shell版本,会在创建时输入用户密码。
命令格式:
sudo adduser username
执行的操作配置:
默认情况下,adduser在创建用户时会主动调用 /etc/adduser.conf;
创建用户主目录:
为用户指定shell版本为:/bin/bash
–home: 指定创建主目录的路径,
默认是在/home目录下创建用户名同名的目录,这里可以指定;
如果主目录同名目录存在,则不再创建,仅在登录时进入主目录。
–quiet: 即只打印警告和错误信息,忽略其他信息。
–debug: 定位错误信息。
–conf: 在创建用户时使用指定的configuration文件。
–force-badname:
默认在创建用户时会进行/etc/adduser.conf中的正则表达式检查用户名是否合法,
如果想使用弱检查,则使用这个选项,
如果不想检查,可以将/etc/adduser.conf中相关选项屏蔽
实例(示例)useradd:自定义模式创建用户
需要使用参数选手动指定用户创建基本设置,
如果未配置任何参数,则创建无密码、无主目录、没有指定shell版本的用户
命令格式:
sudo useradd username
#不会为用户创建主目录,不会为用户指定shell版本,不会为用户创建密码。
另外为用户指定登录密码:
sudo passwd username另外为用户指定用户主目录:
sudo usermod -d /home/tt username另外为用户指定命令解释程序(通常为/bin/bash):
sudo usermod -s /bin/bash username
常用命令行选项:
-d: 指定用户的主目录
-m:-m和-d一块使用
如果主目录不存在,则创建主目录;
如果存在不再创建,但是此目录并不属于新创建用户;-M: 不创建主目录
-s: 指定用户登录时的shell版本
命令实例:
sudo useradd -d "/home/tt" -m -s "/bin/bash" tt
解释: -d “/home/tt” :就是指定/home/tt为主目录
-m 就是如果/home/tt不存在就强制创建
-s 就是指定shell版本
删除用户 deluser 只删除用户:sudo deluser tt 连同用户的主目录和邮箱一起删除:sudo deluser --remove-home tt 连同用户拥有的所有文件删除:sudo deluser --remove-all-files tt userdel 只删除用户:sudo userdel tt 连同用户主目录一起删除:sudo derlser -r tt 如果创建时主目录已经存在,即主目录不属于当前要删除的用户,则无法删除主目录
sudo usermod -aG sudo tt #添加group 另外为用户指定用户主目录: sudo usermod -d /home/tt username 另外为用户指定命令解释程序(通常为/bin/bash): sudo usermod -s /bin/bash username
#查看系统用户信息
/etc/passwd#系统帐号密码加密
/etc/shadow#群组信息
/etc/group#创建用户的配置
/etc/default/useradd#系统广义设定
/etc/login.defs
内含定义档的目录
/etc/skel
创建git账户
# 创建git用户,用户组默认为git
useradd git
# 修改git账户的密码
passwd git
出于安全考虑,上面创建的git用户不允许登录shell,
这可以通过编辑/etc/passwd文件完成。找到类似下面的一行:
git:x:1001:1001:,,,:/home/git:/bin/bash
改为
git:x:1001:1001:,,,:/home/git:/bin/git-shell
创建用户有两条命令:adduer和useradd,
对应着两条删除用户的命令:deluser和userdel
adduser:向导模式,会自动为创建的用户指定主目录、系统shell版本,会在创建时输入用户密码。
useradd:自定义模式,需要使用参数选项指定上述基本设置,如果不使用任何参数,则创建的用户无密码、无主目录、没有指定shell版本。
sudo adduser username
默认情况下:
adduser在创建用户时会主动调用 /etc/adduser.conf;
在创建用户主目录时默认在/home下,而且创建为 /home/用户名
如果主目录已经存在,就不再创建,但是此主目录虽然作为新用户的主目录,而且默认登录时会进入这个目录下,但是这个目录并不是属于新用户,
当使用userdel删除新用户时,并不会删除这个主目录,因为这个主目录在创建前已经存在且并不属于这个用户。
为用户指定shell版本为:/bin/bash
常用参数选项为:
–home: 指定创建主目录的路径,默认是在/home目录下创建用户名同名的目录,这里可以指定;如果主目录同名目录存在,则不再创建,仅在登录时进入主目录。
–quiet: 即只打印警告和错误信息,忽略其他信息。
–debug: 定位错误信息。
–conf: 在创建用户时使用指定的configuration文件。
–force-badname: 默认在创建用户时会进行/etc/adduser.conf中的正则表达式检查用户名是否合法,如果想使用弱检查,则使用这个选项,如果不想检查,可以将/etc/adduser.conf中相关选项屏蔽。
sudo useradd username
#不会为用户创建主目录,不会为用户指定shell版本,不会为用户创建密码。
为用户指定登录密码:sudo passwd username
为用户指定用户主目录:sudo usermod -d /home/tt username
为用户指定命令解释程序(通常为/bin/bash):sudo usermod -s /bin/bash username
常用命令行选项:
-d: 指定用户的主目录
-m: 如果存在不再创建,但是此目录并不属于新创建用户;如果主目录不存在,则强制创建; -m和-d一块使用。
-M: 不创建主目录
-s: 指定用户登录时的shell版本
例如:sudo useradd -d "/home/tt" -m -s "/bin/bash" tt
解释: -d “/home/tt” :就是指定/home/tt为主目录
-m 就是如果/home/tt不存在就强制创建
-s 就是指定shell版本
删除用户
deluser
只删除用户:sudo deluser tt
连同用户的主目录和邮箱一起删除:sudo deluser --remove-home tt
连同用户拥有的所有文件删除:sudo deluser --remove-all-files tt
userdel
只删除用户:sudo userdel tt
连同用户主目录一起删除:sudo derlser -r tt
如果创建时主目录已经存在,即主目录不属于当前要删除的用户,则无法删除主目录。
其他命令和文件:
sudo usermod -aG sudo tt #添加group
sudo su #进入root
相关系统文件可以cat查看
/etc/passwd - 使 用 者 帐 号 资 讯,可以查看用户信息
/etc/shadow - 使 用 者 帐 号 资 讯 加 密
/etc/group - 群 组 资 讯
/etc/default/useradd - 定 义 资 讯
/etc/login.defs - 系 统 广 义 设 定
/etc/skel - 内 含 定 义 档 的 目 录