写点什么

Linux 之用户管理

用户头像
在即
关注
发布于: 5 小时前
Linux之用户管理

1.创建/删除新用户

  • 任务描述

  • 相关知识

  • Linux 创建用户命令

  • 案例演示

  • Linux 删除用户命令

  • 案例演示

  • 编程要求

  • 评测说明


任务描述

让我们一起来学习 Linux 中用户的管理,本关主要讲解如何在 Linux 中创建和删除用户

新创建一个用户,并将一个已经存在的用户删除掉。


相关知识

你需要掌握如下知识:

  • Linux创建用户命令

  • Linux删除用户命令

Linux 创建用户命令

Linux中使用useradd命令你来创建一个新用户

命令格式如下:

useradd [命令参数] 参数


常见命令参数:

  • -d<登入目录>:指定用户登入时的启始目录

  • -D:查看或变更预设值

  • -g<群组>:指定用户所属的群组

  • -m:自动建立用户的登入目录

  • -M:不要自动建立用户的登入目录

  • -s:指定用户登入后所使用的shell

useradd必须以root权限才能执行,如果是普通用户想创建一个新用户时,需在命令前加sudo命令来提升权限为root权限


案例演示

1.查看 useradd 系统默认属性值,使用命令 useradd -D

[root@wxz ~]# useradd -D

GROUP=100

HOME=/home

INACTIVE=-1

EXPIRE=

SHELL=/bin/bash

SKEL=/etc/skel

CREATE_MAIL_SPOOL=yes

[root@wxz ~]#


参数 说明

GROUP 指新创建的用户将被添加到用户组 ID 为 100 的公共用户组中

HOME 指新创建的用户将在/home 目录下创建一个 HOME 账户

INACTIVE 指当密码逾期时,用户将不会被禁用

EXPIRE 指新创建的用户不会在设定日期被设置为逾期

SHELL 指新创建的用户使用/bin/bash 作为默认 shell

SKEL 指系统会将/etc/skel 目录中的内容复制到新创建的用户的 HOME 目录

CREATE_MALL_SPOOL 指系统不会在邮件目录中创建一个文件用于新创建用户账户接受邮件

//平台好像不能创建表格,将就看吧,有知道怎么创建的评论一下



2.使用 useradd 命令新创建一个用户 test,并且自动建立用户的登入目录。

[root@wxz ~]# sudo useradd -m test

[root@wxz ~]# ls /home/

test

[root@wxz ~]#

在背景介绍中,我们了解到,Linux中用户信息是否保存在/etc/passwd文件中,我们可以使用命令tail /etc/passwd文件最后 10 行中是否存在刚刚新创建的test用户信息。

[root@wxz ~]# tail /etc/passwd

avahi-autoipd:x:170:170:Avahi IPv4LL Stack:/var/lib/avahi-autoipd:/sbin/nologin

systemd-bus-proxy:x:999:997:systemd Bus Proxy:/:/sbin/nologin

systemd-network:x:998:996:systemd Network Management:/:/sbin/nologin

dbus:x:81:81:System message bus:/:/sbin/nologin

polkitd:x:997:995:User for polkitd:/:/sbin/nologin

tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin

postfix:x:89:89::/var/spool/postfix:/sbin/nologin

sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

test:x:1000:1000::/home/test:/bin/bash

[root@wxz ~]#

Linux 删除用户命令

Linux 中使用 userdel 命令来删除一个已经存在的用户

命令格式如下:

userdel [命令参数] 参数


常见命令参数:

  • -f:强制删除用户,即使用户当前已登录

  • -r:删除用户的同时,删除与用户相关的所有文件

userdel必须以root权限才能执行,如果是普通用户想使用该命令时,需要在命令前加sudo命令来提升权限为root权限。


案例演示


1.使用 userdel 命令删除一个已经存在的用户 test,并且自动删除其他目录文件。

fzm@ubuntu:~$ sudo userdel -r test

userdel: test mail spool (var/mail/test) not found

fzm@ubuntu:~$ ls /home/

fzm@ubuntu:~$ tail /etc/passwd

nobody:x:99:99:Nobody:/:/sbin/nologin

avahi-autoipd:x:170:170:Avahi IPv4LL Stack:/var/lib/avahi-autoipd:/sbin/nologin

systemd-bus-proxy:x:999:997:systemd Bus Proxy:/:/sbin/nologin

systemd-network:x:998:996:systemd Network Management:/:/sbin/nologin

dbus:x:81:81:System message bus:/:/sbin/nologin

polkitd:x:997:995:User for polkitd:/:/sbin/nologin

tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin

postfix:x:89:89::/var/spool/postfix:/sbin/nologin

sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

fzm@ubuntu:~$ _


因为系统默认是不会给新创建的用户自动创建一个文件夹用于用户账户接收邮件,所以在使用userdel -r命令删除的时候会提醒/var/mail/test文件夹不存在

[root@wxz ~]# sudo userdel -r test

[root@wxz ~]# ls /home/

[root@wxz ~]# tail /etc/passwd

nobody:x:99:99:Nobody:/:/sbin/nologin

avahi-autoipd:x:170:170:Avahi IPv4LL Stack:/var/lib/avahi-autoipd:/sbin/nologin

systemd-bus-proxy:x:999:997:systemd Bus Proxy:/:/sbin/nologin

systemd-network:x:998:996:systemd Network Management:/:/sbin/nologin

dbus:x:81:81:System message bus:/:/sbin/nologin

polkitd:x:997:995:User for polkitd:/:/sbin/nologin

tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin

postfix:x:89:89::/var/spool/postfix:/sbin/nologin

sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

[root@wxz ~]#


编程要求

根据右侧窗口命令行内的提示,在 Begin - End 区域内进行代码补充,具体任务如下:

  • 新创建一个用户 newUser,并自动创建其登陆目录

  • 删除系统已经存在的用户 oldUser,并自动删除其关联的登录目录

  • 将当前工作目录切换到新创建的用户 newUser 家目录

  • 使用 pwd 命令打印出当前工作目录

注意:本平台执行环境默认以 root 账户登录,所以执行的所有命令都是以 root 权限执行


评测说明

补充完命令行后,点击测评,平台会对你编写的代码进行测试,当你的结果与预期输出一致时,即为通过。

#!/bin/bash

#在以下部分写出完成任务的命令

#***********begin*************#

useradd -m newUser # 新创建一个用户 newUser,-m:自动创建其登录目录

userdel -r oldUser # 删除系统已经存在的用户 oldUser,-r:自动删除其关联的登录目录

cd /home/newUser # 将当前工作目录切换到新创建的用户 newUser 家目录

pwd # 使用 pwd 命令打印出当前工作目录

#************end**************#


欢迎大家也来和我一起学习 Linux 从入门到精通喔!

发布于: 5 小时前阅读数: 2
用户头像

在即

关注

记录学习进度 2021.02.27 加入

文章基本上都是课上学到的知识结合自己见解进行写作,如有错误,欢迎各位大牛指出。

评论

发布
暂无评论
Linux之用户管理