一、文件目录相关操作
ls ---->显示目录的信息
ls -l ---->长列表显示文件的信息
ls -a ---->显示所有文件包含以“."开头的
ls -s ---->显示目录中文件的大小
ls -S ---->按照文件大小排序
ls -d ---->显示当前目录
演示:
二.通配符
* --------------->匹配任意字符、字符串
? --------------->匹配单个字符 eg: rm -fr ????? 删除文件名有且仅有五个字符的文件
[[:alpha:]] --------------->匹配单个字母(不分大小写)
[[:upper:]] --------------->匹配单个大写字母
[[:lower:]] --------------->匹配单个小写字母
[[:alnum:]] --------------->匹配单个数字或者字母
[[:space:]] --------------->匹配单个空格
[[:punct:]] --------------->匹配单个符号
[[:degit:]] --------------->匹配单个数字
演示:
建立文件名为:file fi4le fiAle fiale "fi le" "fi&le" 进行验证。
* 匹配任意字符,! 表示非, [![:space:]] 表示不是单个空格的字符,如果是对两个或者以上进行单独限定时可以是
[[:space:][:space:]]这种形式,表示连续两个空格,演示:
{ } ---------------------->精确匹配
eg:{1..3} -------------->表示1,2,3
{a..c} -------------->表示a , b , c
[] ----------------------->模糊匹配
eg:[1-3] --------------->表示1或2或3
演示:
三.用户管理
1.概念
用户 -----> 用户的存在是为了进行权力设定,通过设定不同用户来限定不同用户的权限,特定的用户有特定的权限,比如 普通用户和超级用户。
组 ------> 组的存在用来共享权力,组内用户权力共享。
------>初始组:用户创建时就拥有的组,类比一个人的家庭就是这个人出生时就有的初始组
------->附加组:后天的组,属于加入类型的组,类似于人加入某组织,组内人员权力共享
2.用户的配置文件 ----------->/etc/passwd
命令:watch -n 1 'tail -n 3 /etc/passwd /etc/group' 监控用户配置文件和组配置文件
我的用户信息: dc:x:1000:1000:dc,,,:/home/dc:/bin/bash
用户名:密码:用户id:组id:用户说明:用户家目录:用户默认使用的shell
dc --------------->用户名
x ---------------->密码
1000 ---------------->用户id,默认1000开始
1000 ---------------->组id(这里是初始的默认id)
dc,,, ---------------->用户说明
/home/dc ---------------->用户家目录
/bin/bash ----------------->用户默认使用的shell
四.用户查看
whoami 查看当前用户名称
id username ------------->查看用户id信息
id -u username ------------->查看用户uid
id -g username -------------->查看用户的gid
id -G username -------------> 查看用户所有组的uid
id -n username ------------->以名称显示信息
五.用户的建立及删除,组的建立删除
--------------------------------------------------------------在此文件中可以默认建立用户制定信息:/etc/login.defs
watch -n 1 'tail -n 3 /etc/passwd /etc/group;echo ===;ls -l /home/' 监控文件显示信息一秒一次,默认是两秒一次
useradd username ------------------ 创建用户
userdel username ------------------删除用户身份
userdel -r username ----------------- 删除用户身份以及用户的系统配置文件
groupadd groupname -----------------------建立组
groupadd -g groupname ----------------------建立组指定组id‘
groupdel groupname -----------------------删除组
useradd -u uid号 username -----------------------创建用户时设置UID
useradd -g 初始组id username ------------------创建用户同时指定初始组id
useradd -G 附加组号 username ----------------创建用户同时指定用户的附加组id
useradd -c "xxxxxxxxx" username -------------------------创建用户同时添加说明文字
useradd -d /xxx/ -----------------------------------创建用户同时指定家目录(默认/home/)
useradd -s /xxx/xxx ---------------------------创建用户同时指定用户shell(cat /etc/shells 查看可用的shell)
六.用户的管理
id -G username ------------------------查看附加组
usermod -l new username ----------------修改用户名称
usermod -u new username -------------修改用户uid
usermod -g new username -------------修改初始组id
usermod -G new username -------------更改附加组(会替换原有附加组)
usermod -aG new username -------------新加附加组(原有的基础上新加附加组)
usermod -c new username --------------修改说明信息
usermod -d // username ------------------更改家目录指向
usermod -md //? ? -------------------------更改家目录指向并重命名用户名
usermod -s username ------------------------修改用户默认shell
演示:
七.用户切换
su - username --------------------切换用户时,高级用户向低级用户切换时不用密码
--------------------低级用户向高级用户切换时需要获取密码
注意
1.用户切换后及时退出再切换到下一个用户,否则父目录加载太多,目录混乱。
2.su - 表示切换用户身份和用户环境 。
八.用户的认证信息(配置文件:/etc/shadow )
用户名称:dc
用户密码: 格式:md5 sha512 对称加密
passwd username 只有超级用户才能执行
passwd 普通用户修改自己密码
usermod -L username 冻结帐号会有!
usermod -U username 解锁
passwd -l username 冻结账户,会有!!,权限更高
passwd -u username 解锁
passwd -d username 清空密码
密码最后一次被修改的时间:17614 当此位数字为0 时,用户在登录系统时会强制改密码 设置参数命令如下
chage -d 0 username
passwd -e username
密码最短有效期:0 当再次修改密码时,达到最短有效期时才可以修改 设置参数命令如下
passwd -n 3 username
chage -m 1 username
密码最长有效期:99999 当密码期限达到最长使用期限时就得再次修改密码 设置参数命令如下
passwd -x 50 username
chage -M 40 username
密码过期警告:7 在密码过期前几天发出警告,让你修改密码 设置参数命令如下
chage -W 2 username
密码非活跃期: 在密码过期后,还有几天的时间可以更改密码 设置参数命令如下
chage -I 2 username
passwd - i 0 username
帐号到期日: 设置参数命令如下
chage -E "2018-11-11" username
未设定用户自定义
演示:
九.权力下放
1.配置文件 /etc/sudoers
2.配置命令
visudo 带有遇法检测
用户名称 主集名称=(程序执行身份) 命令
例如:linux11 dns-server.example.com=(root) /usr/sbin/useradd
用户名称 主集名称=(程序执行身份) NOPASSWD: 命令, 命令
例如:linux11 dns-server.example.com=(root) /usr/sbin/useradd, /usr/sbin/userdel
测试
su - dc 切换用户
sudo useradd west01 执行操作