linux初学者笔记(12):挂载命令

0 前言

对于外来设备,比如说光盘,u盘什么的,linux不能像windows那样能自动识别并分配盘符,在linux下需要您手动挂载。

 

1 挂载命令

1.1查询和自动挂载

查看已挂载设备 mount

依据/etc/fstab配置文件来自动挂载  mount -a

看一看fstab

注意:如果修改了这个文件,比如改了一下挂载的分区,增加或减少,都有可能导致系统崩溃

 

1.2挂载命令格式

mount [-t 文件系统]  [-o 特殊选项]  设备文件名  挂载点

文件系统,这里的一般采用ext3,ext4,ios9660  

如下是一些特殊选项

我们来做点实验

home是一个分区,在home目录下写了个脚本,注意,脚本开头#!/bin/bash这个行不能省,原因涉及到嵌套之类的课题。

我们来运行一下这个脚本,以下都做了一些试验

可见,默认挂载好的分区,里面的东西并没有执行权限(这里仅仅限于笔者的虚拟机,具体情况具体分析)

需要手工给权限chmod 755 hello.sh

还有要注意直接写hello.sh运行不起。。。

 

我们可以试一下重新挂载

首先mount -o remount,noexec /home执行后,重新挂载home分区,并且不给其可执行的权限,如此下来,就算ll下可以看到有权限,也会permission denied

然后重新挂载,给其exec权限就可以恢复正常

注意:这个地方,如果重新挂载的是boot,root之类的话,那么系统很可能会崩溃,没事别乱碰,做试验后记得恢复。

看到这里可能会觉得奇怪,貌似我们一直没写设备文件名,例如sda1什么的。其实试验中的分区,都是已经挂载好的,所以可以省略不写。

 

1.3 光盘挂载

显然光盘的挂载就需要写其设备文件名了。

当我们把光盘放入光盘时(如果是虚拟机,我们只需要载入,请看下图)

 挂载光盘,首先我们要建立挂载点,其实就是建立个目录

mkdir /mnt/cdrom/

然后挂载光盘(/dev/sr0和/dev/cdrom其实是一个文件,/dev/cdrom是/dev/sr0的软链接,可以自行ll看看)

mount -t ios9660 /dev/sr0 /mnt/cdrom/

可以简化

mount /dev/sr0 /mnt/cdrom/

这里出现提示信息的原因,其实是因为挂载的时候默认特殊选项是rw,也就是给读写权限。出现这个信息,其实也就是成功了。

看看

 

问题来了,现在我想弹出光盘,按了一下弹出键,但是linux没反应,怎么回事?

其实这里,需要用到卸载命令

umount 设备文件名或者挂载点

umount /mnt/cdrom

umount /dev/sr0

umonut /dev/cdrom

这几条都可以,因为我们刚才已经把设备文件名和挂载点挂到一起了

没有回答,就是正确。

如果你在当前目录下,那么肯定就不能卸载了。

 

 

1.4 挂载u盘(linux默认不支持ntfs文件系统)

查看u盘设备文件名 fdisk -l

一般情况下是sdb1,但也有不是的时候。u盘会被当做硬盘来处理,如果只有一块硬盘,那么这块硬盘也被记为sda,那么当有u盘插入,u盘就被记为sdb。

挂载 mount -t vfat /dev/sdb1 /mnt/usb

 

posted @ 2015-08-13 22:18  猪头劲  阅读(215)  评论(0编辑  收藏  举报