Linux学习之CentOS(五)--让我有些郁闷的mount命令

简介:

进入到了Linux系统学习之后,总体来说之前还是挺顺畅的,比如各种命令敲入后都会得到相应的效果。。。。但是今天在学习Linux的挂载命令mount时可是着实让我郁闷了很久,大概花了2个小时,各种google、baidu都发现没有找到解决方法。。。最后却是无意中的一次怪招使得问题一下豁然开朗,故在此专为mount命令写篇随笔。

一、mount 命令

首先简单介绍一下 mount 这个命令:

在Linux系统中,如果要使用硬盘、光盘、软盘或MO盘等存储设备,必须先进行挂装(Mount)。当存储设备挂装完成之后,就可以将其作为一个目录来进行访问了。挂装设备需要使用mount命令。执行这一命令,至少要先确定下列三种信息: 

  1. 要挂装(Mount)对象的文件系统类型;
2. 要挂装(Mount)对象的设备名称(/dev/...);
3. 要将设备挂装(Mount)到哪一目录。

 

因为我是在VM虚拟机上安装的CentOS6.4 64位系统版本,如果我要将windows上的文件传到虚拟机上的Linux上的话,可以通过以下几个方法:

  1. 安装VMware-Tools,这个如果在windows上安装就特别方便,直接点击安装就行了,Linux上的安装过程在稍后的随笔中会记录下来。

  2. 挂载ISO文件,我们在windows上找到我们需要的文件,然后可以通过UltraISO(一款功能强大而又方便实用的光盘映像文件制作/编辑/转换工具),用这个来将文件制作成IOS镜像文件,然后挂载到虚拟机上的Linux系统上。

  3. 启用虚拟机上的文件共享功能,这样通过共享windows上的文件夹,将文件传给虚拟机上的Linux。(这个我发现要安装了VMware-Tools以后才可以)。

 

在这里我使用的第二种方式,通过挂载ISO文件的方式来将windows上的文件挂载到Linux系统上(有关Linux系统的分区、挂载等概念将会在后续学习中进行详细记录)

 

二、挂载ISO文件到Linux系统上

首先将需要用到的文件(jdk1.7、tomcat、eclipse等Linux版本软件)通过UltraISO这个软件制作成ISO文件,例如我取名为:linuxSoft.iso

 

首先选择虚拟机最上方的 VM -> Settings 进入到设置界面:

 

然后在右边的Use ISO image file那里选择我们刚制作好的ISO文件,(注:右上方的两个复选框必须都打上 √ )

 

点击OK,此时我们发现我们的桌面多了个虚拟光驱。。。也就是我们刚挂载的那一个iso文件

 

打开后里面就是我们刚需要的一些软件:

 

至于这些软件怎么安装将会在下一篇随笔中详细记录下来!!!

三、对mount命令的小吐槽

 

mount

mount

mount   /mnt/cdrom    // 这命令就是把ISO挂载在/mnt/cdrom目录中,这样我就可以访问里面的内容了  (必须要有root权限才能挂载)

当我在以root身份敲入了这个命令以后,报了  mount: can't find /mnt/cdrom in /etc/fstable or /etc/mtab  这个错误

于是我就google,在google上发现了一篇文章是来处理这个错误的:

 解决以下挂载错误的方法: 
mount: can't find /mnt/cdrom in /etc/fstable or /etc/mtab
 1、首先查看#cat /etc/fstab

    查看到类似下面的一行;    /dev/hdc /media/cdrecorder auto users,exec,noauto,managed 0 0  (问题的关键是我查看了fstable以后木有类似的一句)
    通过这个,我们能知道hdc 就是cdrom(dvdrom)设备 ,更是 cdrecorder的设备;为了验证我们的说法;请用ls -l 来列文件;
    # ls -lh /dev/dvd*
    lrwxrwxrwx 1 root root 3 2005-09-13 /dev/dvd -> hdc
    # ls -lh /dev/cdrom
    lrwxrwxrwx 1 root root 3 2005-09-13 /dev/cdrom -> hdc
    # ls -lh /dev/cdwriter
    lrwxrwxrwx 1 root root 3 2005-09-13 /dev/cdwriter -> hdc
    得知: dvd 、cdrom 、cdwriter 的文件名都链接到了hdc这个设备,所以光驱设备根源就是/dev/hdc ;
    得知: 通过/etc/fstab内看到的,我们可以肯定的是光盘被mount 到了/media/cdrecorder 目录; 
2、自定义cdrom 挂载的位置;
 
    比如 /mnt/cdrom ,所以我们也可以这样来挂载光驱;

    修改:/etc/fstab,把/dev/hdc /media/cdrecorder auto users,exec,noauto,managed 0 0改成:    /dev/hdc /mnt/cdrom auto users,exec,noauto,managed 0 0 再存档。 
3、建立光驱挂载目录#mkdir /mnt/cdrom 
4、指令挂载

    # mount /dev/hdc /mnt/cdrom
  或# mount /dev/cdrom /mnt/cdrom

因为找不到类似于  /dev/hdc /media/cdrecorder auto users,exec,noauto,managed 0 0  这行代码,所以这种方式设置以后失败了。。。。。

继续google,后面又陆续看了N多的帖子,总结了一下,无非就是以下几种:

mount  -t auto /mnt/cdrom /dev/cdrom /media

这个在回车以后,也是出现了错误,说在 mnt 下找不到 cdrom文件夹。。。但是我是用mkdir /mnt/cdrom 命令又一直提示我该光驱是只读的,不让创建。。。我是root用户啊!!!!再次以失败告终

此时我无意间发现了这么一个帖子,并从中受到了一些启发:mount: can't find /dev/cdrom in /etc/fstab or /etc/mtab问题解决方法,从里面可以得出一些观点:Linux系统估计根据版本不同,默认挂载的位置不同,可能挂载到 /mnt、 /dev、 /media 这三个目录下

如果说不能再 /mnt 下 挂载光驱的话,首先去 /dev/ 目录查看是否有cdrom这个文件,发现还真有,然后我又进入到了/media目录下,敲入一下命令了  ls -l 命令,结果让我震惊了!!!

[root@xiaoluo media]$ ls -l

结果为:

dr-x------. 1 xiaoluo xiaoluo 2048 3月  31 13:26 20130331_132633

发现居然在/media下面找到了我们刚挂载上去的ISO文件,然后心里一个激动,继续进入到这个目录里  ,然后ls -l,发现了我需要的所有文件!!!!

看来我安装的CentOS6.4系统默认是将ISO镜像挂载到了 /media 目录下了,所以一直用mount 命令挂载到 /mnt下没反应

于是我又通过了 卸载 命令 umount 看能否将这个ISO镜像文件从Linux上卸载掉:

[root@xiaoluo 20130331_132633]$    cd /    // 卸载时要先退到root目录下[root@xiaoluo 20130331_132633]$    umount /media/20130331_132633

然后再ls -l /media

发现刚才那个ISO已经被卸载掉了,于是心里一阵狂喜,立马想试试能否通过  mount /media重新挂载回来,结果是失望的!!!!挂载时又提示了之前的那些错误。。。于是我就一生气,然后重启了CentOS系统,在进去后发现/media目录下又自动挂载了刚选择的那个ISO文件!!!!!!

四、我的解决办法

此时我才恍然大悟,总结出了我这个问题的解决办法!!!!

在我安装的CentOS6.4  64位系统上,我如果需要挂载一个ISO文件,我就在开机的时候选择那个ISO文件,通过

这里就选择好,然后在进入了系统以后,CentOS会自动给我们挂载好该ISO文件,默认存放在了 /media/这个文件夹下!,我们如果需要用到里面的软件安装包,就直接先复制到别的目录下(因为这只是将ISO文件挂载到了CentOS上,是虚拟光驱,里面所有的文件都是只读的,我们如果需要安装,必须先将文件复制到其它路径下,这个在后续随笔中记录)

在解决这个方法中,也参考了许多朋友的帖子,并有深入 剖析 mount 命令的好贴, 在这里放出链接,希望能帮助其他未解决这个问题的朋友!!!

linux mount挂载设备(u盘,光盘,iso等 )使用说明

mount: can't find /dev/cdrom in /etc/fstab or /etc/mtab问题解决方法

Linux的mount命令简介

这篇文章记录了自己解决如何在Linux下挂载ISO文件的方法及心得,后续随笔将继续记录学习Linux的点点滴滴!!!!!!

本文转自sandshell博客51CTO博客,原文链接http://blog.51cto.com/sandshell/1947747如需转载请自行联系原作者

sandshell
相关文章
|
1天前
|
Linux Shell
Linux 中 Tail 命令的 9 个实用示例
Linux 中 Tail 命令的 9 个实用示例
17 6
Linux 中 Tail 命令的 9 个实用示例
|
6天前
|
Linux 应用服务中间件 nginx
|
1天前
|
机器学习/深度学习 安全 网络协议
Web安全-Linux网络命令
Web安全-Linux网络命令
7 1
|
6天前
|
Ubuntu Linux Shell
Linux系统命令 安装和文件相关命令
本文档详细介绍了Linux系统中的常用命令,包括软件安装卸载命令如`dpkg`和`apt-get`,压缩与解压命令如`gzip`、`bzip2`和`xz`,以及`tar`命令用于打包和解包。此外还介绍了文件分割命令`split`,文件操作命令如`cat`、`head`、`tail`、`more`、`less`等,管道命令和`wc`、`grep`、`find`、`cut`、`sort`、`uniq`、`diff`等实用工具。最后,文档还讲解了文件属性相关的命令如`chmod`、`chown`、`chgrp`以及创建硬链接和软链接的`ln`命令。
|
6天前
|
Linux Shell 网络安全
Linux 用户管理命令
本文详细介绍了Linux系统中的各类常用命令,包括用户管理(如`adduser`, `usermod`, `passwd`等)、系统操作(如关机、重启、注销)、磁盘管理(如`df`, `mkfs`, `mount`)及网络管理(如`ifconfig`, `ping`, `ssh`)等。通过具体示例展示了每个命令的基本用法和应用场景,帮助用户更好地理解和掌握Linux系统的管理和操作技巧。
|
6天前
|
存储 Ubuntu Linux
linux中的find 命令详细用法
本文介绍了如何将 `find` 命令与 `exec` 结合使用,通过具体示例展示了多种应用场景,如显示文件属性、重命名文件、收集文件大小、删除特定文件、执行工具、更改文件所有权和权限、收集 MD5 值等。文章还探讨了 `{} \;` 和 `{} +` 的区别,并演示了如何结合 `grep` 命令进行内容搜索。最后,介绍了如何在一个 `find` 命令中使用多个 `exec` 命令。这为 Linux 用户提供了强大的文件管理和自动化工具。
|
6天前
|
Shell Linux API
C语言在linux环境下执行终端命令
本文介绍了在Linux环境下使用C语言执行终端命令的方法。首先,文章描述了`system()`函数,其可以直接执行shell命令并返回结果。接着介绍了更强大的`popen()`函数,它允许程序与命令行命令交互,并详细说明了如何使用此函数及其配套的`pclose()`函数。此外,还讲解了`fork()`和`exec`系列函数,前者创建新进程,后者替换当前进程执行文件。最后,对比了`system()`与`exec`系列函数的区别,并针对不同场景推荐了合适的函数选择。
|
存储 Linux Shell
虚拟机安装(安装(克隆)虚拟机 配置网络 安装Centos7 配置(修改)虚拟机的静态IP 修改网卡的配置文件 测试网络是否互通外部工具 连接linux系统 设置服务器时间 修改主机名)(下)
虚拟机安装(安装(克隆)虚拟机 配置网络 安装Centos7 配置(修改)虚拟机的静态IP 修改网卡的配置文件 测试网络是否互通外部工具 连接linux系统 设置服务器时间 修改主机名)
418 0
|
分布式计算 Hadoop Linux
虚拟机安装(安装(克隆)虚拟机 配置网络 安装Centos7 配置(修改)虚拟机的静态IP 修改网卡的配置文件 测试网络是否互通外部工具 连接linux系统 设置服务器时间 修改主机名)(上)
虚拟机安装(安装(克隆)虚拟机 配置网络 安装Centos7 配置(修改)虚拟机的静态IP 修改网卡的配置文件 测试网络是否互通外部工具 连接linux系统 设置服务器时间 修改主机名)
386 0
|
Ubuntu Oracle 安全
CentOS 将于年底终止!Linux服务器该何去何从?
CentOS 将于年底终止!Linux服务器该何去何从?
595 0
CentOS 将于年底终止!Linux服务器该何去何从?
下一篇
DDNS