進入到了Linux系統學習之后,總體來說之前還是挺順暢的,比如各種命令敲入后都會得到相應的效果。。。。但是今天在學習Linux的掛載命令mount時可是着實讓我郁悶了很久,大概花了2個小時,各種google、baidu都發現沒有找到解決方法。。。最后卻是無意中的一次怪招使得問題一下豁然開朗,故在此專為mount命令寫篇隨筆。
一、mount 命令
首先簡單介紹一下 mount 這個命令:
在Linux系統中,如果要使用硬盤、光盤、軟盤或MO盤等存儲設備,必須先進行掛裝(Mount)。當存儲設備掛裝完成之后,就可以將其作為一個目錄來進行訪問了。掛裝設備需要使用mount命令。執行這一命令,至少要先確定下列三種信息:
2. 要掛裝(Mount)對象的設備名稱(/dev/...);
3. 要將設備掛裝(Mount)到哪一目錄。



mount /mnt/cdrom // 這命令就是把ISO掛載在/mnt/cdrom目錄中,這樣我就可以訪問里面的內容了 (必須要有root權限才能掛載)
解決以下掛載錯誤的方法: 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下掛載ISO文件的方法及心得,后續隨筆將繼續記錄學習Linux的點點滴滴!!!!!!