Al ser nuevo en la administración de Linux, estoy un poco confundido acerca de los siguientes comandos:
useradd
usermod
groupadd
groupmod
Acabo de terminar de leer el libro de administración de usuarios en el manual del administrador de Linux / Unix, pero algunas cosas todavía son un poco confusas.
Básicamente useradd
parece bastante sencillo:
useradd -c "David Hilbert" -d /home/math/hilbert -g faculty -G famous -m -s /bin/sh hilbert
Puedo agregar "David Hilbert" con nombre de usuario hilbert
, configurando su directorio predeterminado, shell y grupos. Y creo que ese -g
es su grupo primario / predeterminado y -G
son sus otros grupos.
Estas son mis siguientes preguntas:
- Todavía trabajo si este comando los grupos
faculty
yfamous
no existía? ¿Solo los crearía? - Si no, ¿qué comando utilizo para crear nuevos grupos?
- Si elimino al usuario
hilbert
y no hay otros usuarios en esos grupos, ¿seguirán existiendo? ¿Debo eliminarlos? - Después de ejecutar el
useradd
comando anterior, ¿cómo elimino a David delfamous
grupo y reasigno su grupo principal alhilbert
que aún no existe?
usermod -g hilbert hilbert
¿eso eliminará los otros grupos de hilbert? Si es así, ¿cómo mantendría esos otros grupos? Si no, ¿cómo lo eliminaría de sus otros grupos?Debe leer lo
man usermod
que explica qué sucede con las diferentes opciones:reemplazará su grupo de inicio de sesión de 'facultad' a 'hilder', siempre que exista el grupo 'hilder'. Si no existe, primero debe crearlo con groupadd.
Cuando usa la
-G
opción, también debe usar la-a
opción para agregar nuevos grupos a la lista actual de grupos suplementarios a los que pertenece el usuario 'hilder'. Sin la-a
opción, reemplazará los grupos suplementarios actuales con un nuevo conjunto de grupos. Por lo tanto, use esto con precaución.fuente
Para cambiar el grupo primario de un usuario en Linux:
usermod -g new_group user_name
Para probar sus cambios, ejecute
id
y observe el valor degid=
Si el comando se ejecuta sin errores pero el gid no ha cambiado, se ha perdido la parte en negrita del paso 2.
fuente
la respuesta n. ° 1 es buena, pero también puede optar por emitir lo siguiente para agregar un nuevo grupo:
# nano /etc/group
La desventaja de editar
/etc/group
directamente es que tendrá que crear un GID (número de identificación de grupo) no utilizado.Lo siguiente le permitirá cambiar el grupo primario de un usuario.
# nano /etc/passwd
Localice la línea del usuario y cambie el GID (número de grupo, búsquelo
/etc/group
), tenga en cuenta que la sintaxis es la siguiente:No hay ningún inconveniente que se me ocurre a este enfoque (siempre y cuando sepas el GID), que es lo que utilizan con frecuencia para los usuarios locales, sobre todo porque el uso de muchos sistemas UNIX diferentes con diferentes
usermod
,adduser
yuseradd
opciones de comando.Es un poco más manual, sin embargo, hace el trabajo. Tenga en cuenta que puede usar
vi
isonano
para editar los archivos, si lo sabevi
.fuente
Para cambiar permanentemente el grupo primario del usuario, ejecute:
O podría usar
newgrp
para entornos pequeños y situaciones temporales.Cree un nuevo usuario bob y un nuevo grupo
dodo
.Entonces, en RedHat / Centos tenemos UID = (ID_number) bob; GID = (ID_number) bob como grupo primario por defecto
Agregue el usuario bob al
dodo
grupo:Siguiente uso
newgrp
para cambiar la propiedad:Tenga cuidado de que su cuenta tenga una contraseña y sea miembro del futuro grupo primario. Y el newgrp abre un nuevo caparazón; Mientras el usuario permanezca en ese shell, el grupo primario no cambiará. Para volver a cambiar el grupo primario al original, puede abandonar el nuevo shell ejecutando el comando de salida.
fuente