您的位置:首页 > 运维架构 > Linux

用户和组的管理

2013-08-04 21:50 127 查看
$ ls /boot/ -l
total 18492
drwxr-xr-x 3 root root    12288 Aug 21 03:27 grub
-rw-r--r-- 1 root root 12487150 Aug 29 18:24 initramfs-linux-fallback.img
-rw-r--r-- 1 root root  2990626 Aug 29 18:23 initramfs-linux.img
-rw-r--r-- 1 root root  3440576 Aug 26 15:17 vmlinuz-linux
第一列是文件访问权限(例如,文件
initramfs-linux.img
的权限为
-rw-r--r--
),第三列和第四列分别是属主和属组(本例中所有文件属主都是root用户,属组都是root组)。#########
属主:
$ stat -c %U /media/sf_Shared/
root
属组:
$ stat -c %G /media/sf_Shared/
vboxsf
访问权限:
$ stat -c %A /media/sf_Shared/
drwxrwx---
#########
通过[code]find
命令查找属于某个用户或某个组的文件:[/code]
# find / -group [用户组]# find / -user [用户]
#########使用
who
命令,可以查看目前已登陆的用户。
#########
# useradd -m -g [初始组] -G [附加组] -s [登陆shell] [用户]
-m
:创建用户主目录
/home/[用户名]
;在自己的主目录内,即使不是root用户也可以读写文件、安装程序等等。
-g
:设置用户初始组的名称或数字ID;该组必须是存在的;如果没有设置该选项,
useradd
会根据
/etc/login.defs
文件中的USERGROUPS_ENAB环境变量进行设置。
-G
:用户要加入的附加组列表;使用逗号分隔多个组,不要添加空格;如果不设置,用户仅仅加入初始组。
-s
:用户默认登录shell的路径;Arch Linux的init脚本使用bash;启动过程结束后,默认启动的登录shell在此处设定;请确保使用的shell已经安装。以典型的桌面系统为例,要添加一个名为archie的用户,并使用bash作为登录shell:
# useradd -m -g users -s /bin/bash archie
# userdel -r [用户名]
-r
选项表示一并删除用户主目录和邮件。############################################使用
groups
命令查看用户所在组的名称:
$ groups [用户名]
若省略用户名,默认显示当前用户所在组。
id
命令提供额外的信息,包括用户UID以及相关用户组GID:
$ id [用户名]
查看所有组:
$ cat /etc/group
使用
groupadd
创建新的组:
# groupadd [组名]
使用
gpasswd
将用户添加到组:
# gpasswd -a [用户名] [组名]
删除用户组:
# groupdel [组名]
将用户从组中移除:
# gpasswd -d [用户名] [组名]
如果用户已登录,必须重新登录使更改生效。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Linux 用户