Linux 复习笔记 by 韩新虎
Linux 基础
第一章 了解 Linux 发行版 常用的发行版、 内核、组成、版本的介绍。
什么是Linux发行版
一些组织和厂家,将Linux系统的内核、应用软件、文档包装起来,并提供一些系统安装界面、系统配置设定管理工具,就构成了Linux发行版本。发行的版本号各不相同,于Linux系统内核的版本号是相对独立的
常用的发行版本
Debian Ubuntu CentOS Red Hat Ret Flag Mandriva SUSE Slackware
Linux系统的组成
内核 Shell 文件系统 应用程序
Linux 内核版本号由3个数字组成r.x.y
r:目前发布的内核主版本
x:偶数代表稳定版本,技术代表开发版本
y:错误修补的次数。
第二章 安装。分区、方案、命名
分区命名方案
Linux系统使用字符和数字的组合来指代硬盘分区,Linux系统使用一种更加灵活的命名方案,该命名方案是基于文件名的,文件名格式为/dev/xxyN
/dev/:这是所有Linu系统下所有设备文件在的目录名
xx:分区的前两个字母表示分区的所在设备的类型,通常是hd(IDE硬盘)或sd(SCSI硬盘)
y:这个字母表示分区所在的设备
N:最后的数字N代表分区
磁盘分区方案
- 最简单的分区方案。
- SWAP分区:即交换分区,建议大小是物理内存的1~2倍
- /分区:建议大小在10GB以上
所有的数据都存放在/分区,系统不安全,数据不容易备份。
- 合理的分区方案。
- /boot分区:用来存放与Linux系统启动有关的程序,比如启动引导装载程序等,建议大小为100MB。
- /usr分区:用来存放Linux系统中的应用程序,其相关数据比较多,建议大于9GB
- /var分区:用于存放Linux系统中经常变化的数据以及日志文件,建议大小为1GB
- /分区:Linux系统的根目录,所有的目录都挂载到这个目录下面,建议大小为2GB。
- SWAP分区:实现虚拟内存,建议大小是物理内存的1~2倍
- /home分区:用于存放普通用户的数据,是普通用户的宿主目录,建议大小为剩下的空间。
三 图形 窗口的切换 终端的切换
四 字符终端的切换,字符界面的设定、控制台,终端的名称 关闭系统,重启系统 帮助的命令 man、 shell 的介绍、通配符 ,shell 命令的格式。命令补全,管道、重定向 vi的几种模式 常用的命令,怎么样保存,转换 推出
字符界面: 默认是图形化界面
ln -sf
/lib/systemd/system/runlevel3.target
/etc/system/system/default.target
系统重新引导后即可生效
字符界面下 虚拟控制台的切换可以通过按下[Alt+F1]~[Alt+F6]键来实现。
图形界面下,可以使用[Ctrl+Alt+F2]~[Ctrl+Alt+F6]切换不同的字符虚拟控制台。
shutdown [选项][时间][警告信息]
-c 取消已经在进行的shutdown指令内容
-h 关机 -k发送警告消极给所有登陆者 -r重启
再使用[Ctrl+Alt+F1]可以切换回图形界面。
shutdown -h now //right now
shutdown -h 12:00// 12:00
shutdown -h +5 // in 5 minutes
halt命令 调用 shutdown -h 关机
halt 参数
reboot 命令 引发主机重启 选项与halt类似
init 命令
init命令是所有进程的祖先,进程号始终为1,发送TERM信号给init会终止所有的用户进程和守护进程,shutdown就是这种机制
init 0为关闭系统,init 6为重启
man手册 manual的缩写
man [选项] [命令名称]
选项是章节号可忽略。
-a:在所有的man帮助手册中搜索;
-f:等价于whatis指令,显示给定关键字的简短描述信息;
-P:指定内容时使用分页程序;
-M:指定man手册搜索的路径。
help命令 通过help 查找shell命令的用法。 --help 再查找的命令后输入
mkdir –help
whereis 查找命令所在的位置
whereis [选项][命令名] e.g. whereis ls
shell 倾听用户指令、启动指令指定的进程并返回结果给用户
种类有 sh,bash,csh
通配符
符号 | 含义 |
? | 代表任何单一字符 |
* | 代表任何字符 |
[字符组合] | 在中括号中的字符皆符合,如[a~z] |
[!字符组合] | 不在中括号中的字符皆符合[!0~9] |
常用控制组合键
Ctrl+C \ | 终止当前命令 |
Z | 暂停目前的命令 |
|
|
|
|
|
|
命令行自动补全
<Tab> 补全文件名和命令名称
cd /u<tab>
命令的排列
; 命令1 ; 命令2
&& 命令1 &&命令2 只有命令
命令替换机制
命令1 &(命令2)
命令1 `命令2`
定义别名
alias [别名] = [需要定义别名的命令]
!$ 重复前一个命令的最后一个参数
文件名 匹配 * 可匹配 ? 一个字符
管道:|
将某个命令的输出信息当作某个命令的输入
[命令1]|[命令2]|[命令3]
重定向
- 输出重定向 command的输出存到文件里 command > file
- 输入重定向 文件file的内容作为command命令的输入
- 错误重定向 即将command命令执行的出错信息输出到文件file中。 command 2> file
- 追加重定向 将command命令执行的输出添加到已存在的文件file中 command >> file
- 同时实现输出和错误的重定向 command &/ file
vi 编辑器 及基本使用
3种模式 命令模式 插入模式 末行模式
命令行模式:
光标移动,字符、字或者行的删除、移动、复制某区域,或者进入插入模式或者到末行模式。
插入模式: 文字输入 Esc 回到命令行
末行模式:保存或退出vi编辑器。也可以设置编辑环境,比如寻找字符串、列出行号。
vi + 文件名 进入 vi
按字母 I ,i 可以进入插入模式
命令行模式下 按 : ,wq保存退出,q!不存盘强制退出vi
进入插入模式 i,当前光标位置,a ,目前光标的下一个位置
o 光标所在行的下一行, I 行首,A 行末,0,所在行的上面插入空行,s删除一个字符,S删除目标所在的行
h,j,k,l。左、下、上、右。 移动光标
删除文字 x一个字符,nx n个字符 X 所在位置前面的一个字符,nX
dd 删除所在行,ndd删除n行
ZZ 存盘退出,ZQ不存盘退出。
末行模式 Esc + :
set nonu; set nu;
n 跳转到某一行
查找字符
/关键字 按n下一个
?关键字 按n下一个
!命令 : 运行shell命令
s /a/b 第一个a替换为b
s /a/b/g 所在行 所有a替换为b
五 文件和目录 常用的命令,cd ls常用的选项,删除目录 rm,统计字符 wc,链接,软硬。
文件
除一般文件之外,所有目录和设备都是以文件的形式存在的。
可以使用 file + 文件名 判断文件的类型
普通文件、目录文件、字符设备文件、块设备文件和符号链接文件
ls- lh 是小写的L
-rw-r—r—第一个符号是 - 普通文件
drwxr-xr-x 第一个符号是d 目录文件
crw-r------ c 字符设备文件 char 例如打印机终端
prw------- p 管道文件 fifo文件,一头流入一头流出
链接文件
软链接(符号链接) link
lrwxrwxrwx l
数据块种存放的是另一文件的路径名的指向。可对文件或目录创建,删除链接不影响原文件。
硬链接
同一个文件使用了多个别名,拥有相同的 inode号,仅文件名不同,只可对文件创建。 ls -l 查看文件的属性,第二列的文件硬链接数大于1,这样的文件就是硬链接。
目录
分层的树形结构 都是挂载在 / 下
pwd 当前工作路径的绝对路径
cd [目录名] 绝对路径,相对路径
ls
列数 | 描述 |
第一列 | 第一个字符 文件的类型,第2-4个字符文件所有者的访问权限 |
2 | 文件的链接数 |
3 | 所有者 |
5 | 字节数 |
6-8 | 文件上一次的修改时间 |
9 | 文件名 |
ls [-alrtAFR] [name...]
- -a 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出)
- -l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
- -F 在列出的文件名称后加一符号;例如可执行档则加 "*", 目录则加 "/"
- -R 若目录下有文件,则以下之文件亦皆依序列出
touch 创建空文件,更改文件或目录时间 touch [option] file
无选项:若文件不存在,则创建新的空文件,access time,modify time和change time均为当前时间;若文件存在,则将三个时间戳均修改为当前时间
-a:只修改文件的access time
注意:access time修改后,change time也被修改(因为状态发生了改变)。
-m:只修改文件的modify time
-c:不创建不存在的文件(当touch后操作多个文件时,不存在的文件将不会被创建)
-d:使用指定的日期时间,而非现在的时间,可以使用各种不同的格式。
-t:将时间修改为参数指定的日期,如:07081556代表7月8号15点56分
注意:change time发生了变化,变成了当前时间。
该选项的时间格式为[[CC]YY]MMDDhhmm[.ss]
mkdir [选项][目录名]
当你要创建的目录包含子目录时,你需要使用 -p 参数。如果 mkdir 找不到父目录,那么这个参数会首先帮助创建父目录。比如说我们要创建名为 letter 的目录,在它的目录下包含有子目录 important。那么语法会像这样子:
$ mkdir -p letter/important
使用 -m 参数,我们可以给即将生成的新目录设置权限。示例如下:
rmdir命令删除空的目录。
语法
rmdir [-p] dirName
参数:
-p 是当子目录被删除后使它也成为空目录的话,则顺便一并删除。
cp 复制文件和目录
cp [source] [destination]
更改名称 以及 移动文件和目录的路径
mv p[source] [destination]
rm 删除文件或目录
rm [options] name...
参数:
-i 删除前逐一询问确认。
-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
-r 将目录及以下之档案亦逐一删除
wc [-clw][--help][--version][文件...]
参数:
- -c或--bytes或--chars 只显示Bytes数。
- -l或--lines 只显示行数。
- -w或--words 只显示字数。
- 在默认的情况下,wc将计算指定文件的行数、字数,以及字节数。
硬链接
硬链接是一个指针,指向文件索引节点,不重新分配。可以使用ln,限制,不允许目录创建硬链接,只有统一文件系统的文件才可以
软链接 符号链接 另一个文件的路径名
软链接 似快捷方式 硬链接似备份
ln [alt][source][destination]
-f 强制执行
-i 交互模式,文件存在则提示用户是否覆盖
-s 软链接(符号链接)
-v 显示详细的处理过程
六 介绍命令 cat more less 区别 回显。 看日志 tell -f 查找 grep find whatis whereis
cat [-AbeEnstTuv] [--help] [--version] fileName
参数说明:
-n 或 --number:由 1 开始对所有输出的行数编号。
-b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。
-s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。
-v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。
-E 或 --show-ends : 在每行结束处显示 $。
-T 或 --show-tabs: 将 TAB 字符显示为 ^I。
-A, --show-all:等价于 -vET。
Linux more 命令类似 cat ,不过会以一页一页的形式显示,更方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,请按 h
从第20行开始显示testfile文件的 内容。 [root@PC-LINUX ~]# more +20 testfile
less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。
- b 向后翻一页
- d 向后翻半页
- h 显示帮助界面
- Q 退出less 命令
- u 向前滚动半页
- y 向前滚动一行
- 空格键 滚动一页
- 回车键 滚动一行
使用head命令可以显示指定文件的前若干 行文件内容
head -3 /etc/passwd
使用tail命令可以查看文件的末尾数据。
tail -3 /etc/passwd
sort file sort -r file
uniq 将重复的行从输出文件删去
使用cut命令可以从文件的每行中显示出 选定的字节、字符或字段。
-b:仅显示行中指定直接范围的内容;
-c:仅显示行中指定范围的字符;
-d:指定字段的分隔符,默认的字段分隔符为“TAB”
comm 比较已排过序的文件
comm [-123][--help] [文件1][文件2]
-1:不显示只在第1个文件里出现过的行。
-2:不显示只在第2个文件里出现过的行。
-3:不显示同时在第1个和第2个文件里出现过的行。
如果没有指定任何参数,comm命令读取这两个文件,然后生成三列输出:第1列仅在file1中出现的行;第2列仅在file2中出现的行;第3列在两个文件中都存在的行
diff:逐行比较两个文本文件, 列出其不同之处 使用diff命令可以逐行比较两个文本文件, 列出其不同之处。它比comm命令完成更复杂的 检查。它对给出的文件进行系统的检查,并显 示出两个文件中所有不同的行,不要求事先对 文件进行排序。 命令语法: diff [选项] file1 file2
使用grep命令可以查找文件中符合条件的 字符串。 命令语法: grep [选项] [查找模式] [文件名]
grep ‘test’ d*
find:列出文件系统中符合条件的文件或目录
使用find命令可以将文件系统中符合条件 的文件或目录列出来,可以指定文件的名称、 类别、时间、大小以及权限等不同信息的组合, 只有完全相符的文件才会被列出来。 命令语法: find [路径] [选项] [-print]
如果 path 是空字串则使用目前路径
# find /etc -name named.conf
# find / -name '*.conf'
locate 在数据库中查找文件
locate + filename
whereis:查找指定文件、命令 和手册页位置 这些文件应属于原始代码、二进制文件,或是帮助文件。
· -b 只查找二进制文件。
· -B<目录> 只在设置的目录下查找二进制文件。
· -f 不显示文件名前的路径名称。
· -m 只查找说明文件。
· -M<目录> 只在设置的目录下查找说明文件。
· -s 只查找原始代码文件。
· -S<目录> 只在设置的目录下查找原始代码文件。
· -u 查找不包含指定类型的文件。
file:查询文件类型
file [选项] [文件名]
whatis:查询命令功能
which:显示可执行命令路径
cal [选项] [月 [年]]
echo
mesg 设置发送信息的权限
wall 对所有登陆的用户发送信息
write 用户账号 终端名称
date:显示和设置系统日期和时间 使用date命令可以显示和设置计算机系统 的日期和时间。 命令语法: date [参数] [显示时间格式](以+开头,后面接格式)
clear
sync 将缓冲区内对文件写到硬盘里
七 shell编程 分支语句 条件语句 循环语句 表达式 变量的定义、使用 补充练习 $加其他符号
编程
开头
#!/bin/bash
chmod u+x [文件名] 赋予文件可执行的权限
# 注释
变量名=变量值 变量名前不应加$, 引用变量内容时,$或${变量名}
等号两边不能不能留空格!!!
readonly 只读变量
export 变量名 可以将一个局部变量提供给shell命令使用
位置参数 $0代表文件名,以空格分割的位置参数 $1,$2,$3
若变量中本身就包含了空格,则整个字符 串都要用双引号括起来。在编写Shell程序时, 为了使变量名和命令名相区别,建议所有的变 量名都用大写字母来表示。
常用的Shell预定义变量如下。
$#:位置参数的数量。
$*:所有位置参数的内容。
$?:命令执行后返回的状态。
$$:当前进程的进程号。
$!:后台运行的最后一个进程号。
$0:当前执行的进程名。
${variable:-value} 如果变量存在,返回变量值,否则返回value
${variable:=value}如果存在,返回变量值,否则value赋值给变量variable,然后返回value
${variable:+value}如果存在,返回value,否则返回控制
${variable:?value}如果存在,返回变量值,否则value送到标准错误输出并显示退出shell程序,value通常为错误提示消息
${variable:offset[:length]} variable第(offset+1)个字符开始的子串
test [表达式]
字符串比较
相同 =
不相同 !=
-n 长度是否大于0
-z 长度是否等于0
数字比较
-eq:相等
-ge 大于等于
-le
-ne 不等
-gt 大于
-lt
逻辑测试
! 取反
-a and
-o or
文件操作
-d directory
-f file
-L link
-r readable and exist
-s exist and length > 0
-w writeable
-x executable
shell 程序的执行
bash filename
bash < filename
chmod u+x filename make it executable
bash [选项][Shell程序文件名]
-v:当读入Shell输入行时,把它们显示出来。
-x:执行命令时把命令和它们的参数显示出来。
if then else fi
if then fi
case string in
exp-1)
;;
exp-2)
;;
*)
esac
case 也可以使用通配符 * ?[]
循环
for while until
for 变量名 [in 数值列表]
do
xxx
done
sum = 0
for INT in S*
do
sum=`expe $sum + $INT`
done
echo $sum
xxx中最后一个命令的返回状态为真 while就继续执行do…done之间的若干个命令行
while
xxx
do
xxx
done
until循环语句 和while相反,当最后一条返回真是退出循环
until
xxxx
do
xxx
done
break
continue
sourcr filename
在当前bash环境下读取并执行filename中的命令
通常用.代替 如 source .bash_rc 与 . .bash_rc
函数
[function] 函数名(){
命令
}
引用 函数名 [参数1 参数2 参数3 参数n]
return
可以在函数末尾加return,从函数中返回,用最后的命令状态决定返回值
返回一个数值 如0或1
八 删除组,添加组 用户的操作管理 常用的命令 login default文件
useradd +username
passwd + username
usermod
userdel
groupadd
groupmod
groupdel
/etc/login.defs配置文件 /etc/login.defs文件规定了创建新用户 时的一些默认设置,比如创建用户时是否需要 主目录、UID和GID的范围、用户账户口令的期 限等,这个文件可以通过root用户来修改。
/etc/default/useradd文件是在使用useradd 命令创建用户账户时的规则文件。
/etc/skel目录是存放用 户启动文件的目录,这个目录由root用户管理, 当管理员创建新用户时,这个目录下的文件会 自动复制到新创建的用户的主目录下
使用passwd命令可以设置或修改用户的口 令,
使用gpasswd命令可以设置一个组群的组 群密码,或是在组群中添加、删除用户
使用chfn命令可以更改用户全名、办公室 地址、电话等信息。
使用chsh命令可以更改用户账户的 Shell类型
使用su命令可以切换到其他用户账户进行 登录。
使用pwck命令可以校验用户配置文件 /etc/passwd 和/etc/shadow内容是否合法和 完整。 命令语法: pwck
使用newgrp命令可以让用户账户以另一个 组群的身份进行登录。
使用finger命令可以显示用户账户的信息。finger [选项][用户名]
使用groups命令可以显示指定用户账户的 组群成员身份。 命令语法: groups [用户名]
使用id命令可以显示用户的ID以及该用户 所属组群的GID。 命令语法: id [选项][用户名]
使用w命令可以详细查询已登录当前计算机的用户。 命令语法: w
使用who命令可以显示已登录当前计算机 用户的简单信息。 命令语法: who [-Himqsw] [--version][am i][记 录文件]
chage chage命令管理 用户口令的时效,防止用户口令由于长时间使 用而导致泄漏,或是被黑客破解口令而受到攻 击。 命令语法: chage [选项][用户名]
九 硬盘分区 挂载流程 mount 权限的设定,指定的方法,字符数字 特殊权限
硬盘分区: 分区说硬盘的段落。安装多个操作系统将需要更多的分区
分区类型:主分区,扩展分区,逻辑分区
分区必须要进行格式化
fdisk 工具进行硬盘分区,指定文件系统
mount挂载
- 使用fdisk命令在硬盘上创建分区。 (2)使用mkfs命令在分区上创建文件系统。 (3)使用mount命令挂载文件系统,或修 改/etc/fstab文件使得开机自动挂 载文件系统。 (4)使用umount卸载文件系统。
使用mount命令可以将某个分区、光盘、 软盘或是U盘挂载到Linux系统的目录下。 命令语法: mount [选项][设备名称][挂载点]
umount
要查看Linux系统分区挂载情况,除了可 以使用df命令之外,还可以通过mount –s命 令以及查看/etc/mtab文件获取信息。
通过设定权限可以限制或允许以下3种用 户访问:文件的所有者(文件属主)、文件所 有者所在组的同组用户(同组用户)、系统中 的其他用户。
权限 对文件的影响 对目录的影响
SUID 以文件的所属用户身份执行, 而非执行文件的用户 无
SGID 以文件所属组身份执行 在该目录中创建的任意新文件的 所属组与该目录的所属组相同
Sticky 无 对目录拥有写入权限的用户仅可 以删除其拥有的文件,无法删除 其他用户所属的文件
权限 命令 模式
SUID chmod u+s s=x+SUID S=-+SUID
SGID chmod g+s s=x+SGID S=-+SGID
Sticky chmod o+t t=x+Sticky T=-+Sticky
chmod [ugoa][+-=][rwx][文件或目录名]
u表示该文件的所有者,g表示与该文件的所有者属于同一个组的用户,o表示其他用户,a表示以 上三者;
+表示增加指定权限,-表示取消指定权限,= 表示设定权限等于指定权限; r表示可读取,w表示可写入,x表示表示文件 可执行或目录可进入
0表示没有权限,1表示 可执行权限,2表示写入权限,4表示读取权限, 然后将其相加。所以数字属性的格式应为3个 0~7的8进制数,其顺序是(u),(g), (o)。
使用chown命令可以更改文件和目录的所 有者和用户组。 命令语法: chown [-R][用户.组][文件|目录]
使用chgrp命令可以更改文件或目录所属 的组。 命令语法: chgrp [选项][用户组][文件|目录]
十 rpm 作用 安装卸载 选项 yum 命令
RPM软件包管理器(简称RPM)是一种开放 的软件包管理系统,简化了系统安装、 卸装、更新和升级的过程
rpm –ivh [RPM包文件名称] 安装显示进度 –install—verbose--hash
rpm –e [RPM包名称] 卸载包 --erase
rpm –Uvh [RPM包文件名称] --update
rpm -Fvh [RPM包文件名称]
查询指定软件包的详细信息 命令语法: rpm –q [RPM包名称]
rpm –qa 查询系统中所有已安装的RPM软件包
rpm –qi [RPM包名称]
查询某已安装软件包所含的文件列表 命令语法: rpm –ql [RPM包名称]
rpm –qR [RPM包名称] 查询软件包的依赖要求
查询系统中指定文件属于哪个软件包 命令语法: rpm –qf [文件名]
tar [主选项+辅选项][文件或者目录]
主选项:【一条命令以下5个参数只能有一个】
-c: --create 新建一个压缩文档,即打包
-x: --extract,--get解压文件
-t: --list,查看压缩文档里的所有内容
-r:--append 向压缩文档里追加文件
-u:--update 更新原压缩包中的文件
辅助选项:
-z:是否同时具有gzip的属性?即是否需要用gzip压缩或解压?一般格式为xxx.tar.gz或xx.tgz
-j:是否同时具有bzip2的属性?即是否需要用bzip2压缩或解压?一般格式为xx.tar.bz2
-v:显示操作过程!这个参数很常用
-f:使用文档名,注意,在f之后要立即接文档名,不要再加其他参数!
-C:切换到指定目录
--exclude FILE:在压缩过程中,不要将FILE打包
进程是在自身的虚拟地址空间运行的一个 单独的程序。
交互式进程 shell启动控制,可前台可后台
批处理进程 与终端无关,安排在指定时刻完成的一系列进程
守护进程 引导系统时启动,执行即时的操作系统任务 如lpd,named,lpd
ps [选项][/b]
使用该命令可以确定有哪些进程正在运 行以及进程运行的状态、进程是否结束,进程 有没有僵死,哪些进程占用了过多的资源等
- -A 列出所有的进程
- -w 显示加宽可以显示较多的资讯
- -au 显示较详细的资讯
- -aux 显示所有包含其他使用者的行
ps -ef //显示所有命令,连带命令行
ps -u root //显示root进程用户信息
使用top命令可以显示当前正运行的进程 以及关于它们的重要信息,包括它们的内存和 CPU用量。 Linux top命令用于实时显示 process 的动态。
top [bciqsS][d ][n ]
Ctrl + C
kill -9 进程号
进程前台启动 后台启动 &
Ctrl+Z 挂起
使用jobs命令 可以显示shell的作业清单,包括具体的作业、 作业号以及作业当前所处的状态。
fg放回前台执行
bg放到后台执行
任务计划 cron 和at
配置cron实现自动化 使用cron实现任务自动化可以通过修改 /etc/crontab文件以及使用crontab命令实现, 其结果是一样的
/etc/crontab
第1列表示分钟0~59,每分钟用*表示,每3分钟用*/3表示 第2列表示小时0~23 第3列表示日期1~31 第4列表示月份1~12 第5列表示星期0~7,0或7表示星期天 第6列表示要执行的命令
minute hour day month dayofweek commands
十一 tar 命令 kill fg bg 定时的程序 分时日月周 用户可忽略 命令 global table
crontab命令实现自动化
crontab [-u username] //省略用户表表示操作当前用户的crontab
-e (编辑工作表)
-l (列出工作表里的命令)
-r (删除工作表)
- * 取值范围内的所有数字
- / 每过多少个数字
- - 从X到Z
- ,散列数字
/etc/cron.allow和/etc/cron.deny文件 被用来限制对cron的使用。
启动cron服务,需要使用“systemctl start crond.service”命令。 停止cron服务,需要使用“systemctl stop crond.service”命令。
//使用“crontab –e”命令打开vi编辑器
也可以使用vi直接编辑 /var/spool/cron/文件
如果不小心删除了crontab文件,可用 crontab 命令将备份的文件恢复 到/var/spool/cron/中。
at为一次性的
at命令将会保留所有当前 的环境变量,包括路径,该作业的所有输出都 将以电子邮件的形式发送给用户
at [-f script] [-m -l -r] [time] [date]
HH:MM 如: at 02:30
HH:MM YYYY-MM-DD 如:at 8:00 2020-01-01
HH:MM[am | pm] [month] [date] 如:at 8:00 Oct 1 # 在十月一号的八点
HHlMM[am | pm] + number [minutes | hours | days | weeks] 如:at 8:00 + 1days
最常用的的一个时间:now + 时间 比如在十分钟后:at now + 10 minutes,在一天后:at now + 1 days
at-l列出所有作业
atrm at -r 作业表示号 清除作业
十二 网络配置 配置文件 保存在哪里 ssh命令 管理服务
/etc/sysconfig/network-scripts目录下, 其中文件ifcfg-eth0包含第一块网卡的配置信 息,文件ifcfg-eth1包含第二块网卡的配置信 息,文件ifcfg-lo包含回路IP地址信息
文件/etc/resolv.conf是由域名解析器 (resolver,一个根据主机名解析IP地址的库) 使用的配置文件。
文件/etc/host.conf指定如何解析主机 名,
文件/etc/sysconfig/network用来指定 服务器上的网络配置信息
查询一些主机名到IP地址的匹配。 这些匹配信息存放在/etc/hosts文件中
文件/etc/services定义了Linux系统中 所有服务的名称、协议类型、服务的端口等信 息。
netstat 显示网络状态
netstat -i 显示网络接口状态信息。
ntsysv:基于文本的程序。它允许为每 个运行级别配置引导时要启动的服务。对于独 立服务而言,改变不会立即生效
systemctl是系统服务管 理命令,它实际上将service和chkconfig这两 个命令组合到一起使用。
systemctl 选项 [服务名].service
start:表示启动服务。 stop:表示停止服务。 status:表示查看服务状态。 restart:表示重新启动服务。 reload:表示加载服务配置文件。 enable:表示开机自动启动服务。 disable:表示开机禁止启动服务。 is-enabled:表示查看服务是否开机自动启动。 list-units --type=service:显示所有已启动的服务。
使用service命令控 制服务可以马上生效,而使用chkconfig命令 控制服务需要等计算机重新启动后才会生效,
chkconfig --list [服务名]
chkconfig [--level <等级代号>][系统服务][on/off/reset]
chkconfig telnet on //开启Telnet服务
chkconfig telnet off
service [服务名] [start|stop|restart|status]
ssh
[-l login_name] [-p port]
[user@]hostname [command]
把本地文件传输到远程主机的一般语法是: scp [本地文件][用户名@远程主机IP地 址:/目标文件]
把远程文件传输到本地主机的一般语法是:
scp [用户名@远程主机IP地址:/源文件] [本地文件]
sftp命令可以用来打开安全互动的、加密 的FTP会话
sftp使用的一般语法是: sftp [用户名@远程主机IP地址]