第三次作业
1、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录
ls /etc/[^[:alpha:]][[:alpha:]]*
2、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
cp -r /etc/[p]*[^[:digit:]] /tmp/mytest1
3、将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中
cat /etc/issue | tr 'a-z' 'A-Z' > /tmp/issue.out
4、请总结描述用户和组管理类命令的使用方法并完成以下练习:
(1)、创建组distro,其GID为2019;
groupadd -g 2019 distro
(2)、创建用户mandriva,其ID号为1005;基本组为distro;
useradd mandriva -g distro -u 1005
(3)、创建用户mageia,其ID号为1100,家目录为/home/linux;
useradd -u 1100 -d /home/linux mageia
(4)、给用户mageia添加密码,密码为mageedu,并设置用户密码7天后过期
echo "mageedu2021" | passwd --stdin mageia (但是因为原密码不够8位,故改为新密码)
passwd -x 7 megeia
(5)、删除mandriva,但保留其家目录;
userdel mageia
(6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;
groupadd peguin
useradd -u 2002 -g distro -G peguin slackware
(7)、修改slackware的默认shell为/bin/tcsh;
usermod -s /bin/tcsh slackware
(8)、为用户slackware新增附加组admins,并设置不可登陆。
groupadd amins
usermod -aG admins slackware
chsh -s /sbin/nologin/ slackware
5、创建用户user1、user2、user3。在/data/下创建目录test
(1)、目录/data/test属主、属组为user1
chown -R user1:user1 /data/test/
(2)、在目录属主、属组不变的情况下,user2对文件有读写权限
setfacl -m u:user2:6 /data/test/
(3)、user1在/data/test目录下创建文件? a1.sh,a2sh,a3.sh, ?a4.sh,设置所有用户都不可删除1.sh,2.sh文件,除了user1及root之外,所有用户都不可删除?a3.sh, a4.sh
chattr +i a1.sh a2.sh
chmod a+t a3.sh a4.sh
(4)、user3增加附加组user1,同时要求user1不能访问/data/test目录及其下所有文件
usermod -aG user1 user3
setfacl -mR u:user1:--- /data/test/
(5)、清理/data/test目录及其下所有文件的acl权限
chattr -i a1.sh a2.sh (不执行此步无法清理)
setfacl -Rb /data/test/
一些备注
拷贝隐藏文件应该使用 cp -r /folder/.[^.]* /destination/
使用通配符过滤“..” 以避免将上级目录包含进来
如果要复制隐藏跟非隐藏文件 cp -r /folder/. /destination/
或者直接 cp -r /folder /desitnation 直接复制文件夹
cp -r /folder/* /desitnation 不能复制隐藏文件
(unmask 666; touch f1.txt) 一次性创建000文件,不影响后续
suid,改密码为例子
/usr/bin/passwd 这个文件有s在所有者权限上,意味着普通用户执行这个命令的时候会暂时变为passwd的所有者权限
-rwsr-xr-x. 1 root root 33600 Apr 6 2020 /usr/bin/passwd
同理如果执行chmod u+s /bin/cat, 那么任何用户运行cat 都可以查看shadow文件了
acl mask 起到限制最大acl权限的作用,如果mask权限为rw-,那么任何acl中的用户不能超过这个权限

浙公网安备 33010602011771号