一、创建新用户
-
useradd username:成功创建用户,但没有创建用户主目录(/home/用户名)
-
useradd -m username #参数-m 自动在/home下创建用户的家目录
-
passwd username 设置用户登录密码
-
刚刚成功创建的用户没有sudo权限,需要现在/etc/sudoers文件中给予权限,才能使用sudo命令
-
也可以adduser username 一次性创建完毕
1)切换到root用户
2)赋予root用户修改/etc/sudoers文件的权限:chmod u+w /etc/sudoers
(这是因为/etc/sudoers文件默认是只读的,对于root也是,因此需要对sudoers文件添加写权限)
3)编辑sudoers文件,用新建用户名添加一行命令即可
允许用户username执行sudo命令(需要输入密码):username ALL=(ALL) ALL
允许用户组username里面的用户执行sudo命令(需要输入密码):%username ALL=(ALL) ALL
允许用户username执行sudo命令并且在执行的时候不输入密码:username ALL=(ALL) NOPASSWD:ALL
允许用户组username里面的用户执行sudo命令并目在执行的时候不输入密码:%username ALL=(ALL) NOPASSWD:ALL
4)撤销sudoers文件写权限(收回权限)
chmod u-w /etc/sudoers -
按上下左右键时会出现奇怪字符、按tab键无提示,且输入history命令无效
需要在/etc/passwd文件中,找到如下图所示的命令,将sh 改为 bash,最后再关闭命令窗口,重载一下即可。
-
补充:
bash和sh是两种不同的Shell环境.bash为用户提供了一个强大的命令行环境,允许用户执行命令、编写脚本以及进行各种系统管理任务,它在继承了Bourne shell(sh)的语法和功能的基础上增加了很多新的特性,内置了许多功能,比如history,tab键等。
以history为例:
bash内置了跟踪和记录用户输入命令的功能,这些命令历史记录被存储在当前用户的~/.bashhistory文件中。
sh环境通常指的是原始的Bourne shell或其兼容的shell,如dash等,这些shell可能没有历史记录功能,或者说这个功能不如bash那样完善。
二、删除用户
- userdel <用户名>:这个命令会删除指定的用户账户,需要手动提供额外的选项来指定是否同时删除用户的主目录、用户的邮件箱以及其他用户相关的文件
userdel -r <用户名>::这个命令会删除用户主目录、邮件目录及其所有文件 - deluser <用户名>:这个命令会删除用户主目录及其所有文件(但实际上使用时,似乎并没有删除用户主目录)
注意删除时要将所有与删除用户有关的进程全都杀死,才可删除成功