Ubicación del directorio de inicio de la raíz en macOS

0

Todos los sistemas operativos similares a Unix que he visto usan /root como directorio de inicio para la cuenta root . ¿Cuál es la razón por la que se movió a /var/root en macOS? ¿Puedo cambiarlo al /root habitual?
Necesito ejecutar algunos scripts en macOS que codifican como /root como el directorio de inicio de la raíz. Además, pensé que /var era para datos variables (spool, archivos de registro, etc.).

    
pregunta Eugene Yarmash 17.10.2018 - 17:10

2 respuestas

1

Creo que el problema es que realmente no has visto tantos sistemas operativos similares a Unix. Tradicionalmente, con los sistemas operativos similares a Unix, en realidad tendría el directorio de inicio del usuario raíz en / .

Si ha trabajado con Linux o quizás con FreeBSD, esperaría que el directorio de inicio del usuario root esté en /root , pero en realidad no es "dado por Dios".

Hay muchos ejemplos de sistemas operativos similares a Unix que usan diferentes ubicaciones. Por ejemplo, en los sistemas HP-UX no parpadearía para encontrar el directorio de inicio en /homeroot . De manera similar, en macOS está en /var/root .

Con respecto a su suposición sobre el uso de la carpeta /var : Tradicionalmente, no ha habido ningún tipo de consenso sobre el uso de cada una de las carpetas tradicionales del sistema (por ejemplo, / etc, / usr, / usr / local, / lib, / etc.). Esto puede variar de un sistema operativo a otro.

Por lo general, diría que la carpeta /var es para datos variables, sin embargo, eso no significa que esté limitada a archivos de spool o log, como escribe. Significa que el contenido de la carpeta puede cambiar mientras usa su sistema, a diferencia de, por ejemplo, en el caso de bin, donde tradicionalmente se podría asumir que esta carpeta solo podría volver a instalarse desde el medio de instalación original. En este sentido, las carpetas de inicio del usuario root se ajustan a la descripción. Por lo general, no lo desea en /home o /Users , ya que podría ser un sistema de archivos en red, y tradicionalmente quería que el usuario root siempre pudiera iniciar sesión para la recuperación del sistema.

En macOS puede cambiar la ubicación del directorio de inicio del usuario root. Para fines de recuperación, cambie la ubicación en /etc/passwd . Para uso ordinario, cámbielo en el Open Directory.

Puedes ver la configuración actual con:

dscl . -read Users/root | grep NFSHomeDirectory

Y cámbialas con:

dscl . -change Users/root NFSHomeDirectory <old> <new>

dónde y se reemplazan con las rutas relevantes.

    
respondido por el jksoegaard 17.10.2018 - 20:35
1

Una solución simple usaría la expansión de tilde en los scripts en lugar de una ubicación codificada.

Ejemplo:

ls -ld ~root
    
respondido por el fd0 18.10.2018 - 13:10

Lea otras preguntas en las etiquetas