Linux的用户与权限管理

Linux的用户与权限管理

一、Linux的用户管理

    Linux用户简单的分为:

                (一)管理员:root

                (二)普通用户又分为两种:

      系统用户:仅用于运行服务程序;

        登录用户:系统资源的正常使用者;

                 可以查看/etc/passwd来查看。如下图所示:

                 wKiom1bdaKbixHi_AABUBG1nnSE647.jpg

        

        用户标识:UserID, UID ,共65535个;

管理员(root):0

系统用户:

    CentOS 5, 6: 1-499

            CentOS 7: 1-999

普通用户:

    CentOS 5,6: 500+

    CentOS 7: 1000+

常用命令:useradd,usermod,userdel.

(一)useradd

功能说明:建立用户帐号。

参  数:

 -c<备注>  加上备注文字。备注文字会保存在passwd的备注栏位中。  

 -d<登入目录>  指定用户登入时的启始目录。 

 -D  变更预设值. 

 -e<有效期限>  指定帐号的有效期限。 

 -f<缓冲天数>  指定在密码过期后多少天即关闭该帐号。 

 -g<群组>  指定用户所属的群组。 

 -G<群组>  指定用户所属的附加群组。 

 -m  自动建立用户的登入目录。 

 -M  不要自动建立用户的登入目录。 

 -n  取消建立以用户名称为名的群组. 

 -r  建立系统帐号。 

 -s<shell>   指定用户登入后所使用的shell。 

 -u<uid>  指定用户ID。 


#创建用户Tom,uid为 5000,默认shell为/bin/tcsh,基于注释信息为"Hello",如图所示:

wKioL1bdbbmjsOMTAAAGnU3vYOY040.png


(二)usermod

功能说明:修改用户帐号。

参  数:

 -c<备注>  修改用户帐号的备注文字。 

 -d登入目录>  修改用户登入时的目录。 

 -e<有效期限>  修改帐号的有效期限。 

 -f<缓冲天数>  修改在密码过期后多少天即关闭该帐号。 

 -g<群组>  修改用户所属的群组。 

 -G<群组>  修改用户所属的附加群组。 

 -l<帐号名称>  修改用户帐号名称。 

 -L  锁定用户密码,使密码无效。 

 -s<shell>  修改用户登入后所使用的shell。 

 -u<uid>  修改用户ID。 

 -U  解除密码锁定。

 

  (三)userdel

功能说明:删除用户帐号。

参  数:

userdel  -r[用户帐号]

         -f  删除用户登入目录以及目录中所有文件。 


如图,删除用户Tom:

wKiom1bdbsXB3LUeAAAD7OwJRes212.png


passwd命令详情:

功能说明:设置密码。

补充说明:passwd指令让用户可以更改自己的密码,而系统管理者则能用它管理系统用户的密码。只有管理者可以指定用户名称,一般用户只能变更自己的密码。

(1) passwd:修改自己的密码;

(2) passwd  username:修改其它用户的密码,仅root有此权限;

参  数:

  -d  删除密码。本参数仅有系统管理者才能使用。 

  -f  强制执行。 

  -k  设置只有在密码过期失效后,方能更新。 

  -l  锁住密码。 

  -s  列出密码的相关信息。本参数仅有系统管理者才能使用。 

  -u  解开已上锁的帐号。  

--stdin:从标准输入接收密码;

echo "PASSWORD" | passwd  --stdin  USERNAME


如下图:


wKioL1bdcYXBVyeRAAAbHbb5JTU514.png


su(super user)

功能说明:变更用户身份。 

 切换用户时:

(1) 不读取目标用户的配置文件(非登录式切换,半切换);

su  USERNAME

(2) 读取目标用户的配置文件(登录式切换,完全切换);

su  -l  USERNAME

su  -  USERNAME

注意:root切换至任何其它用户无须认证密码;普通用户切换至其它用户,都需要密码;

如下图:

wKiom1bddV_Q6vcyAAAtvW24xMM921.png



组的管理:

主要以命令进行:

     组:groupadd,  groupmod, groupdel

     用户:useradd, usermod, userdel

组解析库文件:/etc/group

GRPNAME:x:GID:user1, user2, ...

组名:密码点位符:GID:以此组为附加组的用户列表,以逗号分隔

groupadd命令:添加组

groupadd  [选项]  group

-g  GID:指明GID;

-r, --system:系统组;

roupmod命令:修改组信息

groupmod [选项] GROUP

-g  GID 

-n NEW_NAME:修改组名;

groupdel命令:删除组

groupdel [选项] GROUP

wKioL1bdeIzCTNJSAAArVSADxAc108.png

gpasswd命令:为组添加密码

组密码文件:/etc/gshadow

gpasswd [选项] group

     -a USERNAME:把用户添加至组中;

     -d USERNAME:从此组中移除此用户;

wKiom1bdeTbR4S_2AAAaDjzMyms739.png

wKioL1bdenWT-ntPAAAYwGJzc1w101.png


Linux文件和目录的权限管理

利用 ll -a 命令 查看文件和目录 的权限

wKioL1bdfRHBNxQAAABAnQ_tscQ884.png

这是目录的 权限!第一行标有d 的为 目录文件。

wKioL1bdfRHAuZ5GAAAEapw1Ga0268.png

这是文件的 权限!而且他还是是 普通文件!

wKiom1bdfJGjIJ_wAAAFCogw2TQ334.png


文件系统文件权限:

rwxrwxrwx:

owner: rwx 

group: rwx 

other: rwx

三类用户:

属主:owner, u

属组:group, g

其它:other, o

权限:

r: readable,可读

w: writable, 可写

x:excutable, 可执行 

权限管理:

文件:

r:可获取文件的数据;

w:可修改文件的数据;

x:可将此文件运行为进程;

目录:

r:可使用ls命令获取其下的所有文件列表;但不可以使用“ls -l”去获取详细信息,也不可以cd至此目录中;

w:可修改此目录下的文件列表, 即可以在此目录下创建或删除文件;

x:可以使用"ls -l“命令来获取其下的文件的详细属性信息,也可cd至此目录中;

 

权限组合机制:

以owner为例:

--- 0000

--x0011

-w-0102

-wx0113

r--1004

r-x1015

rw-1106

rwx 1117


默认目录的 权限 为 755,默认文件的 权限 为 644 。        

wKiom1bdfkPh_DzRAAARnrZ-sYY072.png

默认目录和文件的权限 和 umask 有关 。

umask:显示或设定文件模式掩码

文件:

666-umask

目录:

777-umask

注意:之所以文件用666去减,表示文件默认不能有执行权限;如果减得的结果中,u,g或o有执行权限时,则需要加1;

显示:umask

设定:

umask MASK

注意:此设定仅对当前shell进程有效;

wKioL1bdhsGjWa81AAAMDLLHLS8017.png


Linux文件和目录的权限管理常用命令:chmod ,chown ,chgrp


chmod(change mode)


功能说明:变更文件或目录的权限。

补充说明:在UNIX系统家族里,文件或目录权限的控制分别以读取,写入,执行3种一般权限来区分,另有3种特殊权限可供运用,再搭配拥有者与所属群组管理权限范围。您可以使用chmod指令去变更文件与目录的权限,设置方式采用文字或数字代号皆可。符号连接的权限无法变更,如果您对符号连接修改权限,其改变会作用在被连接的原始文件。

 

参  数:

 -c或--changes  效果类似"-v"参数,但仅回报更改的部分。 

 -f或--quiet或--silent  不显示错误信息。 

 -R或--recursive  递归处理,将指定目录下的所有文件及子目录一并处理。 

 -v或--verbose  显示指令执行过程。 

 --help  在线帮助。 

 --reference=<参考文件或目录>  把指定文件或目录的权限全部设成和参考文件或目录的权限相同 


赋权表示法:直接操作一类用户的所有权限位rwx;

u=

g=

o=

a=

        两类用户权限相同:ug=, go=

不同类的用户权限不同:u=,g=,o=

授权表示法:操作一类用户一位或多位权限;

u+, u-

g+, g-

o+, o-

a+, a-

两类用户权限收授机制相同:ug+, ug-, ...

不同类的用户权限不同:u+,g+,o+

wKioL1bdhHnhaIwxAABEzzzx564711.png


chown(change owner)

功能说明:变更文件或目录的拥有者或所属群组。

参  数:

 -c或--changes  效果类似"-v"参数,但仅回报更改的部分。 

 -f或--quite或--silent  不显示错误信息。 

 -h或--no-dereference  之对符号连接的文件作修改,而不更动其他任何相关文件。 

 -R或--recursive  递归处理,将指定目录下的所有文件及子目录一并处理。 

 -v或--version  显示指令执行过程。 

 --dereference  效果和"-h"参数相同。 

 --help  在线帮助。 

 --reference=<参考文件或目录>  把指定文件或目录的拥有者与所属群组全部设成和参考文件或目 录的拥有者与所属群组相同。


wKiom1bdhMHhrUhiAAAZEY7oesM344.png

 


chgrp(change group)


功能说明:变更文件或目录的所属群组。

语  法:chgrp [-cfhRv][--help][--version][所属群组][文件或目录...] 

参  数:

 -c或--changes  效果类似"-v"参数,但仅回报更改的部分。 

 -f或--quiet或--silent  不显示错误信息。 

 -h或--no-dereference  只对符号连接的文件作修改,而不更动其他任何相关文件。 

 -R或--recursive  递归处理,将指定目录下的所有文件及子目录一并处理。 

  --reference=<参考文件或目录>

wKiom1bdhXSgLDcaAAAi_A3u8Kw602.png


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章