cent6.5 passwd和shadow文件丢失处置方案
早上上班有用户报障说cent6.5密码被修改了无法登入操作系统,经过确认得知用户的vm被安全部门警告发现漏洞需要修复,这时候用户登陆操作系统才发现原来的密码无效(其实密码是正确的)。
作为云平台管理员首先想到的是给用户**密码,奈何使用云平台的重置密码也不生效,去xenserver上看发现根本没正常进操作系统,卡在以下画面了:
经过google得出结论,操作系统的passwd或者shadows文件损坏或者丢失,于是就想使用live cd进行修复,步骤如下:
- 插入live cd光盘并设置dvd启动
因为xenserver无法选择光盘启动,hard disk是灰色的无法选择,所以需要在xenserver里开启boot order选项
xe vm-param-set uuid=c98380f3-c982-52f6-5251-b1331991ad51 HVM-boot-policy=BIOS\ order
- 进入live cd后一顿猛如虎操作并reboot即可。
首先确认hard disk是否挂载进来,从上图来看xvda就是原来操作系统的硬盘,然后vgscan扫描下vg并**(vgchange -ay VolGroup),此时使用lvs查看已经有两个lv卷了,挂载root的那个卷到live cd
mount /dev/VolGroup/lv_root /tmp
进入/tmp/etc目录发现passwd和shadow文件均不存在,正如此前google的结果一样,幸亏linux对这两个文件有备份,备份文件分别为passwd-和shadow-,cat passwd- >> passwd;cat shadow- >>shadow-即可恢复,然后把root密码清空(通过在这两个文件里把密码字段删掉实现),最后umount /tmp并重启系统即可。
参考链接:
https://discussions.citrix.com/topic/350155-linux-guest-os-can-not-boot-after-changing-boot-order/
http://blog.sina.com.cn/s/blog_166448a1a0102x70t.html