มีตัวเลือกน้อยใช้ได้:
fdisk
(เก่ากว่าไม่รองรับGPT 4 )
parted
(พี่ชายของ CLI ของ GParted)
mkfs
โปรแกรมต่าง ๆถ้าคุณมีพาร์ติชั่นและต้องการฟอร์แมตแล้ว
fdisk
และparted
เป็นแบบโต้ตอบและมีคำสั่งความช่วยเหลือดังนั้นคุณสามารถค้นหาความช่วยเหลือในโปรแกรมได้ตลอดเวลา ทั้งสองยังสามารถใช้สคริปต์ได้ mkfs
คำสั่งไม่ได้โต้ตอบ
fdisk
fdisk
คาดว่าอุปกรณ์ (เช่น/dev/sda
) เป็นอาร์กิวเมนต์ มันมีคำสั่งดังต่อไปนี้:
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the DOS compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
ฉันไม่ได้ใช้fdisk
มาก ฉันจะมุ่งเน้นไปที่:
parted
parted
ไม่จำเป็นต้องมีข้อโต้แย้ง (พยายาม "เดา") แต่คุณควรระบุดิสก์เสมอ ได้รับเลือกparted
เป็นโปรแกรมที่คุณจะชอบ มันมีคำสั่งดังต่อไปนี้:
align-check TYPE N check partition N for TYPE(min|opt) alignment
check NUMBER do a simple check on the file system
cp [FROM-DEVICE] FROM-NUMBER TO-NUMBER copy file system to another partition
help [COMMAND] print general help, or help on COMMAND
mklabel,mktable LABEL-TYPE create a new disklabel (partition table)
mkfs NUMBER FS-TYPE make a FS-TYPE file system on partition NUMBER
mkpart PART-TYPE [FS-TYPE] START END make a partition
mkpartfs PART-TYPE FS-TYPE START END make a partition with a file system
resizepart NUMBER END resize partition NUMBER
move NUMBER START END move partition NUMBER
name NUMBER NAME name partition NUMBER as NAME
print [devices|free|list,all|NUMBER] display the partition table, available devices, free space, all found partitions, or a particular partition
quit exit program
rescue START END rescue a lost partition near START and END
resize NUMBER START END resize partition NUMBER and its file system
rm NUMBER delete partition NUMBER
select DEVICE choose the device to edit
set NUMBER FLAG STATE change the FLAG on partition NUMBER
toggle [NUMBER [FLAG]] toggle the state of FLAG on partition NUMBER
unit UNIT set the default unit to UNIT
version display the version number and copyright information of GNU Parted
คำสั่งสามารถต่อสัญญากับคำนำหน้าที่ไม่ซ้ำกัน (เช่นh
สั้นสำหรับhelp
)
ฉันจะใช้ไฟล์ชั่วคราว ( /tmp/part
) ฉันสร้างเพื่อแสดงคำสั่งให้คุณดังนั้นขนาดจะค่อนข้างเล็ก คุณควรแทนที่ด้วยอุปกรณ์ที่คุณต้องการ ( /dev/sda
เช่น)
ก่อนอื่นถ้าดิสก์ของคุณไม่มีตารางพาร์ติชั่นเราต้องสร้างมันขึ้นมา:
parted /tmp/part mklabel gpt
หรือmklabel msdos
ถ้าคุณต้องการสิ่งที่พาร์ทิชัน 4 โรงเรียนประถม (สิ่งที่เรียกว่าMBR หรือตารางพาร์ทิชัน MSDOS ) จากนั้นเราสร้างพูดว่าพาร์ติชัน ext4 เริ่มต้นที่ 3GB (เช่นปล่อย 3G เริ่มต้นฟรี) และขนาด 2GB (เช่นสิ้นสุดที่ 5GB) parted
คาดหวังตำแหน่งเป็น MB สำหรับmkpartfs
แต่เราสามารถระบุคำต่อท้าย:
parted /tmp/part mkpart primary ext4 3G 5G
และอีกอันตอนนี้พาร์ติชัน NTFS 1GB:
parted /tmp/part mkpart primary ntfs 5G 6G
ผลลัพธ์:
# parted /tmp/part print
Model: (file)
Disk /tmp/blah: 10.4GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Number Start End Size File system Name Flags
1 3000MB 5000MB 2000MB primary
2 5000MB 6000MB 1000MB primary msftdata
โปรดสังเกตว่าจะใช้คำนำหน้า SI อย่างไรในขณะที่ GParted ใช้คำนำหน้าไบนารีi
อย่างสม่ำเสมอ(ในขณะที่ปล่อยความโง่) ฉันจะติดป้ายพาร์ทิชัน:
# parted /tmp/part name 1 hello
# parted /tmp/part name 2 world
# parted /tmp/part print
Model: (file)
Disk /tmp/blah: 10.4GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Number Start End Size File system Name Flags
1 3000MB 5000MB 2000MB hello
2 5000MB 6000MB 1000MB world msftdata
แม้ว่าparted
จะสามารถสร้างพาร์ติชันของระบบไฟล์ได้ntfs
แต่ก็ไม่สามารถฟอร์แมตพาร์ติชันที่มีอยู่ (!) เป็น NTFS:
mkfs partition fs-type
Make a filesystem fs-type on partition. fs-type can be one
of "fat16", "fat32", "ext2", "linux-swap", or "reiserfs".
อันที่จริงแล้วการแยกส่วนจะบอกคุณว่าคุณควรใช้มันเพื่อจัดการพาร์ติชั่นไม่ใช่ระบบไฟล์ซึ่งพาฉันไปที่:
mkfs
mkfs
เช่นfsck
เป็นส่วนหน้าคำสั่งเฉพาะระบบไฟล์ต่างๆ ในระบบของฉันเช่นmkfs.bfs
, mkfs.cramfs
, mkfs.ext2
, mkfs.ext3
, mkfs.ext4
, mkfs.ext4dev
, mkfs.fat
, mkfs.minix
, mkfs.msdos
, mkfs.ntfs
, mkfs.vfat
ที่มีอยู่
ตอนนี้โชคไม่ดีในขณะที่parted
ทำงานได้ดีบนไฟล์เช่นเดียวกับที่ฉันใช้ข้างต้นmkfs
ไม่สามารถไปหาพาร์ทิชันในไฟล์ดังกล่าว ในความเป็นจริงมันคาดว่าจะปิดกั้นอุปกรณ์ดังนั้นถ้าฉันจะใช้ไฟล์ใหม่/tmp/file
สำหรับmkfs
ฉันต้องบังคับให้ทำเช่นนั้น /dev/sda2
คุณจะใช้อุปกรณ์ป้องกันที่สอดคล้องกับพาร์ทิชันที่คุณต้องการจัดรูปแบบเช่น ไวยากรณ์ทั่วไปสำหรับmkfs
คือ:
# mkfs --help
Usage: mkfs [options] [-t type fs-options] device [size]
Options:
-t, --type=TYPE file system type, when undefined ext2 is used
fs-options parameters to real file system builder
device path to a device
size number of blocks on the device
-V, --verbose explain what is done
defining -V more than once will cause a dry-run
-V, --version output version information and exit
-V as version must be only option
-h, --help display this help and exit
For more information, see mkfs(8).
อย่างที่คุณเห็นการ-t
ตั้งค่าสถานะช่วยให้เราสามารถผ่านการตั้งค่าสถานะระบบแฟ้มเฉพาะ ตัวอย่างเช่นแฟล็ก NTFS:
# mkfs.ntfs --help
Usage: mkntfs [options] device [number-of-sectors]
Basic options:
-f, --fast Perform a quick format
-Q, --quick Perform a quick format
-L, --label STRING Set the volume label
-C, --enable-compression Enable compression on the volume
-I, --no-indexing Disable indexing on the volume
-n, --no-action Do not write to disk
Advanced options:
-c, --cluster-size BYTES Specify the cluster size for the volume
-s, --sector-size BYTES Specify the sector size for the device
-p, --partition-start SECTOR Specify the partition start sector
-H, --heads NUM Specify the number of heads
-S, --sectors-per-track NUM Specify the number of sectors per track
-z, --mft-zone-multiplier NUM Set the MFT zone multiplier
-T, --zero-time Fake the time to be 00:00 UTC, Jan 1, 1970
-F, --force Force execution despite errors
Output options:
-q, --quiet Quiet execution
-v, --verbose Verbose execution
--debug Very verbose execution
Help options:
-V, --version Display version
-l, --license Display licensing information
-h, --help Display this help
Developers' email address: ntfs-3g-devel@lists.sf.net
News, support and information: http://tuxera.com
ดังนั้นให้สร้างพาร์ติชั่น NTFS ด้วยการฟอร์แมตแบบเร็ว ( -Q
) บังคับให้มันทำงานกับไฟล์ที่ไม่ใช่อุปกรณ์บล็อก ( -F
) และตั้งค่าเลเบล ( -L "hello world"
)
# mkfs -t ntfs -F -Q -L "hello world" /tmp/file
/tmp/file is not a block device.
mkntfs forced anyway.
The sector size was not specified for /tmp/file and it could not be obtained automatically. It has been set to 512 bytes.
The partition start sector was not specified for /tmp/file and it could not be obtained automatically. It has been set to 0.
The number of sectors per track was not specified for /tmp/file and it could not be obtained automatically. It has been set to 0.
The number of heads was not specified for /tmp/file and it could not be obtained automatically. It has been set to 0.
Cluster size has been automatically set to 4096 bytes.
To boot from a device, Windows needs the 'partition start sector', the 'sectors per track' and the 'number of heads' to be set.
Windows will not be able to boot from this device.
Creating NTFS volume structures.
mkntfs completed successfully. Have a nice day.
เห็นได้ชัดว่ามันไม่สนุกกับการทำงานกับไฟล์ :) ไม่ต้องกังวลมันควรตรวจจับค่าส่วนใหญ่โดยอัตโนมัติเมื่อทำงานกับดิสก์จริง แม้ "ไฟล์" นี้ทำงานได้ดีเป็นระบบไฟล์:
# mount -t ntfs-3g /tmp/file /mnt
# touch "/mnt/a file in mnt"
# ls -l /mnt
total 0
-rwxrwxrwx 1 root root 0 Aug 29 06:43 a file in mnt
# umount /mnt
# ls -l /mnt
total 0
(ดูการอนุญาตแปลก ๆ )
หมายเหตุ:
- ฉันยังไม่ได้ใช้
sudo
คำตอบนี้เลย sudo
ตั้งแต่ผมได้รับการดำเนินงานเกี่ยวกับไฟล์และไฟล์ที่เป็นของฉันฉันไม่จำเป็นต้อง parted
จะเตือนคุณเกี่ยวกับเรื่องนี้ สำหรับอุปกรณ์บล็อกซึ่งโดยทั่วไปจะเป็นเจ้าของroot
คุณจะต้องsudo
(หรือคุณจะต้องใช้รูทเชลล์ผ่านsudo -i
หรือsudo su -
)
parted
เป็นโปรแกรม GNU และเหมือนกับโปรแกรม GNU อื่น ๆ มีเอกสารมากมายในinfo
รูปแบบ ติดตั้งparted-doc
( sudo apt-get install parted-doc
) info parted
และเรียกใช้ นอกจากนี้คุณยังสามารถชำระเงินคู่มือผู้ใช้ออนไลน์
- GParted สามารถจัดรูปแบบพาร์ติชันเป็น NTFS ได้เนื่องจากเรียก
mkfs
โปรแกรมที่เหมาะสมโดยตรง ( mkntfs
ในกรณีนี้ - mkfs.ntfs
เป็นเพียงลิงค์ไปยังmkntfs
) นอกจากนี้ยังตั้งค่าพารามิเตอร์จำนวนหนึ่ง ในความเป็นจริงสำหรับการทำงานส่วนใหญ่คุณสามารถตรวจสอบรายละเอียดของข้อความ GParted เพื่อดูว่าคำสั่งใดถูกเรียกใช้
- ฉันจะไม่เข้าไปทำบุญในตารางพาร์ติชั่น GPT vs MBR / MSDOS แต่ GPT มีแนวโน้มที่จะพบได้ในอุปกรณ์ใหม่ที่มี UEFI โดยเฉพาะอย่างยิ่งถ้าคุณมี Windows 8 อยู่ สถานะของเครื่องมือการแบ่งพาร์ติชัน? พูดถึงว่ามีเครื่องมือใดบ้างที่ใช้ได้หากคุณกำลังเผชิญหน้ากับ GPT
- LVM, ZFS และ btrfs เป็นอีกเกมหนึ่ง พวกเขาทั้งหมดมีเครื่องมือประกอบและคุณควรใช้พวกเขาแทน
parted
หรือfdisk
(ยกเว้นอาจเป็นขั้นตอนแรกของการสร้างพาร์ติชันสำหรับใช้งาน)
หมายเหตุเกี่ยวกับparted
การใช้งาน:
ไวยากรณ์ของparted
โปรแกรมคือ:
parted [options] [device [command [options...]...]]
เมื่อคุณรันparted
โดยไม่มีคำสั่งเช่น:
parted /tmp/parted
คุณจะพบกับเชลล์แบบง่าย ๆ ซึ่งคุณสามารถเรียกใช้คำสั่งด้านบนได้ อย่างไรก็ตามคำสั่งเหล่านี้สามารถเรียกใช้โดยตรงโดยใช้parted
โปรแกรม ดังนั้นทั้งสามนี้จึงเทียบเท่ากัน:
# parted /tmp/parted
GNU Parted 2.3
Using /tmp/parted
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel gpt
และ
# parted
GNU Parted 2.3
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) select /tmp/parted
Using /tmp/parted
(parted) mklabel gpt
และ
parted /tmp/parted mklabel gpt
โปรดทราบว่าเมื่อสร้างพาร์ติชันด้วยparted
ตัวบ่งชี้ที่มีประโยชน์ของการสิ้นสุดพาร์ติชันคือ-1s
(นี่คือ "1" ระหว่างเครื่องหมายขีดกลางและ "s") สิ่งนี้มีประโยชน์หากคุณต้องการให้พาร์ติชันของคุณครอบคลุมตั้งแต่การเริ่มต้นที่ระบุไปจนถึงส่วนที่เหลือของดิสก์ จะเฉพาะเจาะจงมากขึ้นทำงาน
parted /dev/sda -- mkpart primary ext4 3G -1s
จะสร้างพาร์ติชันของ/dev/sda
ที่เริ่มต้นที่ 3G และสิ้นสุดที่เซกเตอร์สุดท้ายของ/dev/sda
ดิสก์ (เช่นมันขยายจาก 3G ไปจนถึงดิสก์ที่เหลือทั้งหมด) โปรดทราบว่า--
สิ่งที่จำเป็นคือเพื่อ1s
ไม่ให้ถูกตีความว่าเป็นตัวเลือกที่ไม่ถูกต้อง
-m
เกี่ยวกับพื้นที่ที่สงวนไว้ - มันมีความเกี่ยวข้องเพราะมันใช้งานง่าย