PDA

View Full Version : resetting root password on a SuSE 9.3 system



ferrel
11-08-2005, 09:15 PM
I lost the root password on a SuSE 9.3 system. The failsafe mode
was also password protected. I tried to use Knoppix 3.7 to reset
and unset the passwords.....it has not worked.

I booted Knoppix 3.7, and attempted the procedure in the
"Knoppix Hacks" book, #66. A problem (I think) is that the /etc files
are on partition /dev/hda6 (passwd and shadow files), while the
system executable that changes the password is on /dev/hda7.
So I mounted both mount -o rw ..../ same for hda7,
then tried

sudo chroot /mnt/hda6 passwd It could not find the file.

also I tried a hard path to the passwd binary, and that still
did not work. The program to change the passwd would never
execute.

So then I tried the following, with /mnt/hda6 mounted rw,
where passwd and shadow are located.....
I edited those files, and replaced the characters between the
first set of colons with ::
This should have resulted in no root password for the system
upon reboot.
Not the case.
When I reboot, and login as a regular user, and then issue the
su command, the password prompt never shows, but in a few
seconds the message "incorrect password" is shown....so the
password can never be entered. Single user mode and failsafe
provide the same behavior.
Help please!

Markus
11-08-2005, 09:24 PM
Try adding to /mnt/hda6/etc/sudoers this: your_username ALL=NOPASSWD: ALL
Then boot suse and do as user: sudo passwd

UnderScore
11-08-2005, 09:48 PM
I would mount the root / & then mount the /etc in the /.
Assuming /dev/hda7 is your root and /dev/hda6 is /etc.
Boot knoppix.

become root user in knoppix.
su -

Then mount the /root, but first create a mount point.
mkdir /mnt/suse-root
mount -t reiserfs /dev/hda7 /mnt/suse-root
mount -t reiserfs /dev/hda6 /mnt/suse-root/etc

Then chroot into that environment
chroot /mnt/suse-root /bin/bash

Then change the password.
passwd

Then exit
exit

Then unmount the partitions
umount /mnt/suse-root/etc /mnt/suse-root

Then reboot
init 6

The above steps have always worked for me.