磁盤存儲和文件系統

磁盤存儲和文件系統:

磁盤設備的文件命名:/dev/dev_file
虛擬磁盤:/dev/vd
磁盤標識: /dev/sda,/dev/sdb……
磁盤分區:/dev/sda1,/dev/sdb2……

chs 磁盤
sector 扇區 512bytes
track 磁道
head 磁頭
cylinder柱面

使用磁盤: 分區
創建文件系統:格式化
掛載:分配目錄名

hexdump -C -n 512 /dev/sda
查看sda磁盤里前512個字節

分區:
兩種方式:MBR,GPT
MBR:使用32位表示扇區數,分區不查過2T,按柱面分區。
4個分區,3個主分區+1個擴展分區(N個邏輯分區)

lsblk 列出塊設備
-f 查看塊設備信息

partprobe 通知內核重新讀取硬盤分區表(同步分區)(centos7)
centos6:通知內核重新讀取硬盤分區表
新增分區用(可用來同步分區) partx -a /dev/sdc1 ;
kpartx -a /dev/DEVICE -f: force
刪除分區用 partx -d –nr /dev/DEVICE

parted (即時生效,小心使用)
-l 列出分區信息

磁盤存儲和文件系統操作步驟:

1、先創建硬盤。(sdb)
2、使用fdisk創建分區。 (fdisk /dev/sdb)
3、使用mkfs.ext4(xfs)創建文件系統。 (mkfs.xfs /dev/sdb1)(blkid 查看UUID)
4、使用mount掛載。 (mount /dev/sdb1 /mnt/zzz/) 把/dev/sdb1掛載到/mnt/zzz目錄
5、使用blkid查看UUID,再寫入vim /etc/fstab下。
6、使用lsblk ; df 查看。

創建分區使用: fdisk 創建MBR分區
gdisk 創建GPT分區
parted 高級分區操作

分區工具:fdisk、gdisk
fdisk -l 查看分區 (后面跟磁盤)
fdisk /dev/sda 管理分區
gdisk /dev/sda 類似fdisk的GPT分區工具

p 分區列表 ?
t 更改分區類型 ?
n 創建新分區 ?
d 刪除分區 ?
v 校驗分區 ?
u 轉換單位 ?
w 保存并退出 ?
q 不保存并退出

echo -e “n\np\n\n\n+2G\nw\n” | fdisk /dev/sdb
自動創建一個2G的分區(可用于腳本)

cat /proc/partations 查看內核是否已經識別新分區

創建文件系統:mkfs (ext4,xfs,btrfs,vfat)
mkfs -t
-f 強制創建文件系統
mkfs.xfs /dev/sdb1

創建ext文件系統:
mke2fs: ext系列文件系統專用管理工具
-t {ext2|ext3|ext4}
-b {1024|2048|4096}
-L ‘LABEL’
-j: 相當于 -t ext3
mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3
-i #: 為數據空間中每多少個字節創建一個inode;此大小 不應該小于block的大小
-N #:指定分區中創建多少個inode
-I 一個inode記錄占用的磁盤空間大小,128—4096
-m #: 默認5%,為管理人員預留空間占總空間的百分比
-O FEATURE[,…]:啟用指定特性
-O ^FEATURE:關閉指定特性

mknod 創建相似文件
mknod /文件 b 8 0

blkid 查看塊設備屬性信息
-U UUID: 根據指定的uuid來查找對應的設備
-L LABEL: 根據指定的LABEL來查找對應的設備
e2label 管理ext系列文件系統的LABEL

findfs 查找分區

tune2fs 重新設定ext系列文件系統可調整參數的值
tune2fs -l /dev/sda1
-l 查看指定文件系統超級塊信息
-L ‘LABEL’ : 修改卷標
-m #:修預留給管理員的空間百分比
-j: 將ext2升級為ext3
-O 文件系統屬性啟用或禁用, –O ^has_journal
-o: 調整文件系統的默認掛載選項,–o ^acl
-U UUID: 修改UUID號

dumpe2fs: /dev/sda1 查看塊大小
塊分組管理,32768塊
-h 查看超級塊信息,不顯示分組信息
e2fsck : ext系列文件專用的檢測修復工具
-y 自動回答為yes
-f 強制修復
ejeck 彈出光驅
free 查看內存大小
fuser 查看掛載文件

掛載mount: 將額外文件系統與根文件系統某現存的目錄建立起關聯關系,
進而使得此目錄作為其他文件訪問入口的行為。
卸載:為解除此關聯關系的過程 ?
把設備關聯掛載點:mount Point mount ?
卸載時:可使用設備,也可以使用掛載點 umount ?
掛載點下原有文件在掛載完成后會被臨時隱藏 ?
掛載點目錄一般為空

用mount命令掛載文件系統 :
?掛載方法:mount DEVICE MOUNT_POINT ?
mount:通過查看/etc/mtab文件顯示當前已掛載的所有設備 ?
mount [-fnrsvw] [-t vfstype] [-o options] device dir
device:指明要掛載的設備;
(1) 設備文件:例如/dev/sda5
(2) 卷標:-L ‘LABEL’, 例如 -L ‘MYDATA’
(3) UUID, -U ‘UUID’:例如 -U ‘0c50523c-43f1-45e785c0-a126711d406e’
(4) 偽文件系統名稱:proc, sysfs, devtmpfs, configfs
dir:掛載點
事先存在;建議使用空目錄
進程正在使用中的設備無法被卸載
mount :
-t vsftype:指定要掛載的設備上的文件系統類型 ?
-r: readonly,只讀掛載 ?
-w: read and write, 讀寫掛載 ?
-n: 不更新/etc/mtab,mount不可見 ?
-a:自動掛載所有支持自動掛載的設備(定義在了/etc/fstab文件中,且掛載選 項中有auto功能) ?
-L ‘LABEL’: 以卷標指定掛載設備 ?
-U ‘UUID’: 以UUID指定要掛載的設備 ?
-B, –bind: 綁定目錄到另一個目錄上 ?
查看內核追蹤到的已掛載的所有設備 cat /proc/mount

-o options :(掛載文件系統的選項),多個選項使用逗號分隔
async:異步模式
sync:同步模式,內存更改時,同時寫磁盤
atime/noatime:包含目錄和文件
diratime/nodiratime:目錄的訪問時間戳
auto/noauto:是否支持自動掛載,是否支持-a選項
exec/noexec:是否支持將文件系統上運行應用程序
dev/nodev:是否支持在此文件系統上使用設備文件
suid/nosuid:是否支持suid和sgid權限
remount:重新掛載
ro:只讀
rw:讀寫
user/nouser:是否允許普通用戶掛載此設備,/etc/fstab使用
acl:啟用此文件系統上的acl功能
loop: 使用loop設備
default:相當于rw,suid,dev,exec,auto,nouser,async

findmnt /dev/sd…… 查看掛載情況
lsof ,fuser -v 查看正在訪問指定文件系統的進程
fuser -km 終止所有正在訪問指定文件系統的進程

umount 卸載

etc/fstab 查看,定義文件系統(UUID……)
defaults 掛載選項

轉儲頻率:0:(不做備份) 1:(每天轉儲) 2:(每隔一天轉儲)

處理交換文件和分區:
交換分區是系統RAM的補充
基本設置包括:創建交換分區或文件
使用mkswap寫入特殊簽名
在etc/fstab文件中添加適當的條目
使用swapon -a激活交換空間
掛載交換分區:
swapon 啟用
-a 激活所有交換分區
-p 指定優先級
swapoff 禁用

掛載點通常在/media 或 /mnt 下

使用光盤: 手動掛載 mount /dev/cdrom /mnt/
創建ISO文件:cp /dev/cdrom /root/centos7.iso (先備份)
mkisofs -r -o /root/etc.iso /etc

查看USB設備是否識別 lsusb
被內核探測為SCSI設備
圖形環境自動掛載:/run/media/<user>/<label>
手動掛載:mount /dev/sdb1 /mnt

df : 文件系統空間占用等信息的查看工具
-H 以1000為單位
-T 文件系統類型
du : 查看某目錄總體空間占用狀態

dd : 復制,備份文件(指定路徑)
dd if=/etc/shell of=/data/zzz 把shell文件全盤備份到zzz文件

dd if=/dev/sdx | gzip >/data/zzz 備份sdx全盤數據,并利用gzip壓縮,保存到zzz文件

恢復:
dd if=/data/zzz of=/etc/shell 將備份文件zzz恢復到指定盤shell

gzip -dc /data/zzz | dd of=/dev/sdxv 將壓縮的備份文件恢復到指定盤

dd if=/dev/mem of=/root/mem.bin bs=1024 將內存里的數據拷貝到root目錄下得mem.bin文件

dd if=/dev/cdrom of=/root/cd.iso 拷貝光盤數據到root文件夾下,并保存為cd.iso文件

dd if=/dev/urandom of=/dev/sda1 利用隨機數開填充硬盤,銷毀數據,/dev/sda1將無法掛載……

dd if=/dev/sda of=/dev/sda 修復硬盤(長時間放置不用)

創建swap 分區或文件:
1、fdisk /dev/sdb1 t 82
dd if=/dev/zero of=/swapfile bs=1M count=2048
2、mkswap /dev/sdb1 -L swap_sdb1
3、vim /etc/fstab
UUID=xxx swap swap defaults,pri=100 0 0
/swapfile swap swap defaults 0 0
4、swapon -a
5、swapon -s 查看生效 free -h
6、swapoff /dev/sdb1 禁用swap分區

遷移/home到新分區上:
1 備份/home/
2 fdisk
3 mkfs.ext4 /dev/sdb1 -L /home
4 mkdir /mnt/home;mount /dev/sdb1 /mnt/home
5 init 1 網斷
6 cp -av /home/* /mnt/home
7 rm -rf /home/*
8 vim /etc/fstab
UUID=xxx /home ext4 defaults 0 0
mount -a
ls /home /mnt/home -l
9 umount /mnt/home;rm -rf /mnt/home
10 init 5

RAID :
提高IO能力:磁盤并行讀寫
提高耐用性:磁盤冗余來實現
級別:多塊磁盤組織在一起的工作方式有所不用
RAID實現的方式:
外接式磁盤陣列:通過擴展卡提供適配能力
內接式RAID: 主板集成RAID控制器(安裝OS前在BIOS里配置)
軟件RAID: 通過OS實現

RAID級別:RAID-0; RAID-1; RAID-4; RAID-5; RAID-6; RAID-10; RAID-01; RAID-50;

mdadm: 為軟RAID提供管理界面
mdadm -C -n /dev/md0……
-C 創建模式
-n #: 使用#個塊設備來創建此RAID
-l #:指明要創建的RAID的級別
-a {yes|no}:自動創建目標RAID設備的設備文件
-c CHUNK_SIZE: 指明塊大小,單位k
-x #: 指明空閑盤的個數
-D 顯示RAID的詳細信息
-A 裝配
-F 監控
-f 標記指定磁盤為損壞
-a 添加磁盤
-r 移除磁盤

使用mdadm創建并定義RAID設備 :
mdadm -C /dev/md0 -a yes -l 5 -n 3 -x 1 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

用文件系統對每個RAID設備進行格式化: mke2fs -j /dev/md0

使用mdadm檢查RAID設備的狀況: mdadm –detail|D /dev/md0

增加新的成員: mdadm –G /dev/md0 –n4 -a /dev/sdf1

邏輯卷管理器(LVM) :
允許對卷進行方便操作的抽象層,包括重新設定文件系統的大小。
允許在多個物理設備間重新組織文件系統:
將設備指定為物理卷。
用一個或多個物理卷來創建一個卷組。
物理卷是用固定大小的物理區域(physicsl Extent, PE)來定義的。
在物理卷上創建邏輯卷是由物理區域(PE)組成。
可以在邏輯卷上創建文件系統。

操作步驟:(1-4 其實就是分區)

1、先用fdisk在磁盤分區。(fdisk /dev/sdb)(fdisk /dev/sdc)(創建完后使用p查看分區,然后使用t將分區ID改成8e)(linux LVM 邏輯卷管理)

2、使用pvcreate先把普通磁盤或分區變成物理卷。(pvcreate /dev/sdb1)(pvcreate /dev/sdc1)

3、使用vgcreate把若干個物理卷加到卷組(創建卷組vg0)。(vgcreate -s 16M vg0 /dev/sdb1 /dev/sdc1)( -s 指定PE的大小)

4、再把卷組中分出一塊空間命名成邏輯卷(創建邏輯卷lv0)。(lvcreate -n lv0 -L 5G vg0)(-l 是按PE來設置分區大小)

5、使用mkfs.創建一下文件系統(格式化)(mkfs.xfs /dev/vg0/lv0)

6、掛載。使用blkid查看UUID,打開vim /etc/fstab保存在文件中。(在使用mount /dev/vg0/lv0 /mnt/ljj0)

設備名:/dev/dm-0……

PV管理工具(物理卷):
pvs : 查看現有的物理卷
pvdisplay:查看詳細物理卷信息

創建pv(物理卷) : pvcreate /dev/sdb1

vg管理工具(卷組):
顯示卷組 vgs (vgdisplay:查看詳細卷組信息)
管理卷組 vgcreate -s 16M vg0 /dev/sdb1
刪除卷組 先pvmove,再vgremove

lv管理工具(邏輯卷):
顯示邏輯卷 lvs (lvdisplay: 查看詳細邏輯卷信息)
創建邏輯卷 lvcreate -L 256M -n lv0 vg0
刪除邏輯卷 lvremove /dev/
重設文件系統大小 fsadm
resize2fs

擴展邏輯卷:lvextend -L
resize2fs
lvresize
縮減邏輯卷:(xfs文件系統不能縮減centos7)
umount
e2fsck -f
resize2fs
lvreduce -L

resize2fs /dev/sd…… 重新刷新

創建邏輯卷示例:

? 創建物理卷 pvcreate /dev/sda3 ?
把物理卷添加到卷組 vgcreate vg0 /dev/sda3 ?
從卷組創建邏輯卷 lvcreate -L 256M -n lv0 vg0
mke2fs -j /dev/vg0/data
mount /dev/vg0/data /mnt/data

邏輯卷管理器快照:

?為現有邏輯卷創建快照 lvcreate -l 64 -s -n data-snapshot -p r /dev/vg0/data ?
掛載快照 mkdir -p /mnt/snap
mount -o ro /dev/vg0/data-snapshot /mnt/snap ?
恢復快照 umount /dev/vg0/data-snapshot
umount /dev/vg0/data
lvconvert –merge /dev/vg0/data-snapshot
刪除快照 umount /mnt/databackup
lvremove /dev/vg0/databackup

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/98956

(0)
kar.98k_kar.98k_
上一篇 2018-05-20
下一篇 2018-05-20

相關推薦

  • 文件管理

    window系統是多根架構,linux是多根架構 2.手動掛載光盤 mount /dev/sr0 /mnt (只有root用戶才能使用) /proc 看到是內存中的數據,看的都是磁盤上不存在的,修改里面的內容會立即生效。 echo ‘- – -’ > /sys/class/scsi_host/host2/scan 新加的硬盤不重啟也能被識別…

    Linux筆記 2018-07-29
  • puppet實現nginx反代tomcat+memcached

    puppet實現nginx反代tomcat+memcached

    2018-04-16
  • 喜歡上find

    喜歡上findfind :查找目錄下的文件。find 命令其實很好記,會用了,那簡直太好玩太方便了-newer查找更改時間比指定文件新的文件-type 按類型查找 (d f l s b c p )D-name 按文件名查找-mtime 按修改時間查找( +2 -2 2)-size 按文件大小查找-perm 按文件權限查找-user 按文件屬主來查找-nous…

    2018-04-18
  • shell練習

    1、檢查磁盤使用率,如果分區利用率大于80%(此處實驗以15%)就執行警報   echo “The disk check script will be starting”sleep 0.5 disk_used=`df |grep “^/dev/sd”|tr -s ” ” %|c…

    2018-05-07
  • LAMP、php、mariadb

    LAMP: a:apache m:mariadb、mysql p:php,perl,python LAMMP:memcached   靜態資源:靜態內容,客戶端從服務器獲得的資源的表現形式與源文件相同; 動態資源:通常是程序文件,需要在服務器執行之后,將執行的結果返回給客戶端; CGI:common gateway interface通用網關接口 …

    Linux筆記 2018-05-21
  • 與時間查看有關的命令及參數用法

    chattr 改變一個文件的隱藏屬性-R 遞歸更改子目錄與文件的屬性-V 顯示詳細信息-f 忽略大部分錯誤信息-v version 設置文件的的檔案號碼mode 設置文件的隱藏屬性+/-[acdeijstuACDST]**** A 文件的atime不可修改這樣可以減少磁盤的IO,但用touch可以刷新jfujS 同步硬盤的IO選項 類似synca 只能追加 …

    Linux筆記 2018-04-15
欧美性久久久久