RHCSA-day1
1. 破解密码
开机
e 进入编辑模式
linux16 /boot/.............................en_US.UTF_8
这行末尾插入 rd.break (空格)
ctrl+x 启动
ls
mount -o remount,rw /sysroot/ 重新mount /sysroot rw (tab可以补齐) chroot /sysroot/ 切换目录
ls passwd root
XXX redhat
XXX redhat touch /.autorelabel
auto re label 重新打标
exit
exit
2 .修改ip
请首先按找以下要求配置考试系统:
* Hostname: server0.example.com
* IP address: 172.25.0.11
* Netmask: 255.255.255.0
* Gateway: 172.25.0.254
* Name server: 172.25.254.254
* 所有配置要求系统重启后依然生效
确认Hostname(主机名),IP address,Netmask(子网掩码),Gateway(网关),Name server(dns)
[root@server0 ~]# hostname
server0.example.com [root@server0 ~]# ip ad [root@server0 ~]# route -n [root@server0 ~]# nmcli connection show
[root@server0 ~]# nmcli device show eth0
另1:图形界面
另2:nmcli
[root@server0 ~]# hostnamectl set-hostname xixi
[root@xixi ~]# hostname
xixi [root@server0 ~]# nmcli conn modify eth0 ipv4.addresses "172.25.0.11/24 172.25.0.254"
ip 子网掩码 网关
[root@server0 ~]# nmcli conn modify eth0 ipv4.dns "172.25.254.254" [root@server0 ~]# nmcli conn modify eth0 ipv4.method manual 手动
[root@server0 ~]# nmcli conn modify eth0 connection.autoconnect yes 自动启动
[root@server0 ~]# nmcli conn up eth0
增加删除多余的ip
[root@localhost ~]# nmcli conn modify eth0 +ipv4.addresses "172.25.0.11/24 172.25.0.254"
[root@localhost ~]# nmcli conn up eth0 [root@localhost ~]# nmcli conn modify eth0 -ipv4.addresses "172.25.0.44/24"
[root@localhost ~]# nmcli conn up eth0
redhat7.2版本配置
[root@server0 ~]# nmcli conn modify eth0 ipv4.addresses "172.25.0.44/24"
[root@server0 ~]# nmcli conn modify eth0 ipv4.gateway "172.25.0.254"
Error: invalid property 'gateway':
另3:配置文件(不推荐)
[root@server0 ~]# vim /etc/resolv.conf
[root@server0 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
[root@server0 ~]# systemctl restart NetworkManager
[root@server0 ~]# systemctl restart network
答题开始
1.修改root密码
请修改系统的root帐号密码为ooxx9527,,确保能够使用root帐号能够登陆系统。
[root@server0 ~]# echo ooxx9527 | passwd --stdin root
Changing password for user root.
passwd: all authentication tokens updated successfully.
2.设定SeLinux
请按下列要求设定系统:
SeLinux的工作模式为enforcing
要求系统重启后依然生效
[root@server0 ~]# getenforce
[root@server0 ~]# vim /etc/selinux/config
[root@server0 sysconfig]# vim /etc/sysconfig/selinux
SELINUX=enforcing
[root@server0 ~]# setenforce 1
[root@server0 ~]# getenforce
[root@server0 ~]# setenforce 0
[root@server0 ~]# getenforce
3.配置yum
配置你的本地默认YUM软件仓库,仓库地址为http://classroom.example.com/content/rhel7.0/x86_64/dvd
确认连接是否正确,放到火狐
[root@server0 ~]# vim /etc/yum.repos.d/base.repo [base]
name=base
baseurl=http://classroom.example.com/content/rhel7.0/x86_64/dvd
enable=1
gpgcheck=0 [root@server0 ~]# yum clean all 清理之前的缓存
[root@server0 ~]# yum list 查看更新过程
[root@server0 ~]# yum repolist 查看仓库名称
[root@server0 ~]# yum install tree -y
[root@server0 ~]# yum remove tree -y
简易形式
[root@server0 ~]# vim /etc/yum.repos.d/base.repo
[1]
name=2
baseurl=http://classroom.example.com/content/rhel7.0/x86_64/dvd
enable=1
gpgcheck=0
4.调整逻辑卷容量
5.创建用户和用户组
请按照以下要求创建用户、用户组:
新建一个名为adminuser的组,组id为40000
新建一个名为natasha的用户,并将adminuser作为其附属组
新建一个名为harry的用户,并将adminuser作为其附属组
新建一个名为sarah的用户,其不属于adminuser组,并将其shell设置为不可登陆shell
natasha、harry和sarah三个用户的密码均设置为glegunge
[root@server0 ~]# groupadd -g 40000 adminuser
[root@server0 ~]# useradd -G adminuser natasha
[root@server0 ~]# useradd -G adminuser harry
[root@server0 ~]# useradd -s /sbin/nologin sarah
[root@server0 ~]# id natasha [root@server0 ~]# echo glegunge | passwd --stdin natasha
输出glegunge 作为标准输入
[root@server0 ~]# echo glegunge | passwd --stdin harry
[root@server0 ~]# echo glegunge | passwd --stdin sarah
修改用户shell
[root@server0 ~]# useradd sarah
[root@server0 ~]# usermod -s /sbin/nologin sarah
另2:配置文件修改
[root@server0 ~]# tail -l /etc/group 查看组id [root@server0 ~]# vim /etc/group 直接在文件中修改组id
adminuser:x:4000:natasha,harry [root@server0 ~]# vim /etc/group 给用户添加附属组
adminuser:x:4000:natasha,harry,redhat
[root@server0 ~]# vim /etc/passwd 修改用户id
alex:x:666:666::/home/alex:/bin/bash
创建一个新用户,系统干了些什么? [root@server0 ~]# ll /home/ 创建目录
[root@server0 ~]# ll /var/mail/ 创建邮箱 [root@server0 ~]# tail -f /etc/passwd 添加passwd group
[root@server0 ~]# tail -f /etc/shadow
[root@server0 ~]# tail -f /etc/group
[root@server0 ~]# tail -f /etc/gshadow [root@server0 ~]# ls -la /etc/skel/ 复制隐藏文件到家目录
[root@server0 ~]# echo 'ls'
ls
[root@server0 ~]# echo "ls"
ls
[root@server0 ~]# echo `ls`
anaconda-ks.cfg Desktop Documents Downloads kernel-3.10.0-123.1.2.el7.x86_64.rpm Music Pictures Public Templates Videos
6.文件权限设定
复制文件/etc/fstab到/var/tmp目录下,并按照以下要求配置/var/tmp/fstab文件的权限:
该文件的所属人为root
该文件的所属组为root
该文件对任何人均没有执行权限
用户natasha对该文件有读和写的权限
用户harry对该文件既不能读也不能写
所有其他用户(包括当前已有用户及未来创建的用户)对该文件都有读的权限
[root@server0 ~]# cp /etc/fstab /var/tmp [root@server0 ~]# cd /var/tmp
[root@server0 tmp]# ll [root@server0 tmp]# setfacl -m u:natasha:rw fstab
modify 修改
[root@server0 tmp]# setfacl -m u:harry:- fstab
[root@server0 tmp]# getfacl fstab
7.建立计划任务
对natasha用户建立计划任务,要求在本地时间的每天14:23执行以下命令:/bin/echo "rhcsa"
[root@server0 ~]# crontab -h 查看帮助 [root@server0 ~]# crontab -e -u natasha
编辑 用户
23 14 * * * /bin/echo "rhcsa"
分 时 日 月 周
(如果有问题则,不能wq) [root@server0 ~]# crontab -l -u natasha
list
[root@server0 ~]# systemctl restart crond.service
[root@server0 ~]# systemctl enable crond.service
[root@server0 ~]# systemctl status crond.service
crontab -e [-u USERNAME]
分 时 日 月 周
23 14 * * 1,3,5 tar cvf 'date +%Y%m%d' etc.tar /etc > /dev/null 2&1 1,3,5 周14.23 将 etc下的文件打包, 文件名为当天的日期
[root@server0 ~]# date +%Y%m%d [root@server0 ~]# tar -cjvf `date +%Y%m%d`etc.tar.bz2 /etc/sysconfig/
8.文件特殊权限设定
在/home目录下创建名为admins的子目录,并按以下要求设置权限:
/home/admins的所属组为adminuser
该目录对adminuser组的成员可读可执行可写,但对其他用户没有任何权限,但root不受限制
在/home/admins目录下所创建的文件的所属组自动被设置为adminuser
[root@server0 ~]# mkdir /home/admins
[root@server0 ~]# ll /home/admins -d [root@server0 ~]# chgrp adminuser /home/admins/
[root@server0 ~]# chown :adminuser /home/admins/
[root@server0 ~]# chmod 770 /home/admins/
[root@server0 ~]# chmod g+s /home/admins/ s强制模式 [root@server0 ~]# ll /home/admins -d [root@server0 ~]# cd /home/admins/
[root@server0 admins]# touch 2
[root@server0 admins]# ll
安全上下文,谁发起的进程,所属者是谁
在/home/admins目录下所创建的文件的所属用户
自动被设置为adminuser??
[root@server0 hehe]# which touch
/usr/bin/touch [root@server0 hehe]# ll /usr/bin/touch
[root@server0 hehe]# chown adminuser /usr/bin/touch
[root@server0 hehe]# chmod u+s /usr/bin/touch
whereis
[root@server0 hehe]# whereis touch 查看文件和命令
touch: /usr/bin/touch /usr/share/man/man1/touch.1.gz /usr/share/man/man1p/touch.1p.gz which
[root@server0 hehe]# which touch 查看命令
/usr/bin/touch
9.升级系统内核 (先升级内核重启,再做其他题目)
请按下列要求更新系统的内核:
新内核的RPM包位于http://classroom.example.com/content/rhel7.0/x86_64/errata/Packages/kernel-3.10.0-123.1.2.el7.x86_64.rpm
系统重启后,默认以新内核启动系统,原始的内核将继续可用
[root@server0 ~]# wget http://classroom.example.com/content/rhel7.0/x86_64/errata/Packages/kernel-3.10.0-123.1.2.el7.x86_64.rpm
下载到当前目录
[root@server0 ~]# uname -r 查看内核版本
[root@server0 ~]# rpm -ivh --force kernel-3.10.0-123.1.2.el7.x86_64.rpm 安装
-i install v:version h:hash [root@server0 ~]# shutdown -r now 重启
[root@server0 ~]# reboot
[root@server0 ~]# init 6 [root@server0 ~]# shutdown -h now 关机
标准输入是文件描述符0。它是命令的输入,
标准输出是文件描述符1。它是命令的输出,
标准错误是文件描述符2。这是命令错误的输出, 重定向
[root@server0 ~]# rpm -ivh kernel-3.10.0-123.1.2.el7.x86_64.rpm > /dev/null 标准错误重定向
[root@server0 ~]# rpm -ivh kernel-3.10.0-123.1.2.el7.x86_64.rpm 2&> /dev/null
10.配置LDAP客户端
11.配置LDAP用户家目录自动挂载
12.同步时间
配置您的系统时间与服务器classroom.example.com同步,要求系统重启后依然生效
另1:chronyd服务
[root@server0 ~]# vim /etc/chrony.conf
#server 0.rhel.pool.ntp.org iburst
#server 1.rhel.pool.ntp.org iburst
#server 2.rhel.pool.ntp.org iburst
#server 3.rhel.pool.ntp.org iburst
server classroom.example.com iburst 注释3456
添加
[root@server0 ~]# systemctl restart chronyd.service
[root@server0 ~]# systemctl enable chronyd.service
[root@server0 ~]# systemctl status chronyd.service
另2:配置NTP客户端
[root@server0 ~]# yum install ntp -y
[root@server0 ~]# vim /etc/ntp.conf #server 0.rhel.pool.ntp.org iburst
#server 1.rhel.pool.ntp.org iburst
#server 2.rhel.pool.ntp.org iburst
#server 3.rhel.pool.ntp.org iburst
server classroom.example.com iburst [root@server0 ~]# systemctl restart ntpd
[root@server0 ~]# systemctl enable ntpd
[root@server0 ~]# systemctl status ntpd
另3:图形界面
[root@server0 ~]# yum install system-config-date -y
[root@server0 ~]# system-config-date
删除默认的 添加 classroom.example.com 空白处点下
[root@server0 ~]# systemctl status ntpd
13.打包文件
请对/etc/sysconfig目录进行打包并用bzip2压缩,生成的文件保存为/root/sysconfig.tar.bz2
[root@server0 ~]# ll /etc/sysconfig/
[root@server0 ~]# man tar [root@server0 ~]# tar -cjvf /root/sysconfig.tar.bz2 /etc/sysconfig
c:create j:bzip v:详细信息 f:归档为file 名称 保存目录
[root@server0 ~]# ll
tar xvf 自动解压,不管什么类型的
[root@server0 ~]# tar xvf sysconfig.tar.bz2
14.创建用户
请创建一个名为alex的用户,并满足以下要求:
用户id为3456
密码为glegunge
[root@server0 ~]# useradd alex -u 3456
[root@server0 ~]# id alex
[root@server0 ~]# echo glegunge | passwd --stdin alex
[root@server0 ~]# adduser haha 是useradd的软链接
[root@server0 ~]# id haha
uid=3458(haha) gid=3458(haha) groups=3458(haha)
15.创建swap分区
16.查找文件
请把系统上拥有者为ira用户的所有文件,并将其拷贝到/root/findfiles目录中
[root@server0 ~]# ll
[root@server0 ~]# mkdir /root/findfiles [root@server0 ~]# id ira [root@server0 ~]# find / -user ira
/ 范围 用户
[root@server0 ~]# find / -user ira -exec cp -a {} /root/findfiles/ \;
动作:复制 {}查找出来的 -a:保持权限不变 [root@server0 ~]# ll /root/findfiles/ [root@server0 ~]# find / -user ira | wc -l
8
[root@server0 ~]# ll /root/findfiles/ | wc -l
5
创建1000个学号,并拷贝到目录下
[root@server0 sutdent]# touch stu{0,1,2,3,4,5}{000..999}
-rw-r--r--. 1 root root 0 Oct 16 20:21 stu5995
-rw-r--r--. 1 root root 0 Oct 16 20:21 stu5996
-rw-r--r--. 1 root root 0 Oct 16 20:21 stu5997
-rw-r--r--. 1 root root 0 Oct 16 20:21 stu5998
-rw-r--r--. 1 root root 0 Oct 16 20:21 stu5999 [root@server0 ~]# find /sutdent/ -user root -exec cp -a {} /root/findfiles \;
17.过滤文件
把/usr/share/dict/words文件中所有包含seismic字符串的行找到,并将这些行按照原始文件中的顺序存放到/root/wordlist中,/root/wordlist文件不能包含空行
[root@server0 ~]# cat /usr/share/dict/words | grep seismic
[root@server0 ~]# cat /usr/share/dict/words | grep seismic |wc -l
24
[root@server0 ~]# grep seismic /usr/share/dict/words | grep -v '^$' > /root/wordlist
去除空行
[root@server0 ~]# cat /root/wordlist | wc -l
24
18.新建逻辑卷
RHCSA-day1的更多相关文章
- NOIp2016 Day1&Day2 解题报告
Day1 T1 toy 本题考查你会不会编程. //toy //by Cydiater //2016.11.19 #include <iostream> #include <cstd ...
- day1
day1.py ][][: ][: ): : ]['lock'] = 0 json.dump(userlist_message, open(userlist, 'w')) break #输错次数到3次 ...
- day1作业--登录入口
作业概述: 编写一个登录入口,实现如下功能: (1)输入用户名和密码 (2)认证成功后显示欢迎信息 (3)输错三次后锁定 流程图: readme: 1.程序配置文件: 黑名单文件blacklist.t ...
- luogu1003铺地毯[noip2011 提高组 Day1 T1]
题目描述 为了准备一个独特的颁奖典礼,组织者在会场的一片矩形区域(可看做是平面直角坐标系的第一象限)铺上一些矩形地毯.一共有 n 张地毯,编号从 1 到n .现在将这些地毯按照编号从小到大的顺序平行于 ...
- RHCSA试题分享
RHCSA 部分 密码破解 在linux16最后加入 rd.break 进入交换模式以后输入下列指令: mount -o remount,rw /sysroot chroot /sysroot pa ...
- Python学习路程day1
变量起名: 变量名如果太长,推荐使用下划线来分开,让人看得清晰明白.例:nums_of_alex_girl=19 .或者是驼峰写法,即首字母大写.例:NumOfAlexGf=18 注意:不合法的变量起 ...
- 团队项目——站立会议 DAY1
团队项目--站立会议 DAY1 团队成员介绍(5人):张靖颜.何玥.钟灵毓秀.赵莹.王梓萱 今日(2016/5/6)为站立会议的第一天,一起对团队项目进行讨论,并对每个人的 ...
- Day1 login
使用流程: 1.程序启动后,显示欢迎信息,提示用户输入用户名: 2.判断用户是否存在,不存在则提示重新输入,或者关闭程序:客户存在则提示客户输入密码: 3.判断密码是否正确,如果不正确则提示用户重新输 ...
- contesthunter CH Round #64 - MFOI杯水题欢乐赛day1 solve
http://www.contesthunter.org/contest/CH Round %2364 - MFOI杯水题欢乐赛 day1/Solve Solve CH Round #64 - MFO ...
- noip2011提高组day1+day2解题报告
Day1 T1铺地毯https://www.luogu.org/problem/show?pid=1003 [题目分析] 全部读入以后从最后一个往前找,找到一个矩形的范围覆盖了这个点,那这个矩形就是最 ...
随机推荐
- gluoncv rpn 正负样本
https://github.com/dmlc/gluon-cv/blob/master/gluoncv/model_zoo/rpn/rpn_target.py def forward(self, i ...
- 【[SDOI2008]Sandy的卡片】
被\(mhr\)的暴力干翻了 这道题做法还是非常好想的 先做一遍差分,在每个串的某尾插入一个特殊字符,再将所有的串拼接在一起 现在的问题就转化为找到一个最长的公共子串使得其出现了\(n\)次,但是在一 ...
- 【[APIO2007]动物园】
我好\(sb\)啊,把\(>>\)打成\(<<\)结果就写了两节课 那个一个人只能看到五个动物显然很鬼畜 那我们就可以压这一维了 \(dp[i][s]\)表示从第\(i\)个位 ...
- flask开启debug模式的两种方法、加载配置文件的两种方法、URL传参的四种方法
from flask import Flask app = Flask(__name__) # app.config.update(DEBUG=True)#开启debug模式 #加载配置文件方法一 # ...
- Django创建基本流程
Django创建基本流程 1.创建工程:django-admin startproject 工程名 2.创建应用:python manage.py startapp 应用名 3.激活项目:修改sett ...
- MySQL 分库分表方案,总结的非常好!
前言 公司最近在搞服务分离,数据切分方面的东西,因为单张包裹表的数据量实在是太大,并且还在以每天60W的量增长. 之前了解过数据库的分库分表,读过几篇博文,但就只知道个模糊概念, 而且现在回想起来什么 ...
- VIM在Win7上的安装教程
1.下载 目前VIM在其官网上的最新版本为7.4,Windows版本名称为GVIM,在百度软件中可以下载GVIM的最新版本,建议 在百度上下载,因为比较快.在百度上搜索"GVIM" ...
- shell一次性执行多条命令
1.每个命令之间用;隔开说明:各命令的执行给果,不会影响其它命令的执行.换句话说,各个命令都会执行,但不保证每个命令都执行成功. 2.每个命令之间用&&隔开说明:若前面的命令执行成功, ...
- iOS 二维码生成 记录一下
#import <CoreImage/CoreImage.h> @property (nonatomic, nonnull , strong) UIImageView *showImage ...
- struts2的动态方法调用(DMI)和通配符映射
动态方法调用 1.Struts2默认关闭DMI功能,需要使用需要手动打开,配置常量 struts.enable.DynamicMethodInvocation = true 2.使用“!”方法,即 ...