From bf7778bd730c139ff2acf87b0d02aa8cc788f29b Mon Sep 17 00:00:00 2001 From: wxy Date: Tue, 10 Apr 2018 23:37:36 +0800 Subject: [PATCH] PRF:20180318 How To Manage Disk Partitions Using Parted Command.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @zky2290 恭喜你,完成了第一篇翻译! --- ...ge Disk Partitions Using Parted Command.md | 179 ++++++++---------- 1 file changed, 84 insertions(+), 95 deletions(-) diff --git a/translated/tech/20180318 How To Manage Disk Partitions Using Parted Command.md b/translated/tech/20180318 How To Manage Disk Partitions Using Parted Command.md index 7b2d594fe4..eb9bfd0850 100644 --- a/translated/tech/20180318 How To Manage Disk Partitions Using Parted Command.md +++ b/translated/tech/20180318 How To Manage Disk Partitions Using Parted Command.md @@ -1,95 +1,95 @@ -怎样用 Parted 管理硬盘分区 +怎样用 parted 管理硬盘分区 ====== -Translating by zyk2290 -众所周知,硬盘分区对Linux管理员来说是其中一项最重要的管理任务,他们不能不知道这个。 +众所周知,对硬盘分区是 Linux 管理员一项最重要的管理任务之一,他们不能不知道这个。 -在最糟糕的时候,你至少每周一次会收到从依赖小组的请求,在大的环境里会更加频繁 。 +在最糟糕的时候,你至少每周会收到一次依赖小组的请求,而在更大的环境里会更加频繁 。 -你可能会问为什么我们要用Parted而不是fdisk? 有什么区别? 好问题, 我会告诉你这两者的区别。 +你可能会问为什么我们要用 `parted` 而不是 `fdisk`? 它们有什么区别?好问题,我会告诉你这两者的区别。 - * Parted支持用户在大于2TB的硬盘上创建硬盘分区, 但fdisk命令不支持 - * 对比fdisk来说, Parted是一个更高级的工具 - * 支持更多的分区表类型,包括GPT ( LCTT译者注:全局唯一标识分区表 )。 - * 它允许用户调整分区大小, 但当缩减分区空间的时候,它没有在我意料之内工作, 在大部分时候, 我会得到错误。 所以 我会建议用户不要用Parted来缩减分区大小。 + * `parted` 支持用户在大于 2TB 的硬盘上创建硬盘分区, 但 `fdisk` 命令不支持 + * 对比 `fdisk` 来说,`parted` 是一个更高级的工具 + * 支持更多的分区表类型,包括 GPT (LCTT 译注:全局唯一标识分区表) + * 它允许用户调整分区大小, 但当缩减分区空间的时候,它没有如我意料的工作,多数情况下我会得到错误消息。所以我会建议用户不要用 `parted` 来缩减分区大小。 +### 什么是 parted +`parted` 是一个操作硬盘分区的程序。它支持多种分区表类型,包括 MS-DOS 和 GPT。 -### 什么是 Parted +它允许用户创建、删除、调整、缩减、移动和复制分区,以及重新组织硬盘的使用,复制数据到新的硬盘上。`gparted` 是 `parted` 的图形界面前端。 -Parted 是一个操作硬盘分区的程序. 它支持多种分区表类型,包括 MS-DOS和 GPT . +### 怎样安装 parted -它允许用户创建, 删除, 调整 ,缩减,移动和复制分区 ,以及重新组织硬盘的使用, 复制数据到新的硬盘上。GParted是parted的图形界面前端。 +大部分发行版已经预安装了 `parted`。如果没有,用下列命令来安装 `parted`。 -### 怎样安装Parted +对于 Debian/Ubuntu 用户, 使用 [APT-GET 命令][1] 或者 [APT 命令][2] 来安装 `parted`。 -大部分发行版已经预安装了Parted 如果没有, 用下列命令来安装Parted. - -对于 **`Debian/Ubuntu`** 用户, 使用 [APT-GET Command][1] 或者 [APT Command][2] 来安装Parted。 ``` $ sudo apt install parted - ``` -对于 **`RHEL/CentOS`** , 用 [YUM Command][3] 来安装parted。 +对于 RHEL/CentOS 用户,用 [YUM 命令][3] 来安装 `parted`。 + ``` $ sudo yum install parted - ``` -对于 **`Fedora`** , 用 [DNF Command][4] 命令来安装parted。 +对于 Fedora 用户,用 [DNF 命令][4] 来安装 `parted`。 + ``` $ sudo dnf install parted - ``` -对于 **`Arch Linux`** , 用 [Pacman Command][5] 命令来安装parted。 +对于 Arch Linux 用户,用 [Pacman 命令][5]来安装 `parted`。 ``` $ sudo pacman -S parted ``` -对于 **`openSUSE`** , 用 [Zypper Command][6] 命令来安装parted。 +对于 openSUSE 用户, 用 [Zypper 命令][6]来安装 `parted`。 + ``` $ sudo zypper in parted - ``` -### 怎样启动Parted +### 怎样启动 parted + +下面的 `parted` 命令会自动选择 `/dev/sda` ,因为这是系统的第一个硬盘。 -下面的parted命令会自动选择 `/dev/sda` , 因为这是系统的第一个硬盘。 ``` $ sudo parted -GNU Parted 3.2 +GNU parted 3.2 Using /dev/sda -Welcome to GNU Parted! Type 'help' to view a list of commands. +Welcome to GNU parted! Type 'help' to view a list of commands. (parted) - ``` 同时我们也可以用下面的命令来重新选择对应的的硬盘。 + ``` (parted) select /dev/sdb Using /dev/sdb (parted) - ``` -如果你想选择特定的硬盘, 用下列的格式来输入命令。 这次 ,我们将选择`/dev/sdb`. +如果你想选择特定的硬盘, 用下列的格式来输入命令。 这次 ,我们将选择 `/dev/sdb`。 + ``` $ sudo parted [Device Name] - -$ sudo parted /dev/sdb -GNU Parted 3.2 -Using /dev/sdb -Welcome to GNU Parted! Type 'help' to view a list of commands. -(parted) - ``` -### 怎样用 Parted列出所有可用的硬盘 +``` +$ sudo parted /dev/sdb +GNU parted 3.2 +Using /dev/sdb +Welcome to GNU parted! Type 'help' to view a list of commands. +(parted) +``` + +### 怎样用 parted 列出所有可用的硬盘 + +如果你不知道你的电脑上有什么硬盘,只需要运行下列命令,该命令会显示所有可用硬盘的名字,以及其它的有用信息比如储存空间、型号、扇区大小、硬盘标志以及分区信息。 -如果你不知道你的电脑上有什么硬盘, 只需要运行下列命令,该命令会显示所有可用硬盘的名字, 以及其它的有用信息比如储存空间, 型号, 扇区大小,硬盘旗帜以及分区信息。 ``` $ sudo parted -l Model: ATA VBOX HARDDISK (scsi) @@ -108,26 +108,25 @@ Disk /dev/sdb: 53.7GB Sector size (logical/physical): 512B/512B Partition Table: unknown Disk Flags: - ``` -上面的错误信息清晰地显示出硬盘 `/dev/sdb` 没有有效的硬盘标签 (disk label) 。 它不会自动选择硬盘标签 (disk label) ,所以, 我们便要自己设置硬盘标签 (disk label) 。 +上面的错误信息清晰地显示出硬盘 `/dev/sdb` 没有有效的磁盘标签disk label。 它不会自动得到磁盘标签,所以, 我们便要自己设置硬盘标签。 -### 怎样用Parted创建硬盘分区 +### 怎样用 parted 创建硬盘分区 -Parted允许用户创建主分区或者拓展分区。 创建这两种类型的分区的步骤还是一样,但请确保你已经指定了需要的分区类型,比如 `primary` 或者`extended`。 +`parted` 允许用户创建主分区或者拓展分区。创建这两种类型的分区的步骤还是一样,但请确保你已经指定了需要的分区类型,比如 `primary` (主分区)或者 `extended` (扩展分区)。 -为了演示这项操作 ,我们安装了一个新的`50 GB` 的硬盘到到电脑上,挂载在`/dev/sdb`上 +为了演示这项操作 ,我们安装了一个新的 `50 GB` 的硬盘到到电脑上,挂载在 `/dev/sdb` 上。 -有两种方法创建分区,第一种是更详细的方法,另一种只是一个命令。 在下面的例子中,我们将用更详细的方法添加一个主分区。提醒一下, 我们应该先设置 `硬盘标签`(disk label),因为它不会自动设置任何标签。 +有两种方法创建分区,第一种是更详细的方法,另一种只是一个命令。 在下面的例子中,我们将用更详细的方法添加一个主分区。提醒一下, 我们应该先设置磁盘标签,因为它不会自动设置任何标签。 -在下面的例子中,我们将要创建一个`10 GB` 的分区 +在下面的例子中,我们将要创建一个 `10 GB` 的分区 ``` $ sudo parted /dev/sdb -GNU Parted 3.2 +GNU parted 3.2 Using /dev/sdb -Welcome to GNU Parted! Type 'help' to view a list of commands. +Welcome to GNU parted! Type 'help' to view a list of commands. (parted) mklabel msdos (parted) unit GB (parted) mkpart @@ -147,38 +146,37 @@ Number Start End Size Type File system Flags (parted) quit Information: You may need to update /etc/fstab. - ``` -同时,我们也可以使用单条Parted命令 +同时,我们也可以使用单条 `parted` 命令 -在下面的例子中,我们将在硬盘上创建一个`10 GB` 的分区 +在下面的例子中,我们将在硬盘上创建一个 `10 GB` 的分区。 ``` $ sudo parted [Disk Name] [mkpart] [Partition Type] [Filesystem Type] [Partition Start Size] [Partition End Size] - -$ sudo parted /dev/sdb mkpart primary ext4 10.0GB 20.0GB -Information: You may need to update /etc/fstab. - ``` -### 怎样使用Parted用所有剩余空间创建分区 +``` +$ sudo parted /dev/sdb mkpart primary ext4 10.0GB 20.0GB +Information: You may need to update /etc/fstab. +``` -你已经创建了所有要求的分区,除了`/home` ,而且你想要用硬盘上所有剩余的空间来创建`/home`分区,要怎样做?可以使用下面的命令来创建分区。 +### 怎样使用所有剩余空间创建分区 -下面的命令创建了一个 33.7 GB 的分区,从 `20 GB` 开始到 `53 GB`结束。 `100%` 使用率允许用户用硬盘上所有剩余的空余空间。 +你已经创建了除了 `/home` 之外等所有要求的分区,而且你想要用硬盘上所有剩余的空间来创建 `/home` 分区,要怎样做?可以使用下面的命令来创建分区。 + +下面的命令创建了一个 33.7 GB 的分区,从 `20 GB` 开始到 `53 GB` 结束。 `100%` 使用率允许用户用硬盘上所有剩余的空余空间。 ``` $ sudo parted [Disk Name] [mkpart] [Partition Type] [Filesystem Type] [Partition Start Size] [Partition End Size] $ sudo parted /dev/sdb mkpart primary ext4 20.0GB 100% Information: You may need to update /etc/fstab. - ``` -### 怎样用Parted列出所有的分区 +### 怎样用 parted 列出所有的分区 -你也许注意到了,我们已经在上述步骤中创建了三个分区,如果你想要列出所有在硬盘上可用的分区,可以使用print命令。 +你也许注意到了,我们已经在上述步骤中创建了三个分区,如果你想要列出所有在硬盘上可用的分区,可以使用 `print` 命令。 ``` $ sudo parted /dev/sdb print @@ -192,12 +190,11 @@ Number Start End Size Type File system Flags 1 1049kB 10.0GB 9999MB primary ext4 2 10.0GB 20.0GB 9999MB primary ext4 3 20.0GB 53.7GB 33.7GB primary ext4 - ``` -### 怎样用mkfs格式化分区 +### 怎样用 mkfs 格式化分区 -用户可以用mkfs命令格式化分区。下面的步骤会用mkfs来格式化分区。 +用户可以用 `mkfs` 命令格式化分区。下面的步骤会用 `mkfs` 来格式化分区。 ``` $ sudo mkfs.ext4 /dev/sdb1 @@ -211,7 +208,6 @@ Allocating group tables: done Writing inode tables: done Creating journal (16384 blocks): done Writing superblocks and filesystem accounting information: done - ``` 同样的。 @@ -219,18 +215,18 @@ Writing superblocks and filesystem accounting information: done ``` $ sudo mkfs.ext4 /dev/sdb2 $ sudo mkfs.ext4 /dev/sdb3 - ``` 创建必要的文件夹然后将这些分区挂载在上面。 ``` $ sudo mkdir /par1 /par2 /par3 +``` +``` $ sudo mount /dev/sdb1 /par1 $ sudo mount /dev/sdb2 /par2 $ sudo mount /dev/sdb3 /par3 - ``` 运行下列命令来检查是否成功挂载上新创建的分区。 @@ -241,12 +237,11 @@ Filesystem Size Used Avail Use% Mounted on /dev/sdb1 9.2G 37M 8.6G 1% /par1 /dev/sdb2 9.2G 37M 8.6G 1% /par2 /dev/sdb3 31G 49M 30G 1% /par3 - ``` ### 怎样检查硬盘空闲空间 -运行下列命令来检查硬盘上的空闲空间,这块硬盘上有`25.7 GB`的空闲空间。 +运行下列命令来检查硬盘上的空闲空间,这块硬盘上有 `25.7 GB` 的空闲空间。 ``` $ sudo parted /dev/sdb print free @@ -262,14 +257,13 @@ Number Start End Size Type File system Flags 2 10.0GB 20.0GB 9999MB primary ext4 3 20.0GB 28.0GB 8001MB primary ext4 28.0GB 53.7GB 25.7GB Free Space - ``` -### 怎样使用Parted命令来重新调整分区大小 +### 怎样使用 parted 命令来重新调整分区大小 -Parted 允许用户重新调整分区大小。不过我已在文章的开头说了,不要缩小分区大小,不然会有许多错误。 +`parted` 允许用户重新调整分区大小。不过我已在文章的开头说了,不要缩小分区大小,不然会有许多错误。 -运行下列命令来检查硬盘分区以及所有可用空间。 可以看到硬盘上有`25.7GB` 的可用空间 +运行下列命令来检查硬盘分区以及所有可用空间。 可以看到硬盘上有 `25.7GB` 的可用空间。 ``` $ sudo parted /dev/sdb print free @@ -285,20 +279,18 @@ Number Start End Size Type File system Flags 2 10.0GB 20.0GB 9999MB primary ext4 3 20.0GB 28.0GB 8001MB primary ext4 28.0GB 53.7GB 25.7GB Free Space - ``` -运行下列命令来重新调整分区大小。 我们将要重新调整(增加)分区 3的结束位置从 `28GB 到 33GB`。 +运行下列命令来重新调整分区大小。 我们将要重新调整(增加)分区 3 的结束位置,从 `28GB` 到 `33GB`。 ``` $ sudo parted [Disk Name] [resizepart] [Partition Number] [Partition New End Size] $ sudo parted /dev/sdb resizepart 3 33.0GB Information: You may need to update /etc/fstab. - ``` -运行下列命令来确认分区是否已经扩容。可以看到,分区 3 已经从`8GB`增加到`13GB`。 +运行下列命令来确认分区是否已经扩容。可以看到,分区 3 已经从 `8GB` 增加到 `13GB`。 ``` $ sudo parted /dev/sdb print @@ -322,7 +314,6 @@ $ sudo resize2fs /dev/sdb3 resize2fs 1.43.4 (31-Jan-2017) Resizing the filesystem on /dev/sdb3 to 3173952 (4k) blocks. The filesystem on /dev/sdb3 is now 3173952 (4k) blocks long. - ``` 最后,确认分区是否已经扩容。 @@ -333,12 +324,11 @@ Filesystem Size Used Avail Use% Mounted on /dev/sdb1 9.2G 5.1G 3.6G 59% /par1 /dev/sdb2 9.2G 2.1G 6.6G 24% /par2 /dev/sdb3 12G 1.1G 11G 10% /par3 - ``` -### 怎样用Parted删除分区 +### 怎样用 parted 删除分区 -我们用rm命令方便地删除未使用的分区(如果该分区不会再被用到了)。下列步骤中,我们将会删除分区 3(`/dev/sdb3`)。 +我们用 `rm` 命令方便地删除未使用的分区(如果该分区不会再被用到了)。下列步骤中,我们将会删除分区 3 (`/dev/sdb3`)。 ``` $ sudo parted [Disk Name] [rm] [Partition Number] @@ -350,7 +340,6 @@ Error: Partition(s) 3 on /dev/sdb have been written, but we have been unable to You should reboot now before making further changes. Ignore/Cancel? Ignore Information: You may need to update /etc/fstab. - ``` 我们也可以用下列的命令检查。可以看到,分区 3 已经被成功移除。 @@ -369,15 +358,15 @@ Number Start End Size Type File system Flags ``` -### 怎样用Parted命令设置/更改分区旗帜 +### 怎样用 parted 命令设置/更改分区标志 + +我们可以用下列的命令来轻易更改分区的标志。 我们将对 `/dev/sdb2` 设置 `lvm` 标志。 -我们可以用下列的命令来轻易更改分区的旗帜。 我们将对`/dev/sdb2`设置 `lvm` 旗帜。 ``` $ sudo parted [Disk Name] [set] [Partition Number] [Flags Name] [Flag On/Off] $ sudo parted /dev/sdb set 2 lvm on Information: You may need to update /etc/fstab. - ``` 我们可以列出分区来验证这次的更改。 @@ -396,7 +385,8 @@ Number Start End Size Type File system Flags ``` -如果你想知道可用的旗帜, 只需要用如下的命令。 +如果你想知道可用的标志,只需要用如下的命令。 + ``` $ (parted) help set set NUMBER FLAG STATE change the FLAG on partition NUMBER @@ -404,15 +394,15 @@ $ (parted) help set NUMBER is the partition number used by Linux. On MS-DOS disk labels, the primary partitions number from 1 to 4, logical partitions from 5 onwards. FLAG is one of: boot, root, swap, hidden, raid, lvm, lba, hp-service, palo, prep, msftres, bios_grub, atvrecv, diag, legacy_boot, msftdata, irst, esp STATE is one of: on, off - ``` -如果你想知道parted的其它可用命令, 只需要去到 `help` 页面. +如果你想知道 `parted` 的其它可用命令, 只需要去到 `help` 页面。 + ``` $ sudo parted -GNU Parted 3.2 +GNU parted 3.2 Using /dev/sda -Welcome to GNU Parted! Type 'help' to view a list of commands. +Welcome to GNU parted! Type 'help' to view a list of commands. (parted) help align-check TYPE N check partition N for TYPE(min|opt) alignment help [COMMAND] print general help, or help on COMMAND @@ -430,9 +420,8 @@ Welcome to GNU Parted! Type 'help' to view a list of commands. 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 + version display the version number and copyright information of GNU parted (parted) quit - ``` -------------------------------------------------------------------------------- @@ -440,8 +429,8 @@ Welcome to GNU Parted! Type 'help' to view a list of commands. via: https://www.2daygeek.com/how-to-manage-disk-partitions-using-parted-command/ 作者:[Magesh Maruthamuthu][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) +译者:[zyk2290](https://github.com/zyk2290) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出