Linux 学习重点记录之三

1.显示/etc目录下以非字母开头以及其他任意长度任意字符的文件或目录

[19:27:21 root@bear etc]#ls /etc |grep -e ^[^[:alpha:]][[:alpha:]].*
1ab.txt
2ab.txt
3ab.txt
4ab.txt
5ab.txt

2.复制/etc目录下所有以p 开头文件,以非数字结尾的文件或目录到/tmp/mytest1目录中。

[18:09:45 root@bear ~]#mkdir /tmp/mytest1
[18:13:19 root@bear ~]#cp -rv /etc/p*[^0-9]

3、将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中

[19:42:09 root@bear etc]#cat /etc/issue |tr  [[:lower:]] [[:upper:]] >/tmp/issue.out
[19:42:23 root@bear etc]#cat /tmp/issue.out
 THIS IS \N.\O
 \S \M \R\L
\U AT \T

4、请总结描述用户和组管理类命令的使用方法并完成以下练习: (1)、创建组distro,其GID为2019;

[19:50:01 root@bear etc]#groupadd -g 2019 distro

(2)、创建用户mandriva,其ID号为1005;基本组为distro;

[19:50:21 root@bear etc]#useradd -u 1005 -g distro mandriva

(3)、创建用户mageia,其ID号为1100,家目录为/home/linux;

[19:57:31 root@bear etc]#useradd  -u 1100 -d /home/linux mageia

(4)、给用户mageia添加密码,密码为mageedu,并设置用户密码7天后过期

[19:59:28 root@bear etc]#echo "mageedu" | passwd -x 7 --stdin mageia
Adjusting aging data for user mageia.
passwd: Success

(5)、删除mandriva,但保留其家目录;

[20:10:14 root@bear etc]#userdel mandriva
[20:14:16 root@bear etc]#ll /home
drwx------.  3 mageia  mageia    78 Dec 16 19:59 linux
drwx------.  3    1005 distro    78 Dec 16 19:52 mandriva

(6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;

[20:16:22 root@bear etc]#useradd -u 2002 -g distro -G peguin slackware
[20:17:36 root@bear etc]#id slackware
uid=2002(slackware) gid=2019(distro) groups=2019(distro),2020(peguin)

(7)、修改slackware的默认shell为/bin/tcsh;

[20:20:23 root@bear etc]#usermod -s /bin/tcsh slackware
[20:21:00 root@bear etc]#getent passwd slackware
slackware:x:2002:2019::/home/slackware:/bin/tcsh

(8)、为用户slackware新增附加组admins,并设置不可登陆。

[20:25:43 root@bear etc]#groupadd admins
[20:25:58 root@bear etc]#usermod -aG admins -s /bin/nologin slackware
[20:26:02 root@bear etc]#getent passwd slackware
slackware:x:2002:2019::/home/slackware:/bin/nologin
[20:27:00 root@bear etc]#id slackware
uid=2002(slackware) gid=2019(distro) groups=2019(distro),2020(peguin),2021(admins)

5、创建用户user1、user2、user3。在/data/下创建目录test

[20:45:51 root@bear etc]#vim useradd.txt
[20:47:32 root@bear etc]#newusers useradd.txt
[20:48:00 root@bear etc]#cat /etc/passwd | tail -n 3
user1:x:1001:1001::/home/user1:/bin/bash
user2:x:1002:1002::/home/user2:/bin/bash
user3:x:1003:1003::/home/user3:/bin/bash
[20:49:42 root@bear etc]#mkdir /data/test

(1)、目录/data/test属主、属组为user1

[21:05:31 root@bear data]#chown user1  /data/test
[21:05:38 root@bear data]#chown :user1  /data/test
[21:08:40 root@bear data]#ll
drwxr-xr-x.   2 user1 user1    6 Dec 16 20:51 test

(2)、在目录属主、属组不变的情况下,user2对文件有读写权限

[21:12:00 root@bear data]#chmod -R o=rw /data/test
[21:15:47 root@bear data]#ll ./test
total 0
-rw-r--rw-. 1 root root 0 Dec 16 21:15 tx.txt

(3)、user1在/data/test目录下创建文件?a1.sh,a2sh,a3.sh, ?a4.sh,设置所有用户都不可删除1.sh,2.sh文件、除了user1及root之外,所有用户都不可删除?a3.sh, a4.sh

[22:06:45 user1@bear test]$getfacl /data/test
getfacl: Removing leading '/' from absolute path names
 # file: data/test
 # owner: user1
 # group: user1
user::rwx
group::r--
other::r-x
[22:11:13 root@bear test]#chattr +i /data/test/a1.sh  /data/test/a2.sh
[22:13:23 root@bear test]#lsattr /data/test/a1.sh  /data/test/a2.sh
----i--------------- /data/test/a1.sh
----i--------------- /data/test/a2.sh
[22:13:34 root@bear test]#rm -f a2.sh
rm: cannot remove 'a2.sh': Operation not permitted
[22:13:50 root@bear test]#ll

-rw-rw-r--. 1 user1 user1 0 Dec 16 22:02  a1.sh
-rw-rw-r--. 1 user1 user1 0 Dec 16 21:53  a2.sh
-rw-rw-r--. 1 user1 user1 0 Dec 16 21:53  a3.sh
-rw-rw-r--. 1 user1 user1 0 Dec 16 21:53  a4.sh
[22:13:54 root@bear test]#su wang
[22:15:42 wang@bear test]$rm -f a3.sh
rm: cannot remove 'a3.sh': Permission denied
[22:15:49 wang@bear test]$ll

-rw-rw-r--. 1 user1 user1 0 Dec 16 22:02  a1.sh
-rw-rw-r--. 1 user1 user1 0 Dec 16 21:53  a2.sh
-rw-rw-r--. 1 user1 user1 0 Dec 16 21:53  a3.sh
-rw-rw-r--. 1 user1 user1 0 Dec 16 21:53  a4.sh

(4)、user3增加附加组user1,同时要求user1不能访问/data/test目录及其下所有文件

[22:21:25 root@bear test]#setfacl -m u:user1:- /data/test
[22:23:02 root@bear test]#getfacl /data/test
getfacl: Removing leading '/' from absolute path names
# file: data/test
# owner: user1
# group: user1
user::rwx
user:user1:---
group::r--
mask::r--
other::r-x

(5)、清理/data/test目录及其下所有文件的acl权限

[22:33:21 user1@bear test]$setfacl -b  /data/test
[22:35:28 user1@bear test]$getfacl /data/test
getfacl: Removing leading '/' from absolute path names
# file: data/test
# owner: user1
# group: user1
user::rwx
group::r--
other::r-x

你可能感兴趣的:(Linux 学习重点记录之三)