CentOS 7 单用户模式+救援模式
有时候大家可能会忘记自己的root密码,或者错误(命令输入错误,命令位置输入有误等)编辑了一个/etc目录下的核心文件导致系统不能正常启动了!怎么办?重新安装系统那是实在没有办法之举!那我们就进入如下两种方式把错误的配置文件改过来,重启系统不就好了吗!接下来咱们就学习一下两种模式恢复系统Lunix单用户模式+救援模式
单用户模式+救援模式类似windows的安全模式
使用虚拟机在系统里面输入指令重启系统是不能达到我们的要求的,也就是说IDC机房可不是想进就进去的。而且里面有很严格的管理制度,安全性很高。怎么办呢?一般只要你需要使用单用户模式,必须要让当地的驻场工程师帮你重启服务器!所以我们使用Vmware来模拟一下:
进入此界面后,上下晃动鼠标,输入“e”进入GRUB页面!
进入后,找到linux16 开头的一行!按向右的方向键,定位到ro 然后修改ro为rw,并添加如下红框内的命令行!
使用下面的提示使用“Ctrl-x”start!!!
进入系统后,其实只是进入了一个安全模式下的内存系统,并不是真正的咱们正常使用的linux系统,
当我们输入命令
#ls /sysroot/ 下才是我们正常的系统里面的文件!
使用命令
#chroot /sysroot/ 切换到正常系统中去!
现在我们就可以更改root的密码了!
#passwd root
就可以修改密码了(如果linux系统是中文的会出现乱码,使用 "#LANG=en" 即可)。
注意一定要在修改完密码后,输入
#touch /.autorelabel
不然会导致系统无法正常登陆!
这样就完成了,
重新启动即可!!!
下面我要分享一下因为个人的粗心大意,导致系统不可以正常启动,这要是真正的IDC机房,可就不好整了!所以建议大家,一定要仔细!三思而后行!!!
其实我是想永久关闭selinux防火墙,如下图:
我直接修改SELINUXTYPE=disabled了,所以导致开机不可以正常启动了!
修改方法就是如上所讲的单用户模式进入修改即可!!!
救援模式
CentOS 7 与6不同之处就是 2 3 4的运行级别全部都是多用户模式
使用如下命令查看:
#ls -l /usr/lib/systemd/system/runlevel*target
首先我们关闭系统(init 0 OR poweroff),点击虚拟机标签,启动时进入BIOS:
然后通过上下箭头调节CD-ROM至第一启动项,按F10保存:
然后咱们的虚拟机就会开机进入光盘(是不是很熟悉的界面,首次安装linux时的界面),移动到第三项 Troubleshooting
选择救援模式--Rescue a CentOS Linux system:
出现如下界面再次输入 1 回车
继续回车
然后就真正到了救援模式的系统,但是和单用户模式一样的是,这不是我们真正的linux运行系统,查看文件之类的首先我们需要输入:
#chroot /mnt/sysp_w_picpath
然后下面我们就可以查看系统内的文件或者直接修改密码或者重新修改/etc目录下的配置文件即可!
然后我们再次点击编辑咱们的虚拟机,把DVD设备状态断开如下所示,或者进入BIOS恢复启动即可!
至此两种修复系统的方法就结束了!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
SQL调优如何生成海量测试数据
场景,如果出现慢SQL,需要DBA加索引优化,怎么知道加的索引是有效的呢?这需要一遍遍的试验和调整,总不能直接拿线上的数据库测试吧,一般方法是在测试环境建立测试表,然后从线上的从库拷贝一些数据进测试环境,接着再进行加索引和explain 但有时候,导出的数据量少,执行计划看不出效果,导出数据量多,又会冲刷线上机器的buffer pool和影响IO,如果有个工具能够直接生成数据就好了,生成跟线上一样的100万,或者1000万就好了 以前sysbench压力测试,有一个生成数据的功能,生成100万数据是这样的 sysbench--test=oltp--mysql-table-engine=myisam--oltp-table-size=1000000\ --mysql-socket=/tmp/mysql.sock--mysql-user=test--mysql-host=localhost\ --mysql-password=testprepare 但它生成表结构是固定的,进行压力测试的SQL语句也是固定的,无法调试线上的SQL语句 CREATETABLE`sbtest`( `id`int...
- 下一篇
nginx前端根据$remote_addr分发方法
需求如下: 域名下面有多台服务器,现针对某个地区做测试,让某个地区的ip用户只访问某一台服务器,单独做测试,如果没问题,全部更新;有问题则影响较小,及时发现问题解决问题; 解决方案: 使用nginx的模块,在前端负载均衡转发的机器上,配置匹配规则; nginx配置vhost里面,域名下面location段,增加一段代码 如果$remote_addr 匹配到ip的话,转发到abc_test_server; server{ listen80; server_nameabc.com.cn; access_log/dev/null; error_log/data/logs/error.log; location/{ proxy_set_headerHost$host; proxy_set_headerX-Real-IP$remote_addr; proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for; if($remote_addr~"202.96.134.100") { proxy_passhttp://abc_test_serv...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Windows10,CentOS7,CentOS8安装Nodejs环境
- MySQL8.0.19开启GTID主从同步CentOS8
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装