写一个shell脚本,用户名分别为xxy01-101到xxy01-110,密码从tlmdx01到tlmdx10,同时设置用户,并设置密码。
时间: 2024-03-24 19:36:45 浏览: 79
好的,下面是一个可以实现你的需求的 Shell 脚本:
```bash
#!/bin/bash
# 定义用户名前缀和密码前缀
USER_PREFIX="xxy01-"
PASS_PREFIX="tlmdx"
# 循环创建用户
for i in {101..110}
do
# 拼接用户名和密码
username="${USER_PREFIX}${i}"
password="${PASS_PREFIX}$(($i - 100))"
# 创建用户
useradd $username
# 设置密码
echo "${username}:${password}" | chpasswd
done
```
这个脚本会创建 10 个用户,用户名分别为 `xxy01-101` 到 `xxy01-110`,密码从 `tlmdx01` 到 `tlmdx10`。每个用户创建后都会设置对应的密码。
注意:为了保证安全,密码最好是随机生成的,不要像这个脚本一样使用简单的密码前缀加数字方式。
相关问题
写一个shell脚本,用户名分别为xxy01-100到xxy01-110,密码从tlmdx01到tlmdx10,同时设置用户,并设置密码
好的,下面是一个简单的 Shell 脚本,可以实现你的需求:
```
#!/bin/bash
# 定义用户名前缀和密码前缀
USER_PREFIX="xxy01-"
PASS_PREFIX="tlmdx"
# 循环创建用户
for i in {100..110}
do
# 拼接用户名和密码
username="${USER_PREFIX}${i}"
password="${PASS_PREFIX}$(($i - 99))"
# 创建用户
useradd $username
# 设置密码
echo "${username}:${password}" | chpasswd
done
```
这个脚本会创建 11 个用户,用户名分别为 `xxy01-100` 到 `xxy01-110`,密码从 `tlmdx01` 到 `tlmdx10`。每个用户创建后都会设置对应的密码。
注意:为了保证安全,密码最好是随机生成的,不要像这个脚本一样使用简单的密码前缀加数字方式。
为xxy02、xxy03用户设置相同的sudo的权限,但不包括修改其他用户密码的权限。
为用户xxy02和xxy03设置只包含sudo权限而不允许他们修改其他用户密码的Linux系统管理操作通常涉及到两个步骤:
1. **创建sudoers文件**:sudoers文件定义了哪些用户可以使用sudo命令以及它们有哪些权限。首先,打开`/etc/sudoers`文件,此文件通常使用visudo命令进行编辑,因为直接编辑此文件可能会引入安全风险。
2. **编辑sudoers规则**:在visudo编辑器中,添加一条行来指定xxy02和xxy03用户,比如:
```
xxy02 ALL=(ALL) NOPASSWD:!/usr/bin/sudo -H # 不允许修改密码
xxy03 ALL=(ALL) NOPASSWD:!/usr/bin/sudo -H # 只能执行sudo命令
```
这里`NOPASSWD:`表示用户不需要提供密码就能使用sudo,`!/usr/bin/sudo -H`限制只能运行sudo命令本身,不会让他们通过sudo访问所有命令列表。
3. **保存并测试**:完成后,记得保存更改,并使用`sudo usermod -aG sudo xxy02` 和 `sudo usermod -aG sudo xxy03` 将用户添加到sudoers组,然后让他们注销并重新登录,新权限才会生效。
4. **验证权限**:为了确认设置是否有效,可以检查这两个用户能否使用sudo但无法修改其他用户的密码,通过尝试sudo命令和试图改变其他用户密码来测试。
阅读全文