脚本练习_检查用户属组

#!/bin/bash
# This is a check user group scripts .
# Writen by Wangxiaoqiang 2014-11-21

read -p "Please input username : " username

grep ${username} /etc/passwd > /dev/null

if [ $? -ne 0 ];then
  echo "${username} User does not exist ."
  exit 1
fi

status=`groups ${username} | awk -F :" " '{print $2}'`

if [ ${username} == ${status} ];then
  echo "The ${username} user group is ${username} ."
else
  echo "The ${username} user group is ${status} ."
fi

# End


<think>好的,我现在需要帮用户生成关于chmod和chown的综合练习题。首先,我得回顾用户提供的引用内容,看看之前的例子是什么样的。用户提到了几个引用,其中引用[1]和[2]是关于创建目录、设置权限和修改权限的实例,引用[3]是关于部门文件夹结构的练习题。用户现在想要综合性的题目,结合chmod和chown的使用。 首先,我需要确保练习题覆盖chmod和chown的不同用法,比如修改所有者、,设置权限的数字和符号方式,还有特殊权限如setgid。然后,题目需要结合实际场景,比如公司部门、项目等,这样用户更容易理解应用场景。 接下来,我得考虑题目的难度梯度,从基础到进阶。例如,第一题可以涉及创建目录、设置和基本权限,第二题可能加入特殊权限,第三题处理多级目录和继承权限,第四题涉及文件自动继承,第五题可能结合ACL或其他高级功能。同时,每个题目需要明确的步骤指引,但用户需要自己写出命令,这样能练习应用能力。 还要注意用户提到的权限需求,比如只能特定写入,自动归,这可能需要用到chmod g+s来设置setgid,确保新建文件继承父目录的。同时,权限的数字和符号方式都要覆盖,比如775对应rwxrwxr-x。 可能需要参考引用中的例子,比如引用[1]里的/cw目录设置,使用了groupadd,chown,chmod g+w和g+s。还有引用[2]中的chmod两种方式修改权限。这些都可以作为练习题的基础,但需要综合起来,让用户练习多个命令的合使用。 最后,确保问题描述清晰,步骤明确,但不过于提示答案,让用户自己思考正确的命令。比如题目1中的步骤包括创建目录、修改、设置权限,用户需要写出具体的chown和chmod命令。题目3可能需要递归修改权限,使用-R选项。 同时,要检查是否有常见的错误点,比如chown的正确语法是chown :group 还是 chown group: 文件,或者使用chgrp命令。需要确保练习题的正确性,避免误导用户。 总结下来,我需要设计5个左右的练习题,涵盖不同场景和命令合,结合用户提供的引用中的案例,确保综合应用chmod和chown,并包括数字和符号权限设置,以及特殊权限如setgid。</think>### 综合练习题:chmod与chown应用场景 以下练习题结合企业实际场景,覆盖权限管理的核心操作,建议使用Linux系统实际操作验证结果。 --- #### **题目1:项目协作目录配置** **需求**: - 创建 `/project/teamA` 目录作为开发共享空间 - 目录所为 `dev_group`(需先创建) - 内成员拥有读写执行权限,其他人无任何权限 - 所有新建文件自动继承父目录的 **操作步骤**(请写出完整命令): 1. 创建和目录 2. 修改目录 3. 设置权限为 `770` 4. 添加特殊权限实现继承 --- #### **题目2:财务文件隔离管理** **需求**: - 在 `/finance` 目录下创建 `reports` 子目录 - 仅允许 `finance` 成员读写,其他人禁止访问 - 目录所有者设置为 `root:finance` - 使用符号方式设置权限(如 `u=rwx,g=rwx,o=`) --- #### **题目3:多级目录权限继承** **需求**: - 主目录 `/data/archive` 权限为 `755` - 其子目录 `/data/archive/2023` 需实现: - 为 `archivers` - 内成员可读写,其他人只读 - 递归修改已有文件的权限 --- #### **题目4:临时共享空间配置** **需求**: - 创建 `/tmp/share` 允许所有用户写入,但只能删除自己的文件 (提示:使用 `chmod +t`) - 验证其他用户能否删除不于自己的文件 --- #### **题目5:自动化脚本权限加固** **需求**: - 脚本文件 `/opt/scripts/backup.sh` 需要满足: - 所有者 `root` 可读写执行 - `admins` 可读执行 - 其他人无权限 - 禁止意外覆盖文件(添加不可修改性) (提示:使用 `chattr +i`) --- ### 参考答案与原理 **题目1关键命令**: ```bash groupadd dev_group mkdir -p /project/teamA chown :dev_group /project/teamA chmod 2770 /project/teamA # 2表示setgid ``` **原理**:`chmod g+s` 或数字权限中的第4位 `2` 可使新文件继承父目录的[^1]。 **题目4特殊权限**: ```bash chmod 1777 /tmp/share # 粘滞位实现用户仅能管理自有文件 ``` **原理**:粘滞位(`t` 权限)常用于 `/tmp` 目录,防止用户误删他人文件[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值