Root Password Reset: Difference between revisions

From Proxmox VE
Jump to navigation Jump to search
(rework to remove outdated link and to mention systemd-boot)
 
(2 intermediate revisions by 2 users not shown)
Line 17: Line 17:
** For <code>systemd-boot</code> the kernel commandline is directly editable
** For <code>systemd-boot</code> the kernel commandline is directly editable
* Scroll to the end of that line, optionally remove the <code>quiet</code> in the line and append <code> init=/bin/bash</code>
* Scroll to the end of that line, optionally remove the <code>quiet</code> in the line and append <code> init=/bin/bash</code>
* For <code>grub</code> press <code>Ctrl X</code> to boot, for <code>systemd-boot</code> simply press Enterg
* For <code>grub</code> press <code>Ctrl X</code> to boot, for <code>systemd-boot</code> simply press Enter


In the resulting shell:
In the resulting shell:
Line 33: Line 33:


=== Method 2 ===
=== Method 2 ===
* Boot from another installation of Debian. (One can use a LiveCD to get access to the "/" partition.)
* Boot from a Live CD, which supports the <code>/</code> filesystem of your PVE installation (mostly relevant for installs on ZFS) (e.g. a Proxmox install ISO, in debug-mode (second debug-shell))
* Then, mount the partition where you have Debian's "/" (root directory), then change directory to '''/mnt/etc'''
* Mount the <code>/</code> filesystem in read-write mode at a free directory (e.g.<code>/mnt</code> will be used in this example).
* Used '''vim / nano''' as an editor to edit the file '''shadow'''.
** you might need to do other steps, based on the filesystem, e.g. <code>zpool import -f -R /mnt rpool</code> for ZFS.
* Find the line starting with '''root:''' (or another username)
* Run <code>passwd -R /mnt</code> to set a new password for the <code>root</code> account.
* Delete everything between the first and second colons (:), and the line will now look like:
* Unmount/export the <code>/</code>-filesystem and reboot.
root::$6$fsdsdgdsg74.:14862:0:99999:7:::
* Reboot and login as '''root''' (or another username as used above) without a password.
* At the end use '''passwd''' to set a new password for the root account (or '''passwd username''' to change any account password).
* Reboot and login as '''root''' with the new root password.


== Resetting the root account password in a Container ==
== Resetting the root account password in a Container ==
* Enter the working container and change the password using:
* Enter the working container and change the password using:
   
   
  pct enter <VEID>
  pct enter <VMID>
  passwd <new password>
  passwd
# enter new password in silent prompt
  exit
  exit
* When using OpenVZ containers (up to PVE 3.4) use
vzctl enter <VEID>


to enter the container.
* If you're still using OpenVZ containers, which are not supported in Proxmox VE 4 or newer, you can use <code>vzctl enter <VEID></code> to enter the container.


== References ==
== References ==

Latest revision as of 15:49, 22 January 2024

Resetting the root account password on the PVE Host

The following follows the general method for resetting a root password on a Linux machine, if you have access to the console see e.g.:

for similar suggestions.

Keep in mind that editing the kernel command-line might need a different key-entry based on your boot-loader (e works for both grub and systemd-boot though). The method works for Proxmox VE until version 8.1 and should work for many other Linux based Operating systems as well:

Method 1

  • Boot into your bootloader (mostly grub or systemd-boot, select your preferred kernel but do not press enter.
  • Press e to go into edit mode.
  • Depending on the boot-loader go to the kernel-commandline entry:
    • For grub: scroll down to the kernel line you will boot from, it starts with linux /vmlinuz-...
    • For systemd-boot the kernel commandline is directly editable
  • Scroll to the end of that line, optionally remove the quiet in the line and append init=/bin/bash
  • For grub press Ctrl X to boot, for systemd-boot simply press Enter

In the resulting shell:

# Remount / as Read/Write 
mount -o remount,rw /
# Change the root account password with
passwd
# Change any other account password with
passwd username
# type new password, confirm and hit enter and then reboot.


Method 2

  • Boot from a Live CD, which supports the / filesystem of your PVE installation (mostly relevant for installs on ZFS) (e.g. a Proxmox install ISO, in debug-mode (second debug-shell))
  • Mount the / filesystem in read-write mode at a free directory (e.g./mnt will be used in this example).
    • you might need to do other steps, based on the filesystem, e.g. zpool import -f -R /mnt rpool for ZFS.
  • Run passwd -R /mnt to set a new password for the root account.
  • Unmount/export the /-filesystem and reboot.

Resetting the root account password in a Container

  • Enter the working container and change the password using:
pct enter <VMID>
passwd
# enter new password in silent prompt
exit
  • If you're still using OpenVZ containers, which are not supported in Proxmox VE 4 or newer, you can use vzctl enter <VEID> to enter the container.

References