Linux(六)磁盘知识了解、ip知识及计划任务

# 磁盘管理

## 查看磁盘空间的占用

```SHELL
df
-h 显示人类易读的方式
linux下磁盘命名格式
/dev/sd[a-z]
```

## 查看目录的占用空间

```SHELL
du
-s 查看目录
-h 显示人类易读的方式
du -sh /*
```

## dd

```SHELL
dd if=/dev/zero of=file bs=size count=number
if = input file 表示从inputfile里面读取内容
of = output file 表示将读出的数据写入到什么地方
bs = byte size 可以是K,M,G,T
```

## RAID 阵列卡

- raid0
- 读、写速度有所提升
- 可用空间N(磁盘的个数)*每一块的大小
- 没有容错能力
- 最少磁盘数2
- raid1
- 读有所提升,写性能下降
- 可用空间,所有磁盘中最小的一块大小
- 有容错能力
- 最少是2,2N
- raid5
- 读写速度有提升
- 可用空间(N-1)*大小
- 有容错能力,最多可以坏一块硬盘
- 最少要3块
- raid6
- 读写速度有所提升
- 可用空间(N-2)*大小
- 有容错能力,最多可以坏2块
- 最少要4块
- raid10
- 先实现raid1,在实现raid0
- 读写性能有提升
- 可用空间N*大小/2
- 有容错能力,每组镜像可以坏一块
- 最少要4块
- raid01
- 先实现raid0,在实现raid1
- 读写性能有提升
- 可用空间N*大小/2
- 有容错能力,只能坏同一组的
- 最少要4块

# 网络

网络基础知识

ipv4:4段 32位

网络位+主机位

网段:

主机:

A
网络位为8位

主机位为24位

第一位不可以变

0 0000001

0 1111111

1-126

127 有特殊用途,回环地址

可用网段数:2^7 -1

每一个网段有多少可用主机:2^24-2

有两个是不可以用:

主机位全为0,表示一个网段

主机位全为1,表示网段里面的广播地址

私有地址:自己可以用的

子网掩码:255.0.0.0

10 段

共有地址: 都可以访问的地址

1.1.1.1/8

00000001.0.0.0

11111111.0.0.0

1.0.0.0

B

16位网络位

16位为主机位

10 000000 00000000

10 111111 11111111

128

191

可用网段:2^14

每个网段有多少可用主机:2^16-2

私有地址:

172.16-172.31

子网掩码:255.255.0.0

C

前24位为网络位

后8位为主机位

110 00000 000000000 00000000

110 11111 11111111 11111111

192

223

可用网段:2^21

每个网段有多少可用机器:2^8-2

私有地址:

192.168.0 -192.168.255

子网掩码 255.255.255.0

D

作为多播地址

1110 0000

1110 1111

224

239

E

作为科研使用

CIDR(无类域间路由)

网络位向主机位借位

16 +5

21位网络位 11个 2^11 2046

255.255.11111000.0

255.255.248.0

网络位向主机位借位:

24+6 30

2^2 -2

子网掩码

网络位全为1,主机位全为0

ip地址和子网掩码来确定属于那个网段

按位与 :只要有0就是0,全部为1,才是1

```PYTHON
1&0 0
2&3 2
```

按位或:只要有1就是1,全部为0,才是0

```PYTHON
1|0 1
2|3 3
```

异或:相同为0,不同为1

```python
1^0 1
2^3 1
3^5 6
```

取反:-(n+1)

```PYTHON
~2 -3
~-4 3
```

左移:n*2的左移次方

```python
2<<2 8
10<<3 80
```

右移:n/2的右移次方(向下取整,不是四舍五入)

```python
12>>2 3
13>>2 3
50>>2 12
2>>2 0
```

10.20.43.65/10

网段

```SHELL
10.20.43.65
00001010.00010100.
11111111.11000000
10.0.0.0
```

## 网络配置

- 手动
- ip
- 配置文件
- 自动分配
- dhcp

## ip

- 增加ip地址

ip a add 192.168.21.23/24 dev ens33

- 删除 ip

ip a del 192.168.21.23/24 dev ens33

- 增加ip地址并增加别名

ip a add 192.168.21.23/24 dev ens33 label ens33:0

- 删除

ip a del 192.168.21.23/24 dev ens33 label ens33:0

## 网卡配置文件

- 配置文件 /etc/sysconfig/network-scripts/ifcfg-name

```SHELL
TYPE="Ethernet" # 网卡的接口类型
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp" # 获取ip地址的方式,可以是dhcp,static,none
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33" # 网卡名称
UUID="c252096f-57e0-41bd-a1d9-5158a86f9ba1" # 设备唯一标识码
DEVICE="ens33"
ONBOOT="yes" #开机是否启动
HWADDR="" #mac地址
IPADDR=ip地址
NTEMASK=子网掩码
GATEWAY=网关
```

## DNS配置文件

- /etc/reslov.conf

```SHELL
nameserver 192.168.21.2
```

## 主机名

- 获取主机名 hostname
- 设置主机名 hostname name
- 配置文件
- /etc/hostname centos7
- /etc/sysconfig/network centos6
- 永久生效
- hostnamectl set-hostname s22
- 修改配置文件

## ss、netstat

ss命令用来打印linux系统中网络的状态信息,可以让管理员更好的了解网络情况

```SHELL
-a 所有
-l 监听中的
-t tcp
-u udp
-x unix socket文件
-p 相关的程序
-n 显示服务的端口号
常用组合 -anlp -tnlp -unlp
* ipv4 0.0.0.0 表示当前主机上的所有ip地址
:: ipv6 所有地址
```

## 解析

- 本地解析 /etc/hosts
- dns解析
- 根节点 总共13组

## wget

用来下载网络资源

```SHELL
-q 静默模式
-c 断点续传
-O filename 另存为的名称
-P 保存到指定的目录
-r 递归下载
-p 下载所有的html文件
```

## systemctl

管理服务 service

start name ... 启动服务

stop name ... 关闭服务

reload name 重读配置文件 平滑重启

restart name 重启服务

status name 查看状态

enable name 开机自启动

disabled name 关闭开机自启动

systemctl list-unit-files |grep sshd 查看服务是否开机自启动

centos6

service 动作 服务

chkconfig 用来管理服务的开机启动

# 计划任务(定时任务)

```SHELL
/etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
22 * * * * * root touch b.txt 每天的每小时的第22分钟做什么事
25 15 * * * root touch /tmp/c.txt 每天下午的三点25分
27 15,16,17 * * * root touch /tmp/d.txt 每天的15点,16点,17点的第27分钟
28 15-19 * * * root touch /tmp/e.txt 表示 每天的15点到19点的28分钟
30 10-20/5 * * * root touch /tmp/f.txt 每天的10点到20点每个5小时
*/7 * * * * root touch /tmp/f.txt 从0开始重新结算
37 * 10,20,30 * 4 echo $(date) >> /tmp/g.txt 表示每个月的10,20,30或者每周的周四
建议:
分钟不要写成*
分钟不要写成*
分钟不要写成*
```

## crontab 命令

```SHELL
-e 编辑
-u 指定用户,如果不写,默认为当前用户
-l 列出当前用户的计划任务
-r 删除用户的计划任务
```

- 默认写入的文件在/var/spool/cron/username

## 计划任务作用

- 定时删除
- 定时备份
- 同步时间 ntpdate



posted @ 2021-05-10 11:04  Full-Stack~  阅读(84)  评论(0)    收藏  举报