Estoy configurando la cuota en mi servidor Linode con Ubuntu 16.10, y aparece el siguiente error
No se puede stat () dispositivo montado / dev / root: no existe tal archivo o directorio
Entonces, para solucionar esto, llegué a este hilo para la solución que se realiza agregando
ln -s /dev/xvda /dev/root
/etc/init.d/quota restart
a la /etc/rc.local. Pero Ubuntu 16.10 ya no usa rc.localsino que usa systemd . ¿Cuál es la alternativa para rc.local, cómo puedo ejecutar los comandos anteriores en el inicio?
También habilité el servicio usando systemctl enable rc-local.servicepero no funcionó para mí. Cualquier ventaja sería apreciada.

Respuestas:
Introducción
Creo que no debería crear un nuevo servicio como lo sugiere George en el enlace. El
rc-local.serviceya existe en systemd y el archivo de servicio sugiere querc.local, si existe y es ejecutable, se extrae automáticamentemulti-user.target. Por lo tanto, no es necesario recrear o forzar algo que acaba de hacer de otra manerasystemd-rc-local-generator.Una solución
Una solución rápida (no sé si esa es la forma canónica):
En una terminal hacer:
Después de eso
rc.local, se llamará al inicio del sistema. Inserta lo que quieras.Antecedentes
Si lo haces en una terminal:
Puede ver que el comentario principal contiene líneas como:
Esto indica que en este sistema, si hay un archivo llamado
/etc/rc.localque es ejecutable, entonces se extraerá en multiusuario.target automáticamente. Entonces solo crea el archivo correspondiente (sudo touch...) y lo hace ejecutable (sudo chmod +x ...).fuente
#!/bin/bashembargo, no lo use , a#!/bin/shmenos que realmente necesite bash en su script. Todos los demás scripts del sistema usan guiones, no bash, por razones de rendimiento.rc-localno permite ordenarlo después de otra unidad, ¿no es así?Vi esta solución sugerida que implica el uso de
systemdaquí :Crea un servicio:
Agregue su código allí:
Cree y asegúrese de que
/etc/rc.localsea ejecutable y agregue este código dentro de él:Habilitar el servicio:
Inicie el servicio y verifique el estado:
Si todo va bien, puede agregar su
codeal/etc/rc.localarchivo y luego reiniciarlo.Nota: Probado en Lubuntu 16.10.
Fuente:
https://www.linuxbabe.com/linux-server/how-to-enable-etcrc-local-with-systemd
fuente
touch "hello"antes delexit 0. El servicio parece estar activo pero no crea ningún archivo en el directorio / etc / Ejecutando en ubuntu 16.04 Arabian 5.31Para agregar a la respuesta de Jan que, a diferencia del
rc.localarchivo habitual ,rc-local servicese ejecuta no después de que se hayan iniciado todos los servicios, sino después de que la red se conecte.En algunos casos, es posible que desee ejecutar comandos desde
rc.localmás adelante. Por ejemplo, quería que se ejecutara después dellxdinicio.En este caso, puede editar
rc-local servicelas dependencias de inicio creando un archivo conf desplegable:/etc/systemd/system/rc-local.service.d/override.confcon contenido:Donde puede agregar un nombre de unidad necesario (como agregué
lxd.service)No te olvides de
systemctl daemon-reloaddespués de eso.fuente