
Por favor ayúdenme a entender esta línea de comando:
xhost +SI:localuser:lightdm
enreferencia a la respuesta en esta publicacióny también sugerir si hay una manera mejor y por qué es necesaria. No pude sacar mucho provecho de la página de manual, por lo que espero una respuesta más detallada para simplificarlo. (¿Debo reemplazar localuser con mi nombre de usuario? ¿Es algo así como agregar al grupo? Entiendo que + es para agregar pero no entiendo SI o si).
Por favor mencione también cómo se agrega el usuario al"lista permitida para realizar conexiones"y lo que eso significa. Además, ¿cómo reviso la lista actual?
Respuesta1
xhost +SI:localuser:lightdm
permite al lightdm
usuario acceder al servidor X en ejecución. El servidor X actual está indicado por la DISPLAY
variable de entorno.
Elpágina de manualtiene explicaciones razonablemente buenas:
[+]name The given name (the plus sign is optional) is added to the list
allowed to connect to the X server. The name can be a host
name or a complete name (See NAMES for more details).
...
NAMES
A complete name has the syntax ``family:name'' where the families are
as follows:
...
si Server Interpreted
...
the server interpreted address "si:localuser:username" can be used to
specify a single local user. (See the Xsecurity(7) manual page for more
details.)
Y elXsecurity
página de manualdice:
SERVER INTERPRETED ACCESS TYPES
The sample implementation includes several Server Interpreted
mechanisms:
IPv6 IPv6 literal addresses
hostname Network host name
localuser Local connection user id
localgroup Local connection group id
Con un poco de contexto: hay dos formas comúnmente utilizadas para permitir el acceso a un servidor X. Uno es a través de un Xauthority
archivo compartido por los clientes y que no necesita ninguna configuración adicional del lado del servidor. La otra es a través de la xhost
lista, donde la configuración se realiza en el servidor entiempo de ejecución(por lo que este no es un cambio permanente).
Entonces, localuser
es una palabra clave que se debe conservar tal como está ( lightdm
es el nombre de usuario aquí, con el que se ejecuta LightDM). Esto es algo así como agregar a un grupo, en el sentido de que los grupos están según la comprensión del servidor de autorización. Sin embargo, ningún grupo o usuario del sistema se ve afectado. Sólo se cambia la configuración de tiempo de ejecución del servidor X.
El comportamiento predeterminado xhost
cuando se ejecuta sin argumentos es imprimir la lista, como dice la página de manual:
nothing If no command line arguments are given, a message indicating
whether or not access control is currently enabled is printed,
followed by the list of those allowed to connect.
Por ejemplo:
$ xhost
access control enabled, only authorized clients can connect
SI:localuser:muru
Probablemente necesitaremos examinar el código para determinarcómose agrega un usuario a la lista y cómo X usa esa lista.
La razón por la que se hace esto es para usar gsettings
, que usa dbus
, que a su vez generalmente necesita un servidor X en ejecución. Sin embargo, esto no es necesario y se puede veresta respuesta de AskUbuntu.