提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
目录
前言
今天学习的是上次剩余的用户组的内容,也是相对于刚学习Linux系统比较重要的部分,一起学习,一起加油吧!
一、批量创建
文件
{n..m}
n,m都是整数,n是起始,m是终止;n<m
案例
touch t{1..10}.txt

目录
目录结构查看
tree
安装tree:
1.光盘导入
2.查找软件包
3.安装
rpm -ivh /run/media/root/CentOS 7 x86_64/Packages/tree-1.6.0-10.el7.x86_64.rpm
rpm -ivh /run/media/root/CentOS 7 x86_64/Packages/tree-1.6.0-10.el7.x86_64.rpm
同级目录
mkdir a{1..10}

子级目录
{a,b,c}
逐一取出大括号内的值
mkdir -p {aa/{cc/gg,dd},bb/{ee/hh,ff}}

二、修改属性
usermod
usermod [选项option] username
选项
-d,--home-dir
修改用户的家目录
usermod -d /path username


-e, --expiredate
修改用户的失效时间
usermod -e YYYY-MM-DD username


-f, --inactive
密码过期后,账户被彻底禁用之前的天数。0表示立即禁用,-1 表示禁用这个功能。
usermod -f n (n为数字) username
-g, --gid
用户初始登录组(基本组)的组名或GID。组名必须已经存在。组号码必须指代已经存在的组。
usermod -g GID username
-G, --groups
修改用户的附加组,该组必须已经存在
usermod -G GID username
-L, --lock
锁定用户密码,账户不能登录系统
usermod -L username
-m, --move-home
与-d选项配合,将老的家目录内容移动到-d指定的新家目录
usermod -m -d /newdirpath username
-p, --password PASSWORD
修改账户密码
usermod -p 加密后的密码 username


-s, --shell SHELL
修改账户的登录 shell
usermod -s shell的路径 username


-u, --uid UID
修改账户的用户 ID
usermod -u 指定的ID号 username

-U, --unlock
解除密码锁定
usermod -U username
三、密码设置
passwd
单个用户密码设置
语法
passwd [选项] username
选项
-l, --lock
锁定用户密码,账户不能登录系统
passwd -l username
--stdin
读取标准输入的内容作为密码
passwd --stdin username
-u, --unlock
解除密码锁定
passwd -u username
-d, --delete
删除用户密码
passwd -d username
-e, --expire
设置密码有效期
passwd -e YYYY-MM-DD username
-S, --status
查看给定账户的密码状态(锁定或不锁定)
passwd -S username
非交互式修改密码
echo a | passwd --stdin user1
chpasswd
批量用户设置密码
语法
生成用户与密码的对应关系
username:password
echo -e "username1:password1\nusername2:password2" [> filename]
echo -e "username1:password1\nusername2:password2" | chpasswd
chpasswd < filename < 重定向输入
cat filename | chpasswd
案例
vim upwd.txt
user1:123.com
user2:1234.com
cat upwd.txt | chpasswd 或者 chpasswd < upwd.txt

四、删除
userdel
语法
userdel [选项] username
选项
-r, --remove
用户主目录中的文件将随用户主目录和用户邮箱一起删除。在其它文件系统中的文件必须手动搜索并删除。
userdel -r username
案例
现有用户user2
useradd user2
查看/home中的user2文件的属性
drwx------ 5 user2 user2 128 6月 14 11:36 user2
删除user2用户
userdel user2
查看/home中的user2文件的属性
drwx------ 5 1002 1002 128 6月 14 11:36 user2
新建用户user3
useradd user3
查看/home中的user2文件的属性
drwx------ 5 user3 user3 128 6月 14 11:36 user2
drwx------ 3 user3 user3 78 6月 14 11:50 user3
再次创建user2用户
useradd user2
查看/home中的user2文件的属性
drwx------ 5 user3 user3 128 6月 14 11:36 user2
drwx------ 3 user3 user3 78 6月 14 11:50 user3
切换到user2用户
su - user2
发现家目录异常
su: 警告:无法更改到 /home/user2 目录: 权限不够
-bash: /home/user2/.bash_profile: 权限不够
-bash-4.2$
修复:
[root@localhost home]# chown user2 /home/user2 ; chgrp user3 /home/user3
[1]+ 完成
[2]+ 完成
[root@localhost home]# ls -l
drwx------. 3 user2 user2 78 6月 15 03:54 user2
drwx------. 3 user3 user3 78 6月 15 04:01 user3
五、年龄信息
chage
语法
chage [选项] username
使用场景: 修改已创建用户的密码属性
选项
-l, --list
显示账户年龄信息
chage -l username
-d, --lastday
将最近一次密码设置时间设为"最近日期"
chage -d YYYY-MM-DD username
chage -d 0 username
强制用户下次登录必须修改密码
-E, --expiredate
将帐户过期时间设为"过期日期"
chage -E YYYY-MM-DD username
chage -E -1 username
取消账户失效时间
-I, --inactive
过期N天数后,设定密码为失效状态
chage -l N username
-m, --mindays
密码修改最短天数
chage -m N username
chage -m 0 username
随时可以修改密码
-M, --maxdays
密码最长使用天数
chage -M N username
chage -M -1 username
取消密码有效期
-W, --warndays
将过期警告天数设为N天
chage -W N username
总结
今天的内容很重要哦!!!