帕克系统网 - 帕克系统家园专业干净的系统网站
最新更新 系统重装教程(一看就会视频+图文版)
当前位置: 首页 > 系统教程 > Linux系统

Linux系统下添加硬盘+分区+格式化详解

更新日期:2023-11-19 16:53:11

来源:[db:来源]

手机扫码继续观看

在我们添加硬盘前,首先要了解linux系统下对硬盘和分区的命名方法。在Linux下对IDE的设备是以hd命名的,第一个ide设备是hda,第二个是hdb。依此类推我们一般主板上有两个IDE接口,一共可以安装四个IDE设备。主IDE上的两个设备分别对应hda和hdb,第二个IDE口上的两个设备对应hdc和hdd。一般我们的硬盘安装在主IDE的主接口上,所以是hda光驱一般安装在第二个IDE的主接口上,所以是hdc(应为hdb是用来命名主IDE上的从接口)SCSI接口设备是用sd命名的,第一个设备是sda,第二个是sdb。依此类推分区是用设备名称加数字命名的。例如hda1代表hda这个硬盘设备上的第一个分区。每个硬盘可以最多有四个主分区,作用是1-4命名硬盘的主分区。逻辑分区是从5开始的,每多一个分区,数字加以就可以。比如我们一般的系统都有一个主分区用来引导系统,这个分区对应我们常说的C区,在linux下命名是hda1。后面我们分三个逻辑分区对应常说的D、E、F,在linux下命名是hda5、hda6、hda7给硬盘分区

在slackware下有两个分区软件fdisk和cfdisk在slackware下有两个分区软件fdisk和cfdisk

例如我们已经有一个硬盘了,现在添加另一个硬盘到系统那么我们根据命名规则知道这个新添加的硬盘应该是hdb。我们用下面命令给硬盘分区fdisk /dev/hdb你也可以用cfdisk来分区,命令如下cfdisk /dev/hdb格式化硬盘

格式化成ext3格式格式化成ext3格式

mkfsext3 /dev/hdb1格式化成reiserfs的格式mkfsreiserfs /dev/hdb1让硬盘启动自动挂载

例如挂载/dev/hdb1分区到/mnt/hd目录下例如挂载/dev/hdb1分区到/mnt/hd目录下

用vi编辑/etc/fstab文件,加入如下内容/dev/dhb1 /mnt/hd reiserfs defaults 1 1

1, 介绍

LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分 LVM

区管理的灵活性。前面谈到,LVM是在磁盘分区和文件系统之间添加的一个逻辑层,来为文件系统屏蔽下层磁盘分区布局,提供一个抽象的盘卷,在盘卷上建立文件系统。物理卷(physical volume)物理卷就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。

2,创建

[root@cn-iss-install-01 mapper]# fdisk -l

[root@cn-iss-install-01 mapper]# fdisk /dev/sdb

Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel

Building a new DOS disklabel with disk identifier 0x874c7742

Changes will remain in memory only, until you decide to write them

After that, of course, the previous content won't be recoverable

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated It's strongly recommended to

switch off the mode (command 'c') and change display units to

sectors (command 'u')

Command (m for help): m

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)

Command (m for help): p

Disk /dev/sdb: 966 GB, 96636764160 bytes

255 heads, 63 sectors/track, 11748 cylinders

Units = cylinders of 16065 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x874c7742

Device Boot Start End Blocks Id System

Command (m for help): n

Command action

e extended

p primary partition (1-4)

p

Partition number (1-4): 1

First cylinder (1-11748, default 1):

Using default value 1

Last cylinder, +cylinders or +size{K,M,G} (1-11748, default 11748): +80G

Command (m for help): p

Disk /dev/sdb: 966 GB, 96636764160 bytes

255 heads, 63 sectors/track, 11748 cylinders

Units = cylinders of 16065 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x874c7742

Device Boot Start End Blocks Id System

/dev/sdb1 1 10444 83891398+ 5 Extended

Command (m for help): w

The partition table has been altered!

Calling ioctl() to re-read partition table

Syncing disks

[root@cn-iss-install-01 mapper]#reboot or

[root@cn-iss-install-01 Packages]# partprobe

[root@cn-iss-install-01 ~]# fdisk -l

Disk /dev/sda: 172 GB, 17179869184 bytes

64 heads, 32 sectors/track, 16384 cylinders

Units = cylinders of 2048 512 = 1048576 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x0005b1c0

Device Boot Start End Blocks Id System

/dev/sda1 2 251 256000 83 Linux

Partition 1 does not end on cylinder boundary

/dev/sda2 252 16384 16520192 8e Linux LVM

Partition 2 does not end on cylinder boundary

Disk /dev/sdb: 966 GB, 96636764160 bytes

255 heads, 63 sectors/track, 11748 cylinders

Units = cylinders of 16065 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x874c7742

Device Boot Start End Blocks Id System

/dev/sdb1 1 10444 83891398+ 5 Extended

Disk /dev/mapper/VG00-LV_rootfs: 164 GB, 16374562816 bytes

255 heads, 63 sectors/track, 1990 cylinders

Units = cylinders of 16065 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x00000000

Disk /dev/mapper/VG00-LV_swap: 536 MB, 536870912 bytes

255 heads, 63 sectors/track, 65 cylinders

Units = cylinders of 16065 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x00000000

[root@cn-iss-install-01 ~]#

[root@cn-iss-install-01 Packages]# pvcreate /dev/sdb1

Writing physical volume data to disk "/dev/sdb1"

Physical volume "/dev/sdb1" successfully created

[root@cn-iss-install-01 Packages]#

[root@cn-iss-install-01 Packages]# vgcreate vg03 /dev/sdb1

Volume group "vg03" successfully created

[root@cn-iss-install-01 Packages]# lvcreate -L 83G -n vgdata vg03

[root@cn-iss-install-01 Packages]# mke2fs /dev/vg03/vgdata

mke2fs 14112 (17-May-2010)

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

Stride=0 blocks, Stripe width=0 blocks

5439488 inodes, 21757952 blocks

1087897 blocks (500%) reserved for the super user

First data block=0

Maximum filesystem blocks=4294967296

664 block groups

32768 blocks per group, 32768 fragments per group

8192 inodes per group

Superblock backups stored on blocks:

32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,

4096000, 7962624, 11239424, 20480000

Writing inode tables: done

Writing superblocks and filesystem accounting information:

done

This filesystem will be automatically checked every 23 mounts or

180 days, whichever comes first Use tune2fs -c or -i to override

[root@cn-iss-install-01 Packages]#

[root@cn-iss-install-01 Packages]#

[root@cn-iss-install-01 Packages]# mkf

mkfifo mkfscramfs mkfsext3 mkfsext4dev

mkfs mkfsext2 mkfsext4

[root@cn-iss-install-01 Packages]# mkfsext4 /dev/vg03/vgdata

mke2fs 14112 (17-May-2010)

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

Stride=0 blocks, Stripe width=0 blocks

5439488 inodes, 21757952 blocks

1087897 blocks (500%) reserved for the super user

First data block=0

Maximum filesystem blocks=4294967296

664 block groups

32768 blocks per group, 32768 fragments per group

8192 inodes per group

Superblock backups stored on blocks:

32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,

4096000, 7962624, 11239424, 20480000

Writing inode tables: done

Creating journal (32768 blocks): done

Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 37 mounts or

180 days, whichever comes first Use tune2fs -c or -i to override

[root@cn-iss-install-01 Packages]#

[root@cn-iss-install-01 spool]# mount /dev/vg03/vgdata /var/spool/repo/

[root@cn-iss-install-01 spool]# cd repo/

[root@cn-iss-install-01 repo]# ls

lost+found

[root@cn-iss-install-01 repo]# pwd

/var/spool/repo

[root@cn-iss-install-01 repo]#

3,常用检查命令:

[root@cn-iss-install-01 /]# pvdisplay

[root@cn-iss-install-01 /]# vgdisplay

[root@cn-iss-install-01 /]# lvdisplay

[root@cn-iss-install-01 /]# pvcreate

Please enter a physical volume path

Run `pvcreate --help' for more information

[root@cn-iss-install-01 /]# vgcreate

Please provide volume group name and physical volumes

Run `vgcreate --help' for more information

[root@cn-iss-install-01 /]# lvcreate

Please provide a volume group name

Run `lvcreate --help' for more information

[root@cn-iss-install-01 /]# vgextend

Please enter volume group name and physical volume(s)

Run `vgextend --help' for more information

[root@cn-iss-install-01 /]# lvextend

Please specify either size or extents but not both

Run `lvextend --help' for more information

[root@cn-iss-install-01 /]#

在 Linux 中创建分区或新的文件系统通常意味着一件事:安装 Gnome Parted 分区编辑器(GParted)。对于大多数 Linux 用户而言,这是唯一的办法。不过,你是否考虑过在终端创建这些分区和文件系统当然可以!以下就是方法!

使用 CFdisk 创建一个基本的 Linux 分区

以下是如何在命令行中创建一个基本的 Linux 分区的正确方案。要做的第一件事就是先打开你的终端。若你已打开,你需要找到你想要创建分区的磁盘。这可以使用一个简单的命令来找到。

复制代码

代码如下:

lsblk

 当你运行了 lsblk,你应该会看到当前系统上每个磁盘的详细列表。看看这个列表,然后找出你想要使用的磁盘。在本文中,我将使用 sdb 来进行演示。

在终端输入这个命令。它会显示一个功能强大的基于终端的分区编辑程序。

代码如下:

sudo cfdisk /dev/sdb

 注意: 使用在 lsblk 命令输出的你想要使用的磁盘来替换 sdb。

当输入此命令后,你将进入分区编辑器中,然后访问你想改变的磁盘。

由于磁盘分区的不同,这取决于用户的需求,这部分的指南将在 如何建立一个分离的 Linux home/root 分区布局。

首先,需要创建根分区。这需要根据磁盘的字节数来进行分割。我测试的磁盘是 32 GB。

在 CFdisk 中使用键盘上的方向键选择需要分配的空间。你找到后,请使用箭头键选择 [ NEW ],然后按 Enter 键。

 该程序会要求你输入分区大小。一旦你指定好大小后,按 Enter 键。这将被称为根分区(或 /dev/sdb1)。

接下来该创建 home 分区(/dev/sdb2)了。你需要在 CFdisk 中再选择一些空闲分区。使用箭头选择 [ NEW ] 选项,然后按 Enter 键。输入你的 home 分区的大小,然后按 Enter 键来创建它。

 最后,需要创建交换分区。像前两次一样,先找一些空闲分区,并使用箭头选择 [ NEW ] 选项。之后,算下你 Linux 想使用多大的交换分区。

注意: 交换分区通常和计算机的内存差不多大。

 现在,创建了交换分区,该指定其类型。使用上下箭头来选择它。之后,使用左右箭头选择 [ TYPE ] 。找到 Linux swap 选项,然后按 Enter 键。

 所有分区创建后。然后就是将其写入到磁盘。使用右箭头键,选择 [ WRITE ] 选项,然后按 Enter 键。这将直接将新创建的分布写入到磁盘中。

使用 mkfs 创建文件系统

有时候,你并不需要一个整个重新分区,你只想要创建一个文件系统而已。你可以在终端直接使用 mkfs 命令来实现。

 首先,找出你要使用的磁盘。在终端输入 lsblk 找出来。它会打印出列表,之后只要找到你想创建文件系统的分区或盘符。

在这个例子中,我将使用第二个硬盘的 /dev/sdb1 作为第一个分区。可以对 /dev/sdb 使用 mkfs(这将会使用整个分区)。

 要在一个特定的分区上创建新文件系统,只需输入

复制代码

代码如下:

sudo mkfsext4 /dev/sdb1

在终端。应当指出的是,mkfsext4 可以换成任何你想要使用的的文件系统。

PS:使用 GParted 调整分区

在 Linux 中调整分区最简单的方法是使用 GUI GParted 程序。尽管您可以从您的常规 Linux 安装下运行 GParted ,但是它拒绝在任何当前挂载的分区上进行操作。因此,您不能调整根目录(/)或者其他对操作系统功能来说至关重要的分区。在这我将介绍如何使用一个 Linux 紧急引导磁盘实现您的更改。该磁盘被引导之后,您可以运行 GParted ,就像您从一个常规系统运行那样,使用即指即点操作来告知软件您想进行什么操作。先把软件安装上吧。直接在终端下键入gparted,得到提示输入sudo apt-get install gparted,依样画葫芦,从网络下载完成。

1运行一个紧急磁盘

现在有许多 Linux 紧急磁盘(emergency discs),比如 PartedMagic 和 SystemRescueCd(见 参考资料)。您也可以使用您的 Linux 安装介质,许多版本都包括一个救援模式(rescue mode),支持访问 GParted 或者类似的实用工具。为了说明问题,我将介绍 PartedMagic 411 的使用;然而,笼统地说其他使用工具也是类似的。但是,需要以不同的方式启动 GParted。

多数紧急磁盘是以 x86(32 位)的形式出现的,但是这些磁盘在 x86-64(64 位)计算机中也能很好地工作,甚至系统运行 64 位版本的 Linux 也可以。文件系统数据结构不受中央处理器(CPU)架构的影响。如果您要在其他的机器上运行,除了标准个人电脑(PC),比如 Macintosh,您需要检查您的紧急磁盘能否同您的硬件一起工作。

一般情况下,您必须引导一个紧急磁盘,就像您引导一个 Linux 安装磁盘那样。在一些系统上,插入磁盘然后重新引导计算机执行该任务。在有些系统上,您必须按一个功能键来选择引导设备,或者调整一个基本输入/输出系统(BIOS)选项来从光驱引导,而不从硬盘引导。关于如何执行该操作的具体细节是根据系统而定的,您需要查阅手册页获取详细信息。

当您引导 PartedMagic 时,出现一个引导菜单。选择 Default settings (ns from RAM) 引导到标准系统。系统引导时,您可以看到出现一个桌面,其中含有常用工具的图标,包括一个启动 GParted 的 Partition Editor。双击这个图标开始调整您的分区大小。

2告知 GParted 关于您的更改

要调整一个分区,右键单击它,然后从下拉菜单选择 Resize/Move。结果是出现如图所示的对话框。您可以使用图形滑块或者文本输入域调整分区大小和位置。

 将其开始点向右移动为 /dev/sdb5 的扩展腾出空间。

您也要在调整 /dev/sdb5 大小之前将交换分区(/dev/sdb6)向右移动。另一种情况是,您可以删除和重新创建交换分区;然而,这可能需要修改 UUID 引用来交换 /etc/fstab 中的空间,当交换空间被移动后,您可以扩展 /dev/sdb5。

如果您想要从逻辑分区腾出空间给主分区,您必须显式地调整围绕逻辑分区的扩展分区,反之一样。您可以像调整其他任何分区那样做;然而您将发现点击其列表条目比起点击上述分区列表的图表中的条目更为容易。

GParted 不允许您调整正在使用的分区。比如在分区的条目旁边有一个锁形图标。您可以右键单击分区并选择 Unmount 卸载它。注意如果扩展分区其中包含的任何一个分区(包括交换空间)正在使用,那么它是以这种方式锁定的。

3在 GParted 中实现您的更改

在您向 GParted 通知您的更改之后,您必须通过选择 Edit Apply All Operations 菜单项或者单击 Apply 图标实现它。结果是出现一个进度对话框,概述程序正在执行的一切。如果您决定撤销操作,可以使用 GParted 的 undo 功能或者不应用您的更改直接从程序退出,那么您的磁盘将未有任何变化。

分区调整操作需要花费一定时间来完成,从一秒钟到几个小时不等,取决于改变的本质和移动数据的多少。无论在何种情况下您都不能中断正在运行的操作!如果这样做将会破坏文件系统,导致数据无法恢复。

该文章是否有帮助到您?
Windows 10 系统在线下载
Windows 10 是迄今为止最好的 Windows|前往下载,成就你的非凡
立即下载 视频教程:如何安装该系统?
常见问题
系统下载排行

热门关键词
专题
安卓下载 更多
手机上观看
扫码手机上观看