Estoy ejecutando Ubuntu 12.04 en un VirtualBox. Estaba intentando crear un servidor de registro central con rsyslog. En algún momento hice cambios en el archivo conf e intenté reiniciar rsyslog, pero comencé a recibir el siguiente error:
No se puede conectar a Upstart: no se pudo conectar a socket / com / ubuntu / upstart: conexión rechazada
Siguiendo lo que sugirió esta pregunta http://ubuntuforums.org/showthread.php?t=1997229
Emití los siguientes comandos
dpkg-divert --local --rename --add /sbin/initctl ln -s /bin/true /sbin/initctl
Sin embargo, esto no resolvió el problema ya que ejecutar lo siguiente no estaba reiniciando realmente rsyslog.
service rsyslog restart
Así que traté de deshacer los comandos iniciales haciendo
dpkg-divert --local --remove /sbin/initctl rm /sbin/initctl
Sin embargo, eliminar initctl comenzó a causar otros problemas. Así que reinicié la máquina, y la máquina no arrancaría normalmente. Entré en el modo de recuperación y, antes de mostrar el menú de recuperación, imprimió /proc/self/fd/9: 5: /proc/self/fd/9: initctl: not found
.
¿Alguien sabe cómo puedo restaurar el initctl?
Edición: También inicié la máquina virtual con la imagen ISO para 12.04 y fui al menú de recuperación, sin embargo, no parece haber una forma de restaurar los archivos eliminados.
Intenta volver a instalar Upstart:
sudo apt-get --reinstall install upstart
No hay forma de recuperar el binario perdido de lo contrario. initctl
diferencia de start
, stop
o restart
es un ejecutable independiente y no un enlace a init en sí.
Si no tiene conectividad, vea qué versión de Upstart package tiene dpkg -l|grep upstart
y descargue el paquete manualmente en otra máquina a un dispositivo USB y vuelva a instalarlo desde el dispositivo. Todas las dependencias son correctas ya que solo está reinstalando la misma versión exacta.
Me metí en el mismo problema y así es como lo hice y mi ubuntu 14.04 comenzó a arrancar normalmente.
Nota: reemplace “su partición de ubuntu” con la partición donde tiene instalado su ubuntu original.