磁盘、IP
查看磁盘空间的占用
df
-h 显示人类易读的方式
linux下磁盘命名格式
/dev/sd[a-z]
查看目录的占用空间
du
-s 查看目录
-h 显示人类易读的方式
du -sh /* 查看根目录下的所有目录
dd
用来生成文件;测试磁盘速度
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段,一段8位,一共32位。分为网络位+主机位。可以通过网络位区分IP地址属于哪一网段,可以通过主机位区分IP地址属于网段的哪一主机。
网络分为A、B、C、D、E类,可以看IP地址来区分。只有A、B、Cl类可以被一般的计算机使用。
A 类
网络位为8位,第一位不可以变必须为0,范围0 0000001-0 1111111(十进制:1-127),127 有特殊用途,被称为回环地址,如127.0.0.1
。主机位为24位。
A类可用网段数:2^7 -1 ,每一个网段有多少可用主机:2^24-2
主机位有两个是不可以用:
主机位全为0,表示一个网段;
主机位全为1,表示网段里面的广播地址
私有地址:自己可以用的。
共有地址: 都可以访问的地址。
子网掩码:255.0.0.0
B类
16位网络位,前两位不可以变必须为10,10 000000 00000000 -10 111111 11111111(128-191),可用网段:2^14
。16位为主机位。每个网段可用主机:2^16-2
私有地址:172.16-172.31
子网掩码:255.255.0.0
C类
前24位为网络位,前三位不可以变必须为110,(192-223 )可用网段:2^21
,后8位为主机位,每个网段有多少可用机器:2^8-2
。
私有地址:192.168.0 -192.168.255
子网掩码 255.255.255.0
D类
作为多播地址,前四位不可以变必须为1110,,1110 0000-1110 1111(224-239)。
E类
作为科研使用
CIDR(无类域间路由)
网络位向主机位借位:比如要申请2个IP地址,选择C类,网络位向主机位6位:2^2 -2 。
子网掩码 :网络位全为1,主机位全为0。
用ip地址和子网掩码来确定属于那个网段:ip地址和子网掩码转换为二进制再进行按位与的运算,
按位与 :只要有0就是0,全部为1,才是1
1&0 0
2&3 2
计算网段:10.20.43.65/10 子网掩码是10位
10.20.43.65
00001010.00010100.
11111111.11000000
10.0.0.0
按位或:只要有1就是1,全部为0,才是0
1|0 1
2|3 3
异或:相同为0,不同为1
1^0 1
2^3 1
3^5 6
取反:-(n+1)
~2 -3
~-4 3
左移:n*2的左移次方
2<<2 8
10<<3 80
右移:n/2的右移次方,向下取整
12>>2 3
13>>2 3
2>>2 0
网络配置
手动
- 使用ip命令(临时生效)
- 写入配置文件(永久生效)
自动分配
- dhcp
ip
增加ip地址
ip a add 192.168.21.23/24 dev ens33(网卡)
Windows
ping 192.168.21.23
(连接新的ip地址)删除 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
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地址,如192.168.21.100
NTEMASK= # 子网掩码
GATEWAY= # 网关,一般虚拟机最后一位为2,如192。168.21.2,其他为1
设置后重启即可:systemctl restart network
DNS配置文件
/etc/reslov.conf
nameserver 192.168.21.2
nameserver 8.8.8.8 # 谷歌,没有被墙
114.114.114.114、202.106.114.1等
从上往下,依次查找
主机名
获取主机名 hostname
设置主机名 hostname name
配置文件:/etc/hostname centos7
永久生效:hostnamectl set-hostname s22
ss
ss命令用来打印linux系统中网络的状态信息,可以让管理员更好的了解网络情况
-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多组,保存了所有的域名解析
本地解析/etc/hosts——>dns服务器——>根节点
wget
用来下载网络资源
-q 静默模式
-c 断点续传
-O filename 另存为的名称
-P 保存到指定的目录
-r 递归下载
-p 下载所有的html文件
systemctl
管理服务
start name … 启动服务
stop name … 关闭服务
reload name 重读配置文件 平滑重启
restart name 重启服务
status name 查看状态
enable name 开机自启动
disabled name 关闭开机自启动
systemctl list-unit-files |grep sshd 查看服务是否开机自启动
计划任务(定时任务)
vim /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分钟做什么事
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 每隔7分钟,到56分钟后,从0开始重新结算
37 * 10,20,30 * 4 echo $(date) >> /tmp/g.txt 表示每个月的10,20,30或者每周的周四
建议:分钟不要写成*,*表示所有
crontab 命令
-e 编辑
-u 指定用户,如果不写,默认为当前用户
-l 列出当前用户的计划任务
-r 删除用户的计划任务
默认写入的文件在/var/spool/cron/username,命令最好写绝对路径。
计划任务作用
- 定时删除
- 定时备份
- 同步时间 ntpdate
crontab的日志:/var/log/cron
ping
-c 指定次数
ICMP 协议 ---> 自行百度