第三十三章 linux常规练习题(二)

一、练习题一

1.删除用户基本组shanghai03。发现无法正常删除,怎样才能将其删除掉,不能删除用户。
2.打开多个xshell窗口连接登录同一虚拟机,使用不同的用户登录多次,分别使用w和who命令显示当前系统上的所有已经登录的用户,取出用户名这一列,注意:同一个用户登录多次,则只显示一次即可。
3.创建用户olddir,其ID号为1005,基本组为old
4.显示当前登录的用户的UID号,你有几种方法实现?
5.对于用户来说,组有几种类别?有什么区别?
6./etc/group文件以:为分隔符,分为四列,解释其每列的含义?
7./etc/gshadow文件以:为分隔符,分为四列,解释其每列的含义?
8.如果想从root用户切换到普通用户,使用什么命令?
9.切换到普通用户后,想返回到root用户,怎么做?有几种方法,有什么区别?
10.Shell主要分为哪几类?
11.Bash Shell的个人及全局配置文件有哪些?哪个优先级别高?
12.登录式Shell配置文件执行顺序?
13.非登录式shell配置文件执行顺序?
14.在root用户下,以普通用户身份执行"pwd"命令。
15.什么是sudo?
16.可以根据哪个文件对sudo提权?
17.登录到普通用户,查看/etc/shadow文件的内容,发现查看不了,怎么办?
18.登录到普通用户,删除/opt目录,若无法删除,该怎么解决?
19.登录到普通用户,使用sudo命令时,不想输出密码,怎么解决?
20.怎样查看普通用户的sudo权限?
21.配置好了sudo授权,怎么检查语法是否正确?
22.禁止root用户远程登录,怎么实现?
23.修改远程连接端口号为2222,然后进行登录?
24.把对sshd的设置修改成原来的设置。
25.说出下面几个特殊符号的含义 * > >> # .. . ^ $ `` !

 

二、练习题二

1.用户基础权限为9位,每三位为一组,每组代表着谁的权限?
2.权限中的rwx-,每个字符所代表什么意思?对应的数字是什么?
3.-rwxr-xr-x,写出对应数字权限
4.-rwxr--r--,写出对应数字权限
5.-r-xr-x--x,写出对应数字权限
6.-rw-r-xr-x,写出对应数字权限
7.-r--r--r--,写出对应数字权限
8.-r-xr-----,写出对应数字权限
9.---x-w-r--,写出对应数字权限
10.-rwxr--rw-,写出对应数字权限
11.-rw-r--r--,写出对应数字权限
12.---xr--rwx,写出对应数字权限
13.777,写出对应字母权限
14.545,写出对应字母权限
15.744,写出对应字母权限
16.600,写出对应字母权限
17.641,写出对应字母权限
18.711,写出对应字母权限
19.700,写出对应字母权限
20.555,写出对应字母权限
21.733,写出对应字母权限
22.713,写出对应字母权限
23.建一个目录/test,查看这个目录的默认权限是?
24.进入/test目录中,建一个文件abc,查看其默认的权限为?
25.创建一个文件test.txt,并其将权限改为600.
26.将test.txt文件的权限改为755.
27.将test.txt文件的权限改为000.
28.修改test.txt文件的权限为644.
29.给test.txt文件的属主加上x权限。
30.给test.txt文件的其他用户加上x权限。
31.去除test.txt文件的所有执行权限。
32.给/test目录及目录下的所有文件或目录的权限统一改为744。
33.给/test目录及目录下的所有文件或目录加上x权限(属主、属组、其他用户都执行权限)。
34.使用stat命令查看test.txt文件的权限,并使用awk将权限取出来,比如:755
35.使用stat命令查看test.txt文件的权限,并使用sed将权限取出来,比如:755

 

三、练习题三

1.创建目录/web01,所有者是user01,所属组是user02;创建目录/web02,所有者是user02,所属组是user01。
2.复制/etc/fstab文件到/opt下,设置文件所有者为tomcat读写权限,所属组为apps组有读写权限,其他人无权限
3.将以下权限翻译成数字,将数字权限用字母表示
rw-r-xr--
rw-r--r--
rwx--x--x
rw-------
rwxr--r--
rw-rw-r--
rwxrwxrwx
751
771
632
551
622
746
644
755
4.假设公司研发部的用户david和peter属于组A,财务部的用户life和laowang属于组B,根据要求创建用户及组。
5.接第4题,建立目录file1,该目录里面的文件只能由研发部人员读取、增加、删除、修改以及执行,其他用户不能对该目录进行任何操作
6.接第4题,建立目录file2,该目录里面的文件只能由财务部人员读取、增加、删除、修改以及执行,其他用户不能对该目录进行任何操作
7.接第4题,建立目录file3,该目录里面的文件研发部人员可以读取、增加、删除、修改以及执行,其他部门只能做查看操作
8.接第4题,建立目录file4,该目录里面的文件只有研发部的经理David拥有所有操作权限,研发部的其他人只有查看权限,其他部门不能进行任何操作
9.新建用户组,shengchan,demo,要求如下:
01、tom是shengchan组的附加成员
02、leo是demo组的附加成员
03、新建用户admin不属于以上任何一个组
10.新建目录要求如下:
01、/pub/目录为公共存储目录,所有用户可以读写执行
02、/sc目录是生产部的目录,生产部的成员读写执行,并且生产部人员建立的文件自动归属到
shengchan组中
03、admin用户可以在/sc目录中可以读
11.新建目录/www01,/www02,/www03
12.接第11题,更改/www01目录的权限,使其他用户对它没有任何权限;
13.接第11题,更改/www02目录的权限,使所属组对它拥有读写执行权限;
14.接第11题,更改/www03目录的权限,任何用户都可以读写,但是在/www03目录中创建的任何文件都属于grp1组
15.新建用户zhangsan,lisi,wangergou,三个用户都属于同一个用户组f4,密码都为oldboy
16.接15题,上述用户和组都能在/data/code目录,访问,创建,删除文件,其他用户无法访问该目录
17.接15题,/data/code目录下创建的所有文件自动归属于f4组所有
18.接15题,现在新增了一批用户,属于默认组,需要开放其他用户在code目录的读权限
19.接15题,新增的所有其他用户在code目录下创建的文件自动归属f4组
20.有两个用户组,分别为python组、linux组,python组的人可以修改读取python组的文件,但不能让linux组的人读取;linux组的人可以修改读取linux组的文件,但不能让python组的人读取。
21.在当前目录中新建文件text,假设该文件的权限为614。现要求设置该文件属主(u)增加执行权限,属组(g)增加写权限,其他用户(o)删除读权限,应该如何操作,另外修改后的权限用字母应该如何表示
22.在当前目录中创建目录aaa,并把该目录的权限设置为只有文件主有读、写和执行权限
23.设某文件myfile的权限为-rw-r--r--,若要增加所有人可执行的权限,应该怎么做
24.登录到普通用户user01,删除/opt这个目录,提示权限不足,如果要删除/opt这个目录,不使用root用户删除的话,你该怎么解决?
25.创建目录/test,要求所有用户对这个目录有所有权限,现在只想让每个用户在这个目录只能对属于自己的文件进行操作,怎么实现?
26.创建一个文件/opt/file.txt,这个文件很重要,现要求所有人只能查看和追加内容进去,不允许有其他的操作,怎么实现?
27.取消上题的设置,现要求所有人只能查看此文件,不允许有其他的操作,怎么实现?
28.请问在当前系统中新创建的目录和文件,权限各是多少,为什么?
29.如果我想要在系统中新创建的目录权限为555,文件为444,怎么实现?
30.umask怎么计算目录及文件权限的?

31.在你修改了test.txt文件之后,如何知道在你下次要修改这个文件时,这个文件有没有被别人修改过?

32.输入时间命令"date"将当前系统时间输出到/data/1.txt
33.输入时间命令"date"将当前系统时间追加到/data/1.txt
34.在当前系统能ping通百度的情况下,使用" ping -c3 baidu.com "将返回的信息输出到/data/1.txt
35.使用“ls /ta”将错误的信息输出到/data/1.txt
36.将/data/1.txt的文件内容,标准输出到/data/2.txt
37.使用"seq 10 50"将以0结尾的行标准输出到3.txt
38.把/etc/fstab文件内容重定向到/tmp目录下文件名为fstab.out
39.把字符"hello world"追加到/tmp/fstab.out文件尾部
40.输入df -h,取出当前系统根分区已用磁盘空间的百分比,并将取出来的数值输出到/data/1.txt
41.使用命令ping测试10.0.0.100是否通畅,把输出的结果不管是正确的还是错误的都追加到/data/1.txt
42.使用重定向从文件/etc/passwd中读取数据。
43.用 << 举个命令的使用例子。
44.改变文件所有者的命令是?

45.新建用户oldboy,oldgirl,属同一用户组edu
46.修改文件1.txt的所有者为oldboy,属组为edu
47.除所有者以外,属组和其他用户均没有任何权限(要求普通用户进行验证)
48.复制/etc/fstab文件到/var/tmp下,设置文件所有者为wangcai读写权限,所属组为sysadmins组有读写权限,其他人无权限
49.创建下面的用户、组和组成员关系,用户natasha,使用admins作为附属组,用户harry,也使用admins作为附属组,用户sh,不可交互登录系统,natasha,harry,sh密码都是centos
50.新建一个用户rose,uid为555,gid为500,注释信息为:linux,家目录在/rose

51.翻译题
01).command not found
02).No such file or directory
03).Permission denied
04).overwrite
05).File exists
06).Is a directory
07).Not a directory
08).Warning: Changing a readonly file
09).Found a swap file by the name ".1.swp"
10).unrecognized option '--oldboy'
11).Operation not permitted
12).invalid option

 

四、练习题四

1.找出/tmp目录下,属主不是root,且文件名不以f开头的文件
2.查找/etc/目录下,所有.conf后缀的文件
3.查找/var目录下属主为root,且属组为mail的所有文件
4.查找/var目录下7天以前,同时属主不为root,也不是postfix的文件
5.查找/etc目录下大于1M且类型为普通文件的所有文件
6.查找/etc目录下所有用户都没有写权限的文件
7.查找/目录下最后创建时间是3天前,后缀是*.log的文件
8.查找/目录下文件名包含txt的文件
9.查找/目录下属主是oldboy并且属组是oldboy的文件
10.查找/目录下属主是oldboy但是属组不是oldboy的文件
11.查找/目录下属主是oldboy或者属主是oldgirl的文件
12.查找/tmp目录下属主既不是oldboy,也不是oldgirl的文件
13.查找/var/log目录下7天以前的文件
14.查找/tmp目录下15天以前的文件删除
15.查找/home目录下,类型是目录的,并且属主是oldboy的目录
16.查找/var/log下大于100kb且以log结尾的所有文件
17.查找tmp目录下所属组group1,所属主user1的目录
18.同时查找根目录下名为1.txt,2.txt的文件和名字带a的目录
19.查找/tmp目录下所有文件并删除
20.查找/etc目录下至少有一类用户没有写权限的文件
21.查找/var目录下不属于root、lp、gdm的所有文件
22.将/etc/中的所有目录(仅目录)复制到/tmp下,目录结构不变
23.将/etc目录复制到/var/tmp/,/var/tmp/etc的所有目录权限777/var/tmp/etc目录中所有文件权限666
24.保留/var/log/下最近7天的日志文件,其他全部删除
25.创建touch file{1..10}10个文件, 保留file9,其他一次全部删除
26.解释如下每条命令含义
mkdir /root/dir1
touch /root/dir1/file{1..10}
find /root/dir1 -type f -name "file5"
find /root/dir1 ! -name "file5"
find /root/dir1 -name "file5" -o -name "file9"
find /root/dir1 -name "file5" -o -name "file9" -ls
find /root/dir1 \( -name "file5" -o -name "file9" \) -ls
find /root/dir1 \( -name "file5" -o -name "file9" \) -exec rm -rvf {} \;
find /root/dir1 ! \( -name "file4" -o -name "file8" \) -exec rm -vf {} \;

 

 五、练习题五

1.linux下常见的压缩包类型有哪些

2.将/etc/hosts文件用tar格式打包。

3.查看打包之后的/etc/hosts的文件内容,在不解压的情况下查看。

4.使用tar打包/var/log/目录。

5.使用zip打包/etc目录。

6.查看/var/log/目录的压缩包中有哪些内容。

7.将/var/log/目录解压到/opt目录中。

10.解压/etc/目录到/opt目录中。

11.用zip打包/opt目录,要求不显示打包过程。

12.打包/etc/目录,要求是.bz2格式

13.打包/var/log目录,要求是.xz格式

14.使用tar命令打包/etc/时,会出现一个删根的操作,怎样打包不会进行删根的操作

15.打包/etc/目录,要求不打包/etc/hosts这个文件。

16.打包/etc/目录,要求不打包/etc/hosts和/etc/hostname这两个文件。

17.打包/etc/目录,但要排除passwd,shadow,group,gshadow,hosts,hostname这些文件。(你能用两种方法实现吗)

18.已知/etc/grub2.cfg文件是个软连接文件,在你不知道的情况下,请问怎么打包该文件的真实文件。
19.把/var/log/目录中所有.log的文件进行打包成一个压缩包,名称定义为log.tar.gz的压缩包。

20.已知文件oldboy.zip,请问在不解压的情况下,怎样查看该文件的内容。

21.打包/etc/目录,命令以ip地址+当前时间方式的压缩包:比如: 10.0.0.100_2019-12-24_etc.tar.gz

22.创建/data/bak目录,然后复制如下文件到/data/bak目录下
/etc/hosts
/etc/resolv.conf
/etc/fstab
/etc/bashrc
/etc/profile
/etc/rc.local
/etc/sudoers

23.接22题,使用tar命令对/data/bak目录下的文件及目录以gzip的格式进行归档压缩到/data目录下(压缩包的名字以自己名字命名)

24.使用tar命令查看上题/data目录下压缩包内的内容。

25.把第23题/data目录下的压缩包,解压到/backup目录下

26.再次使用tar命令把/data/bak目录下的文件及目录以gzip的格式进行归档压缩到/data目录下,但是在进行归档压缩时,排除文件“sudoers”,然后查看该压缩包内容是否存在文件“sudoers”(压缩包名自行拟定)

27.打包/etc目录下所有普通文件到root用户家目录。

28.打包/etc/目录到/opt/目录下,名称要求以当前主机名和ip地址命名,例:oldboy_10.0.0.100.tar.gz

29.如何使用gzip命令对文件进行压缩、解压

30.如何用zip命令对文件以及目录进行压缩、解压

31.创建一个自己名字的文件至/opt目录

32.打包opt整个目录,并命名test_opt.tar.gz

33.查看打包好的test_opt.tar.gz里的文件

34.将打包好的test_opt.tar.gz内容指定解压至/tmp目录

35.打包etc目录下的所有文件,不要目录只要文件

36.打包etc目录下的所有文件,排除passwd,shadow

37.打包etc目录下的所有以p开头的文件

38.打包etc目录下所有大于1M的文件

 

 六、练习题六

1.某系统管理员需要每天做一定的重复工作,编制一个解决方案: 
(1).从下午4:50删除/abc目录下的全部子目录和全部文件;  
(2).每逢周一下午5:50将/data目录下的所有目录和文件归档并压缩为文件backup.tar.gz;  

2.在每个月的第一天压缩/etc目录下的所有内容,存放在/root/backup目录里,且文件名为当前系统时间?
3.每周三01:00~04:00每3分钟执行一次/home/data/demo.sh
4.每周一到周六的凌晨3点20分,运行tar命令对/etc/目录进行存档另存,存储位置为/data/bak,文件名为“system_+当前系统时间”
5.每日凌晨2点30分,运行cp命令对/etc/fstab文件拷贝到/tmp下
6.每月每天凌晨3点30分和中午12点20分执行test.sh脚本
7.每月每天每隔6小时的每30分钟执行test.sh脚本
8.每月每天早上8点到下午18点每隔2小时的每30分钟执行test.sh脚本
9.每月每天晚上21点30分执行test.sh脚本
10.每月1号、10号、22号凌晨4点45分执行test.sh脚本
11.8月份周一、周日凌晨1点10分执行test.sh脚本
12.每月每天每小时整点执行test.sh脚本
13.每月的4号与每周一到周三的11点重启vsftpd服务
14.解释如下命令的含义
30 3,12 * /bin/sh /scripts/oldboy.sh
30 */6 * * * /bin/sh /scripts/oldboy.sh
30 8-18/2 * * * /bin/sh /scripts/oldboy.sh
30 21 * * * /usr/sbin/nginx -s reload
45 4 1,10,22 * * /usr/sbin/nginx -s reload
10 1 * * 6,0 /usr/sbin/nginx -s reload
0,30 18-23 * * * /usr/sbin/nginx -s reload
00 11 * 4 1-3 /usr/sbin/nginx -s reload

15.写一条计划任务,在每天晚上的3:05分执行脚本/usr/script/tongji.sh
16.在每周6的凌晨3:15执行/home/shell/collect.pl,并将标准输出和标准错误输出到/dev/null设备,请写出crontab中的语句

 

posted @ 2020-08-05 19:15  年少纵马且长歌  阅读(723)  评论(0编辑  收藏  举报