1. 程式人生 > >Linux磁盤分區的實用管理命令

Linux磁盤分區的實用管理命令

hybrid 破壞 com oot backup centos eve msdos nbsp

系統環境:Centos6、7

命令信息:

1、lsblk 列出分區信息,可以查看分區的光在目錄和使用情況 (讀取內存中的分區表信息)

2、fdisk 用來創建MBR分區(也可以創建GPT分區,但是支持的並不是特別完美,)

3、gdisk 用來創建GPT分區(如果要創建GPT分區,就來使用這個命令吧)

4、parted 高級分區操作(註意操作,很多命令一鍵完成,沒有提示,所以也就不存在後悔的余地,功能強大)

5、partprobe 重新讀取分區列表,並加載到內存中(centos6這個命令有bug,不能使用,5和7沒有問題,待會兒再說解決方法)。

6、cfdisk 比fdisk更傻更直觀的分區方法

7、cgdisk比gdisk更傻更直觀的分區方法

——————————————————————————————————————————————————————————————–

1、fdisk /dev/sd* 管理分區

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

當使用fdisk分區時,不連續的未分配存儲空間,會造成無法將不連續的未分配空間劃分成1個分區,這個需要註意,分區的默認單位是塊,也可以指定單位如:M,G,T

2、gdisk /dev/sd* 管理分區 (類似fdisk不再贅述)

3、cfdisk、cgdisk兩個命令就是相對fdisk和gdisk的的,有菜單,太直觀了,不說他倆了。

4、partprobe強大的分區命令,但是parted的操作都是實時生效的,小心使用

用/dev/sdb磁盤來做演示:

  1. parted #不帶參數直接進入交互式模式 ,輸入help有命令的選項和提示信息
  2. parted /dev/sdb mklabel gpt|msdos #---- 指定gpt分區還是mbr分區(註意沒有提示,操作了無法逆轉,丟了數據不賴我) ---第一步
  3. parted /dev/sdb print #---- 打印/dev/sdb這個磁盤現有的分區
  4. parted /dev/sdb mkpart primary 1 200 (默認M) #創建主分區,(直接生效)
  5. parted /dev/sdb rm 1 #---- 刪除編號為1的分區

在有分區的磁盤上重新進行分區,分區完成之後,使用lsblk命令讀取分區表會發現分區表並沒有改變,這是因為,分完區之後,系統並沒有重新讀取新的分區表。為了將最新的配置生效,可以使用partprobe命令重新讀取分區表

但是緊跟著問題又來了:

Centos6系統的partprobe命令有bug,不能正常的使用。

解決方法:

新增分區用

partx -a /dev/DEVICE
kpartx -a /dev/DEVICE -f: force

刪除分區用
partx -d –nr M-N /dev/DEVICE

MBR的備份與恢復:

備份

dd if=/dev/sda of=/app/mbr bs=1 count=512

還原

dd if=mbr of=/dev/sda bs=1 count=64 skip=446 seek=446(只還原分區表,前面446個字節包含bootloader和錯誤數據區,如果這條指令不能回復分區,說明最後一個字節也被破壞了,count改為66)

dd if=mbr of=/dev/sdb bs=1 count=512 (完全恢復包括,bootloader和分區表)

gpt分區的備份與恢復:

    1. gdisk /dev/sdb
    2. #備份
    3. Command (? for help): ?
    4. b back up GPT data to a file
    5. c change a partition‘s name
    6. d delete a partition
    7. i show detailed information on a partition
    8. l list known partition types
    9. n add a new partition
    10. o create a new empty GUID partition table (GPT)
    11. p print the partition table
    12. q quit without saving changes
    13. r recovery and transformation options (experts only)
    14. s sort partitions
    15. t change a partition‘s type code
    16. v verify disk
    17. w write table to disk and exit
    18. x extra functionality (experts only)
    19. ? print this menu
    20. 輸入b,輸入名字,備份gpt分區表到當前目錄
    21. #恢復
    22. gdisk /dev/sdb
    23. Command (? for help): ?
    24. b back up GPT data to a file
    25. c change a partition‘s name
    26. d delete a partition
    27. i show detailed information on a partition
    28. l list known partition types
    29. n add a new partition
    30. o create a new empty GUID partition table (GPT)
    31. p print the partition table
    32. q quit without saving changes
    33. r recovery and transformation options (experts only)
    34. s sort partitions
    35. t change a partition‘s type code
    36. v verify disk
    37. w write table to disk and exit
    38. x extra functionality (experts only)
    39. ? print this menu
    40. 輸入r,進入恢復模式
    41. Recovery/transformation command (? for help):?
    42. Recovery/transformation command (? for help): ?
    43. b use backup GPT header (rebuilding main)
    44. c load backup partition table from disk (rebuilding main)
    45. d use main GPT header (rebuilding backup)
    46. e load main partition table from disk (rebuilding backup)
    47. f load MBR and build fresh GPT from it
    48. g convert GPT into MBR and exit
    49. h make hybrid MBR
    50. i show detailed information on a partition
    51. l load partition data from a backup file
    52. m return to main menu
    53. o print protective MBR data
    54. p print the partition table
    55. q quit without saving changes
    56. t transform BSD disklabel partition
    57. v verify disk
    58. w write table to disk and exit
    59. x extra functionality (experts only)
    60. ? print this menu
    61. 使用l選項,從備份的文件恢復
    62. 使用b選項,從gpt分區尾部的備份恢復到gpt頭
    63. 使用d選項,將gpt的頭部信息,備份到尾部

Linux磁盤分區的實用管理命令