我正在尝试为一个类创建100个用户,这样就可以编写编译并通过ssh运行他们的项目。
我正在为所有用户分配默认密码“123”(他们可以在以后更改) 我已经设置了软盘和硬盘限制(8mb和16mb)
现在,我正在考虑在其主文件夹中创建一个其他人无法读取的私人文件夹 事实证明,这个脚本给了'我'而不是用户,读写和执行到所有私人文件夹
这是脚本的样子。
for i in {1..100}
do
useradd -m -g student $i
mkdir /home/$i/private //Creating a private folder
chmod -R 700 /home/$i/private //
echo "$i:123" | sudo chpasswd
setquota -u $i 9 18 0 0 /
done
无论如何我能做到吗?
答案 0 :(得分:1)
一切都很好,你只需要更改新目录的所有者:
for i in {1..100}
do
useradd -m -g student $i
mkdir /home/$i/private //Creating a private folder
chmod -R 700 /home/$i/private //
chown $i:student /home/$i/private <------------------ new line
echo "$i:123" | sudo chpasswd
setquota -u $i 9 18 0 0 /
done
请注意,由于您是执行mkdir
的用户,因此新目录属于您。
另请注意,我使用了chown $i:student
,因此所有者将成为用户,而该群组将是student
,这恰好是您要将这些用户添加到的群组。