fdisk,sfdisk,part
fdisk <= 15個分區
fdisk -l [DEVICE]
fdisk [DEVICE]fdisk /dev/sda
交互式命令:
d:刪除一個分區
n:新建一個分區
p:顯示當前的分區信息
w:保存並退出
q:不保存退出
l:各分區類型所對應的System ID;
83:Linux
82:Linux Swap,交換分區
8e:LVM
fd:Soft Raid
t:修改指定分區的System ID;
# cat /proc/partitions 查看內核識別的分區信息
partprobe [DEVICE]: RHEL5讓內核重新讀取硬盤分區表
partx -a [PARTITION] DEVICE: RHEL6讓內核重新讀取硬盤分區表
partx -a /dev/sda4 /dev/sda
下一步:格式化分區,用於創建文件系統
Linux,mkfs 格式化分區
mkfs -t fstyp /dev/partmkfs -t ext4 /dev/sda4
要點:1、文件系統必須被內核支持才能使用,即內核有相應的內核模塊,或者已經將之整合進內核
2、要有相應文件系統創建工具,通常是mkfs,fstype
RHEL5:ext3
RHEL6:ext4
mkfs -t ext4 = mkfs.ext4 = mke2fs -t ext4 =
mkfs -t ext3 = mkfs.ext3 = mke2fs -j = mke2fs -t ext3
mkfs -t ext2 = mkfs.ext2 = mke2fs = mke2fs -t ext2
配置文件:/etc/mke2fs.conf,用戶設定默認特性,及各文件系統的特有的特性
mke2fs -t {ext2|ext3|ext4}
-b {1024|2048|4096}:塊大小
塊大小取決於CPU對內存頁框大小的支持,x86系統默認頁框大小爲4k
-L label:設定卷標
-m N:預留給管理使用的塊所佔據總體空間的比例:爲N%
-r N:預留給管理使用的塊的個數:爲N
-E:設定文件系統的擴展屬性
tune2fs:
-l:顯示文件系統超級塊信息tune2fs -l /dev/sda4
-L label:重新設定卷標
-m N:調整預留給管理使用的塊所佔據總體空間的比例:改爲N%
-r N:調整預留給管理使用的塊的個數:爲N
-o:設定掛載默認選項
-O:設定文件系統默認特性
-E:調整文件系統的擴展屬性
tune2fs -l DEVICE | grep "Block size":要顯示塊大小
e2abel:顯示或設定卷標:
e2abel DEVICE [Volume_label]
blkid DEVICE:顯示設備的UUID及文件系統類型
mount 掛載 mount [-t fstype] DEVICE MOUNT_POINT
-o:用於指定掛載選項,常用的掛載選項
ro:只讀掛載
rw:讀寫,默認即爲讀寫
noatime:關閉 更新 訪問時間
auto:是否能夠由"mount -a"掛載
defaults:相當於rw,suid,dev,exec,auto,nouser,async,and relatime
sync:同步寫入
async:異步寫入
dev:是否允許在這個文件系統下使用設備文件
nodev
remount:重新掛載
loop:本地迴環設備
-n:掛載文件系統時,不更新/etc/mtab文件
-r:相當於“-o ro”,只讀掛載
mount -o remount,other_options DEVICE
mount -o loop,other_options DEVICE MOUNT_POINT用於掛載迴環設備
monut -t iso9660 -o loop /root/CentOS-6.6-x86_64-bin-DVD1.iso /mnt/cdrom #把CentOS...掛載到cdrom下
mount [-t fstype] LABEL="卷標" MOUNT_POINT
mount [-t fstype] UUID="UUID" MOUNT_POINT
# mount #用這個命令會顯示當前系統掛載的所有設備
umount DEVICE
# umount /dev/sdb3
umount MOUNT_POINT
# umount /media
掛載之後,原有的數據會被隱藏,因此不能掛在到系統常用目錄上,將掛載卸載之後,原有的數據纔會顯示
卸載之時,要確保沒有進程正在訪問掛載的設備,否則,無法卸載
/etc/fstab:系統開機會自動掛載的文件系統
fuser [MOUNT_POINT]:查看正在訪問某掛載點的進程
# fuser /media/
fuser -km [MOUNT_POINT]:強行關閉正在訪問此掛載點的進程
# fuser -km /media/
Linux的交換分區:swap
必須是獨立分區,獨立文件系統
交換分區多大?
科學計算類的服務器:交換內存可以儘可能大,比如爲物理內存的2倍
應用程序類的服務器:交換內存儘可能小,比如只給1G
物理內存小於等於2G,swap=memory*2
2G<memory<4G, swap=memory*1.5
memory>4G, swap=4G
如何查看內存大小:
free顯示系統使用和空閒的內存情況,包括物理內存、交互區內存(swap)和內核緩衝區內存
-m:內存空間大小換算爲MB
-g:內存空間大小換算爲GB
shared:共享內存
buffer:緩衝
cached:緩存
mkswap DEVICE:創建交換分區
-L label 設定標籤
# mkwsap -L NewSwap /dev/sda6
swapon啓用交換分區:
swapon DEVICE:啓用指定交換分區
# swapon /dev/sda6
swapon -a 啓用所有交換分區
swapoff DEVICE 禁用交換分區
swapoff -a
開機自動啓用交換分區,可定義於/etc/fstab
DEVICE swapswap defaults 0 0
掛載點:swap
文件系統類型:swap
dumpe2fs:輸出ext文件系統信息
-h:顯示超級塊相關信息
du:disk usage
-s:summary,顯示某指定路徑下所有文件的大小之和
-h:human-readable
df:disk free
-l:只顯示本地文件系統的相關信息
-h:
-P:posix兼容的風格顯示
-i:顯示inode使用信息
新建硬盤
創建分區
修改分區類型 t8e
纔可以創建物理卷pvcreate /dev/sdb{1,2}
創建卷組vgcreate myvg /dev/sdb{1,2}
創建邏輯卷lvcreate -L 10g -n mylv myvg-L 指定大小-n 指定邏輯卷的名稱
查看邏輯卷lvs
格式化mkfs.ext4 -L Mydata /dev/myvg/mylv
LVM:Logical Volume
pv:物理卷 vg:卷組 lv:邏輯卷
1、邏輯卷創建
PV-->VG-->LV
pvcreare /dev/sdb5
pvdisplay /dev/sdb5
pvs
vgcreate VGNAME /dev/sdb5 ...
-s PE
vgdisplay
vgs
lvcreate -L SIZE -n -LV_NAME VG_NAME
-l PE的個數
lvdisplay
lvs
邏輯卷的設備文件:/dev/VG_NAME/LV_NAME
/dev/mapper/VG_NAME-LV_NAME
/dev/mapper/testvg-mylv
2、擴展VG
首先準備好一個PV
使用vgextend命令即可完成擴展:vgextend VG_NAME /PATH/TO/PV
3、縮減VG
確定要移除的PV
將此PV上的數據轉移至其他PV:pvmove /path/to/pv
從卷組中將此PV移除:vgreduce VG_NAME /path/to/pv
4、擴展邏輯卷
確定擴展多大? 5G: --> 8G
確定當前邏輯卷所在的卷組有足夠的空閒空間:
擴展:
1、物理邊界:lvextend -L [+]SIZE /path/to/pv
2、邏輯邊界:resizefs /path/to/device
文件系統檢測:
fsck
e2fsck [-t fs_type] [-f] [-p] /path/to/device
5、縮減邏輯卷
確定縮減爲多大?前提是:至少能容納原有的所有數據。
8G --> 3G
縮減:
1、卸載並強行檢測文件系統:e2fsck -f
2、邏輯邊界:resize2fs /path/to/device SIZE
3、物理邊界:lvreduce -L [-]SIZE /path/to/lv
6、快照卷
lvcreate
-s:快照卷
-p r:限制快照卷爲只讀訪問
lvcreate -L SIZE -s -p r -n LV_NAME /path/to/lv
7、移除邏輯卷:
lvremove /path/to/lv
8、移除卷組
vgremove /path/to/vg