掛載與解除安裝

2021-05-24 08:44:26 字數 4877 閱讀 3518

一、linux中的硬體裝置號

設 備          設 備 號

ide硬碟         /dev/hd[a-d]   (並行硬碟)

scsi硬碟        /dev/sd[a-p]   (序列硬碟)

u盤             /dev/sd[a-p]

光碟機            /dev/cdrom

軟碟機            /dev/fd[0-1]

印表機          /dev/lp[0-2]

滑鼠            /dev/mouse

lcd             /dev/fb0

系統終端        /dev/tty0

例如:<1>當插入第乙個u盤時,它的裝置號為sda1

當插入第二個u盤時,它的裝置號為sdb1

<2>當插入第乙個硬碟時,它的裝置號為hda1

當插入第二個硬碟時,它的裝置號為hdb1

二、裝置的掛載

例程:將u盤插入arm開發板

在linux系統中,裝置在上層都被對映為裝置檔案,比如ide硬碟被對映為裝置檔案/dev/hda1,u盤被對映為裝置檔案/dev/sda1.如果使用者直接訪問這些裝置檔案,則得到的一堆二進位制**.所以,為了方便使用者的使用,linux規定,必須將該裝置檔案掛載到某一目錄下(常用的是/mnt目錄),使用者對該目錄(比如/mnt目錄)的操作(讀/寫)就是對裝置檔案的操作,也就是對裝置的操作.當然,在實際應用中,常在/mnt目錄下新建一子目錄,比如hdisk(ide硬碟)、udisk(u盤),然後將裝置檔案掛載到該子目錄下.

步驟1:將相應的檔案系統燒入arm開發板,以支援usb裝置等.

步驟2:插入u盤,此時在arm開發板的終端(putty軟體或超級終端)上會顯示該u盤的相應資訊,最重要的是u盤的裝置檔名.

當插入第乙個u盤時,該u盤的裝置檔名為/dev/sda1.

當插入第二個u盤時,該u盤的裝置檔名為/dev/sdb1.

步驟3:在putty軟體(或超級終端)下輸入命令:

[root@localhost /]#cd /mnt

[root@localhost mnt]#mkdir udisk

這樣,就在/mnt目錄下新建一子目錄udisk.

注意,在putty軟體(或超級終端)下輸入命令是對arm開發板進行操作,也就是操作arm開發板內的檔案系統.切記不要再linux虛擬機器下操作.因為現在是將u盤掛載到arm開發板上,而不是linux虛擬機器,所以,必須對arm開發板進行操作.

步驟4:在putty軟體(或超級終端)下輸入命令:

[root@localhost /]#mount -t -vfat /dev/sda1 /mnt/udisk

這樣,就成功的將u盤的裝置檔案/dev/sda1掛載到了arm開發板的/mnt/udisk目錄下,且以fat格式進行掛載.當使用者需要訪問u盤時,可以通過對檔案/mnt/udisk而實現.

注意,u盤多採用fat格式的檔案系統.

步驟5:在putty軟體(或超級終端)下輸入命令:

[root@localhost udisk]#cd ..

這樣就退出了udisk目錄.

[root@localhost udisk]#umount /mnt/udisk

這樣就成功的解除安裝了u盤(解除安裝u盤前,需要先退出/mnt/udisk目錄).

三、檔案的掛載

例程:將linux虛擬機器的/home/lishuai目錄掛載到arm系統的/mnt/arm_linux檔案下

步驟1:將相應的檔案系統燒入arm開發板.

步驟2:在linux虛擬機器上建立nfs伺服器,並將/home/lishuai目錄作為共享目錄,且設定的主機ip位址為192.168.0.*.

步驟3:<1>在linux虛擬機器終端上通過ifconfig命令設定ip位址為:192.168.0.20,並通過ifconfig命令查詢ip位址.

<2>在windows的網路上的芳鄰設定ip位址為:192.168.0.40,並通過"執行》cmd>ipconfig"命令查詢ip位址.

<3>在putty軟體或超級終端上通過ifconfig命令設定arm開發板ip位址為:192.168.0.60,子網掩碼為255.255.255.0(#ifconfig eth0 192.168.0.60 netmask 255.255.255.0)並通過ifconfig eth0命令查詢ip位址.

這樣,windows、linux虛擬機器、arm開發板就在同一網段上了.

步驟4:在putty軟體或超級終端上輸入命令:

#ping 192.168.0.20      //檢視arm開發板能否ping通linux主機

#ping 192.168.0.40      //檢視arm開發板能否ping通windows

步驟5:在putty軟體或超級終端上輸入命令:

[root@localhost /]#cd /mnt

[root@localhost mnt]#mkdir arm_linux

這樣,就在arm開發板的檔案系統中/mnt下新建了一子目錄arm_linux.

步驟6:在putty軟體或超級終端上輸入命令:

#mount -o nolock,wsize=1024,rsize=1024 192.168.0.20:/home/lishuai /mnt/arm_linux

這樣就將ip位址為192.168.0.20(linux虛擬機器)下的/home/lishuai掛載到(arm系統)的/mnt/arm_linux目錄下.

注釋:<1>若在putty軟體或超級終端上輸入上面的掛載命令,表示使用者對arm系統進行操作.由於arm內已燒入了檔案系統,故/mnt/arm_linux是arm內檔案系統的乙個目錄.因此,當使用者執行該命令時,表示是將ip位址為192.168.0.20的/home/lishuai掛載到(arm系統)的/mnt/arm_linux目錄下.因此,當使用者需要在arm系統下對linux虛擬機器的/home/lishuai目錄進行操作時,直接對/mnt/arm_linux目錄操作便可以了.

此時,在putty軟體或超級終端上輸入命令:#cd /home,但卻找不到lishuai這個目錄,這是因為在在putty軟體或超級終端上執行cd命令時,是對arm系統的訪問.而不是對linux主機進行訪問,雖然arm系統已燒入了檔案系統,但/home目錄下未必有lishuai這個目錄.

<2>若在linux虛擬機器的終端上輸入上面的掛載命令,表示使用者對linux主機進行操作.當然在linux主機內已有相應的檔案系統.故/mnt/arm_linux是linux主機的乙個目錄.因此,當使用者執行該命令時,表示將ip位址為192.168.0.20的/home/lishuai掛載到linux主機的/mnt/arm_linux目錄下.因此,當使用者需要在linux主機下對ip位址為192.168.0.20的裝置的/home/lishuai目錄進行操作時,直接對/mnt/arm_linux目錄操作便可以了.

從上面的描述可以看出,執行的物件不同,實現的掛載目的也不同.

四、對裝置掛載、檔案掛載的綜合實現

例程:將windows下的某個檔案通過arm開發板放入u盤

步驟1:通過samba伺服器將windows下的檔案hehe.txt放入(linux與windows的)共享目錄/home/lishuai內.

步驟2:通過nfs伺服器將linux主機的/home/lishuai目錄掛載到arm開發板的/mnt/arm_linux目錄下.

在putty軟體或超級終端上輸入命令:

#mount -o nolock,wsize=1024,rsize=1024 192.168.0.20:/home/lishuai /mnt/arm_linux

步驟3:將u盤掛載到arm開發板的/mnt/udisk目錄下.

在putty軟體或超級終端上輸入命令:

#mount -t -vfat /dev/sda1 /mnt/udisk

步驟4:在putty軟體或超級終端上輸入命令:

#cd /mnt/udisk

#cp ../arm_linux/hehe.txt ./

這樣就實現了將windows下的某個檔案通過arm開發板放入u盤的目的.

步驟5:解除安裝u盤和linux虛擬機器的/home/lishuai目錄.

在putty軟體或超級終端上輸入命令:

[root@localhost udisk]#cd ..

[root@localhost mnt]#umount /mnt/arm_linux

[root@localhost mnt]#umount /mnt/udisk

五、裝置號的另類應用

(1)通常向lcd上寫這些重定向,是寫到tty0,而不是fb0.

(2)使用nfs實現檔案掛載時,必須保證下面幾點.

<1>linux主機的nfs伺服器正常使用.

若有問題,可通過指令重啟伺服器:#service nfs restart

或查詢伺服器狀態:#service nfs status

<2>windows、linux主機和arm開發板的ip位址在同一網段內,且通過arm開發板可以ping通另外兩個裝置.因為檔案掛載是通過網路實現的.

(3)在實際的嵌入式開發中,常常無法將linux主機的某個目錄掛載到arm開發板上,此時可以從以下三個方面著手:

<1>由於這種掛載依賴於nfs伺服器,因此可以查詢nfs伺服器的狀態,或者重啟nfs伺服器.

#service nfs restart

#service nfs status

<2>重新配置linux虛擬機器的ip位址.這種掛載基於arm開發板、linux主機和windows網絡卡在同一網段上,有時相互之間ping通但卻無法掛載.

<3>在linux主機內輸入命令來檢視linux主機是否能掛載自己.

#ifconfig eth0 192.168.0.50

#mount -o nolock 192.168.0.50:/home/lishuai /mnt

//將linux主機的/home/lishuai目錄掛載到本機的/mnt目錄下

磁碟的掛載與解除安裝

什麼是掛載點?掛載點是乙個目錄,目錄示進入磁碟分割槽 檔案系統 的入口。掛載前需要注意的事項 單一檔案系統不應該被重複掛載在不同的掛載點中 單一目錄不應該重複掛載多個檔案系統 作為掛載點的目錄理論上都應該示空目錄。如果非空,在掛載之後,這個目錄中原先的檔案的會暫時消失,會顯示新掛載的那個檔案系統,當...

mount掛載與umount解除安裝

mount掛載與umount解除安裝 author headsen chen 2017 10 23 15 13 51 mount 掛載 eg mount dev cdrom mnt 掛載本地的光碟 mount t nfs 192.168.1.2 a b nfs掛載情況 centos上掛載u盤例項 如...

實現udev mdev自動掛載與解除安裝

mdev是busybox中的乙個udev管理程式的乙個精簡版,他也可以實現裝置節點的自動建立和裝置的自動掛載,只是在實現的過程中有點差異,在發生熱插拔時間的時候,mdev是被hotplug直接呼叫,這時mdev通過環境變數中的 action 和 devpath,來確定此次熱插拔事件的動作以及影響了 ...