Tengo curiosidad por saber cómo puedo habilitar el inicio de sshd en el inicio únicamente con terminal. La GUI es excelente y todo, pero no va bien con mis scripts de bash.
Tengo curiosidad por saber cómo puedo habilitar el inicio de sshd en el inicio únicamente con terminal. La GUI es excelente y todo, pero no va bien con mis scripts de bash.
La respuesta corta sobre cómo habilitar sshd desde el terminal está haciendo esto:
sudo systemsetup -setremotelogin on
La respuesta larga sobre cómo ejecutar demonios o scripts en el inicio es un poco más larga. Hay dos formas (que conozco) de hacer esto:
El primero es a través de Elementos de inicio , que se ejecutan en la fase final del inicio, están obsoletos y no deben usarse a menos que necesite compatibilidad con Mac OS X 10.3 o más temprano. Puede ver cómo hacerlo de esta manera en here .
El segundo es launchd , un reemplazo para init y rc (entre otros). Esta es la forma recomendada y es un poco más complicada que simplemente poner un script en una carpeta como en Linux. Hay varias formas de lanzar demonios, la forma preferida de lanzarlos a pedido (por lo que estarán listos para iniciarse, pero no los verá en un ps , por ejemplo, a menos que los esté usando ). La explicación es un poco larga y la lista de opciones es larga, puede consultar la documentación here . Puede ver ejemplos en / Library / LaunchAgents , si tiene Chrome instalado, hay un archivo para el Actualizador de software de Google llamado com.google.keystone.agent.plist , que se ejecuta en el tiempo de carga, puede comenzar allí.
Iba a hacer un comentario, pero sería demasiado largo. Se detalla un poco más acerca de mi problema particular y una manera diferente de habilitar el servidor SSH desde la terminal, así como de asegurarse de que persista en los reinicios.
Encontré esta pregunta porque mi inicio de sesión remoto ( sshd
) se deshabilitó después de cada reinicio. Ninguna de las respuestas satisfizo mi pregunta (es decir, no tenía FileVault habilitado, etc., etc.).
Simplemente marque /System/Library/LaunchDaemons/ssh.plist
y asegúrese de que <key>Disabled</key>
no esté configurado en <true/>
. Además, para asegurarme de que se inicie en el arranque cada vez, hice que la entrada parcial tuviera este aspecto:
....
<dict>
<key>Disabled</key>
<false/>
<key>RunAtLoad</key>
<true/>
<key>Label</key>
<string>com.openssh.sshd</string>
....
Luego, ejecuta lo siguiente para asegurarte de que la nueva configuración se mantenga:
sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
sudo reboot