ls 显示文件信息
-l 长列表显示文件信息,显示文件元数据 (ls -l)
-a 显示所有文件包括以“.”开头的("."表示隐藏文件)(ls -a)
-s 显示文件大小
-S 文件大小排序
-d 显示目录
-R 递归显示
我们通过以下案例具体学习这几个命令:
先在home中建立几个文件:file1、file2、.file3其中我们可以看到.file3是隐藏文件
我们可以看到ls - l命令确实显示了文件元数据,但是不显示隐藏文件。
我们可以看到ls - a命令确实显示了文件元数据,并且显示隐藏文件。
我们可以看到ls - s命令显示了文件大小,但是并没有显示隐藏文件的大小。
我们可以看到ls - S命令按文件大小排序。
ls -d 显示目录
ls -R 递归显示
什么是套接字?
sockets是保证外界和内部进行交互的窗口,
* 表示匹配0~任意字符
? 表示匹配单个字符 rm -fr ???? 表示删掉文件名是四个字符的文件
【【:alpha:】】单个字母 (方括号应该是英文输入法中的方括号,这里为了方便查看,显示为中文方括号)
【【:upper:】】单个大写字母
【【:lower:】】单个小写字母
【【:digit:】】单个数字
【【:alnum:】】单个数字或字母
【【:space:】】单个空格
【【:punct:】】单个符号
{1..3} 1 2 3
{a..c} a b c
[1-3] 1或2或3
[ac] a或c
[^ac]除了a和c
[!ac]除了a和c
[[:alpha:][:punct:]]表示符号或字母
[![:alpha:][:punct:]]既不是符号也不是字母
在删除文件时可以用到以上通配符,比如文件名称为fiAle,要删除时,可以使用以上通配符
接下来,我们通过以下示例具体学习这些通配符
建立文件名为fi le、fiAle、fiale、fi@le、fi*le
使用rm -fr ?????命令进行删除
我们可以看见,五个字符的文件都被删除了。
可以删除文件名中有单个字母的文件。【【:upper:】】单个大写字母和【【:lower:】】单个小写字母在这里就不演示了,都是一样的操作。
可以删除文件名中有单个符号的文件
可以删除文件名中有空格的文件。【【:digit:】】单个数字和【【:alnum:】】单个数字或字母这里就不演示了,都是一样的操作。
我们可以看见使用上图命令可以删除文件名中有123的文件。
我们对比上面两张图可以看见,删除了除了文件名中没有ac的文件
删除文件名中有符号或字母的文件,[![:alpha:][:punct:]]表示既不是符号也不是字母与上面演示相似,这里就不赘述了。
首先我们应该知道系统中为什么要有用户
用户是用来进行安全设定;
组是用来共享权力;
用户就相当于是一个个体,就比如家庭中的一员,而组就是这个家庭,家庭里的人可以和你共享一张桌子,一个冰箱等。
附加组:可以决定权限,不一定有附加组;
初始组:无法决定权限,一定有,不能更改。
就比如一个人刚生下来,他就是有生身父母的,这个就相当于初始组,是无法改变的而且每个人都有。而附加组就相当于一个人被送给隔壁老王了,这个是后天的,可以不用给。
用户在系统当中以表格和表格中的一系列字符出现的。
1.用户配置文件
/etc/passwd 用户的信息文件
用户名称:密码:用户id(唯一的身份证号):组id:用户说明:用户家目录(用户出现的默认地址):用户默认使用的shell
我们可以从上图中看到这些信息。
/etc/group ##用户组信息
/home/username ###用户家目录
/etc/skel.* ##用户骨信息(用户环境配置模板文件,在用户建立时会自动被复制粘贴到家目录中)
2.用户的查看
whoami 查看当前用户名称
可以看到当前用户名为root
id username 查看用户的id信息
id -u username 查看用户的uid
-g username 查看用户的gid
-G username 用户所在的所有组的id
-n username 以名称显示id
3.用户的建立以及删除
/etc/login.defs 在此
watch -n 1每秒钟显示一次
监控命令:
watch -n 1 'tail -n 3 /etc/passwd /etc/group;echo===;ls -l /home/' 用此命令查看实验效果
通过第一张图的命令就可以通过第二张图片实时观察实验结果的图。
userdel username (root)表示删除用户的身份,但其配置文件保留
userdel -r username (root)表示删除用户身份及系统配置文件;
useradd westos 表示新建用户westos
我们可以看到,上面窗口新建了一个wes用户
useradd -u 6666 westos 指定用户id
我们可以看到,新建的west用户中他的uid项是666
useradd -g 1003 weste指定用户初始组(1003必须先存在)
我们可以看到,新建的weste用户中他的初始组是1003
groupadd -g 102 westos 1建立指定组(102)
我们可以看到,新建的westes1用户中他的组是102
useradd -G 102(已经存在的组) wes 指定附加组
useradd -c “testuser” westos 指定说明文字
我们可以看出,用户说明那一项有testuser
userdel -r w删除用户w
对比上图,我们可以看到w用户已经被删除了。
ueradd -d /mnt/westos westos 建立到指定目录中
useradd -s /bin/tcsh(不能乱写要查询电脑,步骤如下) westos 建立到指定目录
这个和上边操作基本一致,这里就不再赘述了。
cat /etc/shells 显示电脑中的所有shell
useradd username 使用默认规则建立用户(规则参看/etc/login.defs)
groupadd groupname 建立组
groupadd -g groupname建立指定组id
groupdel groupname 删除组
在命令框键入man useradd 就可以查看useradd手册
键入q退出界面
4.用户的管理
改变用户的信息
usermod -l linux wes 将用户名为wes的用户修改成linux
以下四个命令和上面操作相似,这里就不再赘述。
usermod -u 666 username(westos) uid
usermod -g 21 westos 修改初始组id
usermod -G 25 westos 修改附加组,清除原来的
usermod -aG 25 westos 再加一个附加组
usermod -c “t” westse 更改用户说明
以下三个命令和上面操作相似,这里就不再赘述。
-d 更改加用户目录指向
-md 更改加用户目录指向,并重命名家目录
-s 更改用户的shell
5.用户切换
su - westos 切换用户到westos,高级用户切换到低级用户,不需要密码;低级用户切换到高级用户或切换到平级用户需要后者密码。
注意:(很重要)
1.用户切换后及时退出再进入下一个用户(exit)
2.su - 表示切换用户身份及用户环境 一定要加“-”
pwd显示当前用户目录,我们可以看见,当前用户是root,进行su - westos后进入westos用户,然后再exit就退出westos用户
6.用户的认证信息
vim /etc/shadow 记录用户密码,只有超级用户可以访问
(1)用户名称:
(2)用户密码:
md5 sha512加密对称加密(加密和解密使用同一种字符) 在vim /etc/login.defs里边查询
passwd username普通用户修改密码
更改了用户westos的密码
usermod -L username 冻结密码
usermod -U username解锁
passwd -l username 冻结密码
passwd -u username 解锁
passwd -d username 清空密码
以上操作就是先冻结root用户的密码之后解锁
(3)密码最后一次被修改的时间:
当此位数字为0时,用户在登陆系统时,会被强制改密码
chage -d 0 westos
可以看到将17752改为0了
passwd -e westos
(4)密码最短有效期:
chage -m 1 westos
我们可以看到密码最短有效期从0变成1了。
passwd -n 3 westos
(5)密码的最长有效期:
chage -M 30 westos
(6)密码过期警告:
chage -W 2 westos 警告
(7)密码非活跃期:
chage -I 2 westos
passwd -i 0 westos
我们可以看到相应位都有变化
(8)帐号到期日:
chage -E “2018-11-11” westos
(9)未设定用户自定义
7.用户权力的下放
普通用户默认不能新建用户
vim /etc/sudoers
(1).配置文件
etc/sudoers
2.配置命令
visudo
用户名称 主集名称=(执行程序身份)命令 当执行命令时需要用户验证
(linux11) dns-server.example.com=(root) /user/sbin/useradd
用户名称 主集名称=(执行程序身份)nopasswd:命令1, 命令2 ## 当执行命令时不需要用户验证
(linux11) dns-server.example.com=(root) /user/sbin/useradd, /user/sbin/userdel
键入vim /etc/sudoers进入上面页面,再键入:100,找到第100行,进行编辑。
测试:
su - linux11
sudo useradd hello
记得及时退出(exit)