Linux 用户和用户组详解
用户分类
超级用户:UID范围 0
root用户:uid=0(root) gid=0(root) groups=0(root)
普通用户:由管理员创建,UID范围(500-65535)
--> eg: omd用户 :uid=502(omd) gid=502(omd) groups=502(omd)
拟用户:满足文件或者程序运行的需要而创建,系统优化的时候可以删掉
UID范围(1-499) 文件结尾 /noligin
记录用户密码的文件
/etc/passwd # 记录用户的信息
/etc/passwd
用户名 密码 uid gid 用户说明 家目录 shell解释器
omd : x : 502 : 502 : : /home/omd : /bin/bash
/etc/shadow # 记录用户密码的信息
用户名 密码 最近更改时间 禁止修改密码的天数 到用户必须修改密码的天数 告警更改密码期限 不活动时间 标志
omd : lem600@FTL : 17394 : 0 : 99999 : 7 : : :
/etc/group # 记录组信息
用户名 密码 组ID
omd : x : 502:
关于用户控制的命令
chage: 查看/修改密码信息,例如密码等
chage -l omd
-E:更改账户过期时间
chage -E "空格" omd ==>设置永久
chage -E "2017/08/11" omd
==>useradd -e "2017/08/11" omd
==>usermod -e "2017/08/11" omd
chage -m7 -M60 -W10 -I30 omd -->m(min) M(max) W(warning) -I(inactive)
==>passwd -n 7 -x 60 -i 30 -w 10 FTL --> n(min) -x(max) -w(warning) -i(inactive)
chmod:更改属性值的
chmod 755 -R / 系统默认临界 777-022/777-002
chmod 644 / 系统默认临界 666-022/666-002
usermod:更改用户信息 -->大部分参数根useadd 一致,掌握useradd即可
usermod -e "2017/06/08" omd ->只修改当前omd用户
useradd :添加用户 -->也可以直接编辑文件添加
-->默认的文件在 : /etc/default/useradd
-->同时受控制在 : /etc/login.defs
-->修改的文件在 : /etc/passwd shadow group gshadow
useradd omd -p passwd
-g:添加用户组,以用户名称或者数字作为用户登录的起始组
-G:给用户添加多个用户组,用逗号,隔开
-s:指定登录shell
-u:指定UID
-c:comment
-e:指定过期时间
-r 创建系统账户
-d:更改家目录,不存在系统会创建
-m:用户目录不存在就会自动创建
-M:不建立用户家目录,多用于虚拟用户nologin
-D:useradd -D 查看默认系统默认的添加新用户的参数
-D -?:更改系统默认文件(/etc/default/useradd)中的参数
-D -e: 默认加上D后更改配置文件(useradd文件)中账号终止时间 YYYY-MM-DD
useradd -D -e "2017/06/08" omd -->-D 默认同时修改文件中的
usermod -e "2017/06/08" omd ->只修改当前omd用户
useradd -e "2017/06/08" omd ->只修改当前omd用户 -M:不指定家目录 -->多用于虚拟用户
# 添加组用户为mysql的用户,且该用户不能登录
useradd -g mysql mysql -s /sbin/nologin (若不指定组,默认增加一个和UID一样的GID)
# 添加用户ID为502且组为uses是omd用户
useradd omd -u 502 -g users
# 添加用户ID为666组为root且家目录为/FTL的FTL用户
useradd -c "HandsomeBoy" -u 666 -G root,omd -s /bin/sh -d /FTL FTL
grep "\FTL\b" /etc/passwd -->只过滤包含oldboy的行
userdel: 删除用户以及用户信息 -->也可以直接编辑文件,一般我们在工作中直接注释掉这个用户即可
-r 删除用户的家目录 -->不要轻易使用这个参数,会删除该用户的同时删除家目录的文件
1.确保删除一个文件之前,先进行备份,管好你的回车键,除非你确保没问题
2.比删除更好的是注释掉这个文件
3.删除用户,可以#也可以使用/bin/nologin
4.pawd -l omd -->锁定账户
5.chage -E "20170812" omd
-f 删除用户登入目录以及目录中所有文件。
userdel -r omd chgrp: 更改属组用的 change group
-R :递归更改权限
users /home/omd/h.txt -->更改h.txt的属组为users
==> chgrp root h.txt --> 点. 之前代表默认属性 groupadd:添加用户组
groupadd sa 添加名为sa的用户组 -->这里走的是默认的添加
groupadd -g 666 my 添加一个名为my且gid为666的组
groupadd users -g 502 -->添加用户组为502的user groupdel:删除用户组
groupdel sa chown: 更改用户已经用户组的命令
-R :递归更改权限
chown omd h.txt
chown omd.users h.txt
passwd:超级用户: passwd omd -->修改omd用户的密码
passwd -->默认修改root用户的密码
普通用户: 登录到omd用户下,输入passwd 默认修改omd用户的密码 --stdin: echo ftl600@HHH|passwd --stdin omd -->stdin接受echo输入的字符,作为omd的密码
==>passwd omd <ftl600@HHH
==>passwd --stdin FTL <6.txt -->6.txt是一个文件,使用的标准输入 passwd -n 7 -x 60 -i 30 -w 10 FTL --> n(min) -x(max) -w(warning) -i(inactive)
查看用户密码信息;
chage -l FTL
id: 查看用户的UID,GID
id omd
uid=500(omd) gid=500id(omd) groups=500(omd)
id -un
w: show who logged on and what he is doing
****************w > who > users******************
17:43:13 up 10:55, 2 users, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 192.168.25.100 06Aug17 0.00s 1.95s 0.08s w
root pts/1 192.168.25.100 15:30 2:13m 0.01s 0.01s -bash who: 可以查看登录信息,比w简单
# who
root pts/0 2017-08-01 20:54 (192.168.25.100) users:只显示当前终端以什么用户登录,比who还简单 whoami:查看当前对象 last: 显示登录的详细列表以及现在的状况
对应目录:last ==>last /var/log/wtmp
root pts/1 192.168.25.100 Sat Aug 12 14:45 - 15:30 (00:44)
root pts/0 192.168.25.100 Sun Aug 6 08:25 still logged in lastlog: 查看用户的登录情况
lastlog的日志文件 ==> /var/log/lasglog
oldboy **Never logged in**
h **Never logged in** su : 角色切换
su 和 su - 的区别:
su -: 会切换root用户,也会把用户变量也切换到root的环境变量
su : 只是会切换root用户,但是当前的环境变量还是以前用户的环境变量
不切换用户而直接执行命令:
以omd用户执行命令:su - root -c "ifconfig" 需要输入密码
-->同理 创建的文件时omd用户的
用户和组用到的文件
/etc/skel/:存放新用户配置文件的目录,当我们添加新用户的时候,这个目录下的所有文件(包括隐含文件)都会被自动复制到新添加用户的家目录下去,默认都是隐藏文件。通过修改,添加,删除/etc/skel目录下的文件,我们可以为新创建的用户提供统一的,标准的,初始化用户环境
/etc/login.defs:描述系统用户配置的文件,家目录的权限700(文件配置的umask是077) 邮件的目录等信息
从文件中可以看到uid,gid的最大值是500-60000
文件默认删除用户的时候删除用户组
密码加密的方式md5
/etc/default/useradd: useradd命令的默认文件
文件设置了添加用户时的默认的一些操作
可以用 useradd -D 来进行编辑
useradd -D -e 2015/06/09
passwd小结:
1.我们可以通过passwd和chage设置更改账户的密码
也可以通过/etc/login.defs配置文件或/etc/default/useradd针对所有账户进行全局修改
2.设置用户账户的时效,有利有弊。
优点:可以定期的强制系统管理人员进行密码的修改,提升系统的安全性。
缺点:一些用户因为过期而无法登陆
3.在大规模的运维环境中,我们可以通过LDAP服务对Linux账户进行统一的认证,批量管理。
用户登录的文件日志(以上均可用id --> lastlog)
所有的:ll /var/log/secure*
lastlog ==> /var/log/wtmp
lastlog ==> /var/log/lasglog
用户管理小结
useradd -u -g -G -s -M -e -c -d
/etc/skel,/etc/default/useradd,/etc/login.defs
userdel -r(不建议用,用其他方法,注释,nologin,-L之类)
usermod -u -g -G -s -M -e -c -d -L -U
id
chage -l -E -m -M -W
passwd --stdin -n -i -x -w (suid位置)
su
sudo -l -k
visudo -c
组管理小结
groupadd -g
groupdel
groupmod
用户查询命令
w
id
who
last
users
finger
lastlog
【更多参考】
Linux su命令详解 https://www.cnblogs.com/ftl1012/p/su.html
Linux
sudo详解 https://www.cnblogs.com/ftl1012/p/sudo.htmlLinux
Linux
chown命令详解 https://www.cnblogs.com/ftl1012/p/9259936.html
Linux
chmod命令详解 https://www.cnblogs.com/ftl1012/p/9259990.html
Linux
文件特殊权限详解 https://www.cnblogs.com/ftl1012/p/9260157.html
Linux 用户和用户组详解的更多相关文章
- Linux 用户及权限详解
Linux 用户及权限详解 用户 , 组 ,权限 安全上下文(secure context): 权限: r,w,x 文件: r : 可读,可以使用类似cat 等命令查看文件内容. w : 可写,可以编 ...
- linux用户管理,linux用户口令管理,linux用户组管理,linux用户权限管理详解
linux用户管理 http://www.qq210.com/shoutu/android 用户账号的添加(新加用户需添加用户口令) :增加用户账号就是在/etc/passwd文件中为新用户增加一条记 ...
- linux初级学习笔记六:linux用户及权限详解!(视频序号:03_4)
本节学习的命令:/etc/passwd,/etc/shadow,/etc/group文件详解 本节学习的技能: 安全上下文 文件与目录的权限管理 影子命令 用户,用户组类别详解 /etc/passwd ...
- linux用户和权限详解
1.用户组说明 在使用useradd命令创建用户的时侯可以用-g 和-G 指定用户所属组和附属组.基本组:如果没有指定用户组,创建用户的时候系统会默认同时创建一个和这个用户名同名的组,这个组就是基本组 ...
- 4-1 Linux用户管理命令详解
1. /etc/passwd 格式 用户名:密码:UID:GID:注释:家目录:默认shell useradd [options ] USERNAME -u: UID 要大于等于500, - ...
- Linux 系统的用户和组详解_【all】
1.Linux 用户和用户组详解 2.Linux 文件特殊权限详解 3.Linux 文件的读写执行权限的说明 4.Linux 架构之简述企业网站 5.Linux 环境变量设置详解 6.企业生产环境用户 ...
- linux用户和用户组管理详解
Linux 用户和用户组管理 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统. 用户的账号一方面可以帮助 ...
- linux之find命令详解
linux之find命令详解 查找文件find ./ -type f查找目录find ./ -type d查找名字为test的文件或目录find ./ -name test查找名字符合正则表达式的文件 ...
- Linux定时任务Crontab命令详解_转
转自:Linux定时任务Crontab命令详解 (部分修改) linux 定时系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服 ...
随机推荐
- 11-hdfs-NameNode-HA-wtihQJM解决单点故障问题
在hdfs中, NN只有一个, 但其中保存的数据尤其重要, 所以需要将元数据保存, 其中源数据有2个形式, fsimage 和 edit文件, 最简单的解决方法就是复制fsimage, 并在文件修改时 ...
- springboot-4-整合fastjson
使用fastjson作为springboot的默认json解析, 原来使用的是jackson 1, 引入依赖 <dependencies> <dependency> <g ...
- 把AspDotNetCoreMvc程序运行在Docker上-part5:使用docker-compose
在上一part<把AspDotNetCoreMvc程序运行在Docker上-part4:实现负载均衡>中,我们通过几个比较复杂的步骤在docker平台上实现了对网站程序的负载均衡,配置步骤 ...
- ajax读取图片后排列问题(先加载完图片再排列)
网上找了个瀑布流的图片排列插件.从数据库读取图片路径后显示时出现了位置重叠问题. $.ajax({ type: "POST", url: "index.aspx" ...
- SpringBoot(三) Core Features: External Configuration(配置文件)
码云: external-configuration 可以使用属性文件,YAML文件,环境变量和命令行参数来外部化配置 一.属性值可以直接注入到bean 系统属性值不可以 // application ...
- linux下安装jdk8
https://www.cnblogs.com/shihaiming/p/5809553.html
- PL/SQL Developer 如何记住密码
前言:使用时总结一下. 问题: 登录的时候不想每次都输入密码,能记住最好了. 解决方案: 1.点击配置->首选项 2.选择登录历史,勾上带口令存储,然后应用,确定即可.
- 软件架构系列一:C4模型
本文要点预览:因为软件系统的分布式特点以及开发团队的分布性,了解软件架构的基础变得越来越重要.而在过度设计和毫无设计之间,我们应该把注意力放在对软件系统有重大影响的决策和权衡上.好的架构师应该是团队的 ...
- js小练习-移除数组中的元素
移除数组 arr 中的所有值与 item 相等的元素,直接在给定的 arr 数组上进行操作,并将结果返回 代码: <!DOCTYPE HTML><html> <he ...
- Vue 中的 v-cloak 解读
v-cloak 的作用和用法 用法: 这个指令保持在元素上直到关联实例结束编译.和 CSS 规则如 [v-cloak] { display: none } 一起用时,这个指令可以隐藏未编译的 Must ...