<Anterior | Contenido | Siguiente>
Propietarios, miembros del grupo y todos los demás
Cuando estábamos explorando el sistema en el Capítulo 3, es posible que hayamos encontrado un problema al intentar examinar un archivo como / etc / shadow:
[yo @ linuxbox ~] $ archivo / etc / shadow
/ etc / shadow: archivo normal, sin permiso de lectura [me @ linuxbox ~] $ menos / etc / shadow
/ etc / shadow: Permiso denegado
[yo @ linuxbox ~] $ archivo / etc / shadow
/ etc / shadow: archivo normal, sin permiso de lectura [me @ linuxbox ~] $ menos / etc / shadow
/ etc / shadow: Permiso denegado
El motivo de este mensaje de error es que, como usuarios habituales, no tenemos permiso para leer este archivo.
En el modelo de seguridad de Unix, un usuario puede propia archivos y directorios. Cuando un usuario posee un archivo o directorio, el usuario tiene control sobre su acceso. Los usuarios pueden, a su vez, pertenecer a un grupo de XNUMX que consta de uno o más usuarios a los que sus propietarios les dan acceso a archivos y directorios. Además de otorgar acceso a un grupo, un propietario también puede otorgar un conjunto de derechos de acceso a todos, lo que en términos de Unix se conoce como el mundo. Para obtener información sobre su identidad, utilice el id mando:
[yo @ linuxbox ~] $ id
uid = 500 (yo) gid = 500 (yo) grupos = 500 (yo)
[yo @ linuxbox ~] $ id
uid = 500 (yo) gid = 500 (yo) grupos = 500 (yo)
Veamos la salida. Cuando se crean las cuentas de usuario, a los usuarios se les asigna un número llamado ID de usuario or UID que luego, por el bien de los humanos, se asigna a un nombre de usuario. Al usuario se le asigna un ID de grupo principal or gid y puede pertenecer a grupos adicionales. El ejemplo anterior es de un sistema Fedora. En otros sistemas, como Ubuntu, la salida puede verse un poco diferente:
[yo @ linuxbox ~] $ id
uid=1000(me) gid=1000(me) groups=4(adm),20(dialout),24(cdrom),25(floppy),29(audio),30(dip),44(v ideo),46(plugdev),108(lpadmin),114(admin),1000(me)
[yo @ linuxbox ~] $ id
uid=1000(me) gid=1000(me) groups=4(adm),20(dialout),24(cdrom),25(floppy),29(audio),30(dip),44(v ideo),46(plugdev),108(lpadmin),114(admin),1000(me)
Como podemos ver, los números de uid y gid son diferentes. Esto es simplemente porque Fedora comienza su numeración de cuentas de usuario regulares en 500, mientras que Ubuntu comienza en 1000. También podemos
Propietarios, miembros del grupo y todos los demás
ver que el usuario de Ubuntu pertenece a muchos más grupos. Esto tiene que ver con la forma en que Ubuntu administra los privilegios para los dispositivos y servicios del sistema.
Entonces, ¿de dónde viene esta información? Como tantas cosas en Linux, a partir de un par de archivos de texto. Las cuentas de usuario se definen en el / Etc / passwd archivo y grupos se definen en el / etc / group expediente. Cuando se crean grupos y cuentas de usuario, estos archivos se modifican junto con / etc / shadow que contiene información sobre la contraseña del usuario. Para cada cuenta de usuario, el / Etc / passwd file define el nombre de usuario (inicio de sesión), uid, gid, el nombre real de la cuenta, el directorio de inicio y el shell de inicio de sesión. Si examinamos el contenido de
/ etc / passwd y / etc / group, notamos que además de las cuentas de usuario normales, hay cuentas para el superusuario (uid 0) y varios otros usuarios del sistema.
En el próximo capítulo, cuando cubramos los procesos, veremos que algunos de estos otros "usuarios" están, de hecho, bastante ocupados.
Si bien muchos sistemas similares a Unix asignan usuarios regulares a un grupo común como "usuarios", la práctica moderna de Linux es crear un grupo único de un solo miembro con el mismo nombre que el usuario. Esto facilita ciertos tipos de asignación de permisos.