Linux用户和组管理

进程以其发起者的身份运行;

进程对文件的访问权限,取决于发起此进程的用户的权限;

 

系统用户:为了能够让那后台进程或服务类进程以非管理员的身份运行,通常需要为此创建多个普通用户;这类用户从不用登录系统;

 

 

groupadd命令:添加组

 

groupadd [选项] group_name

 

-g GID:指定GID;默认是上一个组的GID+1;

-r: 创建系统组;

 

groupmod命令:修改组属性

 

groupmod [选项] GROUP

-g GID:修改GID;

-n new_name:修改组名;

 

groupdel命令:删除组

 

groupdel [选项] GROUP

 

useradd命令:创建用户

 

useradd [选项] 登录名

-u, –uid UID:指定UID;

-g, –gid GROUP:指定基本组ID,此组得事先存在;

-G, –groups GROUP1[,GROUP2,…[,GROUPN]]]:指明用户所属的附加组,多个组之间用逗号分隔;

-c, –comment COMMENT:指明注释信息;

-d, –home HOME_DIR:以指定的路径为用户的家目录;通过复制/etc/skel此目录并重命名实现;指定的家目录路径如果事先存在,则不会为用户复制环境配置文件;

-s, –shell SHELL:指定用户的默认shell,可用的所有shell列表存储在/etc/shells文件中;

-r, –system:创建系统用户;

 

注意:创建用户时的诸多默认设定配置文件为/etc/login.defs  

 

useradd -D:显示创建用户的默认配置;

useradd -D 选项: 修改默认选项的值;

 

修改的结果保存于/etc/default/useradd文件中;

 

usermod命令:修改用户属性

 

usermod [选项] 登录

-u, –uid UID:修改用户的ID为此处指定的新UID;

-g, –gid GROUP:修改用户所属的基本组;

-G, –groups GROUP1[,GROUP2,…[,GROUPN]]]:修改用户所属的附加组;原来的附加组会被覆盖;

-a, –append:与-G一同使用,用于为用户追加新的附加组;

-c, –comment COMMENT:修改注释信息;

-d, –home HOME_DIR:修改用户的家目录;用户原有的文件不会被转移至新位置;

-m, –move-home:只能与-d选项一同使用,用于将原来的家目录移动为新的家目录;

-l, –login NEW_LOGIN:修改用户名;

-s, –shell SHELL:修改用户的默认shell;

 

-L, –lock:锁定用户密码;即在用户原来的密码字符串之前添加一个"!";

-U, –unlock:解锁用户的密码;

 

userdel命令:删除用户

 

userdel [选项] 登录

-r:删除用户时一并删除其家目录;

passwd命令:

 

passwd [-k] [-l] [-u [-f]] [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i inactivedays] [-S] [–stdin] [username]

 

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

(2) passwd USERNAME:修改指定用户的密码,但仅root有此权限;

 

-l, -u:锁定和解锁用户;

-d:清除用户密码串;

-e DATE: 过期期限,日期;

-i DAYS:非活动期限;

-n DAYS:密码的最短使用期限;

-x DAYS:密码的最长使用期限;

-w DAYS:警告期限;

 

–stdin:

echo "PASSWORD" | passwd –stdin USERNAME

 

gpasswd命令:

 

组密码文件:/etc/gshadow

 

gpasswd [选项] group

-a USERNAME:向组中添加用户

-d USERNAME:从组中移除用户

 

newgrp命令:临时切换指定的组为基本组;

 

newgrp [-] [group]

 

-: 会模拟用户重新登录以实现重新初始化其工作环境;

 

chage命令:更改用户密码过期信息

 

chage [选项] 登录名

 

-d

-E

-W

-m

-M

 

id命令:显示用户的真和有效ID;

 

id [OPTION]… [USER]

-u: 仅显示有效的UID;

-g: 仅显示用户的基本组ID;

-G:仅显示用户所属的所有组的ID;

-n: 显示名字而非ID;

 

su命令:switch user

 

登录式切换:会通过读取目标用户的配置文件来重新初始化

su – USERNAME

su -l USERNAME

非登录式切换:不会读取目标用户的配置文件进行初始化

su USERNAME

 

注意:管理员可无密码切换至其它任何用户;

 

-c 'COMMAND':仅以指定用户的身份运行此处指定的命令;

 

其它几个命令:chsh, chfn, finger, whoami, pwck, grpck

 

命令总结:groupadd, groupmod, groupdel, useradd, usermod, userdel, passwd, gpasswd, newgrp, id, su, chage

 

 

 

权限管理:

 

ls -l

rwxrwxrwx:

左三位:定义user(owner)的权限

中三位:定义group的权限;

右三位:定义other的权限

 

进程安全上下文:

进程对文件的访问权限应用模型:

进程的属主与文件的属主是否相同;如果相同,则应用属主权限;

否则,则检查进程的属主是否属于文件的属组;如果是,则应用属组权限;

否则,就只能应用other的权限;

 

权限:

r:readable, 读

w:writable, 写

x:excutable,执行

 

文件:

r:可获取文件的数据;

w: 可修改文件的数据;

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

 

目录:

r:可使用ls命令获取其下的所有文件列表;

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

x: 可cd至此目录中,且可使用ls -l来获取所有文件的详细属性信息;

 

mode:rwxrwxrwx

ownership:user, group

 

权限组合机制:

— 000 0

–x 001 1

-w- 010 2

-wx 011 3

r– 100 4

r-x 101 5

rw- 110 6

rwx 111 7

权限管理命令:

chmod命令:

       chmod [OPTION]… MODE[,MODE]… FILE…

       chmod [OPTION]… OCTAL-MODE FILE…

       chmod [OPTION]… –reference=RFILE FILE…

 

       三类用户:

         u:属主

         g:属组

         o:其它

         a: 所有

 

       (1) chmod [OPTION]… MODE[,MODE]… FILE…

 

         MODE表示法:

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

           u=

           g=

           o=

           a=

 

          授权表示法:直接操作一类用户的一个权限位r,w,x;

           u+, u-

           g+, g-

           o+, o-

           a+, a-

 

        (2) chmod [OPTION]… OCTAL-MODE FILE…

 

        (3) chmod [OPTION]… –reference=RFILE FILE…

 

        选项:

         -R, –recursive:递归修改

 

        注意:用户仅能修改属主为自己的那些文件的权限;

 

从属关系管理命令:chown, chgrp

 

chown命令:

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

          chown [OPTION]… –reference=RFILE FILE…

 

          选项:

           -R:递归修改

 

         chgrp命令:

 

          chgrp [OPTION]… GROUP FILE…

          chgrp [OPTION]… –reference=RFILE FILE…

 

         注意:仅管理员可修改文件的属主和属组;

 

        思考:用户对目录有写权限,但对目录下的文件没有写权限时,能否修改此文件内容?能否删除此文件?

         模拟之;

 

        umask:文件的权限反向掩码,遮罩码;

         文件:

          666-umask

         目录:

          777-umask

 

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

          umask: 023

           666-023=644

           777-023=754

 

         umask命令:

          umask:查看当前umask

          umask MASK: 设置umask

 

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

原创文章,作者:N24_小颜,如若转载,请注明出处:http://www.178linux.com/60284

(0)
N24_小颜N24_小颜
上一篇 2016-11-21
下一篇 2016-11-21

相关推荐

  • zabbix监控Hadoop的实现

            Hadoop日常运行过程中一些参数需要进行实时监控,如:Map、Reduce任务数量,HDFS磁盘使用情况,namenode、datanode在线数量及健康情况,以便更好的掌握整个Hadoop集群架构的运行情况。         下面结合最近工作中的一些…

    Linux干货 2015-03-08
  • Redis高可用架构(1)—Keepalive+VIP

    最近整理一下Redis高可用架构的文档,也准备分享出来,虽然这些架构也不是很复杂。Redis的高可用方案目前主要尝试过5种方式,其中2种方式已经在线上使用。 1)Redis Master-Slave + Keepalive + VIP。这是很经典的db架构,也可以用与mysql的主从切换。基本原理是:Keepalive通过脚本检测master的存活,然后通过…

    Linux干货 2016-04-13
  • TCP网络关闭的状态变换时序图

    TCP共有11个网路状态,其中涉及到关闭的状态有5个。 在我们编写网络相关程序的时候,这5个状态经常出现。因为这5个状态相互关联,相互纠缠,而且状态变化触发都是由应用触发,但是又涉及操作系统和网络,所以正确的理解TCP 在关闭时网络状态变化情况,为我们诊断网络中各种问题,快速定位故障有着非常重要的作用和意义。 下是是根据W.Richard Stevens的《…

    Linux干货 2015-04-03
  • 计划任务

              前要:Linux的计划任务主要分为三块。单一的执行一次计划任务,系统自动的选择空闲时间去执行特定的任务, 周期性的执行相关任务,下面就此三块做简要的描述。 一:单一的计划任务at      &nbsp…

    2017-07-01
  • 马哥教育网络班20期+第1周课程练习

    1、描述计算机的组成及其功能。  (1)组成:运算器、控制器、存储器、输入设备、输出设备  (2)功能:数值计算、数据处理、自动控制、辅助设计、辅助教学、人工智能、娱乐活动 2、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。  (1)主要发行版本之间关系    基于slackware:sus…

    Linux干货 2016-06-23
  • DHCP服务

    一、DHCP概述     DHCP全称为Dynamic Host Configuration Protocol,即动态主机配置协议,其主要作用是使用网内的主机可以自动获取到网络相关参数信息,以达到高效管理主机的目的。     DHCP采用C/S架构,即Server/Client。…

    Linux干货 2015-05-11