Linux学习之十六-Linux用户管理
Linux用户管理
Linux系统跟Windows系统一样,可以创建不同的用户,不同的用户组。在不同用户下使用系统具有相应的权限
- 创建一个普通用户时,会修改几个文件,拷贝一些初始文件到用户家目录中
修改的文件路径为
/etc/passwd
/etc/shadow
/etc/group
/etc/gshadow
拷贝到用户家目录下的文件为
.bash_logout .bash_profile .bashrc
如果错误的把root用户下的这三个文件删除,再切换回root用户时会不成功,解决办法为:
这三个文件的原始存放路径为/etc/skel/,
只需将其拷贝回root家目录中即可:cp /etc/skel/.bash* .
最后执行命令source .bash_profile解决问题
2、/etc/passwd的详细介绍
saslauth:x:499:76:Saslauthd user:/var/empty/saslauth:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
localhost:x:500:500::/home/oldboy:/bin/bash
cat /etc/passwd截取部分内容
第一列:用户名
第二列:x代表有密码
第三列:UID(每个用户唯一的编号)
第四列:GID(每个组唯一的编号)
第五列:备注(在创建用户时输入useradd -c 用户名 就能指定备注)
第六列:家目录
第七列:指定登陆之后使用的shell解释器shell的作用:把用户的命令解析之后传给内核来执行
执行命令cat /etc/shells查看shell解释器的类别
[root@localhost ~]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/dash
/bin/tcsh
/bin/csh
3、/etc/shadow的详细介绍
saslauth:!!:17613::::::
postfix:!!:17613::::::
sshd:!!:17613::::::
tcpdump:!!:17613::::::
localhost:$6$k3Vi5V8s$yf1LQdFvK0nX5UvndAqYJe9vOUFHadvK5Og7N3kOLw4ayG.za/Ft2KmU4Uhe1w8ejN1iL.tRBeMyDwdb7qT66.:17624:0:99999:7:::
cat /etc/shadow截取部分内容,可以通过命令man 5 shadow查看说明
第一列:用户名
第二列:加密之后的密码(没有密码时是两个!号)
第三列:上一次密码改变的时间(距离1970年的天数)
第四列:密码最少使用时间,0表示不限制(不能频繁改密码)
第五列:密码最多使用时间(限定改密码的周期)
第六列:密码警告周期(提前提醒密码到期的时间)
第七列:密码禁用周期(密码到期后禁用用户的周期)
第八列:指定密码到期的具体日期
第九列:预留
4、创建用户的原理
cat /etc/default/useradd查看默认配置
[root@localhost ~]# cat /etc/default/useradd
# useradd defaults file
GROUP=100
HOME=/home 家目录的基础目录
INACTIVE=-1 密码过期后,账户被彻底禁用之前的天数
EXPIRE= 过期时间
SHELL=/bin/bash 指定默认的shell解释器
SKEL=/etc/skel 指定骨架目录
CREATE_MAIL_SPOOL=yes 是否创建邮箱
5、UID的范围
0-100 Linux系统预留
101-499 系统账号(服务)
500-60000 普通用户
6、useradd命令
参数及说明Options:
-g --gid GROUP name or ID of the primary group of the new account
指定用户组 useradd -g 组id b5 或者useradd -g 组名 b5
例子:
useradd -g 814 b5 或者 useradd -g incahome b5
-G --groups GROUPS list of supplementary groups of the new account
指定多个用户组,useradd -G 多个组名或组id 用户名
例子:
useradd -G test,incahome,a1 b6
-m --create-home create the user's home directory 创建家目录
-M --no-create-home do not create the user's home directory 不创建家目录
例子:
useradd -M -s /sbin/nologin b8
-p --password PASSWORD encrypted password of the new account
指定固定加密的密码
例子:
useradd -p 'ezNHdD48mHkGw' c1
生成加密密码的方式openssl passwd 123456
-s --shell SHELL login shell of the new account
不登录
例子:
useradd -M -s /sbin/nologin b9
-u --uid UID user ID of the new account
指定用户uid,方便多台机器同步共享文件
例:
[root@localhost ~]# useradd -u 608 web
[root@localhost ~]# id web
uid=608(web) gid=608(web) groups=608(web)
不常用的参数
-b 指定基础目录
-c 指定备注信息
-d 指定用户的家目录
-e 过期时间
-f 禁用时间
7、chage命令
该命令用于密码时效管理。它可以修改账号和密码的有效期
[root@localhost ~]# chage
用法:chage [选项] 登录
选项:
-d, --lastday 最近日期 将最近一次密码设置时间设为"最近日期"
-E, --expiredate 过期日期 将帐户过期时间设为"过期日期"
-h, --help 显示此帮助信息并推出
-I, --inactive INACITVE 过期 INACTIVE 天数后,设定密码为失效状态
-l, --list 显示帐户年龄信息
-m, --mindays 最小天数 将两次改变密码之间相距的最小天数设为"最小天数"
-M, --maxdays 最大天数 将两次改变密码之间相距的最大天数设为"最大天数"
-R, --root CHROOT_DIR chroot 到的目录
-W, --warndays 警告天数 将过期警告天数设为"警告天数"
8、其他相关命令
usermod 修改用户参数
groups 查看用户所在的组
newgrp 切换用户组,如果切换到其他用户的用户组,需要输入group组密码
gpasswd 设置组密码
博主原创文章,转载请务必注明出处
Linux学习之十六-Linux用户管理的更多相关文章
- Linux学习笔记 (六)用户管理命令
一.用户帐号 1.超级用户:具有操作系统中的最高权限,用来管理和维护操作系统.root用户. 2.普通用户:由root用户来创建,在宿主目录中具有完全权限. 3.程序用户:由应用程序添加,维护某个应用 ...
- linux基础-第十六单元 yum管理RPM包
第十六单元 yum管理RPM包 yum的功能 本地yum配置 光盘挂载和镜像挂载 本地yum配置 网络yum配置 网络yum配置 Yum命令的使用 使用yum安装软件 使用yum删除软件 安装组件 删 ...
- Linux学习之十九-Linux磁盘管理
Linux磁盘管理 1.相关知识 磁盘,是计算机硬件中不可或缺的部分磁盘,是计算机的外部存储器中类似磁带的装置,将圆形的磁性盘片装在一个方的密封盒子里,这样做的目的是为了防止磁盘表面划伤,导致数据丢失 ...
- Linux学习(十六)VIM
一.简介 VIM是vi的增强版.VIM是Linux平台上的主要编辑器.基本上所有的文档的新增,修改,保存都需要用到它.所以,掌握VIM是很有必要的. vim的安装非常简单,一条命令就可以了: yum ...
- Linux学习之十八-sudo分权管理
sudo分权管理 1.为什么需要sudo? 当我的主机是多人共管的环境时,如果大家都使用 su 来切换成为 root 的身份,那么就得每个人知道 root 的密码,这样密码太多人知道可能会流出去,很不 ...
- Linux 常用命令十六 文件权限管理
一.ls -l 各段含义 wang@wang:~/workpalce/threading$ ls -l 总用量 drwxrwxr-x wang wang 12月 : a -rw-rw-r-- wang ...
- Linux学习之十六、文件的格式化与相关处理
原文地址:http://vbird.dic.ksu.edu.tw/linux_basic/0330regularex_4.php 文件的格式化与相关处理 接下来让我们来将文件进行一些简单的编排吧!底下 ...
- Linux学习之十二-Linux文件属性
Linux文件属性 在Linux中,对于每个文件都有相应属性,以Linux中root用户家目录下新建文件a.txt为例,在a.txt中输入几个字符 使用命令ls -ild a.txt查看文件的权限等 ...
- linux学习(十)linux安装MySQL
一.前言 由于我使用的是阿里云的服务器,后面会加入配置阿里云的部分,非阿里云的linux系统可以省略后面的步骤,根据自己系统的情况进行配置~ PS:我安装的是mysql5.7.24的版本,其他版本的M ...
随机推荐
- PostgreSQL 数组类型
PostgreSQL 支持表的字段使用定长或可变长度的一维或多维数组,数组的类型可以是任何数据库内建的类型.用户自定义的类型.枚举类型, 以及组合类型.但目前还不支持 domain 类型. 数组类型的 ...
- grep_awk_sed文本处理
小技巧 1.删除0字节文件find -type f -size 0 -exec rm -rf {} \; 2.查看进程按内存从大到小排列ps -e -o “%C : %p : %z : %a”|sor ...
- mybatis的使用及详解
一.Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以 ...
- iOS-绘制图层-CALayer的属性
一.position和anchorPoint 1.简单介绍 CALayer有2个非常重要的属性:position和anchorPoint @property CGPoint position; 用来设 ...
- git pull命令模式
git pull 默认等于 git fetch + git mergegit pull --rebase 等于 git fetch + git rebasegit pull -–squash 等于 g ...
- inner join和left join 、right join 的区别?
left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录inner join(等值连接) 只 ...
- 论文笔记《Fully Convolutional Networks for Semantic Segmentation》
一.Abstract 提出了一种end-to-end的做semantic segmentation的方法,也就是FCN,是我个人觉得非常厉害的一个方法. 二.亮点 1.提出了全卷积网络的概念,将Ale ...
- Struts框架详解
1.Struts应用框架介绍 (1)框架 框架最简单的形式是指已开发过并已测试过的软件的程序块,这些程序块可以在多个软件开发工程中重用.框架提供了一个概括的体系结构模版,可以用这个模板来构建特定领域中 ...
- 通过使用集合Properties完成JDBC的连接工具类
1.将数据库连接对象所需参数保存在本地文件中 database.properties driverClass=com.mysql.jdbc.Driver url=jdbc:mysql://localh ...
- hdu 2654(欧拉函数)
Become A Hero Time Limit: 15000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)To ...