任务背景
这是一个非常常见的任务,当有新的用户要使用服务器,作为服务器管理员,都需要为服务器添加新用户,使新用户能够正常使用服务器的各项资源。
需要完成的任务包含两项,一是添加新用户,使用户能够登录服务器;二是将新用户添加到组,使用户能够使用服务器上的各项资源。(也许还有其他事情需要做,但至少现在我不清楚,以后再知道了再补充)
任务一:添加新用户
- 根据个人习惯,一般会先检测服务器上的所有用户
命令:cat /etc/passwd
预期结果:略
备注:一般使用这个命令后,都会看到非常多的“其他内容”,若只是想看到服务器上所有用户的用户名,可以将命令修改为cat /etc/passwd | cut -f 1 -d:
,输出内容将更加简洁 - 创建用户
命令:sudo adduser xxx
预期结果:
运行到上面代码块的倒数第二行时,输入新增用户xxx的密码并回车,将出现上述代码块最后一行的内容,接着重复xxx的密码并一直回车,就会看到下面的内容:~$ sudo adduser xxx [sudo] password for [sudo user]: Adding user `xxx' ... Adding new group `xxx' (xxx) ... Adding new user `xxx' (xxx) with group `xxx' ... Creating home directory `/home/xxx' ... Copying files from `/etc/skel' ... Enter new UNIX password: Retype new UNIX password:
再按一次回车,即可创建新用户“xxx”passwd: password updated successfully Changing the user information for testuser Enter the new value, or press ENTER for the default Full Name []: Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n]
任务二:添加用户到组
完成用户创建后,新建的用户“xxx”登录系统后,无法使用系统中的许多资源。
例如:服务器中安装了docker,若新建的“xxx”用户使用docker ps
查看docker中在运行的容器,就将因为没有对应权限而报错。
此时的解决方案为,添加新建用户“xxx”到对应的组。
- 同样因为个人喜好,首先检查组信息
命令:cat /etc/group
- 同样以docker组为例,添加用户xxx到docker组
命令:usermod -a -G docker xxx
备注:命令中的docker
指代的是组名称,要添加到什么组就改成什么;同理,xxx
指代的是用户名,要把谁添加到指定组里就把用户名改成什么
总结
完成上述两项任务后,就可以将新增的用户交给对应人使用了。
需要注意的是,完成上述的任务仅仅保证有一个可以使用的用户账户,在安全方面会存在隐患