各类Unix和Linux密码丢失解决方法

  一、SolarisROOT密码遗忘的处理方法

  1.如果还能用普通用户登陆的话,%df /etc,确定包含/etc目录分区的设备名。 

  %df /etc
  / /dev/dsk/c0t0d0s0...

    
    此例中是c0t0d0s0,如果你的根目录分区设备不一样的话,替换一下就可以。

  2.把系统盘插入cdrom中。

  3.出现提示符后,使用sync命令刷新文件系统。

  4.按下stop+A。

  5."ok"状态下键入boot cdrom -s。

  6.在"#"提示符下键入mkdir /temp ,然后键入mount /dev/dsk/c0t0d0s0 /temp。如果出现挂接不上的情况时,那么就运行fsck先 fsck /dev/rdsk/c0t0d0s0,然后在mount。

  7.cd /temp/etc。

  8.cp shadow shadowbak。

  9.cat shadow得到root的口令字符串

       

  root:djglcj0J:6453::::

  (其中djglcj0J就是root的加密后的口令字符串)

  10.sed s/djglcj0J// shadow>shadownew。

  11.cat shadownew查看是否已经变为。

  root::6453::::

  12.cp shadownew shadow。

  13.cd /

  unmount /temp
  sync
  shutdown -i0 -g0 -y

  14.取出CD后,重起系统,这时root就不需要密码啦!

  这样也可以!

  OK boot cdrom -s
  #TERM=sun
  #export TERM
  #mount /dev/dsk/c0t0d0s0 /a
  #vi /a/etc/shadow(删除root的加密后的密码)
  #reboot

  二、恢复SCO UNIX超级用户口令

  一旦运行SCO UNIX 机器的超级用户口令忘了,可以用这个方法解决。

  在另一台安装了SCO UNIX的机器上,以Root用户注册,进入系统,用 mkdev fd命令或命令scoadmin中的Filesystem之Floppy Filesystem Manager来制作应急启动盘,包括Boottable 盘和Root filesystem盘。

  将上述制作的Root filesystem盘安装到硬盘上。

  # mount /dev/fd0135ds18 /mnt

  再将硬盘上的/etc/passwd 和/tcb/files/auth/r/root两个文件拷贝到Root filesystem盘上。

  # cp /etc/passwd /mnt
  # cp /tcb/files/auth/r/root /mnt

  卸载机器1硬盘上的软盘。

  # umount /dev/rfd0135ds18

  用Boot软盘去启动遗忘口令的机器,根据提示插入Root filesystem软盘,待出现“#”时,进行下面操作,将硬盘挂到软盘上:

  # mount /dev/hd0root /mnt

  备份硬盘上的/etc/passwd和/tcb/files/auth/r/root两个文件。因为这两个文件中还包含其他用户的注册信息。

  用Root filesystem软盘上的两个文件,覆盖硬盘上的两个文件/etc/passwd 和/tcb/files/auth/r/root。


  # mkdir /cyh
  # mount /dev/fd0135ds18 /cyh
  # cd /cyh
  # cp passwd /mnt/etc
  # cp root /mnt/tcb/files/auth

  卸载安装上的两个文件系统。


  # umount /dev/hd0root
  # umount /dev/fd0135ds18

  取出软盘,重新启动机器,待出现Login时,以Root用户注册,键入第二台机器的超级用户口令,这样便可进入的超级用户了。进入超级用户后,用Passwd和Root这两个文件的备份覆盖原来的文件,接着用passwd命令修改超级用户的口令。用户可以用Alt+F2换一个窗口,以Root注册,现在用修改后的口令就能用了。

  三、Aix4.3.3(ibm) rs/6000的Root密码丢失

  将第一张安装盘放入光驱,重起机器,按f5键,终端按5,进入maintance页面,选择mount rootvg的功能选项,调用password修改口令,退出即可。

  四、Freebsd的Root密码丢了

  FreeBSD 4.7,当显示 "boot ... 9 seconds"按任意健,输入:boot -s,登录以后

  #/sbin/mount -a
  #passwd

  五、找回Linux忘记了的Root口令(Lilo/Grub)

  三种办法:

  1.在系统进入单用户状态,直接用passwd root去更改。

  2.用安装光盘引导系统,进行linux rescue状态,将原来/分区挂接上来,作法如下:


  cd /mnt
  mkdir hd
  mount -t auto /dev/hdaX(原来/分区所在的分区号) hd
  cd hd
  chroot ./
  passwd root

  这样可以搞定。

  3.将本机的硬盘拿下来,挂到其他的linux系统上,采用的办法与第二种相同。

  Rh8中

  (一)Lilo

  1. 在出现 lil 提示时键入 linux single,画面显示 lil linux single。

  2. 回车可直接进入linux命令行。

  3. #vi /etc/shadow。将第一行,即以root开头的一行中root:后和下一个:前的内容删除,第一行将类似于root::......保存。

  4. #reboot重启,root密码为空。

  (二)Grub

  1. 在出现grub画面时,用上下键选中你平时启动linux的那一项(别选dos哟),然后按e键。

  2. 再次用上下键选中你平时启动linux的那一项(类似于kernel /boot/vmlinuz-2.4.18-14 ro root=LABEL=/),然后按e键。

  3. 修改你现在见到的命令行,加入single,结果如下:


  kernel /boot/vmlinuz-2.4.18-14 single ro root=LABEL=/

  4. 回车返回,然后按b键启动,即可直接进入linux命令行。

  5. #vi /etc/shadow,将第一行,即以root开头的一行中root:后和下一个:前的内容删除,第一行将类似于root::......保存。

  6. #reboot重启,root密码为空。

  六、HP-UX 的Root密码丢失

  启动时按Esc进入isl,进入ISL后:

  isl>bo pri
  (yes/no)y
  ipl>hpux -is
  ipl>vi /etc/passwd

  去掉root 的密码即可

posted @ 2007-12-30 10:26  古道轻风  阅读(479)  评论(0编辑  收藏  举报