Linux 用户和组管理的实操题:

该脚本在Ubuntu20.04系统中创建了devuser1、devuser2和devuser3三个用户,并将它们加入devgroup用户组。用户间可访问并修改彼此的共享目录,共享目录设置有适当的权限控制。
摘要由CSDN通过智能技术生成

题目描述

您管理了一台运行 Ubuntu 20.04 的 Linux 服务器。现在有一个需求:创建名为 devuser1devuser2devuser3 三个用户,并分别将他们添加到一个名为 devgroup 的用户组中。同时,要求这些用户可以互相访问并修改彼此的文件。

请编写一份 shell 脚本,包含完成这些任务的命令,并确保脚本可以在 Ubuntu 20.04 中正常运行。

注意:为了保证安全,在实际测试环境中,请勿直接使用 sudo 命令以 root 用户身份运行此脚本,建议使用普通用户身份(如当前用户)测试。

参考答案

下面是一份参考答案,您可以根据需要进行调整:

#!/bin/bash

# 检查是否以 root 用户身份运行
if [ "$(id -u)" != "0" ]; then
    echo "必须以 root 用户身份运行此脚本。"
    exit 1
fi

# 创建用户组
groupadd devgroup

# 创建用户,并设置密码
useradd -m -s /bin/bash -p $(openssl passwd -1 1234qwer) devuser1
useradd -m -s /bin/bash -p $(openssl passwd -1 1234qwer) devuser2
useradd -m -s /bin/bash -p $(openssl passwd -1 1234qwer) devuser3

# 将用户添加到用户组中
usermod -aG devgroup devuser1
usermod -aG devgroup devuser2
usermod -aG devgroup devuser3

# 允许用户互相访问并修改彼此的文件
mkdir /home/devuser1/shared
mkdir /home/devuser2/shared
mkdir /home/devuser3/shared
chgrp -R devgroup /home/devuser*/shared
chmod -R g+rwxs /home/devuser*/shared

echo "用户和用户组创建成功。"

该脚本实现了以下功能:

  1. 创建了名为 devgroup 的用户组。
  2. 创建了三个用户 devuser1devuser2devuser3,并将他们的密码设置为 1234qwer
  3. 将这些用户添加到 devgroup 用户组中。
  4. 为每个用户创建了一个名为 shared 的共享目录,并将其所属组设置为 devgroup
  5. 通过 chmod 命令将 shared 目录的权限设置为 g+rwxs,其中 g 表示将权限应用于同组用户,r 表示读权限,w 表示写权限,x 表示可执行权限,s 表示设置 SGID 位,表示新建文件的所属组与父目录的所属组相同。

请注意,在生产环境中,需要根据安全规范对用户密码进行设置,并严格控制共享目录的访问权限,以保证系统的安全性和稳定性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值