11 votos

Yo accidentalmente con cremallera toda mi servidor

Bueno si alguien quiere jugar a ser dios y obra milagros estoy abajo.

Así que, me fue dado a la tarea de hacer un script que se encuentran los archivos que son mayores de 6 meses, con cremallera y luego eliminarlos. En mi camino en la toma de tihs script me encontré con esto :

find / -type f -mtime -400 ! -mtime -180 | xargs gzip blablabla

Y que le dio a CADA ARCHIVO un .gz extensión. Ahora me he deshecho de él tan pronto como me di cuenta, pero era un poco demasiado tarde. Tras la finalización del comando ninguno de mis comandos bash trabajo debido a que la variable $PATH despojó de sí mismo. He intentado un montón de cosas antes de darse cuenta de cuál era el problema.

Así que después de descomprimir todo lo que todavía soy incapaz de arrancar. Me las he arreglado para hacer que el grub de rescate, después de que he seguido las instrucciones en línea para :

root (hd0,0)
setup (hd0)
kernel (hd0,0)/boot/vml[...]
initrd (hd0,0)/boot/initrd.im[...]

Después de que mi linux parcialmente botas pero me da los siguientes errores :

Begin : Running /scripts/init-bottom ... mount : mounting /dev on /root/dev failed : No such file or directory
mount: mounting /sys/ on /root/sys failed: No such file or directory
mount: mounting /proc on /root/proc failed : No such file or directory
Target filesystem doesn't have requrested /sbin/init.
No init found. Try passing init= bootarg.

He intentado reparar el sistema de archivos, he arrancado desde 3 diferentes Livecd/ discos de Rescate, me encontré con el arranque de reparación de 2 diferentes dicsc. Hice fuerza fscks...

Estoy muy de ideas y NECESITO conseguir este servidor, al menos de inicio, así que puedo recuperar mis bases de datos SQL. Estoy desesperado en busca de ayuda, incluso voy a pagar en caso de necesidad.

He estado acechando en los foros durante 3 días seguidos todos los días para encontrar una posible solución y todavía estoy en el mismo punto... Ayuda por favor?

9voto

Bob Barker Puntos 139

La primera cosa que me gustaría probar es la ejecución de un LiveCD medio ambiente y el solo intento de ungzip todo, con la esperanza de que iba a devolver el sistema a un estado de inicio. Nota: yo estaría preocupado por el potencial de corrupción de datos si el original gzip proceso se interrumpió.

De lo contrario, me gustaría intentar migrar la base de datos a un nuevo sistema, como otros han sugerido, pero como que he encontrado puede ser una labor intensiva de la dependencia y los problemas de configuración que deben ser resueltos de manera individual.

0voto

Wumpus Q. Wumbley Puntos 1358

El consenso general aquí, que sólo debe montar el disco en un sistema de trabajo y de rescate de los archivos, no está mal. Es lo más sensato. Pero la otra forma es más divertido, y muy educativo. He aprendido mucho, mientras que los combates de mi camino desordenado situaciones donde otras personas se han dado por vencida y volver a instalar desde cero. (No en un servidor que otras personas están dependiendo aunque...)

De todos modos, así que ahora usted tiene un initramfs(initrd) que se ejecuta. Ese es un buen comienzo. Pero no puede completar el relevo a init porque init es ahora init.gz tal vez? Para hacer ningún progreso, sería de gran ayuda para saber exactamente qué distribución de Linux que tiene, así que podemos buscar las herramientas que están disponibles en su initramfs para uso de emergencia.

Los mensajes de error que presenta, parece que podría haber venido de Debian initramfs. Si es Debian, entonces usted debería haber recibido una (initramfs) prompt de la shell en la siguiente línea después del último error. Si no, usted debe mirar en lo que está pasando con los montajes erróneos. es /root/dev que falta? (/root es donde su root normal fs debe ser montado durante la ejecución de la initramfs)

Si usted no recibió el prompt del shell, entonces lo que vino después de No init found. Try passing init= bootarg. va a ser interesante. Incluso si no era sino un cursor parpadeante, que es una pista. Si parece totalmente congelado, tratar de obtener alguna información sobre qué procesos están todavía en torno al uso de magic sysrq o Ctrl+ScrollLock.

Debian initramfs también le permite solicitar una shell en un especial de unos pocos puntos de referencia mediante la adición de un break= del parámetro de la línea de comandos del kernel. Por ejemplo, para obtener una shell antes de la Running /scripts/init-bottom línea, use break=bottom.

Aparte: no sé cómo la find comando podría haber gzip cada archivo... parece correcto para mí el propósito de seleccionar los archivos de entre 180 y 400 días de edad.

-1voto

Michael Martinez Puntos 924

Esto dependerá de si los sistemas de archivos son reparado lo suficiente para que usted sea capaz de montar las particiones desde un LiveCD. No se moleste en tratar de arrancar el sistema. En primer lugar, montar las particiones y descomprimir todos los .gz archivos. Esto le dará a usted copias de trabajo de inicialización del sistema y archivos binarios. A continuación, puede utilizar grub para reparar el sector de arranque. A continuación, arrancar en modo de usuario único y fsck el sistema de archivos nuevo. Si que funciona, tendrá un sistema en ejecución. Usted también tendrá un montón de archivos descomprimidos (como las páginas man) que realmente debe ser comprimido, pero es mejor que tener un sistema que no arranca.

Si usted no puede montar las particiones desde un LiveCD,, entonces, lamentablemente, fuera de suerte. Nada va a recuperar el sistema en ese momento.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: