---
url: /diary/linux/4/index.md
description: Linux 基础学习笔记第四篇，crond 任务调度和 RPM 软件包管理，包括定时任务设置和软件安装卸载。
---
## 十二.crond 任务调度

任务调度：指系统在某个时间执行的特定的命令或程序。
任务调度分类：

1. 系统工作：有些重要的工作必须周而复始地执行。如病毒扫描等。
2. 个别用户工作：个别用户可能希望执行某些程序，比如对 mysql 数据库的备份。

#### 基本语法：

```shell
crontab [选项]
crontab -e
```

#### 常用选项：

| 选项 | 作用                 |
|----|--------------------|
| -e | 编辑crontab定时任务      |
| -l | 查询crontab任务        |
| -r | 删除当前用户所有的crontab任务 |

#### 任务要求：

设置任务调度文件：/etc/crontab

设置个人任务调度，执行 crontab -e 命令。

接着输入任务到调度文件

如：

```shell
 */1****ls -1 /etc/>/tmp/to.txt
```

即每小时的每分钟执行 ls -1 /etc/>/tmp/to.txt 命令

#### 执行步骤：

```shell
[root@jhoncc /]# crontab -e
 */1****ls -1 /etc/>/tmp/to.txt
 
no crontab for root - using an empty one
crontab: installing new crontab
```

#### 参数说明：

| 参数    | 说明         | 范围            |
|-------|------------|---------------|
| 第一个 \* | 一小时当中的第几分钟 | 0-59          |
| 第二个 \* | 一天当中的第几小时  | 0-23          |
| 第三个 \* | 一个月当中的第几天  | 1-31          |
| 第四个 \* | 一年当中的第几月   | 1-12          |
| 第五个 \* | 一周当中的星期几   | 0-7（0和7都代表周日） |

## 十三.磁盘分区、挂载

### 分区基础知识：

分区的方式：

#### mbr分区：

* 最多支持四个主分区
* 系统只能安装在主分区
* 扩展分区要占一个主分区
* MBR最大只支持2TB，但拥有最好的兼容性

#### gtp分区：

1. 支持无限多个主分区（但操作系统可能限制，比如 windows 下最多128个分区）
2. 最大支持18EB的大容量（EB=1024PB,PB=1024TB）
3. windows7 64位以后支持gtp

### 挂载分区：

#### 查看系统分区和挂载情况：

```shell
[root@jhoncc tmp]# lsblk -f
NAME            FSTYPE      LABEL           UUID                                   MOUNTPOINT
sda
├─sda1          xfs                         8a405ccb-c7ec-476e-b633-cb0e81e2a486   /boot
└─sda2          LVM2_member                 XDjuyx-gJkB-hi6o-3bT6-lUyy-aOLB-hzRu1L
  ├─centos-root xfs                         04510665-8cca-4753-ae07-e779bd35c9d8   /
  └─centos-swap swap                        cb7fce04-841a-457b-993e-1fea55f5eb48   [SWAP]
sr0             iso9660     CentOS 7 x86_64 2020-04-22-00-54-00-00                 /run/media/root/CentOS 7 x86_64
```

```shell
[root@jhoncc tmp]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   20G  0 disk
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   19G  0 part
  ├─centos-root 253:0    0   17G  0 lvm  /
  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sr0              11:0    1  4.5G  0 rom  /run/media/root/CentOS 7 x86_64
```

#### 分区：

```shell
fdisk /dev/***
m
n
p （主分区）
1
1
261
w
```

#### 格式化：

```shell
#将文件格式化为 ext4 格式
mkfs -t ext4 /dev/***
```

#### 挂载：

```shell
#先创建一个目录
mkdir /home/newdisk
#挂载
mount /dev/*** /home/newdisk
```

此时为零时挂载，重启则无。

```shell
#永久挂载
vim /etc/fstab
#添加
/dev/***   /home/newdisk	ext4	defaults	0 0
#加载
mount -a
```

此时自动挂载。

### 磁盘情况查询：

#### 查询系统整体磁盘使用情况

##### 基本语法：

```shell
[root@jhoncc tmp]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
devtmpfs                 974M     0  974M    0% /dev
tmpfs                    991M     0  991M    0% /dev/shm
tmpfs                    991M   11M  980M    2% /run
tmpfs                    991M     0  991M    0% /sys/fs/cgroup
/dev/mapper/centos-root   17G  4.3G   13G   26% /
/dev/sda1               1014M  172M  843M   17% /boot
tmpfs                    199M   40K  198M    1% /run/user/0
/dev/sr0                 4.5G  4.5G     0  100% /run/media/root/CentOS 7 x86_64
```

####

#### 查询指定目录的磁盘占用情况：

##### 基本语法：

```shell
du -h --max-depth=1 /目录
```

#### 磁盘情况——工作使用指令：

##### 基本语法：

```shell
#查看某个目录下有多少文件
[root@jhoncc home]# ls -l /root | grep "^-" | wc -l
3
#查看某个目录下有多少目录
[root@jhoncc home]#  ls -l /root | grep "^d" | wc -l
9
#统计目录及子目录下有多少文件
[root@jhoncc home]# ls -lR /root | grep "^-" | wc -l
6
#以树状结构显示目录
[root@jhoncc ~]# tree -h
.
├── [1.5K]  anaconda-ks.cfg
├── [ 278]  a.zip
├── [1.5K]  initial-setup-ks.cfg
├── [  48]  mc
│   ├── [ 239]  a.tar.gz
│   ├── [ 477]  a.txt
│   └── [ 477]  b.txt
```

## 十四.网络配置

### 指定固定IP地址：

> 直接修改配置文件来指定IP，并可以连接到外网。

编辑：

```shell
vi /etc/sysconfig/network-scripts/ifcfg-eth0
#修改后 重启服务
service network restart  
```
