Linux系统 为什么新增的磁盘无法使用,需要挂载?

关于挂载的作用一直不是很清楚,今天在阅读教材时看见了mount这个命令,发现它的用处很隐晦但非常强大。奈何教材说的不明朗,因此在网上整合了一些优秀的解释,看完之后豁然开朗。

  1. 提一句Windows下,mount挂载,就是给磁盘分区提供一个盘符(C,D,E,...)。比如插入U盘后系统自动分配给了它I:盘符其实就是挂载,退优盘的时候进行安全弹出,其实就是卸载unmount。

  2. Linux下,不像Windows可以有C,D,E,多个目录,Linux只有一个根目录/。在装系统时,我们分配给linux的所有区都在/下的某个位置,比如/home等等。

  3. 插入了新硬盘,分了新磁盘区sdb1。它现在还不属于/。

  4. 我们虽然可以在一些图形桌面系统里找到他的位置,浏览管理里面的文件,但在命令行却不知怎么访问它的目录,比如无法使用cd或者ls。也无法在编程时指定一个目录对它操作。

  5. 这时提问者使用了 mount /dev/sdb1 ~/Share/ ,把新硬盘的区sdb1挂载到工作目录的~/Share/文件夹下,之后访问这个~/Share/文件夹就相当于访问这个硬盘2的sdb1分区了。对/Share/的任何操作,都相当于对sdb1里文件的操作。

  6. 所以Linux下,mount挂载的作用,就是将一个设备(通常是存储设备)挂接到一个已存在的目录上。访问这个目录就是访问该存储设备。

  7. linux操作系统将所有的设备都看作文件,它将整个计算机的资源都整合成一个大的文件目录。我们要访问存储设备中的文件,必须将文件所在的分区挂载到一个已存在的目录上,然后通过访问这个目录来访问存储设备。挂载就是把设备放在一个目录下,让系统知道怎么管理这个设备里的文件,了解这个存储设备的可读写特性之类的过程。

  8. 我们不是有/dev/sdb1 吗,直接对它操作不就行了?这不是它的目录吗?

  9. 这不是它的目录。虽然/dev是个目录,但/dev/sdb1不是目录。可以发现ls/dev/sdb1无法执行。/dev/sdb1,是一个类似指针的东西,指向这个分区的原始数据块。mount前,系统并不知道这个数据块哪部分数据代表文件,如何对它们操作。

  10. 插入CD,系统其实自动执行了 mount /dev/cdrom /media/cdrom。所以可以直接在/media/cdrom中对CD中的内容进行管理。

Linux系统挂载机械磁盘通常包括以下几个步骤: 1. 首先,需要确定机械磁盘系统中的设备文件名。这可以通过查看`/dev/`目录下的设备文件来完成,例如使用`lsblk`或`fdisk -l`命令来列出所有磁盘设备。 2. 创建一个目录作为挂载点,使用`mkdir`命令。例如,创建一个名为`/mnt/disk1`的目录: ``` sudo mkdir /mnt/disk1 ``` 3. 使用`mount`命令将磁盘挂载到创建的挂载点。假设磁盘被识别为`/dev/sdb1`,挂载命令如下: ``` sudo mount /dev/sdb1 /mnt/disk1 ``` 4. 如果需要开机自动挂载需要编辑`/etc/fstab`文件,添加一行配置信息。这个配置信息包括设备文件名、挂载点、文件系统类型、挂载选项、dump选项和fsck顺序。例如: ``` /dev/sdb1 /mnt/disk1 ext4 defaults 0 2 ``` 其中`ext4`是文件系统类型,对于大多数Linux发行版,机械磁盘通常是`ext4`格式。`defaults`是挂载选项,表示默认的挂载方式。`0`表示不进行备份,`2`表示在启动时检查文件系统(根文件系统通常是`1`,其他文件系统是`2`)。 5. 挂载之后,可以使用`df -h`命令查看磁盘挂载情况。 6. 如果要卸载磁盘,可以使用`umount`命令,如: ``` sudo umount /mnt/disk1 ``` 在挂载之前,确保磁盘已经格式化,并且已经创建了文件系统。对于新硬盘或未格式化的硬盘,可能需要先进行分区和格式化,使用`fdisk`或`parted`进行分区,`mkfs`命令进行格式化。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值