实验五:Linux中shell命令对用户和组群账户管理


实验目的:

  • 掌握字符界面下用户账户的设置,包括命令useradd、usermod、userdel。
  • 掌握字符界面下组群账户的设置,包括命令groupadd、groupmod、groupdel。
  • 掌握用户和组群维护命令,包括passwd、su。

实验内容:

1、使用命令创建用户账户zhangsan,并设置口令为123456,设置用户名全称为张三。

在Linux系统中,可以使用useradd命令来创建用户账户,并通过passwd命令来设置用户的口令。以下是创建用户账户zhangsan并设置口令的步骤:

  1. 创建用户账户:
sudo useradd zhangsan
  1. 设置用户口令:
sudo passwd zhangsan

在执行passwd命令后,系统会提示输入新的口令。可以输入123456作为口令。

  1. 设置用户名全称(可选):
    在Linux系统中,用户名的全称通常不是通过命令直接设置的,而是在用户的个人资料中设置。你可以编辑/etc/passwd文件来手动设置,但这通常不是推荐的做法,因为它可能会引起系统问题。更安全的方式是使用chfn命令来更改用户的全称:
sudo chfn zhangsan

在这里插入图片描述

执行chfn命令后,系统会提示你输入用户的全称,可以输入张三

2、使用命令从用户root切换到用户zhangsan登录系统,并改变用户环境。

在Linux系统中,从用户root切换到用户zhangsan并改变用户环境的步骤如下:

  1. 切换用户
    使用su命令切换到用户zhangsan。你需要输入zhangsan的密码才能完成切换。

    su - zhangsan
    

    su命令用于切换用户,-参数表示切换用户后加载目标用户的登录环境。

  2. 改变用户环境
    用户环境通常由用户的shell配置文件(如.bashrc.profile)设置。如果你想要改变用户zhangsan的环境,你可以编辑这些文件。例如,使用nanovim编辑.bashrc文件:

    nano ~/.bashrc
    

    或者

    vim ~/.bashrc
    

    在打开的编辑器中,你可以添加或修改环境变量、别名、函数等,以改变用户的环境。

  3. 应用环境变化
    修改配置文件后,为了使更改立即生效,你可以运行以下命令来重新加载配置文件:

    source ~/.bashrc
    

    或者

    . ~/.bashrc
    

    这些命令会重新读取并应用.bashrc文件中的设置。

3、使用命令从用户zhangsan切换到用户root登录系统。

要从用户 zhangsan 切换到用户 root,你可以使用 su 命令。以下是具体的步骤:

  1. 打开终端:首先,确保已经以用户 zhangsan 登录到系统中。

  2. 使用 su 命令切换到 root 用户
    在终端中输入以下命令:

    su -
    

    这里的 - 参数表示切换到 root 用户并加载 root 用户的环境变量。

  3. 输入 root 用户的密码
    当你执行 su - 命令时,系统会提示输入 root 用户的密码。输入密码后,你将切换到 root 用户。

请注意,出于安全考虑,root 用户通常具有对系统的完全控制权限,因此在使用 root 用户时需要格外小心。

如果不是 zhangsan 用户,或者 zhangsan 用户没有 su 权限,可能需要使用其他方法来获取 root 权限,例如使用 sudo 命令(如果 zhangsan 用户在 sudoers 文件中被授权)。如果 zhangsan 用户没有 sudo 权限,可能需要使用物理方式(如使用 root 用户的密码直接登录)来获取 root 权限。

4、使用命令修改用户账户zhangsan的UID为700,其Shell类型为/bin/ksh。

在Linux系统中,可以使用 usermod 命令来修改用户账户的属性,包括用户ID(UID)和默认的Shell类型。以下是如何修改用户 zhangsan 的UID和Shell类型的步骤:

  1. 修改用户UID
    使用以下命令将用户 zhangsan 的UID修改为700:

    sudo usermod -u 700 zhangsan
    

    -u 参数用于指定新的用户ID。

  2. 修改用户Shell
    使用以下命令将用户 zhangsan 的默认Shell修改为 /bin/ksh

    sudo usermod -s /bin/ksh zhangsan
    

    -s 参数用于指定新的登录Shell。

在执行这些命令之前,请确保:

  • 你具有足够的权限(通常是 root 权限)来修改用户账户。
  • 你已经安装了 ksh(Korn Shell)。如果没有安装,你可以通过包管理器(如 aptyumdnf)来安装它。例如,在基于Debian的系统上,你可以使用以下命令安装 ksh
    sudo apt-get install ksh
    
  • 检查 /bin/ksh 是否存在。你可以使用 which ksh 命令来查找 ksh 的路径。

请注意,修改用户的UID和Shell可能会影响用户的文件访问权限和环境配置。在进行这些更改之前,请确保这些更改不会对系统或用户的工作流程产生负面影响。此外,UID 700 通常被一些系统服务使用,因此请确保将用户UID设置为700不会引起冲突。

5、使用命令删除用户账户zhangsan,并且在删除该用户的同时一起删除其主目录。

在Linux系统中,可以使用 userdel 命令来删除用户账户。如果想在删除用户的同时删除其主目录,可以使用 -r(或 --remove)选项。以下是删除用户 zhangsan 及其主目录的步骤:

  1. 打开终端:确保已经以具有管理员权限的用户登录到系统中。

  2. 删除用户账户
    使用以下命令删除用户 zhangsan 及其主目录:

    sudo userdel -r zhangsan
    

    -r 参数告诉 userdel 命令同时删除用户的主目录和邮件目录。

请注意以下几点:

  • 确保用户 zhangsan 没有正在运行的进程,因为删除正在运行进程的用户可能会导致问题。
  • 删除用户是不可逆的操作,一旦执行,用户的所有数据和设置都将被永久删除。在执行此操作之前,请确保已经备份了任何重要数据。
  • 如果用户 zhangsan 是系统用户(即UID小于1000的账户),则可能需要额外的考虑,因为这些账户通常用于系统服务。

6、使用命令创建组群group1,并在创建时设置其GID为800。

在Linux系统中,可以使用 groupadd 命令来创建一个新的组,并可以通过 -g 选项指定该组的组ID(GID)。以下是创建名为 group1 并设置其GID为800的步骤:

  1. 打开终端:确保已经以具有管理员权限的用户登录到系统中。

  2. 创建组
    使用以下命令创建名为 group1 的组,并设置其GID为800:

    sudo groupadd -g 800 group1
    

    -g 参数用于指定新的组ID。

请注意以下几点:
在这里插入图片描述

  • 确保GID 800没有被系统中的其他组使用。如果该GID已被占用,命令将失败。
  • 通常,GID 800 用于系统组,如果你的系统中没有使用这个GID,可以安全地使用它。
  • 创建组后,可以使用 getent group group1 命令来验证组是否已成功创建,并且GID是否正确设置。

7、使用命令修改组群group1的新组群名称为shanghai,设置组群group1的口令为123456。

在Linux系统中,可以使用 groupmod 命令来修改组的名称,但需要注意的是,groupmod 命令本身并不支持直接设置组的密码。组密码的概念在Linux系统中并不常用,通常组密码的概念与用户密码相混淆。在Linux系统中,组的权限主要通过文件和目录的权限控制来管理。

修改组名称

  1. 修改组名称
    使用以下命令将组 group1 的名称修改为 shanghai
    sudo groupmod -n shanghai group1
    
    -n 参数用于指定新的组名。
    在这里插入图片描述

设置组密码

对于设置组密码,Linux系统通常不提供直接的支持。组的权限管理主要依赖于文件和目录的权限设置。如果需要控制对特定资源的访问,可以通过设置文件或目录的权限来实现,例如:

  • 设置文件或目录的组权限
    使用 chmod 命令为特定文件或目录设置组权限。例如,可以设置一个目录,使其只能由 shanghai 组的成员访问:

    sudo chmod 770 /path/to/directory
    

    这里的 770 权限意味着组内的所有成员都可以读取、写入和执行目录中的文件,而其他用户则没有权限。

  • 添加用户到组
    如果目的是确保特定用户能够访问由 shanghai 组控制的资源,可以将这些用户添加到 shanghai 组中:

    sudo usermod -a -G shanghai username
    

    这里 username 是想要添加到组的用户名称。

总结

  • 修改组名使用 groupmod -n 命令。
  • Linux系统中不常用组密码,通常通过文件和目录权限管理组访问。
  • 通过 chmod 设置文件和目录的权限,通过 usermod -a -G 将用户添加到组。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值