一、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,來確定此次熱插拔事件的動作以及影響了 ...