linux之磁盘管理,网络,计时任务

磁盘管理

查看磁盘空间的占用

df  # 磁盘占有率
-h  # 以人类易读的方式展示

Linux下磁盘命名格式:/dev/sda
查看目录的占用空间

/dev/sd[a-z]num总大小 

linux下磁盘的命名格式如下图
size used avail user% mounted on
总大小 占用 剩余 占用率 挂载点,挂载到哪个目录上

查看目录的占用空间

du 命令

du /          # 查看根目录
du -sh .      # 当前
du -sh .      # 人类易读方式
du -s /*      # 查看根目录下每一个目录占用空间

dd

1.用来快速生成文件 2.测试磁盘的速度

dd if=/dev/zero of=file bs=size count=number
if = input file   表示从inputfile里读取内容
of = output file  表示将读出的数据写入到哪个文件
bs = byte size    大小,可以是K,M,G,T

dd if=/dev/zero of=b bs=100M count=10

RAID 阵列卡

raid0  # 把一份文件拆开两份分别写到两个盘上
 1.读,写速度有所提升
 2.可用空间N (磁盘个数)*每一块的大小
 3.没有容错能力
 4.最少磁盘,两个
raid1 # 把一份文件分别写到两个盘上
 1.读有所提升,写性能下降
 2.可用空间,所有磁盘中最小的一块大小
 3.有容错能力
 4.最少两块,2N
raid5 
# 最常见的RAID等级,把校验数据随机分布在所有磁盘上,当一个数据盘孙缓释,系统可以根据其他硬盘上数据和校验数据重建损坏数据.
 1.读写速度有提升
 2.可用空间(N-1)*大小
 3.有容错能力,最多可以坏一块硬盘
 4.最少要三块
raid6
# 如果两个磁盘同时发生故障,数据将无法恢复。 RAID6引入双重校验的概念,它可以保护阵列中同时出现两个磁盘失效时,阵列仍能够继续工作,不会发生数据丢失。RAID6不仅要支持数据的恢复,还要支持校验数据的恢复.
 1.读写速度有所提升
 2.可用空间(N-2)*大小
 3.有容错能力,最多可以坏两块
 4.最少4块
raid10
 # 各自先做两个raid1 然后联合做成raid0
 1.读写速度有提升
 2.可用空间N*大小/2
 3.有容错能力,每组镜像可以坏一块
 4.最少4块
raid01
 # 先实现raid0,在实现raid1
 1.读写性能有所提成
 2.可用空间N*大小/2
 3.有容错能力,只能坏同一组
 4.最少4块

网络

网络基础知识

ipv4:4段 32位
网络位 + 主机位
网段
主机:通过网络访问外网的都叫主机

可以被机器使用的为A,B,C

A:

  • 网络位8位
  • 主机位位24位
  • 网络位第一位为0且不可以变 1-126
    • 0 000001
    • 0 1111111
  • 127有特殊用途,(回环地址)
  • 可用网段数:2^7(128)-1(回环地址)
  • 每一个网段可用主机:2^24-2(两个不可用)
  • 主机端段不可用:
    • 主机位全为0不可用.表示一个网段
    • 主机位全为1不可用,表示网段里面的广播地址
  • 私有地址:自己网段才可以访问的,私有地址为10段
  • 子网掩码:255.0.0.0
  • 公有地址:都可以访问为公有地址

B:

  • 网络位:16位
  • 主机位:16位
  • 网络位第一位为10且不可以变 128-191
    • 10 000000 00000000
    • 10 1111111 111111111
  • 可用的网段:2^14
  • 每个网段可用主机 2^16-2(两个不可用)
  • 私有地址:172.16-172.31
  • 子网掩码:255.255.0.0.1

C:

  • 网络位为前24位,后8位为主机位
  • 前三位不可变110 192-223
    • 110 00000 00000000 00000000
    • 110 111111 11111111 11111111
  • 可用网段 2^21
  • 每个网段有多少可用机器 2^8-2(两个不可用)
  • 私有地址:192.168.0-192.168.255
  • 子网掩码:255.255.255.0

D:

  • 作为多播地址
  • 前四位为1110 0000 224 - 239 -1
    • 1110 0000
    • 1110 1111

E:作为科研使用 240-255

# 可以被机器使用的只有A,B,C三类 1-223可用

CIDR(无类域间路由)

局域网内多个私有地址同一连接一个公网地址,这个公网地址负责和运营商接口连接,由运营商连接其他公网
1.解决主机远远小于ABC某一类可用主机问题,避免造成ip浪费
# 划分方式
网络位向主机位借位
# 示例
一家公司有2000台主机,申请B类地址则造成ip大大浪费
如B类地址的网络位有16位,向主机位去位.
16 + 5 = 21 位网络位
主机位剩余 11位 2^11-2 = 2046
这样就大大减小了ip浪费

# 子网掩码计算
255.255.11111000.0
子网掩码:255.255.248.0

# 最多网络位只能借到30位

# ip还可以用网络位表示类别
如127.0.0.1/8 此处8为网络位,可以判断为A类网

子网掩码

1.通过ip地址和子网掩码来确定网段
2.子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。

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

1567072061537

已知IP地址和子网掩码,用IP的二进制与子网掩码的二进制数据作'与'运算,就可以得到网段地址。

具体步骤如下:
1、把IP地址转换成二进制数:
199.32.59.64=11000111.100000.111011.1000000;
2、把子网掩码转换成二进制数:
255.255.255.224=11111111.11111111.11111111.11100000;
3、IP地址和子网掩码二进制数分别相“与”:
11000111.100000.111011.1000000 &11111111.11111111.11111111.11100000
=11000111.100000.111011.1000000;
4、将以上结果转换成十进制数:199.32.59.64,就是所求网段地址值
# 按位与的运算  &
# 只要有0就是0,全部为1,才是1
 1 & 0  0     
 2 % 3  2
 
# 按位或 |
# 只要有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 << 2  80
# 右移 n/2的右移次方(向下取整,不是四舍五入 )
12 >> 2  --> 3
13 >> 2  --> 3
14 >> 2  --> 3

网络配置

  • 手动
    • ip
    • 配置文件(永久生效)
  • 自动分配
    • dhcp

ip

增加ip地址 ip a add # dev 增加到enss33
ip a add 192.168.21.23/24 dev ens33

# 删除ip地址 
ip a del
ip a del 192.168.21.23/24 dev ens33

# 增加IP地址起别名 lbel
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 # 别名

不写到文件中则重启无法重新生效

网络配置文件

1.进入配置文件
vim /etc/sysconfig/network-scripts/ifcfg-网卡

TYPE="Ethernet"    # 网卡的接口类型, Ethernet 以太网
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"    # 获取IP地址的方式,可以是dhcp,static(静态文件),none
动态主机设置协议(英语:Dynamic Host Configuration Protocol,DHCP)是一个局域网的网络协议,使用UDP协议工作,主要有两个用途:用于内部网或网络服务供应商自动分配IP地址;给用户用于内部网管理员作为对所有计算机作中央管理的手段。
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="78416ae5-00d7-49d5-b346-a5782c761d38" # 设备唯一标识
DEVICE="ens33"  # 设备用到的文件
ONBOOT="yes"    # 开机是否启动

HWADDR=''               # MAC地址
# 手动设置
IPADDR=192.168.107.133  # ip地址,设置成功之后就只能连这个
NETMASK=255.255.255.0   # 子网掩码
GATEWAY=192.168.107.2   # 网关

2.# 重启网络
systemctl restart network

4.# 连接此ip是否能连接到
ping

# 配置dns   不需要重启 这里不配置会无法解析域名
vim /etc/resolv.conf
nameserver 192.168.107.2 # 网关

DNS配置文件

把域名翻译成IP地址的软件称为域名系统,即DNS

  • /etc/resolv.conf
DNS,Domain Name System或者Domain Name Service(域名系统或者余名服务)。域名系统为Internet上的主机分配域名地址和IP地址。用户使用域名地址,该系统就会自动把域名地址转为IP地址。域名服务是运行域名系统的Internet工具。执行域名服务的服务器称之为DNS服务器,通过DNS服务器来应答域名服务的查询。

vim /etc/resolv.conf
nameserver 192.168.107.2
nameserver 8.8.8.8  # 谷歌
nameserver 114.114.114.114  # 电信
nameserver 202.106.114.1

解析

  • 本地解析 配置文件 vim/etc/HOSTS(本地解析优先顺序高于dns解析)
  • dns解析
  • 根节点 总共13组

主机名

hostname      # 获取主机名
hostname name # 设置主机名,退出,临时生效

# 永久生效
1.配置文件
vim /etc/hostname          # centos7
vim /etc/sysconfig/network # centos6

2.hostnamectl set-hostname s22
# 永久生效,只能在centos7中使用

ss netstat

ss是Socket Statistics的缩写。顾名思义,ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容。显示多的详细的的有关TCP和连接状态的信息

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

centos6:netstat
centos7:ss

-a # 所有
ss -a
-l # 监听中
ss -l

-t # tcp
ss -t

-u # udp
-x # unix socket文件
-p # 相关展示程序 
-n # 不显示服务名字,显示服务的端口号
ss -tln |grep 22

ss -tlnp |grep '22'

* 表示ipv4, 0.0.0.0 表示的当前主机上所有ip地址
: : ivpv6     地址
# 示例
LISTEN     0      128          *:22                       *:*                   users:(("sshd",pid=1154,fd=3))
LISTEN     0      128         :::22                      :::*                   users:(("sshd",pid=1154,fd=4))


常用组合 -anlp tnlp unlclp

wget

用来下载网络资源

-q # 静默模式
-c # 断点续传
-O # filename 另存为的名称
wget 地址 -O /opt/1.jpg

-P # 保存到指定的目录
wget 地址 -O /tmp

-r # 递归下载

-p # 下载所有的html文件
wget -p 地址

systemctl

管理服务 service

start name    # 启动服务
stop name     # 关闭服务
reload name   # 重新加载配置文件(平滑重启)不踢掉当前用户
restart name  # 重启服务
status name   # 查看状态
systemctl status sshd

enabled name  # 开机自启
disabled name # 关闭开机自启动

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

systemctl disabled sshd # 这个是关闭开机自启动不要试 

# centos6版本:
service + 动作 + 服务
service sshd start

chkconfig # 管理服务的开机启动
chkconfig --help
chkconfig add sshd  # 添加
chkconfig sshd on 启动

计划任务(定时任务)

文件启动计划任务
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 a.txt     # 每天的每小时的第22分钟做的事
25 15 * * * * root touch c.txt  # 每天下午3:25创建
27 15,16,17 * * * root     # 每天的15,16,17点做的事
28 15-19 * * *  root touch # 15-19点做的事
30 10-20/5 * * * root touch /tmp/f.txt  # 每隔多久做的事,包括10
*/7 * * * * root touch /tmp/f.txt       # 每隔7分钟执行,每小时从0开始
37 * 10,20,30 * 4 root echo $(date) >. /tmp/g.txt 
# 每个月的10,20,30号 或者周四的那天每小时的37分钟执行的任务

建议:
1.分钟不要写成*
$? 查看任务执行状态

/etc/cron.d/0hourly
# 也是个定时任务,每个小时第一分钟执行/cron.d/0hourly

crontab 执行命令启动计划

-e               # 编辑用户的计划状态
crontab -e       # 进入文件
# 按配置文件照启动计划格式写进文件

-u               # 指定用户,如果不写,默认为当前用户

-l               # 列出当前用户的计划任务
crontab -l       
-r               # 删除用户的计划任务
crontab -r

cat /var/spool/cron/root
# 默认存在该文件下,不存在/etc/crontab.

计划任务作用

  • 定时删除某些日志
  • 备份
  • 同步时间 ntpdate time.windows.com

猜你喜欢

转载自www.cnblogs.com/taosiyu/p/11432970.html