如何在Linux下挂载硬盘

本文详细介绍了在Linux系统中如何添加并查看磁盘状况、使用fdisk进行磁盘分区、格式化分区、创建目录并挂载分区,以及设置开机自动挂载的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



1. 添加磁盘,查看磁盘状况

    

[root@db1 /]# fdisk -l

Disk /dev/sda: 10.7 GB, 10737418240 bytes

255 heads, 63 sectors/track, 1305 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *         151        1305     9277537+  83  Linux

/dev/sda2               1         150     1204843+  82  Linux swap

Partition table entries are not in disk order

Disk /dev/sdb: 5368 MB, 5368709120 bytes

255 heads, 63 sectors/track, 652 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System

 

从查询结果看出,多了一个/dev/sdb的盘

 

2. fdisk /dev/sdb 进行分区

 

[root@db1 /]# fdisk /dev/sdb

Command (m for help): n

Command action

   e   extended

   p   primary partition (1-4)

p

Partition number (1-4): 1

First cylinder (1-652, default 1):

Using default value 1

Last cylinder or +size or +sizeM or +sizeK (1-652, default 652):

Using default value 652

 

Command (m for help): w

The partition table has been altered!

 

Calling ioctl() to re-read partition table.

Syncing disks.

 

再次查看分区情况,多出来一个/dev/sdb1 的区,这个1是我们在前面指定的,如果我们指定2,就变成 sdb2了。

 

[root@db1 /]# fdisk -l

 

Disk /dev/sda: 10.7 GB, 10737418240 bytes

255 heads, 63 sectors/track, 1305 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *         151        1305     9277537+  83  Linux

/dev/sda2               1         150     1204843+  82  Linux swap

Partition table entries are not in disk order

 

Disk /dev/sdb: 5368 MB, 5368709120 bytes

255 heads, 63 sectors/track, 652 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

 

   Device Boot      Start         End      Blocks   Id  System

/dev/sdb1               1         652     5237158+  83  Linux

[root@db1 /]#

 

如果创建完之后,/proc/partitions 查看不到对应的分区,使用parprobe 命令刷新一下就可以了:

[root@web1 ~]# cat /proc/partitions 
major minor  #blocks  name


   8     0  175825944 sda
   8     1    1020096 sda1
   8     2   30716280 sda2
   8     3    8193150 sda3
[root@web1 ~]# partprobe /dev/sda
[root@web1 ~]# cat /proc/partitions 
major minor  #blocks  name


   8     0  175825944 sda
   8     1    1020096 sda1
   8     2   30716280 sda2
   8     3    8193150 sda3
   8     4  135893835 sda4
[root@web1 ~]# 



 

3. 格式化 /dev/sdb1 分区

 

[root@db1 /]# mkfs -t ext3 /dev/sdb1

mke2fs 1.35 (28-Feb-2004)

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

655360 inodes, 1309289 blocks

65464 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=1342177280

40 block groups

32768 blocks per group, 32768 fragments per group

16384 inodes per group

Superblock backups stored on blocks:

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

 

Writing inode tables: done

Creating journal (8192 blocks): done

Writing superblocks and filesystem accounting information: done

 

This filesystem will be automatically checked every 30 mounts or

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

 

4. 创建目录 并将 /dev/sdb1 挂在到该目录下

 

[root@db1 /]# ls

backup  dev   initrd      media  opt   sbin     sys       usr

bin     etc   lib         misc   proc  selinux  tftpboot  var

boot    home  lost+found  mnt    root  srv      tmp

[root@db1 /]# mkdir /u01

[root@db1 /]# ls

backup  dev   initrd      media  opt   sbin     sys       u01

bin     etc   lib         misc   proc  selinux  tftpboot  usr

boot    home  lost+found  mnt    root  srv      tmp       var

[root@db1 /]# mount /dev/sdb1 /u01

 

5. 验证挂载是否成功

[root@db1 /]# df -k

Filesystem           1K-blocks      Used Available Use% Mounted on

/dev/sda1              9131772   7066884   1601012  82% /

none                    454256         0    454256   0% /dev/shm

/dev/sdb1              5154852     43040   4849956   1% /backup

 

6. 设置开机自动挂载

 

[root@db1 /]# vi /etc/fstab

# This file is edited by fstab-sync - see 'man fstab-sync' for details

LABEL=/                 /                       ext3    defaults        1 1

none                    /dev/pts                devpts  gid=5,mode=620  0 0

none                    /dev/shm                tmpfs   defaults        0 0

none                    /proc                   proc    defaults        0 0

none                    /sys                    sysfs   defaults        0 0

LABEL=SWAP-sda2         swap                    swap    defaults        0 0

/dev/sdb1               /u01                 ext3    defaults        0 0

/dev/hdc                /media/cdrom            auto    pamconsole,exec,noauto,m

anaged 0 0

/dev/fd0                /media/floppy           auto    pamconsole,exec,noauto,m

anaged 0 0

 

 


<think>我们正在讨论Linux挂载硬盘的命令和步骤。根据引用内容,我们可以总结出以下步骤: 1. 首先,需要确定硬盘的设备名称。通常,新添加的硬盘会被识别为`/dev/sdb`、`/dev/sdc`等(第一个硬盘是`sda`,第二个是`sdb`,以此类推)。可以使用`fdisk -l`或`lsblk`命令来查看所有磁盘和分区。 2. 如果硬盘是新的,可能需要进行分区(如果已经分区可以跳过这一步)。使用`fdisk`或`parted`命令进行分区。 3. 格式化分区。使用`mkfs`命令(如`mkfs.ext4`)来创建文件系统。 4. 创建挂载点目录(比如`/mnt/data`)。 5. 使用`mount`命令将分区挂载挂载点。 6. (可选)为了重启后自动挂载,需要将挂载信息添加到`/etc/fstab`文件中。 下面我将详细说明每个步骤的命令和操作。 注意:以下操作需要root权限,所以请使用sudo或者切换到root用户。 ### 步骤1:查看磁盘信息 使用以下命令查看当前系统的磁盘情况: ```bash sudo fdisk -l ``` 或者 ```bash lsblk ``` 通过上述命令,可以找到新添加的硬盘,例如`/dev/sdb`。如果硬盘已经分区,可能会有类似`/dev/sdb1`的分区。 ### 步骤2:分区(如果尚未分区) 如果硬盘是全新的,没有分区,我们需要创建分区: ```bash sudo fdisk /dev/sdb ``` 在`fdisk`交互界面中: - 输入`n`创建新分区。 - 选择分区类型(主分区`p`或扩展分区`e`)。 - 设置分区号(1-4,默认回车即可)。 - 设置起始扇区(直接回车使用默认值)。 - 设置结束扇区(即分区大小,直接回车使用整个磁盘)。 - 输入`w`保存并退出。 分区完成后,再次使用`fdisk -l`查看,应该可以看到新分区`/dev/sdb1`。 ### 步骤3:格式化分区 使用`mkfs`命令格式化分区,例如格式化为ext4文件系统: ```bash sudo mkfs.ext4 /dev/sdb1 ``` ### 步骤4:创建挂载点 创建一个目录作为挂载点,例如: ```bash sudo mkdir /mnt/data ``` ### 步骤5:挂载分区 使用`mount`命令挂载: ```bash sudo mount /dev/sdb1 /mnt/data ``` ### 步骤6:验证挂载 使用`df -h`命令查看挂载情况: ```bash df -h ``` 如果输出中包含类似如下行,说明挂载成功: ``` /dev/sdb1 3.7T 1.2G 3.5T 1% /mnt/data ``` ### 步骤7:设置开机自动挂载(可选) 编辑`/etc/fstab`文件: ```bash sudo vim /etc/fstab ``` 在文件末尾添加一行: ``` /dev/sdb1 /mnt/data ext4 defaults 0 0 ``` 保存退出。 注意:在`fstab`中,也可以使用磁盘的UUID来代替设备名(如`/dev/sdb1`),因为设备名可能会变。可以使用`blkid`命令查看分区的UUID。 例如,使用UUID的写法: ``` UUID=12345678-9abc-def0-1234-56789abcdef0 /mnt/data ext4 defaults 0 0 ``` ### 注意事项 - 操作磁盘分区和格式化会删除数据,请确保硬盘中没有重要数据或已备份。 - 挂载点目录需要存在,否则挂载会失败。 - 在`/etc/fstab`中配置自动挂载后,可以使用`sudo mount -a`命令测试配置是否正确(不会报错即正确)。 ### 相关问题 1. Linux下如何卸载一个已挂载硬盘? 2. 如何查看Linux系统中磁盘的UUID? 3. 在Linux中如何扩展一个已有分区的大小? 4. 如何将硬盘格式化为NTFS或FAT32文件系统? 5. Linux中如何挂载网络共享(如NFS)? 希望这些步骤和命令能帮助你在Linux系统中成功挂载硬盘。如果遇到问题,可以查阅相关文档或社区支持。</think>### Linux 挂载硬盘的命令和步骤详解 在 Linux 系统中挂载硬盘需要执行以下步骤,所有操作均需 **root 权限**(使用 `sudo` 或切换到 root 用户): #### 1. **识别硬盘设备** ```bash sudo fdisk -l ``` 或 ```bash lsblk ``` 查看所有磁盘设备,新硬盘通常显示为 `/dev/sdb` 或 `/dev/nvme0n1` 等标识[^2]。 **注意**:已使用的硬盘会显示分区如 `/dev/sdb1`,新硬盘无分区号。 --- #### 2. **分区(新硬盘需执行)** ```bash sudo fdisk /dev/sdb # 替换为你的设备名 ``` 交互操作: - 输入 `n` 创建新分区 - 选择分区类型(默认主分区 `p`) - 设置分区号(默认 `1`) - 指定起始和结束扇区(直接回车使用默认值) - 输入 `w` 保存分区表 --- #### 3. **格式化分区** ```bash sudo mkfs.ext4 /dev/sdb1 # 推荐 ext4 文件系统 ``` 或 NTFS 格式: ```bash sudo mkfs.ntfs /dev/sdb1 ``` --- #### 4. **创建挂载点目录** ```bash sudo mkdir /mnt/mydisk # 创建自定义挂载目录 ``` --- #### 5. **挂载硬盘** ```bash sudo mount /dev/sdb1 /mnt/mydisk ``` --- #### 6. **验证挂载** ```bash df -h # 查看挂载状态 ``` 成功挂载显示: ``` Filesystem Size Used Avail Use% Mounted on /dev/sdb1 3.7T 1.2G 3.5T 1% /mnt/mydisk ``` [^3] --- #### 7. **设置开机自动挂载(可选)** 编辑 `/etc/fstab` 文件: ```bash sudo nano /etc/fstab ``` 添加配置行(推荐使用 UUID): ```bash UUID=xxxx-xxxx /mnt/mydisk ext4 defaults 0 0 ``` 获取 UUID: ```bash sudo blkid /dev/sdb1 ``` 测试配置: ```bash sudo mount -a # 无报错即表示配置正确 ``` --- ### 关键命令总结 | **操作** | **命令** | |----------------|----------------------------------| | 查看磁盘 | `fdisk -l` 或 `lsblk` | | 创建分区 | `fdisk /dev/sdX` | | 格式化 | `mkfs.ext4 /dev/sdX1` | | 临时挂载 | `mount /dev/sdX1 /mnt/mydisk` | | 卸载 | `umount /mnt/mydisk` | | 永久挂载 | 编辑 `/etc/fstab` 文件 | | 验证 | `df -h` 或 `mount | grep mydisk` | > ⚠️ **注意事项** > - 操作前务必备份重要数据 > - 卸载硬盘前使用 `sync` 命令确保数据写入完成 > - NTFS 硬盘需安装 `ntfs-3g` 包:`sudo apt install ntfs-3g` --- ### 相关问题 1. 如何安全卸载已挂载Linux 硬盘? 2. 硬盘挂载后提示 "只读文件系统" 如何解决? 3. 如何扩展 Linux 的根分区空间? 4. Linux 下如何格式化硬盘为 exFAT 格式? 5. 多硬盘环境下如何永久绑定设备名(避免 UUID 变化)?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值