Centos 7 recover root password

Sometimes you need to reset root password from a Centos 7 system.

Here I will show an easy way, not the only one.

First you’ll need access to grub boot screen, if system it’s running you can send an Ctrl+Alt+Supr key combination

grub load screenat this point we can press the key e to edit boot sequence

edit grub centos 7we need to move down to the line linux16

edit grub centos linux16we should append rd.break at the end of line

edit grub centos 7 append rd.breakand press Ctrl+X to boot with line modifications.

If we edit all correctly we will have a shell in emergency mode

centos 7 emergency modein rescue mode mount point / can be accessed under /sysroot directory, but it’s on readonly, we need to remount with write permissions.

mount -o remount,rw /sysroot

afther this we will do a chroot in this dir to access to all commands

chroot /sysroot/

now we can change root password executing

passwd

reset_passwd_centos_7_chrootfinally we need to force our system to relabel selinux file context because in emergency mode selinux it’s not enabled

touch .autorelabel

finally we need to exit from chroot

exit

and reboot our system to make a normal boot

reboot

now you should have root access using edited password

Centos 7 recover grub

I use an old computer for testing purposes at home, one problem of grub is when you install a windows system it removes grub and you can’t access to your Centos 7 system.

reinstall grub is really easy.

step 1.

Boot your computer from a dvd o flash memory with centos 7 install disk

step 2.

select troubleshooting menu

Centos 7 boot troubleshootingstep 3

Select rescue a Centos system

centos 7 rescue a centos systemStep 4

when boot ask you how to mount a system select continue and it gives you access to a shell.

Centos 7 grub recoverwrite

grub2-install –root-directory=/mnt/sysimage/ /dev/sda

a then reboot

Enjoy

 

De Nuevo Online

Pues al final no era un ataque lo que tiro mi blog el lunes, simplemente fue que el antiguo servidor dijo Basta y  se murió

no esta mal para una placa base con 10 añitos de vida y una vida ejerciendo de servidor intermitentemente

para los amantes de la potencia el servidor estaba compuesto por:

  • Una placa base Via Epia (descripción técnica ) con un procesador C3 a 800mhz
  • 192MB de Sdram a PC133
  • Un disco duro Maxtor DiamondMax Plus 9 160GB ATA/133
  • y una instalación de Gentoo linux porque el Via C3 cuenta con todas las instrucciones de un i686 menos la Cmov por lo que me vi obligado a bajar los fuentes de todo y compilar

La defunción del Via C3 estaba programada para veranito pero desgraciadamente opto por el suicidio antes de una jubilación, hace unas horas he llegado a casa,reiniciado el pc, reseteado la bios peroel servidor no arrancaba.  -Hombre precavido vale por dos y había adelantado la compra de un nuevo servidor asi que solo a sido recuperar los datos y poner todo en marcha.

Para los interesados no tenia copia de seguridad de la base de datos y me vi obligado a recuperar los datos del disco duro.

El proceso es fácil,

  1. trasladar el disco duro a un adaptador USB, el kernel de la Gentoo estaba demasiado tuneado para que arrancara en otro sitio que no fuera una Via EPIA,
  2. Conectar el disco duro a otro ordenador (Ordenador B) y copiar las carpetas del directorio data de mysql al escritorio el directorio lo podéis obtener pasandole una mirada al  archivo “/etc/my.cnf“.
  3. Cada base de datos que teníamos en el antiguo servidor debería tener un directorio con tres archivos para cada tabla el .frm (estructura de la tabla), .MYD (datos de la tabla) y MYI (indices de la tabla).
  4. Obtener una copia de seguridad antigua de la base de datos y restaurarla en el servidor del ordenador (si no tenéis copia de seguridad crear tablas con 1 campo para generar los archivos frm,MYD,MYI de cada tabla).
  5. Detener el servidor MySQL.
  6. Sobreescribir el directorio de la base de datos nuestro servidor MySQL con los archivos  de la base de datos  del viejo servidor.
  7. Arranca el servidor MySQL.
  8. Cruzar los dedos.
  9. Comprobar que la restauración ha sido correcta.
  10. Ejecutar el comando mysqlcheck y esperar que repare y optimice todo (manual mysqlcheck).

yo tuve suerte y recupere la base de datos.

Asi que larga vida al nuevo servidor

New Web serverPara los mismos amantes de la potencia es un Intel Atom D510 de doble núcleo con 4GB de RAM ejecutando Centos 5.5 X86_64 (no me da el money para una Red Hat Enterprise superserver chachi guai).

Espero que  aguante unos cuanto añitos 🙂