Linux基礎學習5

  • 2019 年 10 月 8 日
  • 筆記

目錄

磁盤管理

查看磁盤空間的佔用

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段 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

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<<3 80

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

12>>2 3  13>>2 3  50>>2 12  2>>2 0

10.20.43.65/10

網段

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 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 nameserver 192.168.21.2

主機名

  • 獲取主機名 hostname
  • 設置主機名 hostname name
  • 配置文件
    • /etc/hostname centos7
    • /etc/sysconfig/network centos6
  • 永久生效
    • hostnamectl set-hostname s22
    • 修改配置文件

ss、netstat

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組

wget

用來下載網絡資源

-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 用來管理服務的開機啟動

計劃任務(定時任務)

/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 命令

-e 編輯  -u 指定用戶,如果不寫,默認為當前用戶  -l 列出當前用戶的計劃任務  -r 刪除用戶的計劃任務
  • 默認寫入的文件在/var/spool/cron/username

計劃任務作用

  • 定時刪除
  • 定時備份
  • 同步時間 ntpdate

補充內容

1.crontab的日誌    /var/log/cron    2.命令最好寫絕對路徑    3.ping  -c 指定次數    ICMP 協議  ICMP(Internet Control Message Protocol)Internet控制報文協議。它是TCP/IP協議簇的一個子協議,用於在IP主機、路由器之間傳遞控制消息。控制消息是指網絡通不通、主機是否可達、路由是否可用等網絡本身的消息。這些控制消息雖然並不傳輸用戶數據,但是對於用戶數據的傳遞起着重要的作用。  ICMP使用IP的基本支持,就像它是一個更高級別的協議,但是,ICMP實際上是IP的一個組成部分,必須由每個IP模塊實現。 

作 者:郭楷豐

出 處:https://www.cnblogs.com/guokaifeng/