linux就该这么学-第六节课

9月15日开始了第六节课,做了第四章:Vim编辑器与Shell命令脚本的收尾,主要包括 for条件循环语句 while条件循环语句 case条件测试语句以及 计划任务服务程序 ,然后讲了第五章:用户身份与文件权限用户身份与能力以及 文件权限与归属部分。

for条件循环语句 允许脚本一次性读取多个信息,然后逐一对信息进行操作处理,当要处理的数据有范围时,使用for循环语句再合适不过了。for 循环语句的语法格式如下:
for 变量名 in 取值列表
do
命令序列
done

while条件循环语句 一种让脚本根据某些条件来重复执行命令的语句,它的循环结构往往在执行前并不确定最终执行的次数,完全不同于 for 循环语句中有目标、有范围的使用场景。while 循环语句通过判断条件测试的真假来决定是否继续执行命令,若条件为真就继续执行,为假就结束循环。while 语句的语法格式如下:
while 条件测试操作
do
命令序列
done

case条件测试语句 case语句是在多个范围内匹配数据,若匹配成功则执行相关命令并结束整个条件测试;而如果数据不在所列出的范围内,则会去执行星号(*)中所定义的默认命令。case命令的语法结构如下:
case 变量值 in
模式1)
命令序列1
;;
模式2)
命令序列2
;;
……
*)
默认命令序列
esac

计划任务服务程序 计划任务分为一次性计划任务与长期性计划任务:

一次性计划任务:只执行一次,一般用于满足临时的工作需求。可以使用 at 命令实现该功能。 只需要写成 at 时间 的形式就可以。如果想要查看已设置好但仍未执行的一次性计划任务,可以使用 at -l 命令;要想将其删除,可以使用 atrm 任务序号,或者 at -r。 也可以结合之前的 管道符 来创建,例如 :echo "reboot" | at 20:22
长期性计划任务:若希望linux 系统能否周期性地、有规律地执行某些具体的任务,那么则需要使用 crond 服务 。创建、编辑计划任务的命令为 crontab -e,查看当前计划任务的命令为 crontab -l,删除某条计划任务的命令为 crontab -r。若当前为管理员身份,还可以在 crontab 命令中加上 -u 参数来他人的计划任务。crond 服务设置任务的参数格式为 : 分 时 日 月 星期 命令,若有些字段未设置,则需要使用星号()来占位,其中 *日星期字段不能同时使用,否则可能会产生冲突。 在crond 服务的计划任务参数中,所有的命令一定要用绝对路径的方式来写,绝对路径可以使用 whereis 来查询。
crond 服务 crontab 配置工具

用户身份与能力
linux 系统中有三类用户:
1. 管理员 root UID 0
2. 系统用户 rhel 5/6 ,UID 1-499;rhel 7,UID 1-999
3. 普通用户 rhel 5/6 ,UID 500-65535;rhel 7,UID 1000-65535
useradd 用于创建新的用户,格式为 useradd [选项] 用户名,useradd 命令中的用户参数以及作用:

-d 指定用户的家目录(默认为/home/username)
-e 账户的到期时间,格式为 YYYY-MM-DD
-u 指定该用户的默认UID
-g 指定一个初始的用户基本组(必须已存在)
-G 指定一个或多个扩展用户组
-N 不创建与用户同名的基本用户组
-s 指定该用户的默认Shell 解释器
groupadd 用于创建用户组,格式为 “groupadd [选项] 群组名”
usermod 用于修改用户的属性,格式为 “usermod [选项] 用户名”。用户的信息保存在 /etc/passwd 文件中,可以直接用文本编辑器来修改其中的用户参数项目,也可以用 usermod 命令修改已经创建的用户信息。 usermod 命令的参数及作用如下:
-c 填写用户账户的备注信息
-d -m 参数 -m 与参数 -d 连用,可重新指定用户的家目录并自动把旧的数据转移过去
-e 账户的到期时间,格式为 YYYY-MM-DD
-g 变更所属用户组
-G 变更扩展用户组
-L 锁定用户禁止其登录系统 Lock
-U 解锁用户,允许其登录系统 unlock
-s 变更默认终端
-u 修改用户的UID
若不小心 usermod -L root 导致 root 用户无法登录,此时可采用重置密码恢复。
passwd 用于修改用户密码、过期时间、认证信息等,格式为 “passwd [选项][用户名]”,普通用户可以修改自身密码,root用户可以修改其他所有人的密码。passwd 命令中可用的参数以及作用如下:
-l 锁定用户,禁止其登录
-u 解除锁定,允许用户登录
--stdin 允许通过标准输入修改用户密码,如 echo "benben" | passwd --stdin zhangc
-d 使该用户可用空密码登录系统
-e 强制用户在下次登录时修改密码
-s 显示用户的密码是否被锁定,以及密码所采用的加密算法名称 status
userdel 用于删除用户,格式为 “userdel [选项] 用户名”,在执行删除操作时,该用户的家目录默认会保留下来,此时可以使用 -r 参数将其删除。若起初未删除家目录,后续可以使用 rm -rf /user 来删除

文件权限与归属
linux 系统中一切都是文件,但每个文件的类型不尽相同,因此linux 系统使用了不同的字符来加以区分,常见的字符如下:
-: 普通文件
d:目录文件 directory
l:链接文件 link
b:块设备文件 block device
c:字符设备文件 character device
p:管道文件 pipeline
在linux 系统中,每个文件都有所属的所有者和所有组,并且规定了文件的所有者、所有组以及其他人对文件所拥有的可读(r)、可写(w)、可执行(x)等权限。
对文件来说,可读表示能够读取文件的实际内容,可写表示能够编辑、新增、修改、删除文件的实际内容,可执行则表示能够运行一个脚本程序;
对目录文件来说,可读表示能够读取目录内的文件列表,可写表示能够在目录内新增、删除、重命名文件,而可执行则表示能够进入该目录。
文件的读、写、执行权限可简写为 rwx ,也可用数字 421 表示,若无相应权限,必须用 - 表示,不能使用空格或者其他字符代替。

任务
复习:第四章:Vim编辑器与Shell命令脚本 以及 rwx <–> 421 的互相转化
预习:
9.20 第五章:用户身份与文件权限
9.21 第六章:存储结构与磁盘划分
9.22 第七章:使用RAID与LVM磁盘阵列技术

最后附上几张笔记:
9.15笔记
9.15笔记
9.15笔记
9.15笔记

文章目录
// Add comment count
|