9.01.2011

如何掛載ISO檔及微調其Kernel參數 (II)

在上一篇文章中,我們提到如何掛載一個ISO檔:

mount -o loop /root/FreeNAS.ISO /mnt/ISO9660

第三個參數─loop到底是什麼?? 其實它是一個Device:

ls -l /dev/loop*



告訴我們,我們可以同時掛載八個ISO檔。為了證明真的可以掛載八個ISO檔,我們把原本/mnt/ISO9660/這個資料夾給刪除掉;取而代之的是建立九個ISO_X。

然後把原本的FreeNAS.ISO檔一一地掛載上去,如下圖:



由上圖可知,當我們掛載到第九個時,電腦會告訴我們一個錯誤訊息:

mount: could not find any free loop device

所以,我們就真的只能掛載到八個ISO檔。

假如,使用者需要更多的loop device時,怎麼辦?? 我們有兩個辦法可以擴充loop device。

方法1:

1. 修改modprobe.conf檔:

find / -name "modprobe.conf" -print

vi /usr/share/logwatch/default.conf/services/modprobe.conf

'#'字號開頭的行數表註解,所以我們在檔案的最後面增加這一行:

options loop max_loop=16



2. 編輯好modprobe.conf檔還不夠,在重開機時還是不會自動產生loop8~loop15。

所以,我們必須再寫一個Shell Script,讓開機的時後,自動執行這個Shell Script檔來產生:

touch /root/AddLoopDev.sh

chmod 700 /root/AddLoopDev.sh
需要開機時所執行的檔案,我們只需要讓Owner-root能夠執行即可,其它的帳號不需要有執行的權限。

vi /root/AddLoopDev.sh
新增以下程式碼:



因為是要開機時執行,所以我們編寫/etc/rc.local,新增以下這一行:

/root/AddLoopDev.sh



Reboot之後,我們就可以發現loop device已經增加為16個了:



方法2:

相較於方法1,要修改modprobe.conf,又要新增一個Shell Script檔;方法2就簡單多了。

我們只需要在開機時,微調它的kernel參數。

編輯開機選單:

vi /boot/grub/menu.lst

在第二個kernel的選項最後面,新增一個參數:max_loop=16



然後Reboot,會與方法1同樣的效果。

相關文章:如何掛載ISO檔及微調其Kernel參數 (I)

沒有留言:

張貼留言