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

linux下用户、组、文件的管理

2017-07-30 20:11 169 查看
用户创建:useradd

useradd 选项 用户名

选项含义:

* -c 用户的注释信息

* -d 以指定的路径为家目录

* -u UID

* -g GID 指明用户所属基本组,可为组名,也可是GID

* -G 指定附加组(以存在的组)

* -s 指定shell

实例

要求创建一个student的用户,他的身份是boss,ID为1234,属于管理员组成员,家目录在/home/student

useradd -c boss -d /home/student -u 1234 -G root -s /bin/bash student

用户删除 :userdel

userdel -r 用户名

-r: 删除用户家目录

用户属性修改: usermod

usermod [option] login

* -u:修改用户UID

* -g:修改用户GID

* -c:修改用户的注释信息

* -d:修改用户家目录,需要配合使用-m选项才会自动复制用户家目录下的文件到新的家目录

* -G:修改用户的附加组信息,需要配合-a(append)一起使用,如果不使用-a将删除原来的附加组

* -e:YYYY-MM-DD: 指明用户账号过期日期

* -s SHELL:新的默认SHELL

* -L:锁定用户,即lock,在/etcpasswd文件中,密码前面加!(一个)

* -U:解锁用户,即unlock,在/etc/passwd文件中,取消密码前面的!号

新增,变更与删除组

groupadd :新建组

groupadd [options] groupname

[options]选项参数如下

* -g: 指定GID

* -r:创建系统组

groupmod:组属性修改

groupmod [option] group

* -n group_name: 新名字

* -g GID:新的GID

groupmod -n group1 group2:将group2组名改为group1

组删除:groupdel

groupdel group

更改组密码:gpasswd

gpasswd [option] group

* -a user: 将user添加至指定组中

* -d user: 从指定组中移除用户user

* -A user1,user2,…:设置有管理权限的用户列表

gpasswd -a user group:将用户user加入group组中

gpasswd -d user group:将group组中移除用户user

临时切换主组:newgrp命令

如果用户不属于此组,则需要组密码

更改和查看组成员

groupmems [options] [action]

options:

* -g, –group groupname 更改为指定组 (只有root)

Actions:

* -a, –add username 指定用户加入组

* -d, –delete username 从组中删除用户

* -p, –purge 从组中清除所有成员

* -l, –list 显示组成员列表

* groups [OPTION].[USERNAME]… 查看用户所属组列表

groupmems -a user1 -g group : 将user1添加到group组中

groupmems -d user1 -g group:将group组中移除user用户

groupmems -g admin -l 列出指定组的成员列表(辅助组)

groupmems -g admin -p 清空指定组的所有成员(辅助组)。

文件属性操作



-rw-r–r–(10个字符) :文件权限

- 第一个字符代表文件(-)、目录(d),链接(l)

- 其余字符每3个一组(rwx),读(r)、写(w)、执行(x)

- 第一组rwx:文件所有者的权限是读、写但不能执行

- 第二组r–:与文件所有者同一组的用户的权限是读不能写和执行

- 第三组r–:不与文件所有者同组的其他用户的权限是读不能写和执行

- 也可用数字表示为:r=4,w=2,x=1 因此rwx=4+2+1=7

- 1 表示连接的文件数

修改文件权限

owner:属主,u

group:属组,g

other:其他,o

a 所有用户(文件属主、属组用户及其他用户)

文件

r: 可使用文件查看类工具获取其内容

w: 可修改其内容

x: 可以把此文件提请内核启动为一个进程

目录

r: 可以使用ls查看此目录中文件列表

w: 可在此目录中创建文件,也可删除此目录中的文件

x: 可以使用ls -l查看此目录中文件列表,可以cd进入此

目录

X:只给目录x权限,不给文件x权限

chown 设置文件的所有者

chown [OPTION]… [OWNER][:[GROUP]] FILE..

用法:

OWNER

OWNER:GROUP

-R递归式地改变指定目录及其下的所有子目录和文件的拥有者。

chgrp 设置文件的属组信息

chgrp [OPTION]… GROUP FILE…

chmod 修改文件权限

chmod -R :递归修改权限

修改一类用户的所有权限:u= g= o= ug= a= u=,g=

修改一类用户某位或某些位权限:u+ u- g+ g- o+ o- a+ a- +

Linux文件系统上的特殊权限

SUID

SUID属性一般用在可执行文件上,当用户执行该文件时,会临时拥有该执行文件的所有者权限。使用”ls -l” 或者”ll” 命令浏览文件时,如果可执行文件所有者权限的第三位是一个小写的”s”,就表明该执行文件拥有SUID属性。比如/usr/bin/passwd文件。

$ ll /usr/bin/passwd

-rwsr-xr-x 1 root root 41284 4月 9 2012 /usr/bin/passwd

SGID

SGID属性应用在目录上时,该目录中所建立的文件或子目录的拥有组都会是该目录的拥有组。当SGID属性应用在可执行文件上时,其他用户在使用执行文件时就会临时拥有该执行文件的拥有组权限。在使用”ls -l” 或者”ll” 命令浏览目录时,如果拥有组权限的第三位是一个小写的”s”,就表明该执行文件或者目录拥有SGID属性。

Sticky

Sticky属性只能应用在目录,当目录拥有Sticky属性,所有在该目录中的文件或子目录无论是什么权限,只有文件或者子目录所有者和root用户能做删除动作。在使用”ls -l”或者”ll”命令浏览目录时,如果其他用户权限的第三位是一个小写的”t”,就表明该执行文件或者目录拥有Sticky属性。

chmod u+s test_file #给文件增加SUID属性

chmod g+s test_dir #给目录增加SGID属性

chmod o+t test_dir #给目录增加Sticky属性

以及后续的ACL访问控制列表。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux