fdisk [DEVICE]  fdisk是一个交互式命令:
d: 删除一个分区
n: 新建一个分区
p: 显示当前的分区信息
w: 保存退出
q: 不保存退出
l: 各分区类型所对应的System ID;
83:Linux
82:Linux Swap,交换分区
8e: LVM
fd: Soft Raid
t: 修改指定分区的System ID;

查看内核识别的分区信息:
cat /proc/partitions
 
RHEL5让内核重新读取硬盘分区表:
partprobe [DEVICE]

RHEL6让内核重新读取硬盘分区表:
partx -a [PARTITION] DEVICE
下一步:格式化分区,用于创建文件系统

Linux, mkfs
mkfs -t fstype /dev/part
RHEL5:ext3
RHEL6:ext4
配置文件:/etc/mke2fs.conf 用于设定默认特性,及各文件系统的特有的特性。
mke2fs -t {ext2|ext3|ext4}
-b {1024|2048|4096} 块大小取决cpu对内存页框大小的支持,x86系统默认页框大小为4k
-L 指定卷标
-m # 预留给管理空间大小的百分比
显示块大小:
tune2fs -l DEVICE | grep “Block size”
tune2fs:
-L : 修改卷标
-m #:调整预留空间百分比
-r #:调整预留块个数
-o :设定挂载默认选项
-O : 设定文件系统默认特性
-E :调整文件系统的扩展属性

e2label:显示或设定卷标
e2label DEVICE [volume _label]

filesystem:一个软件 在内核中实现
要点:
1、文件系统必须被内核支持才能使用,即内核有相应的内核模块,或者已经将之整合进内核;
2、要有相应文件系统同创建工具,这通常是mkfs.fstype

mkfs -t ext2 = mkfs.ext2 = mke2fs
mkfs -t ext3 = mkfs.ext3 = mke2fs -j = mke2fs -t ext3
mkfs -t ext4 = mkfs.ext4 = mke2fs -t ext4
mkfs -t xfs = mkfs.xfs
mount: 挂载文件系统(分区)
mount [-t fstype] DEVICE MOUNT_POINT
mount [-t fstype] LABEL=”卷标” MOUNT_POINT
mount [-t fstype] UUID=”UUID” MOUNT_POINT
mount: 当前系统挂载的所有设备;
umount DEVICE
umount MOUNT_POINT
挂载之后,原有数据的会被隐藏,因此不能挂载到系统常用目录上;
卸载之时,要确保没有进程正在访问挂载的设备;否则,无法卸载;

mount: -o  用于指定挂载选项:
ro 只读挂载
rw 读写,默认值;
noatime 关闭
auto: 是否能够由“mount -a”挂载;
defaults:相当于rw, suid, dev, exec, auto, nouser, async, and relatime
sync: 同步写入
async:异步写入
dev:
remount: 重新挂载
loop: 本地回环设备;

mount -o remount,other_options DEVICE

cdrom –> sr0
cdrom –> hdc

mount -o loop,other_options DEVICE MOUNT_POINT: 用于挂载回环设备;

-n: 挂载文件系统时,不更新/etc/mtab文件;
-r: 相当于“-o ro”, 只读挂载;

fuser [MOUNT_POINT]:查看正在访问某挂载点的进程;
fuser -km [MOUNT_POINT]: 强行杀死正在访问此挂载点的进程;

blkid DEVICE :显示设备的UUID及文件系统类型:

/etc/fstab: 系统开机会自动挂载的文件系统;

/etc/fstab
挂载的设备:
设备文件、卷标、UUID
挂载点:
文件系统类型:ext2, ext3, …
挂载选项:defaults表示使用默认选项,多个选项彼此间逗号分隔;
转储频率:
0: 从不备份;
1:每日备份;
2:
自检次序:
0:不检测;
1:第一个检测;一般只有根文件系统被第一个检测;
2
9

mount -a: 挂载 /etc/fstab所有支持auto挂载选择的文件系统

Linux的交换分区:swap

必须是独立分区,独立文件系统;

交换分区多大?
科学计算类的服务器:交换内存可以尽可能大,比如为物理内存的2倍;
应用程序类的服务器:交换内存尽可能小,比如只给1G;

物理内存小于等于2G, swap=memory*2
2G<memory<4G, swap=memory*1.5
memory>4G, swap=4G

如何内存大小:
free
-m: 空间大小换算为MB
-g: 空间大小换算为GB
shared: 共享内存
buffer: 缓冲
cached: 缓存

创建交换分区:
mkswap DEVICE
-L label

启用交换分区:
swapon DEVICE:启用指定交换分区;
swapon -a: 启用所有交换分区

禁用交换分区:
swapoff DEVICE
swapoff -a

开机自动启用交换分区,可定义于/etc/fstab
DEVICE swap swap defaults 0 0
挂载点:swap
文件系统类型:swap

————————————————————————————-

LVM逻辑卷
PV: physical volume
PE:physical extents
LE: logical extents

PV物理卷-VG卷组-LV逻辑卷

没有命令安装lvm2 :yum install lvm2

创建pv:pvcreate /dev/sd_name
查看pv:pvdisplay /dev/pv_name
pvs
删除pv:pvremove (确定不再使用没有数据)

创建vg:vgcreate VG_NAME /dev/pv_name…(多个设备上的多个pv)

查看vg:vgdisplay
-s 检略查看所有的状况
vgs
移除卷组: vgremove VG_NAME  (先移除lv,确定lv没有数据不在使用)

创建lv:lvcreate -L 大小 -n 名称 LV_NAME VG_NAME
-l PE的个数
查看lv:lvdisplay
lvs

LVM的设备文件:
/dev/VGNAME/LVNAME
/dev/mapper/VGNAME-LVNAME
/dev/mapper/
真正的设备文件时dev下的dm
扩展VG:vgextend
首先准备好一个PV
使用命令vgextend完成扩展
vgextend VGNAME /PATH/TO/PV_NAME
缩减VG:1.pvmove,2.vgreduce
确定要移除的PV
将此pv上的数据转移至其他PV :pvmove /PATH/TO/PV_NAME   (转移pv数据)
卷组中将此PV移除:vgreduce VG_NAME /PATH/TO/PV  (卷组中移除pv不是删除)

扩展逻辑卷:
确定扩展多大 5G:–>8G
确定当前逻辑卷所在的卷组有足够的空闲空间:
扩展:
物理边界:lvextend -L [+] SIZE /PATH/TO/LV_NAME
逻辑边界:resize2fs /PATH/TO/LV_NAME

文件系统检测:
fsck
e2fsck [-t fs_type] [-f]强制  [-p]自动修复 /PATH/TO/DEVICE (只适用ext文件系统)
缩减逻辑卷:
确定缩减为多大? 前提是至少能容纳原有的所有数据
8G–>3G
缩减:
1.卸载并检测 e2fsck -f
2.缩减逻辑边界
resize2fs /PATH/TO/LV_NAME SIZE
3.缩减物理边界
lvreduce -L [-]SIZE /PATH/TO/LV_NAME
创建快照卷:
lvcreate  -s 快照卷
-p 指定权限
-n 指定名称
-L 指定大小
lvcreate -L SIZE -s -p r -n LV_NAME(快照名称) /PATH/TO/LV_NAME

移除逻辑卷:
lvremove /PATH/TO/LV_NAME

posted on 2017-10-26 15:37  nety2007  阅读(76)  评论(0)    收藏  举报