1. 创建用户流程
创建用户包括两种命令,adduser和useradd, 关于命令的使用教程很多,但授人以鱼不如授人以渔,adduser -h可以得到命令的文档解释,但像我这种菜鸟对于终端文档的理解能力亟待提升,有种更好的工具可以帮助我们较快上手命令,该工具(命令)就是tldr。tldr的安装流程见博客。。。
1.1 adduser
root@iZuf62luqtiampqt16t071Z:~# tldr adduser
✔ Page not found. Updating cache...
✔ Creating index...
adduser
User addition utility.
- Create a new user with a default home directory and prompt the user to set a password:
adduser username
- Create a new user without a home directory:
adduser --no-create-home username
- Create a new user with a home directory at the specified path:
adduser --home path/to/home username
- Create a new user with the specified shell set as the login shell:
adduser --shell path/to/shell username
- Create a new user belonging to the specified group:
adduser --ingroup group username
- Add an existing user to the specified group:
adduser username group
tldr adduser给我们展示了创建新用户的几种类型:
- 默认生成home目录及设置密码, ubuntu还会要求填个人信息,全部回车即可。
- 不创建home目录
- 指定home目录
- 等等...
大部分我们都采用默认home目录,执行adduser temp, 有如下界面:
主要是确定密码,其他信息不重要,然后我们可以通过查看用户和跳转用户来确定创建成功,相关命令如下:
上图中的命令解释如下:
- cat /etc/passwd可以得到所有用户信息,通过grep temp可以得到temp用户信息
- su temp则是切换到temp用户
- cd 可以跳至当前用户的home目录,pwd则是展示目录路径
通过上述命令可以看到,temp的默认home目录即/home/temp。
注:指定home目录创建用户只是home目录为输入的路径参数,不带home目录创建用户只是不存在默认home目录。
1.2 useradd
root@iZuf62luqtiampqt16t071Z:~# tldr useradd
useradd
Create a new user.
- Create new user:
useradd name
- Create new user with a default home directory:
useradd --create-home name
- Create new user with specified shell:
useradd --shell /path/to/shell name
- Create new user belonging to additional groups (mind the lack of whitespace):
useradd --groups group1,group2 name
- Create new system user without a home directory:
useradd --no-create-home --system name
root@iZuf62luqtiampqt16t071Z:~#
useradd默认创建不带home目录的用户,如果需要home目录需要指定--create-home参数,具体可以自行测试。另外采用useradd命令没有设置密码的环节,如果需要设置密码需要root调用sudo passwd temp来修改temp用户的密码。
1.3 userdel 删除用户
这里顺便讲一下删除用户的操作,毕竟刚开始测试创建太多用户还是需要将他们清除掉。
需要删除home目录则加-r参数,有时候删除用户时会报错,说明有进程zhe
userdel: user temp4 is currently used by process 7114
2. 解决较慢的步骤
ssh较慢的场景是本人自己购买的阿里云主机,默认是root登录,但由于root权限较大,如果误操作删除重要目录之类的就麻烦了,所以想创建个用户来尽量避免误操作。
如在创建用户temp后,则登录变为ssh temp@server_host -p, 但明显比ssh root@server_host要慢,并且还会报错/usr/bin/xauth: timeout in locking authority file /home/temp/.Xauthority, 网上有人说是因为.Xauthority的权限问题,此处不深究原因,只给出解决方法,很简单
-
ls -l .Xauthority*
如果有结果表示存在 .Xauthority文件,将其删除再重新连接就行。
-
rm -fr .Xauthority
重新ssh连接可能会报错说.Xauthority不存在,但不影响正常使用,连接变得很快。
ps: 在第二天我再ssh temp@server_host时没有报错且很快连接。