Linux:Day4(下) 用户及组管理
Linux用户:Username/UID
管理员:root,0
普通用户: 1-65535
系统用户:1-499
对守护进程获取资源进行权限分配;
登陆用户:500+
交互式登录;
Linux组:Groupname/GID
管理员组:root,0
普通组:
系统组:1-499
普通组:500+
Linux安全上下文:
运行中的程序:进程(process)
以进程发起者的身份运行;
进程所能够访问的所有资源的权限取决于进程的发起者的身份;
Linux组的类别:
用户的基本组(主组):
组名同用户名,且仅包含一个用户:私有组
用户的附加组(额外组):
Linux用户和组相关的配置文件:
/etc/passwd:用户及其属性信息(名称、UID、基本组ID等等);
/etc/group:组及其属性信息;
/etc/shadow:用户密码及其相关属性;
/etc/gshadow:组密码及其相关属性;
/etc/passwd:
account:password:UID:GID:GECOS:directory:shell
/etc/group:
group_name:passwd:GID:user_list
组名:组密码:GID:以当前组为附加组的用户列表(分隔符为逗号)
/etc/shadow:
root:$$pX89hXMLJ11VQTuV$efkL761n04ambIMkFwIsS2UvAmNU9ZMJMJwBje1N4HD0.alpduURuv9zF3S52W62wUqXSkQk2.VwXGQO.IhgZ.:::::::
用户名:$加密方式$杂质$加密后的密码:最近一次更改密码的日期:密码的最小使用期限:最大使用期限:密码警告时间段:密码禁用期:账户过期日期:保留字段
用户和组的相关管理命令:
用户创建:useradd
useradd [options] LOGIN
-u UID:[ UID_MIN, UID_MAX ],定义在/etc/login.defs
-g GID:指明用户所属基本组,可为组名,也可以GID;组必须事先存在。可以通过命令id USERNAME查看。
-c "COMMENT":用户的注释信息;
-d /PATH/TO/HOME_DIR:以指定的路径为家目录;
-s SHELL:指明用户的默认shell程序,可用列表在/etc/shells文件中;
-G GROUP1 [, GROUP2, ...[, GROUPN]]]:为用户指明附加组,组必须事先存在;
-r:创建系统用户;
默认值设定:/etc/default/useradd文件中
useradd -D
-s SHELL
示例:
useradd -D -s /bin/tcsh 修改默认值的,/etc/default/useradd
示例:
[root@localhost ~]# tail -1 /etc/shadow
tom:!!:17776:0:99999:7::: 两个!!表示账号处于禁用状态,linux是禁止空密码用户登陆的。
练习:创建用户gentoo,附加组为distro和linux,默认shell为/bin/csh,注释信息为“Gentoo Distribution";
创建组:groupadd
groupadd [options] group_name
-g GID:指明GID号;
-r:创建系统组;
查看用户相关的ID信息:id
id [OPTION]... [USERNAME]
-u:UID
-g:GID
-G:Groups
-n:Name
切换用户或以其它用户身份执行命令:su
su [OPTION]... [-] [USER [ARG]...]
切换用户的方式:
su UserName:非登录式切换,即不会读取目标用户的配置文件;
su - UserName:登录式切换,会读取目标用户的配置文件,完全切换;
Note:root su至其它用户无须密码;非root用户切换是需要密码;
换个身份执行命令(账户不切换):
su [ - ] UserName -c "COMMAND"
选项:
-l:“ su -l UserName" 相当于" su - UserName"
用户属性修改:usermod
usermod [OPTION] login
-u UID:更改UID;
-g GID:更改GID;
-G GROUP1 [, GROUP2, ...[, GROUPN]]]:新附加组,原来的附加组会被覆盖;若保留原有的,则要同时使用-a选项,表示append
-l login_name:新的名字;
-L:lock指定用户;
-U:unlock指定用户;
给用户添加密码:passwd
passwd [OPTION] UserName:修改指定用户的密码,仅root用户有权限。
passwd:修改自己的密码;
常用选项:
-l:锁定指定用户
-u:解锁指定用户;
-n mindays:指定最短使用期限;
-x maxdays:最大使用期限;
-w warndays:提前多少天开始警告;
-l inactivedays:非活动期限;
--stdin:从标准输入接收用户密码;
echo "PASSWORD" | passwd --stdin USERNAME # 此种方式直接赋值,不需要确认。
Note:/dev/null,bit buckets
/dev/zero
删除用户:userdel
userdel [OPTION]... login
-r:删除用户家目录;
组属性修改:groupmod
groupmod [OPTION]...group
-n group_name:新名字
-g GID:新的GID
组删除:groupdel
groupdel GROUP
组密码:gpasswd
gpasswd [OPTION] GROUP
-a user:将user添加至指定组中;
-d user:删除用户user的
-A user1,user2,....:设置有管理权限的用户列表
newgrp命令:临时切换基本组;
如果用户本不属于此组,则需要组密码;
权限管理:
文件的权限主要针对三类对象进行定义:
owner:属主,u
group:属组,g
other:其它,o
每个文件针对每类访问者都定义了三种权限:
r:Readable
w:Writable
x:eXcutable
文件:
r:可使用文件查看类工具获取其内容;
w:可修改其内容;
x:可以把此文件提请内核启动为一个进程;
目录:
r:可以使用ls查看此目录中的文件列表;
w:可在此目录中创建文件,也删除此目录中的文件;(能否删除一个文件,取决于此)
x:可以使用ls -l 查看此目录中文件列表,可以cd进入此目录;
修改文件权限:chmod
chmod [OPTION]... OCTAL-MODE FILE...
-R:递归修改权限
chmod [OPTION]... MODE[,MODE]... FILE...
MODE:
修改一类用户的所有权限: # 此种方式为全部修改,不涉及的改为无。
u=r # 修改后文件只有读权限,拥有的其它权限将修改为无
g=
o=
ug=
a=
u=,g=
修改一类用户某位或某些位权限,无法同时执行+-操作,如果操作中包含加和减使用上面修改方法。 # 此种方式为部分修改,不涉及的不修改。
u+rw
u-
ug+
chmod [OPTION]... --reference=RFILE FILE...
参考RFILE文件的权限,将FILE的权限修改为同RFILE;
修改文件的属主和属组:
仅root可用;
修改文件的属主:chown 注:这个命令也可以修改属组
chown [OPTION]... [OWNER][:[GROUP]] FILE...
用法:
OWNER
OWNER:GROUP
:GROUP
Note:命令中的冒号可用.替换
示例:chown :root fstable
-R:递归
chown [OPTION]... --reference=RFILE FILE...
修改文件的属组:chgrp
chgrp [OPTION]... GROUP FILE...
chgrp [OPTION]... --reference=RFILE FILE...
文件或目录创建时的遮罩码:umask
FILE:666-umask
Note:如果某类用户的权限减得的结果中存在x权限,则将其权限+1
DIR:777-umask
umask:查看
umask #:设定
Linux:Day4(下) 用户及组管理的更多相关文章
- Linux系统下用户与组的管理
Linux系统下用户与组的管理 一.用户及组基本概述 Linux 系统上,用户管理是基于用户名和密码的方式进行资源的分配. 1.uid(用户身份标识) (1)root用户 uid为0 (2)普通用户: ...
- Linux下用户和组管理
用户与组之间的关系是,组下面有若干个用户,每个用户必须从属于唯一一个组.组可以理解为权限的集合.用户管理的命令有:useradd, userdel, usermod, passwd, chsh, ch ...
- linux基础之用户和组管理及权限
一.用户和组管理 相关配置文件 /etc/passwd: 用户名 : 密码占位符 : UID : GID : COMMENTS : 家目录 :默认shell /etc/group: 组名 : 组密码占 ...
- 【Linux下用户和组管理】
创建用户--useradd . 命令格式:useradd [参数] 用户名 useradd也可写成adduser . 参数如下 -u 指定UID号 -d 指定宿主目录 -e 指定生效时间 -g 指定基 ...
- 浅析Linux系统下用户与权限管理
Linux作为一种多用户多任务操作系统,在日常的使用中不可避免地要划分出一个角色的概念来管理和使用计算机,这个角色与每一个计算机使用者关联,在Linux中称这种角色为用户.而在每一个用户使用计算机的过 ...
- Linux命令之用户与组管理
介绍 Linux操作系统中,任何文件都归属某一特定的用户,而任何用户都隶属至少一个用户组.用户是否有权限对某文件进行访问.读写以及执行,受到系统严格约束的正式这种清晰.严谨的用户与用户组管理系统.在很 ...
- 命令行界面下用户和组管理之groupmod和groupdel的使用
NAME groupmod - modify a group definition on the system SYNOPSIS groupmod [options] GROUP O ...
- 命令行界面下用户和组管理之userdel的使用
userdel - delete a user account and related files 在Linux中,userdel命令的功能是删除系统中的用户及相关的文件 语法 userdel ...
- 命令行界面下用户和组管理之groupadd的使用
groupadd - create a new group groupadd命令用于创建一个新的组 语法 groupadd [options] group 选项: -h 获得帮助信息 ...
随机推荐
- 处理JavaScript异常的正确姿势
译者按: 错误是无法避免的,妥善处理它才是最重要的! 原文: A Guide to Proper Error Handling in JavaScript Related Topics: 译者: Fu ...
- P3275 [SCOI2011]糖果
题目描述 幼儿园里有N个小朋友,lxhgww老师现在想要给这些小朋友们分配糖果,要求每个小朋友都要分到糖果.但是小朋友们也有嫉妒心,总是会提出一些要求,比如小明不希望小红分到的糖果比他的多,于是在分配 ...
- Link Between SAP SD, MM & FI
Link Between SAP SD, MM & FI 1. In SAP you will always get integration with other modules. SD wi ...
- Building QGIS from source - step by step (开发文档翻译1)
1. 简介 原文网址:http://htmlpreview.github.io/?https://raw.github.com/qgis/QGIS/master/doc/INSTALL.html 本文 ...
- .net webapi 后台导出excel 申请付款单实例
[HttpGet, AllowAnonymous] public void ExportSettlementPrint(string code) { FinSettlementModel settle ...
- JavaScript中的原型链和继承
理解原型链 在 JavaScript 的世界中,函数是一等公民. 上面这句话在很多地方都看到过.用我自己的话来理解就是:函数既当爹又当妈."当爹"是因为我们用函数去处理各种&quo ...
- C#面向对象 类的继承
1.类的访问权限: public:跨程序集,命名空间,必须被using引用: internal:默认当前命名空间: 2.类成员的访问权限: private:私有的,只能当前类: protecte:受保 ...
- java使用插件pagehelper在mybatis中实现分页查询
摘要: com.github.pagehelper.PageHelper是一款好用的开源免费的Mybatis第三方物理分页插件 PageHelper是国内牛人的一个开源项目,有兴趣的可以去看源码,都有 ...
- 初学ubuntu之文件权限权限
今天接着做笔记,坚持学习下去. 文件权限修改命令,初学者看见这个命令之后总有些摸不着头脑,这命令里面用到了一些数字,我 自己也是,这次写一篇自己的认识.希望能够帮助到需要学习的人. 首先你可以通过 l ...
- 使用SQL Developer生成Oracle数据库的关系模型(ER图)
客户要一张数据库的关系模型图,于是用SQL Developer来做. 一.SQL Developer版本 我在官网下载的最新版本(现在已经到了18.1,Oracle更新的太勤快): 2.如下图所示选择 ...