磁盤管理

第1章 知識回顧:

1.磁盤組成

2.RAID級別

3.如何讓系統更安全

[root@oldboyedu50-lnb ~]# md5sum oldboy.txt

890b185727556f1be31d7fe5ee5ce4dc  oldboy.txt

[root@oldboyedu50-lnb ~]# sha512sum oldboy.txt

c9a326ffb217c4dc7f72ccf02aba9abf9ec94ca40aa47d848f57741e313a7df52b80f8cca9130acc5930815a1728d93bd781b29d4598eb5cbcaf55ef6e2a7d98  oldboy.txt

4.如何防止系統中×××

5磁盤接口 磁盤組成

6如何進行計算

實例1-1              如何查看內存使用情況

[root@oldboyedu50-lnb ~]# free -h

             total       used       free     shared    buffers     cached

Mem:          1.8G       1.6G       195M       236K       106M       1.3G

-/+ buffers/cache:       189M       1.6G   

Swap:         767M         0B       767M

實例1-2              磁盤分區

1.2 Linux啓動流程:

1. 開機自檢BIOS

2. MBR引導

3. GRUB菜單

4. 加載內核

5. 運行init進程 1個進程

6. 讀取運行級別 /etc/inittab

7. /etc/rc.sysinit 系統初始化

8. /etc/rc3.d  根據運行級別 啓動對應服務(開機自啓動)

9. mingetty    登錄頁面

1.3 磁盤分區

1.磁盤的引導扇區  0磁頭 0磁道 1扇區

MBR引導         001扇區前446字節

MBR Master Boot Record    主引導記錄 引導系統啓動

DPT  (Disk   Partition Table) 磁盤分區表 記錄着磁盤分區從哪裏開始到哪裏結束

1.      主分區(primary) 每個分區佔用16個字節的分區表

一般一定要有

存放數據

2.      擴展分區(extended) 無法直接使用的

最多1

無法直接使用

3.      邏輯分區(logical

存放數據

1.4 磁盤分區

[root@oldboyedu50-lnb ~]# fdisk -l |grep sd[a-c]:

Disk /dev/sda: 21.5 GB, 21474836480 bytes

Disk /dev/sdc: 213 MB, 213909504 bytes

Disk /dev/sdb: 213 MB, 213909504 bytes

fdisk  創建分區

-u    磁盤分區的時候以扇區爲單位默認是按照柱面

-c     關閉dos兼容模式

fdisk -cu  /dev/sdb

fdisk內部命令   

顯示幫助

n  new 創建分區

顯示所有分區信息

刪除分區

保存並退出

退出不保存

實例1-3              創建一個10MB主分區

fdisk -cu  /dev/sdb

Command (m for help): n

Command action  #分區類型

   e   extended

   p   primary partition (1-4)

p

Partition number (1-4):

分區號碼

First sector (2048-417791, default 2048):

從哪裏開始(回車 使用默認)

Last sector, +sectors or +size{K,M,G} (2048-417791, default 417791): +10M

Disk /dev/sdb: 213 MB, 213909504 bytes

64 heads, 32 sectors/track, 204 cylinders, total 417792 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x8dde1fa5

   Device Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048       22527       10240   83  Linux

實例1-4              創建10MB的主分區 創建一個使用所有容量的擴展分區  創建兩個50MB邏輯分區

[root@oldboyedu50-lnb ~]# fdisk -cu  /dev/sdb

Command (m for help): p

Disk /dev/sdb: 213 MB, 213909504 bytes

64 heads, 32 sectors/track, 204 cylinders, total 417792 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x8dde1fa5

   Device Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048       22527       10240   83  Linux

Command (m for help): n

Command action

   e   extended

   p   primary partition (1-4)

e                               #創建擴展分區

Partition number (1-4): 2

First sector (22528-417791, default 22528):

Using default value 22528

Last sector, +sectors or +size{K,M,G} (22528-417791, default 417791):

Using default value 417791

Command (m for help): p

Disk /dev/sdb: 213 MB, 213909504 bytes

64 heads, 32 sectors/track, 204 cylinders, total 417792 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x8dde1fa5

   Device Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048       22527       10240   83  Linux

/dev/sdb2           22528      417791      197632    5  Extended

Command (m for help): n    

Command action

   l   logical (5 or over)

   p   primary partition (1-4)

l

First sector (24576-417791, default 24576):

Using default value 24576

Last sector, +sectors or +size{K,M,G} (24576-417791, default 417791): +50M  #大小50MB

Command (m for help): p

Disk /dev/sdb: 213 MB, 213909504 bytes

64 heads, 32 sectors/track, 204 cylinders, total 417792 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x8dde1fa5

   Device Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048       22527       10240   83  Linux

/dev/sdb2           22528      417791      197632    5  Extended

/dev/sdb5           24576      126975       51200   83  Linux

Command (m for help): n

Command action

   l   logical (5 or over)

   p   primary partition (1-4)

l

First sector (129024-417791, default 129024):

Using default value 129024

Last sector, +sectors or +size{K,M,G} (129024-417791, default 417791): +50M  #大小50MB

Command (m for help): p

Disk /dev/sdb: 213 MB, 213909504 bytes

64 heads, 32 sectors/track, 204 cylinders, total 417792 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x8dde1fa5

   Device Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048       22527       10240   83  Linux

/dev/sdb2           22528      417791      197632    5  Extended

/dev/sdb5           24576      126975       51200   83  Linux

/dev/sdb6          129024      231423       51200   83  Linux

實例1-5              增加硬盤200MB,硬盤創建一個分區掛載到/data目錄

1個里程碑-創建分區

Command (m for help): p

Disk /dev/sdb: 213 MB, 213909504 bytes

64 heads, 32 sectors/track, 204 cylinders

Units = cylinders of 2048 * 512 = 1048576 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x8dde1fa5

 

   Device Boot      Start         End      Blocks   Id  System

 

Command (m for help): n

Command action

   e   extended

   p   primary partition (1-4)

p

Partition number (1-4): 1

First cylinder (1-204, default 1):

Using default value 1

Last cylinder, +cylinders or +size{K,M,G} (1-204, default 204):

Using default value 204

 

Command (m for help): p

 

Disk /dev/sdb: 213 MB, 213909504 bytes

64 heads, 32 sectors/track, 204 cylinders

Units = cylinders of 2048 * 512 = 1048576 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x8dde1fa5

 

   Device Boot      Start         End      Blocks   Id  System

/dev/sdb1               1         204      208880   83  Linux

 

Command (m for help): w

The partition table has been altered!

 

Calling ioctl() to re-read partition table.

Syncing disks.

 

[root@oldboyedu50-lnb ~]# fdisk -l /dev/sdb

Disk /dev/sdb: 213 MB, 213909504 bytes

64 heads, 32 sectors/track, 204 cylinders

Units = cylinders of 2048 * 512 = 1048576 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x8dde1fa5

 

   Device Boot      Start         End      Blocks   Id  System

/dev/sdb1               1         204      208880   83  Linux

2個里程碑-通知系統sdb磁盤分區表變化

partprobe /dev/sdb

3個里程碑-創建文件系統(格式化)

make filesystem

mkfs

            #對每個房間裝修(磁盤分區)

mkfs.ext4  /dev/sdb1

4個里程碑-關閉磁盤自動檢查

This filesystem will be automatically checked every 38 mounts or

這個磁盤分區會被自動檢查(沒掛載38次或每隔180天)

180 days, whichever comes first.  Use tune2fs -c or -i to override.

自己創建的磁盤分區關閉磁盤檢查.

[root@oldboyedu50-lnb ~]# tune2fs -c 0 -i 0 /dev/sdb1

tune2fs 1.41.12 (17-May-2010)

Setting maximal mount count to -1

Setting interval between checks to 0 seconds

-c  0  關閉 每掛載多少次進行一次磁盤檢查

-i  0  關閉 每隔180天進行一次磁盤檢查

5個里程碑-掛載

[root@oldboyedu50-lnb ~]# mkdir -p /data

[root@oldboyedu50-lnb ~]# mount  /dev/sdb1  /data/

[root@oldboyedu50-lnb ~]# df -h

Filesystem      Size  Used Avail Use% Mounted on

/dev/sda3        19G  1.5G   17G   9% /

tmpfs           931M     0  931M   0% /dev/shm

/dev/sda1       190M   40M  141M  22% /boot

/dev/sdb1       194M  1.8M  182M   1% /data

6個里程碑-永久掛載

#方法1

/etc/rc.local

#方法2

/etc/fstab  開機自動掛載

UUID=cf634253-6c41-4771-87b7-e86afb9284a7   /       ext4      defaults     1     1

UUID=8519938a-dccb-4eb5-bbbc-4fd22f9f99fe   /boot   ext4      defaults     1     2

UUID=f70549a5-ec74-4cd1-99ba-49eb175e712d   swap    swap      defaults     0     0

tmpfs                                  /dev/shm   tmpfs    defaults        0     0

devpts                                 /dev/pts   devpts   gid=5,mode=620  0     0

sysfs                    /sys     sysfs      defaults    0          0

proc                     /proc    proc       defaults    0          0

設備名稱(分區)      載點(目錄)    文件系統類型  掛載參數  是否進行備份   是否開機磁盤檢查

#/dev/cdrom           /mnt              iso9660       defaults        0                 0

/dev/sdb1               /data             ext4          defaults        0                 0 

實例1-6              故障案例: java程序佔用大量內存,開始使用swapswap不足

創建一個文件成爲swap

[root@oldboyedu50-lnb ~]# free -h

             total       used       free     shared    buffers     cached

Mem:          1.8G       158M       1.7G       240K        11M        51M

-/+ buffers/cache:        95M       1.7G

Swap:         767M         0B       767M

1.創建一個100M的文件

[root@oldboyedu50-lnb ~]# dd   if=/dev/zero           of=/tmp/100m    bs=1M              count=100

                               input                  output          block

                               file                   file            size

[root@oldboyedu50-lnb ~]# file /tmp/100m

/tmp/100m: data

2.創建swap 讓這個文件成爲swap(格式化)

[root@oldboyedu50-lnb ~]# mkswap /tmp/100m

mkswap: /tmp/100m: warning: don't erase bootbits sectors

        on whole disk. Use -f to force.

Setting up swapspace version 1, size = 102396 KiB

no label, UUID=531f48e2-be07-4f24-86e5-dfe9ed549b16

 

[root@oldboyedu50-lnb ~]# file /tmp/100m

/tmp/100m: Linux/i386 swap file (new style) 1 (4K pages) size 25599 pages

 

3.激活swap分區

swapon /tmp/100m

[root@oldboyedu50-lnb ~]# swapon /tmp/100m

[root@oldboyedu50-lnb ~]# free  -h

             total       used       free     shared    buffers     cached

Mem:          1.8G       264M       1.6G       240K        11M       153M

-/+ buffers/cache:        98M       1.7G

Swap:         867M         0B       867M

 

4.永久增加

/etc/rc.local

/etc/fstab

#/tmp/100m               swap                    swap    defaults        0 0

print    顯示分區信息

parted /dev/sdc

mktable mklabel  創建磁盤分區表 

                 gpt

                 msdos(mbr)

mkpart           創建分區

rm               刪除分區

q                退出不保存

 

實例1-7              企業創建分區

1.創建分區表

(parted) mktable  gpt

(parted) p                                                               

Model: VMware, VMware Virtual S (scsi)

Disk /dev/sdc: 214MB

Sector size (logical/physical): 512B/512B

Partition Table: gpt

 

Number  Start  End  Size  File system  Name  Flags

 

2.創建分區

(parted) mkpart  primary  0  10

Warning: The resulting partition is not properly aligned for best performance.

Ignore/Cancel? i                                                          

(parted) p                                                               

Model: VMware, VMware Virtual S (scsi)

Disk /dev/sdc: 214MB

Sector size (logical/physical): 512B/512B

Partition Table: gpt

 

Number  Start   End     Size    File system  Name     Flags

 1      17.4kB  10.0MB  9983kB               primary

非交互式創建分區

 parted  /dev/sdc  p

 parted  /dev/sdc  mktable gpt

 parted  /dev/sdc  mkpart primary 0 10 ignore

 parted  /dev/sdc  mkpart primary 10 20

 parted  /dev/sdc  p

第2章 服務器

2.1 物理服務器

物理服務器是指獨立服務器,也就是指物理上的單獨服務器,物理服務器的構成包括處理器、硬盤、內存、系統總線等,和通用的計算機架構類似,但是由於需要提供高可靠的服務,因此在處理能力、穩定性、可靠性、安全性、可擴展性、可管理性等方面要求較高。

2.2 雲服務器:

雲服務器(Elastic Compute Service, ECS)是一種簡單高效、安全可靠、處理能力可彈性伸縮的計算服務。其管理方式比物理服務器更簡單高效。用戶無需提前購買硬件,即可迅速創建或釋放任意多臺雲服務器

國內:阿里雲 騰訊 華爲(國企) ucloud

國外:AWS(亞馬遜)

2.3 命令記錄

dd  複製或轉換數據內容

[root@oldboyedu50-lnb ~]# dd if=/dev/sda  of=/tmp/mbr.bin   bs=512  count=1

1+0 records in

1+0 records out

512 bytes (512 B) copied, 0.000194218 s, 2.6 MB/s

[root@oldboyedu50-lnb ~]# ll /tmp/mbr.bin

-rw-r--r-- 1 root root 512 Aug 16 08:53 /tmp/mbr.bin

od 查看二進制文件的內容

od -xa  /tmp/mbr.bin

diff 比較文件內容

diff CentOS-Base.repo  CentOS-Base.repo.backup

vimdiff CentOS-Base.repo  CentOS-Base.repo.backup

yum clean all

清空yum緩存

第3章 配置linux yum

3.1 查看系統當前的yum

[root@oldboy50-01 ~]# yum   repolist

Loaded plugins: fastestmirror, security

Loading mirror speeds from cached hostfile

 * base: mirrors.aliyun.com

 * extras: mirrors.aliyun.com

 * updates: mirrors.aliyun.com

repo id             repo name                                          status

base                CentOS-6 - Base - mirrors.aliyun.com                6,713

epel                Extra Packages for Enterprise Linux 6 - x86_64     12,518

extras              CentOS-6 - Extras - mirrors.aliyun.com                 31

updates             CentOS-6 - Updates - mirrors.aliyun.com               113

repolist: 19,375

3.2 把系統默認的yum源改爲阿里雲(從阿里雲下載軟件)

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo

3.3 增加yumepel

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo

3.4 安裝 cowsay  sl

[root@oldboy50-01 ~]# yum -y install cowsay sl

Loaded plugins: fastestmirror, security

Setting up Install Process

Loading mirror speeds from cached hostfile

 * base: mirrors.aliyun.com

 * extras: mirrors.aliyun.com

 * updates: mirrors.aliyun.com

base                                                                      | 3.7 kB     00:00    

epel                                                                      | 3.2 kB     00:00    

Not using downloaded repomd.xml because it is older than what we have:

  Current   : Thu Aug 16 03:51:57 2018

  Downloaded: Wed Aug 15 01:41:28 2018

extras                                                                    | 3.4 kB     00:00    

updates                                                                   | 3.4 kB     00:00    

Package cowsay-3.03-8.el6.noarch already installed and latest version

Package sl-5.02-1.el6.x86_64 already installed and latest version

Nothing to do

3.5 安裝iotop htop  iftop

[root@oldboy50-01 ~]# yum -y install iotop htop iftop

Loaded plugins: fastestmirror, security

Setting up Install Process

Loading mirror speeds from cached hostfile

 * base: mirrors.aliyun.com

 * extras: mirrors.aliyun.com

 * updates: mirrors.aliyun.com

Package iotop-0.3.2-9.el6.noarch already installed and latest version

Package htop-1.0.3-1.el6.x86_64 already installed and latest version

Package iftop-1.0-0.14.pre4.el6.x86_64 already installed and latest version

Nothing to do

第4章 請寫出常見的查看系統性能的命令

監控項目:cpu,mem,disk,cpu溫度,磁盤IORAID,負載、網絡

cpu: lscpu /proc/cpuinfo

4.1 ps aux  VSZ RSS區別

虛擬內存=物理內存+swap

VSZ  virutal size 進程所佔的虛擬內存大小(物理+swap

RSS               進程所佔用的物理內存大小

查看raid信息工具:megacli     ***

查看硬件信息工具:ipmitool    *** (溫度  風扇轉數)

第5章 文件系統:

組織管理文件方法

文件在磁盤上面如何存放

不同的系統會有不同的文件系統

inode: 文件屬性

block: 文件內容/文件名

inode信息 block信息存放位置 superblock的地方 超級塊

dumpe2fs -h  只顯示超級塊的內容

5.1 常見的文件系統及應用場景

儘量使用系統默認的文件系統

reiserfs大量小文件業務首選reiserfs100K以內), 單獨安裝。

xfs有的門戶的數據庫MySQL業務會選擇xfs

ext4 視頻下載,流媒體,數據庫,小文件業務也OK,可以用默認的。

ext2 沒有日誌,藍汛、網宿的cache業務,CDN網站加速服務的。  緩存

Ext4/Reiserfs可以作爲SSD文件系統,但未對SSD做優化,不能充分發揮SSD性能,並影響SSD使用時間。

swap 交換分區


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章