创建归档文件

创建一个名为 /root/backup.tar.bz2tar 存档,其应包含 /usr/local 的内容。该 tar 存档必须使用bzip2 进行压缩。

解题

1
2
3
4
5
6
7
[root@mars ~]# tar jcvf /root/backup.tar.bz2 /usr/local/

[root@mars ~]# ls

[root@mars ~]# file backup.tar.bz2

backup.tar.bz2: bzip2 compressed data, block size = 900k

设置sudo免密

允许sysmgrs组所有成员使用sudo时不需要密码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[root@mars ~]# vim /etc/sudoers

110 # %wheel ALL=(ALL) NOPASSWD: ALL

111 %sysmgrs ALL=(ALL) NOPASSWD: ALL

[root@mars ~]# su - natasha

[natasha@mars ~]$ touch /test1

touch: cannot touch '/test1': Permission denied

[natasha@mars ~]$ sudo touch /test

[natasha@mars ~]$ exit

配置创建新用户的密码测试

创建新用户时,默认密码策略为20天后,密码会过期

解题

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[root@mars ~]# grep MAX /etc/login.defs

\# PASS_MAX_DAYS Maximum number of days a password may be used.

PASS_MAX_DAYS 99999

UID_MAX 60000

SYS_UID_MAX 999

GID_MAX 60000

SYS_GID_MAX 999

[root@mars ~]# vim /etc/login.defs

PASS_MAX_DAYS 20

注意事项

  • 本题主要靠密码策略修改是编辑 /etc/login.defs

创建shell脚本

  • 创建一个名为 myshell 的脚本

  • 该脚本放置在 /usr/local/bin

  • 该脚本用于查找 /usr 下所有大小在50K~10m 之间且具有修改组 ID权限的文件,将这些文件放置于/root/myfiles

解题

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
[root@mars ~]# mkdir /root/myfiles

[root@mars ~]# cat myshell.sh

\#!/bin/bash

find /usr -type f -and -size -10M -and -size +50k -and -size -10M -and -perm

-2000 -exec cp -a {} /root/myfiles \;

[root@mars ~]# cp myshell.sh /usr/local/bin/

[root@mars ~]# chmod +x /usr/local/bin/myshell.sh

[root@mars ~]# sh /usr/local/bin/myshell.sh

[root@mars ~]# ll /root/myfiles/

total 464

-r-xr-sr-x. 1 root ssh_keys 474528 Nov 26 2018 ssh-keysign

欢迎语

登录到普通用户后提示一句欢迎语'hello word !'或者用户在登陆前显示欢迎语提示:

解题

1
2
3
4
5
6
7
[root@mars ~]# echo 'hello world' >> /etc/motd

[root@mars ~]# echo 'hello world' >> /etc/issue

##登录测试


设置用户默认创建文件UMASK

用户natasha默认创建文件权限为r--r--r--默认创建的目录为r-xr-xr-x

解题

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[root@mars ~]# su - natasha

umask写进用户家目录下的bashrc

echo 'umask 222'>>.bashrc
[natasha@mars ~]$ source .bashrc
[natasha@mars ~]$ umask
0222
[natasha@mars ~]$ touch test1
[natasha@mars ~]$ mkdir test2
[natasha@mars ~]$ ll
total 0
-r--r--r--. 1 natasha natasha 0 Dec 21 03:10 test1
dr-xr-xr-x. 2 natasha natasha 6 Dec 21 03:10 test2
[natasha@mars ~]$ exit
##umask
#umask是屏蔽的意思,权限的数值取反
#222 对应目录的权限是555,对应文件的权限是444 (文件默认不给可执行权限)

注意事项

  • umask是屏蔽的意思,权限的数值取反

  • 222 对应目录的权限是555,对应文件的权限是444文件默认不给可执行权限

生成环境变量

  • 生成一个环境变量rhcsa,用户在使用这个变量时输出一句话"This is RHCSA!"

  • 自定义一个命令rhce,用户在使用这个变量时输出一句话"This is RHCE!"

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
1) 自定义变量

#使用export生成环境变量,并写进用户家目录下的bashrc

[root@mars ~]# echo 'export rhcsa="echo This is RHCSA!"' >> ~/.bashrc

[root@mars ~]# source .bashrc

[root@mars ~]# echo $rhcsa

echo This is RHCSA!

2) 自定义命令

[root@mars ~]# vim /usr/local/bin/rhce

#!/bin/bash

echo "This is RHCE!"

[root@mars ~]# chmod +x /usr/local/bin/rhce

[root@mars ~]# rhce

This is RHCE!

配置容器使其自动启动

  • 利用注册表服务器上的 rsyslog 镜像,创建一个名为 journal-server 的容器

  • 面向 tom用户,配置一个 systemd 服务

  • 该服务命名为 container-journal-server ,并在系统重启时自动启动,无需干预

解题

为容器配置持久存储

通过以下方式扩展上一个任务的服务:

配置主机系统的 journald 日志以在系统重启后保留数据,并重新启动日志记录服务

将主机 /var/log/journal 目录下任何以 *.journal 的文件复制到 /home/tom/container_logfile

将服务配置为在启动时自动将 /home/tom/container_logfile 挂载到容器中的 /var/log/journal 下

解题