linux8.0考试rhcsa

在这里插入图片描述

主机和ip地配置:
设置主机名
# hostnamectl set-hostname node1.domain250.example.com
查看所有网络接口信息
# nmcli connection show
设置静态IP、配置开机自动激活
# nmcli connection modify "Wired connection 1" ipv4.addresses 172.25.250.100/24 ipv4.gateway 172.25.250.254 ipv4.dns 172.25.250.254
ipv4.method manual connection.autoconnect yes
激活配置
# nmcli connection up "Wired connection 1"
检查网卡是否配置成功
# ifconfig
检查主机名是否配置成功
# hostname


yum源配置:
# vi /etc/yum.repo.d/foundation0.ilt.example.com_dvd_AppStream.repo
[foundation0.ilt.example.com_dvd_AppStream]
name=foundation0.ilt.example.com_dvd_AppStream
baseurl=http://foundation0.ilt.example.com/dvd/AppStream ֵ
enabled=1
gpgcheck=0

清空yum源
# yum clean all
初始化并列出所有可用yum源
# yum repolist
(考试机可能没有vim)安装vim测试yum源是否能正常使用
# yum install vim -y



selinux配置和http开放端口:
检查Selinux是否开启
# egrep -i selinux /etc/sysconfig/selinux |egrep -v "#"
selinux未开启就需要进配置文件把selinux设置为enforcing
# vim /etc/sysconfig/selinux
SELINUX=enforcing
重启使其生效
# reboot
检查semanage是否有安装
# semanage -h
如果没有需安装semanage
# yum install policycoreutils-python -y
先进/etc/httpd/conf/httpd里看看端口号是多少
# egrep -i listen /etc/httpd/conf/httpd.conf |egrep -v '#'
重启apache
# systemctl restart httpd
启动apche报错查看错误日志
# journalctl -xn
日志里会出现一行"# semanage port -a -t PORT_TYPE -p tcp 82"
使用semanage放通Selinux安全策略端口
# semanage port -a -t http_port_t -p tcp 82
#semanage fcontest -m -t httpd_sys_content_t /var/www/html/file1
#restorecon -RV /var/www/html
#firewall-cmd --permanent --add-port=82/tcp   //防火墙添加82放行
#firewall-cmd  --reload //重启防火墙生效
#systemctl enable --now httpd //设备开机启动并马上重启任务
检查端口是否放通成功
# semanage port -l | grep 'http'
再次检查
# curl http://servera.lab.example.com:82/a.htm

查对应程序开放端口的方法:
semanage port -l |grep http
semanage port -l |grep 3306

查看文件的上下文
 ps -eZ | grep mysqld

查看文件夹的上下文
ls -dZ /var/lib/mysql

system_u 是系统进程和对象的 SELinux 用户标识。
system_r 是用于系统进程的 SELinux 角色。
objects_r 是用于系统对象的 SELinux 角色。
mysqld_t 是与 mysqld 进程相关的 SELinux 类型。
mysqld_db_t 是与 MySQL 数据目录相关的 SELinux 类型。

另外一种mysql的selinux处理方法:
比如在my.cnf中更改了日志存放目录,而又开了selinux不想关,可以这种做,要不然mysql服务启动不了:
semanage fcontext 命令的 -a 选项增加一个目录为 /data/3306/data 的 MySQL 数据目录,然后使用命令 restorecon 恢复这个数据目录对应的 SELinux 上下文
semanage fcontext -a -t mysqld_db_t “/data/3306/data(/.*)?”
 restorecon -Rv /data/3306/data
 
-a:添加默认安全上下文配置
-d:删除指定默认安全上下文
-m:修改指定默认安全上下文
-t:设定默认安全上下文的类型
 
semanage fcontext -l|grep mysqld_db_t  查看是不是有增加进去mysql的上下文:
[root@mysql data]# semanage fcontext -l|grep mysqld_db_t
/var/lib/mysql(-files|-keyring)?(/.*)?     all files        system_u:object_r:mysqld_db_t:s0 
/data/3306/data(/.*)?                      all files          system_u:object_r:mysqld_db_t:s0 





创建用户组
# groupadd sysmgrs
创建用户并给用户附加一个组
# useradd natasha -G sysmgrs
# useradd harry -G sysmgrs
创建用户并指定用户不能登录到终端
# useradd sarah -s /sbin/nologin
检查组是否添加成功
# grep sysmgrs /etc/group
检查用户是否添加成功
# tail -3 /etc/passwd# grep /bin/bash /etc/passwd
# grep sarah /etc/passwd
明文设置用户密码
# echo "flectrag" | passwd --stdin natasha
# echo "flectrag" | passwd --stdin harry
# echo "flectrag" | passwd --stdin sarah
检查密码是否设置成功
# su - natasha
$ su - harry
$ su - natasha
$ su - sarah
$ exit


添加计划任务:
查看服务是否为开机自启状态
# systemctl status crond
创建natasha的计划任务
# crontab -e -u natasha
*/2 * * * * logger "EX200 in progress"
23 14 * * * logger "EX200 in progress"
检查
# crontab -u natasha -l




创建managers文件夹
# mkdir /home/managers
改变文件夹的属组
# chown :sysmgrs /home/managers# chgrp sysmgrs /home/managers
修改用户对文件夹使用权限,2为赋予sgid隐藏权限
chmod赋予的隐藏权限分为:"4"是SUID普通用户提权,普通用户对该文件的所有操作相当于是root权限(只针对二进制、可执行的文件);"2"是SGID获得该程序所属
用户组的权限,这个用户组的所有用户在该文件夹下创建的任何一个文件夹或文件它们的群组都会与此目录的群组相同;"1"是SBIT限制用户对文件执行的权限,当用
户在该目录下建立文件或目录时,仅有自己与 root才有权力删除。
# chmod 2770 /home/managers
检查文件夹是否成功
# ll -d /home/managers# ls -ld /home/managers




安装autofs挂载文件系统服务
# yum -y install autofs
autofs主配置文件
# vim /etc/auto.master
/rhome /etc/auto.rhome
配置子配置文件按照“挂载目录 挂载文件类型及权限 :设备名称”的格式进行填写,可以参考"/etc/auto.misc"的格式
# vim /etc/auto.rhome
remoteuser1 -rw,sync 172.25.254.254:/rhome/remoteuser1
另一种写法:
remoteuser1 -rw,sync materials.example.com:/rhome/remoteuser1
重启服务并设置开机自启
# systemctl restart autofs
# systemctl enable autofs
检查是否部署完成
# su - remoteuser1
$ pwd
$ df -Th




拷贝fstab文件
# cp /etc/fstab /var/tmp
查看文件是否拷贝成功
# ls -lh /var/tmp/fstab
查看acl基本权限
# getfacl /var/tmp/fstab6/21
设置acl基本权限
# setfacl -m u:natasha:rw /var/tmp/fstab
# setfacl -m u:harry:- /var/tmp/fstab
查看acl基本权限
# getfacl /var/tmp/fstab



安装NTP客户端chrony
# yum -y install chrony
设置NTP同步地址
# vim /etc/chrony.conf
(可参考文件里面的写法,把中间的地址换成需要同步的地址)
server 172.25.254.254 iburst
或
server materials.example.com iburst
重启服务并设置开机自启
# systemctl restart chronyd
# systemctl enable chronyd
检查时间是否同步成功
# timedatectl




创建manalo用户并设置uid为3533
# useradd manalo -u 3533
# echo "flectrag" | passwd --stdin manalo
检查方法可参考第四题




想脚本有分数就执行下面这句,考试不需要
# touch /tmp/{gamelan,jacques,libWedgeit.so.1.2.3}
# chown jacques:jacques /tmp/{gamelan,jacques,libWedgeit.so.1.2.3}
先创建一个存放jacques 用户所有文件的文件夹
# mkdir /root/findfiles
使用find文件搜索命令查找用户文件并拷贝到刚创建的文件夹中
# find / -user jacques -exec cp -a {} /root/findfiles \;




使用grep命令限制需要查找的内容,如果内容没有特殊符号可以不用加引号
# grep "ng" /usr/share/xml/iso-codes/iso_639_3.xml > /root/list




tar打包并压缩文件(考试时注意看题目使用参数)
# tar -czvf /root/backup.tar.gz /etc
# tar -cjvf /root/backup.tar.bz2 /etc
检查是否打包压缩成功
# ll /root/backup.tar.gz
# file /root/backup.tar.gz




编辑/etc/sudoers配置文件,进入第110行
# vi /etc/sudoers +110
##vi命令行模式yy把现在选中的这条复制下来,p粘贴
# %wheel ALL=(ALL) NOPASSWD: ALL
##组名改成sysmgrs
%sysmgrs ALL=(ALL) NOPASSWD: ALL




编辑/etc/login.defs新建用户策略文件,进入第25行
# vi /etc/login.defs +25
##修改当行的数字为20
PASS_MAX_DAYS 20


配置登录后的欢迎语
重定向欢迎语写入到/etc/motd
# echo 'hello word !' >> /etc/motd
配置登录前的欢迎语
重定向欢迎语写入到/etc/issue
# echo 'hello word !' >> /etc/issue
从底层登录到系统检查


# su - natasha
把umask写进用户家目录下的bashrc
echo 'umask 222'>>.bashrc

使用export生成环境变量,并写进用户家目录下的bashrc
# echo 'export rhcsa="echo This is RHCSA!"' ~/.bashrc
自定义命令
su - user
$ echo 'alias rhce="echo This is RHCE!"'>>~/.bash
或
#cat >>/usr/local/bin/rhce<<eof
> #!/bin/bash
> echo This is RHCE!
> eof
# chmod +x /usr/local/bin/rhce


重启
内核选择界面按e,将光标移到Linux 那一行末尾添加如下内容:rd.break console=tty0
按下:Ctrl + X进入grup救援模式
重新挂载/目录
# mount -o rw,remount /sysroot
进入/目录
# chroot /sysroot
设置root密码
# echo "flectrag"|passwd --stdin root
或
下面设置密码需要敲两次密码
# passwd
flectrag
flectrag
在根目录下创建重新刷新SELinux 安全上下文标记的文件
# touch /.autorelabel
退出重启系统
# exit
# reboot



调整逻辑卷大小:
查看需要调整的逻辑卷所挂载的路径和现有的大小、名字
# lvscan
查看卷组的容量有多大
# vgs
使用lvm逻辑卷扩容
# lvextend -L 230M /dev/myvol/vo
检查lvm大小是否符合
# lvscan
重新扩容过的文件系统
# resize2fs /dev/myvol/vo# xfs_growfs /dev/myvol/vo
查看是否扩容成功
# df -Th



添加交换分区:
使用dd if of创建虚拟内存(个人感觉用这个做比较容易且方便)
# dd if=/dev/zero of=/root/swap.jpg bs=756 count=1M
制作swap
# mkswap /root/swap.jpg
写入挂载
# vi /etc/fstab
/root/swap.jpg swap swap defaults 0 0
挂载swap
# swapon -a
# swapon -s
查看是否创建成功
# free -h
或者使用磁盘分区分出一个swap
# fdisk /dev/vdb
# mkswap /dev/vdb2
记住分出来的UUID,记不住可以用blkid查看
# blkid
UUID=*
写入挂载
# vim /etc/fstab
UUID=* swap swap defaults 0 0
挂载
# swapon -a
# swapon -s
检查
# free -h





创建逻辑卷:
第一步创建一个基本分区
# fdisk -l /dev/vdb
# fdisk /dev/vdb
n
p
回车
回车
回车
w
第二步创建pv物理卷
# pvcreate /dev/vdb3
第三部创建vg逻辑卷组
# vgcreate qagroup /dev/vdb3 -s 16M
第四部创建lv逻辑卷
# lvcreate -l 60 -n qa qagroup# lvcreate -L 240M -n qa qagroup
制作文件系统
# mkfs.ext3 /dev/qagroup/qa
挂载路径
# mkdir /mnt/qa
# vim /etc/fstab
/dev/qagroup/qa /mnt/qa ext3 defaults 0 0
# mount -a



优化系统
安装工具
# yum -y install tuned
重启并设置开机自启
# systemctl restart tuned --now
查看可使用的配置文件
# tuned-adm list
设置profile为推荐值
# tuned-adm profile virtual-guest
设置确认
# tuned-adm active

猜你喜欢

转载自blog.csdn.net/ydaxia110/article/details/131565018