4 votos

¿Desactivar el aviso de apagado de OS X Server?

Acabo de instalar OS X Server. Cada vez que intento apagarlo (como usuario local interactivo), sigo viendo un aviso que me pide que introduzca un nombre y una contraseña de administrador antes de proceder al apagado:

Shutting down may cause other users logged into this computer to lose unsaved changes.

OS X Server shutdown prompt

Sigo viendo este diálogo aunque no hay nadie más conectado a la máquina.

La pregunta es, ¿Cómo puedo desactivar este diálogo? ? Es decir, dejar que cualquiera que esté conectado localmente pueda apagar la máquina sin introducir una contraseña de administrador (o incluso sin introducir su propia contraseña?) Veo que esto no es un problema de seguridad ya que con acceso físico, pueden simplemente pulsar el botón de encendido.

Mi intención original es utilizar el iMac del salón como servidor de compilación de Xcode, principalmente para ejecutar pruebas unitarias. La máquina se inicia y se conecta automáticamente a una cuenta sin privilegios para que la gente pueda utilizarla para reproducir vídeos y demás. Sería bueno tener esta máquina para ejecutar pruebas unitarias también, y realmente no es crítico si una construcción / ejecución se cancela a mitad de camino porque la máquina se está apagando.

Versión del servidor: 4.1 (14S1092)
OS X: 10.10.3 (14D136)

1voto

Garex Puntos 339

Una forma posible podría ser utilizando un comando de terminal:

shutdown -h now

Esto mata inmediatamente todos los procesos y apaga su sistema de una manera bastante agradable.

Como usuario normal, podría iniciar esto mediante

sudo shutdown -h now

Pero el problema con el prompt de la contraseña se mantiene, esta vez en la terminal.

Mirando más de cerca el archivo de configuración de sudo /etc/sudoers Lo he encontrado:

...
# User privilege specification
root    ALL=(ALL) ALL
%admin  ALL=(ALL) ALL

# Uncomment to allow people in group wheel to run all commands
# %wheel        ALL=(ALL) ALL

# Same thing without a password
# %wheel        ALL=(ALL) NOPASSWD: ALL
...

Compruebe si su cuenta ya está en el wheel o admin grupo mediante la emisión de groups en la terminal. En ese caso, basta con descomentar la línea con %wheel NOPASSWD o añadiendo NOPASSWD en la posición adecuada del admin línea anterior (el wheel le muestra cómo hacerlo). Por ejemplo:

tatooine-3:~ mallert$ groups
staff com.apple.sharepoint.group.2 everyone localaccounts _appserverusr
admin _appserveradm _lpadmin _appstore _lpoperator _developer
com.apple.access_screensharing com.apple.access_ssh com.apple.sharepoint.group.1

Aquí mi usuario ya está en el admin grupo, por lo que sólo añadiría NOPASSWD en la línea de sudoers así:

%admin  ALL=(ALL) NOPASSWD ALL

Ahora deberías ser capaz de encender un

sudo shutdown -h now

sin que se le pida una contraseña. Para finalizar mi solución podría crear una aplicación con automator que ejecute esto sudo shutdown -k now como un bash script.

Si desea reiniciar el servidor en su lugar, utilice

sudo shutdown -r now

0voto

Navjot Puntos 1

Es muy sencillo, sólo tienes que eliminar la aplicación del servidor de las aplicaciones e instalarla de nuevo y no crear ningún otro servidor local en él y se solucionará

0voto

mahmood Puntos 546

Una cosa que se puede probar si sólo hay un usuario conectado es, cerrar la sesión de ese usuario que entonces volvería a la pantalla de inicio de sesión. En la pantalla de inicio de sesión hay un botón "Apagar". Al elegir "Apagar" desde allí, se espera que se complete ya que (teóricamente) no hay más usuarios conectados.

Si eso no funciona, tendrás que crear un script que utilice los comandos 'shutdown' o 'halt' para forzar el cierre del sistema. Puede que tengas que mirar las páginas del manual de esos comandos, pero 'shutdown -h' o 'halt' deberían funcionar. Sin embargo, estos comandos deben ser ejecutados con privilegios de administrador para que funcionen correctamente. Así que si quieres que cualquiera pueda ejecutar el script (no sólo los administradores) entonces tendrás que ponerlo en algún lugar que sea accesible a todas las cuentas de usuario y darle al archivo privilegios de administrador.

Si tienes que usar la ruta script entonces yo trataría de conseguir que el comando 'shutdown' funcione primero, ya que es la forma más segura de apagar tu sistema. El comando 'halt' es un poco brutal en la forma en que mata las aplicaciones y apaga el sistema.

0voto

Mapad Puntos 3033

Manteniendo pulsada la tecla de opción mientras se selecciona Shut Down (o Restart ) del menú de Apple evitará el cuadro de diálogo y hará que la acción se realice inmediatamente.

0voto

chaos Puntos 69029

Yo experimenté exactamente el mismo problema y lo resolví con éxito hace poco.

Sí, esto es causado por server.app. Para ser exactos, se debe a que has enlazado tu Xcode en tu server.app enter image description here

De este modo, su servidor está ejecutando Xcode en segundo plano, y de ahí el aviso cuando intenta apagar su ordenador. El uso de la interfaz de línea de comandos para cerrar no cambiaría la situación.

Curiosamente, una vez que "Elija Xcode para comenzar" aquí, no hay ninguna opción para desconectar Xcode aquí. Desconectar en la esquina superior derecha no ayudaría, incluso desinstalar server.app a fondo tampoco ayudaría.

Afortunadamente, la solución es tan fácil como dos comandos:

sudo xcrun xcscontrol --shutdown
sudo xcrun xcscontrol --reset

Así es como encontré esto: Busqué en el Monitor de Actividad procesos con nombres de usuario sospechosos, y me di cuenta de un usuario llamado "_xcscouch". Buscando "xcscouch mac", encontré la siguiente respuesta y resolvió mi problema. He instalado Server.app en Yosemite para habilitar el almacenamiento en caché, pero veo muchos procesos de servidor en el Administrador de tareas (procesos _xcsbuild y _devicemgr y _calendar)

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X