當前位置:首頁 » 服務存儲 » linux系統中外部存儲設備的使用方法
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

linux系統中外部存儲設備的使用方法

發布時間: 2023-07-05 04:44:08

⑴ linux如何掛載存儲設備在線等,急!急!急!

mount命令用於掛載文件系統,格式為:「mount 文件系統 掛載目錄」:
比如將光碟文件掛載:「mount /dev/cdrom /media/cdrom」。
再比如需要將設備」/dev/sdb2「掛載到」/backup「目錄,文件格式為ext4:
執行命令:mount /dev/sdb2 /backup
Linux的掛載其實很簡單的,推薦看下書《Linux就該這么學》的第六章的第四小節有詳細講到哦。

⑵ 用什麼命令可以查看linux外接的存儲設備信息

1、打開linux客戶端。

注意事項:

Linux不僅系統性能穩定,而且是開源軟體。其核心防火牆組件性能高效、配置簡單,保證了系統的安全。在很多企業網路中,為了追求速度和安全,Linux操作系統不僅僅是被網路運維人員當作伺服器使用,Linux既可以當作伺服器,又可以當作網路防火牆是Linux的 一大亮點。

⑶ 怎樣在linux系統下直接打開移動硬碟

的一個非常好的文章可以清楚地解釋如何啟動火線和USB設備 Linux操作系統的原理。

希望它在對任何有興趣把Linux操作系統安裝到外部設備的人有所幫助。
原始的網址

從火線設備上啟動Linux

可移動驅動器上安裝Linux操作系統

難度等級:中等

Martyn Honeyford([email protected]) IBM英國實驗室 軟體工程師
宣可達([email protected])翻譯 webzi@linuxsir

2004年7月15日
2005年7月26日開始翻譯,7月28日完成。
翻譯經驗不多。如有不妥,歡迎EMAIL交流。

使用一個外部驅動器是一個極棒的方法,能給你的老硬體帶來新生和讓你在你不能(或者不想)改變內置硬碟的計算機上使用Linux系統。
假設你想使用Linux在一個雙啟動環境,但是你的計算機硬碟又沒有任何空餘的空間。一種解決方法是使用"live"的linux發行版本象是Knoppix,他們這能直接從CD啟動運行。 對於偶爾使用,這是一種可行的辦法,但是它有若乾的劣勢:

*你將會仍然需要些固定文件存儲。如果你只是操作少量的文件,一張1.44MB的磁碟就可以勝任,或者一個USB快閃記憶體棒適合中等量的文件,但是這些都不夠理想。
*當使用一個LiveCD 的時候,最困難、最糟糕、最不可能的是安裝你自己的應用程序或者定製現存的程序。
*使用LiveCD在性能上的犧牲,在啟動初所有的設備檢測時尤為明顯,同樣發生使用中(所有的文件從 CD 載入通常是比從硬碟中載入慢的多)。

的確,還有其他可選方案。舉例來說,你可以買額外的內置驅動器並且在此安裝Linux操作系統。但是常常,你可能沒有任何空閑的擴展阜。(這特別容易發生在筆記本上,通常他們只允許一個內置硬碟。)

或者,你可以使用一個較大的硬碟取代當前的硬碟, 獲得額外空間用於安裝 Linux操作系統。 然而,這的確是一個耗費大量時間的方案,需要你重新安裝現有的操作系統在新的硬碟, 重新安裝和配置你所有應用程序, 和恢復所有數據。

更好的解決方案是購買一個外置硬碟並安裝 Linux操作系統。 這樣使得你在想使用Linux系統時候不必涉及現有的硬體和軟體而只是簡單連接外部驅動器。

可選的可移動設備

可用於安裝Linux操作系統設備涵蓋磁碟驅動器、USB-快閃記憶體設備、通過USB/火線連接的硬碟等等。

在一個小容量的設備中安裝linux是可行的,例如在一個1.44MB的磁碟或者一個32MB的USB棒中,他們通常(必須)為特定目的定製,採用裁減的發行版本,例如,拯救中斷的安裝過程。

外置的硬碟在為使用一個常規目的的linux系統提供最大的靈活性同時,帶來一個合理的成本。

許多不同的廠商提供許多種不同容量的外置的驅動器。 (Maxtor, 西西部數據, 等等)。這些驅動器還會包含一個外置盒子,用於固定標準的 3-1/2 寸或 2-1/2 寸 IDE 硬碟。 然後這些驅動器經由 USB 或 IEEE1394(火線) 連接到計算機。

USB 受到在二個主要的版本中的影響,1.1 和 2.0. 1.1 版速度為12 Mbit/ s(每秒1Mbit) ,而 2.0 版支持最高達到 480 Mbit/s 的傳輸速度。 大多數2.0相容的驅動器也向後兼容1.1,通常建議盡量不要採用1.1介面除非沒有其他的選擇(因為其低速不適應此環境。)

火線標准也定義若干不同的速度, 實際上,大部分人所指的FireWire ,是「FireWire400」標准 ,支持最大傳輸速度為 400 Mbit/s 。

USB2.0和火線在速度上不分伯仲: 雖然 USB 2.0 有比較高的傳輸速度, 但是實際中因為協議的不同兩者速度十分的接近。 如果你的計算機擁有2種介面, 最好使用USB而非火線(理由我將後將解釋), 但是如果只有火線介面,當然你就選擇它了。為了實現最大的靈活性, 可以選擇眾多同時支持 USB 2.0 和火線的驅動器中的一種。(像我稍後將在這一個文章中使用的那個一樣。)

對於那些沒有必須的介面, PCI(對於桌面) 和 PCMCIA(對於筆記本型電腦) ,現在火線和USB 2.0擴展卡也並非貴不可及: 舉例來說, 我稍後將在文章中提及PCMCIA火線擴展卡大約為10英鎊.($20 美元以下)

為了達到本文的目的,我已經購買 5-1/4寸外置驅動器的硬碟盒。 這是一件非常靈活的硬碟盒,並沒提供驅動器而且能固定任何的標准 IDE 設備,包括 3-1/2 寸驅動器和像CD-RW/DVD-RW等5-1/4 寸 IDE 設備 。硬碟盒兼有 USB 2.0 和火線介面。

為了把硬碟盒連接到我的IBM Thinkpad T30筆記本電腦,我也購買了一個 PCMCIA 火線轉接卡。 ( 因為內置的USB 介面只支持USB 1.1)

硬碟盒和火線轉接卡相對比較便宜。 (大約分別為50英鎊和10英鎊。)

測試期間, 我把一個手邊閑置的13 GB 3-1/2 寸 IDE 硬碟放進硬碟盒——對於真實情況,我會買一個較大的容量驅動器, 現在另購一個硬碟相當低廉( 大約每個50英鎊!)

Linux 支持

正如你所期待,linux對這些硬碟盒支持的確非常好。任何遵從SBP(串列匯流排協議)標準的大儲存設備在linux中使用非常簡單。

大體上, 使對這些裝置的支持你能夠將會需要在你的核心中支持某些選項( 或直接地編譯或通過模塊。)

對於USB和火線,SBP 裝置通過SCSI模擬來實現-- 也就是說,Linux會把他們當作SCSI硬碟來處理 。 這是在 Linux 世界裡面使用存儲設備的一個常規方法。 ( 舉例來說, IDE CD/DVD設備通常通過SCSI模擬來連接)。基於以上原因,下列的選項需要被內核支持:

* SCSI support
* SCSI emulation
* SCSI disk support

除此之外,不同連接方式需要一下的內核支持:

* 針對火線:
* IEEE1394 support
* OHCI1394 support
* RAW1394 support
* SBP-2 support

* 針對USB:
*(host-side) USB support
* OHCI support
* UHCI support
* USB mass-storage support

明顯地,你還必須為其他的硬體 ( 如顯卡等等)編譯常規的支持, 而且可能需要一些額外的模塊,取決你的具體硬體。

舉例來說,我正在使用 PCMCIA(cardbus) 火線轉接卡,因此,我還需要增加:

* PCMCIA support
* cardbus support

安裝

現在我們有很完美外置驅動器,我們將開始安裝在其安裝Linux美妙之旅。

目前最簡單的安裝linux方法(當然僅個人意見) , 是連接你的所有硬體;(我的情況是,插入火線轉接卡,連上轉接線盒驅動器,然後打開驅動器的電源) 然後從你選擇的發行版安裝CD上啟動你的計算機。

我採用的發行版是Gentoo(資源詳見鏈接),因此,我用了最新的 「通用」x86 LiveCD。 (2004.1) 其他的發行版本必須的步驟大致和此相似。

一旦你使用安裝CD啟動,要藉由一點運氣讓他要辨認出你的驅動器。 磁碟應該出現在/dev/sdX, X 是一個小寫字母從「a」開始。 在我的系統上,外置硬碟被當做 /dev/sda, 但是如果你有其他的 SCSI硬碟,這數字將會改變;( 或模擬了SCSI硬碟) 那種情況下,它可能是 /dev/sdb 或一些其他的字母。 如果你的驅動器不能被自動檢測到, 就需要進一步採取措施 -- 舉例來說,你可能必須打開啟動選項使用火線或者PCMCIA介面, 或你可能必須手動裝載一些內核模塊 , 或其他一類選項。 (資源詳見故障發現與維修指導鏈接)

一旦驅動器被辨認出來,安裝過程種其運作起來就像一個內置的硬碟。然後就你可以對其分區並且用常規方法安裝linux。

有一句話我著重要提醒,小心選擇何處安裝boot loader(通常是GRUB和LILO)--我建議不要裝到主引導記錄(MBR)中( 通常是默認值) 而是裝到外置驅動器的根分區 ( 或/boot分區,如果你單獨分了一個話)。

既然我們已經安裝 Linux 在這個設備上,我們想要從上面啟動它。 事情到此開始變的有點復雜了。

啟動

在我前討論在如何的新驅動器上面啟動,我要講解一些boot loader的小知識。

boot loader程序通常安裝在計算機的第一個硬碟的MBR上。 當boot loader被調用 (BIOS自動地運行MBR里的代碼),它通常顯示一份可啟動操作系統的菜單。以便選擇一個給定的操作系統啟動計算機。

兩件細節在這個章節中應該注意:

* 操作系統選擇菜單(通常)從磁碟中載入。
*為了啟動有關的操作系統, boot loader 需要從磁碟中讀取相關的內核。

在操作系統被裝載之前 ,以上各步驟已經執行,這意味著所有的磁碟讀取在BIOS調用時。 這是一個必須的前提,即,為了直接啟動磁碟,你的 BIOS必須支持通過火線或USB被連接的磁碟。通常能在BIOS中看到關於從這些設備上啟動選項。 火線BIOS支持現在的確非常的少見,但是 USB 支持正在變得相當的平常。 因此,如果你正在使用一部相對比較新的計算機上的USB介面,應該可以直接啟動驅動器進Linux。

當經由 USB 連接,在安裝外部的驅動器的 MBR 的幼蟲之後,我能夠直接地啟動它。 當以被連接的磁碟片啟動的時候,只是進入 BIOS 裝備公用程序。 外部的磁碟片將會出現如一個一般的硬碟: 移動它,如此它在啟動次序中的內在驅動器之前。

我也能夠在一個內置的硬碟的MBR上安裝一個boot loader而且使用其啟動USB硬碟(在GRUB中被成為hd1)。 如果你正在使用火線, 有可能你的 BIOS 將會無法直接地啟動硬碟,而且你需要更多一點步驟。

幸運的是,由於 Linux 的多樣性,這有非常容易解決,如果你不能直接地啟動,( 我就是這樣的情況,使用一個PCMCIA轉接卡!) 你能運行初始啟動步驟,來自一個支持的設備 , 像是一台軟碟機,CD-ROM,USB棒,或在主硬碟上的小分區, 然後使用外部的驅動器繼續其他步驟。

創建一個啟動鏡像

我們有2種方法啟動:

*單階啟動
內核啟動, 掛載根分區文件系統, 接著調用初始化教本繼續初始化( 通常是/sbin/init)
*雙階啟動 (initrd)的啟動
內核啟動,掛載一個初始ram disk (initrd),進一步運行定製的初始化, 然後掛載根分區文件系統繼續初始化(同樣, 通常調用/sbin/init)

每種方法都有它自己的優點和缺點。

單階啟動

為了要使用一個單階的啟動,我們需要建立一個內核包含掛載一個根分區文件系統所需的所有驅動程序。( 任何其他的驅動能作為模塊編譯並在根分區載入時候進行常規初始化。)

如果我們正在從像軟盤這樣的一個非常小的裝置嘗試啟動, 最好的方式是創建的一個正合適內核,編譯進所有掛載根外部分區系統所需驅動 -- 而且編譯其他的作為模塊。 舉例來說,我的內核編譯進了SCSI支持, PCMCIA 支持, IEE1394 , SBP ,和其他相似的支持, 但是其他的(包括顯卡支持,網路設備支持,等等)當做模塊編譯並儲存在根分區上(在外部的驅動器的),而不是存儲在軟盤上。

這種方法的主要問題是需要我們給內核源代碼打補丁-- 那是一種最糟糕的痛苦(當新的內核發布),而真正的問題是如果補丁沒有在維護,這樣就不能跟上內核的變化。

你可能以為如果計算機BIOS支持USB和火線直接啟動,我們能避免發生以上的2個問題。 不幸地,事情不是這樣:這一個方法使用BIOS在啟動時調用磁碟,一旦內核開始初始化, BIOS就失去了作用,而且使用內核驅動來調用磁碟-- 所以你仍然會碰到同樣的問題。

二階啟動

內核2.0.X版本 ,添加了一個有趣的功能到內核 -- 使用「initial RAM disk(初始內存磁碟)」(or initrd)來實現二階啟動。

簡言之,內核一概既往的啟動;掛載一個創建在內存里迷你的根分區文件系統取代掛載「真正」的根分區系統。 無論任何命令都在這個初始環境中執行在「真正」的根分區系統被掛載之前直到我們切換到真正的根分區文件系統並銷毀初始內存磁碟(initial RAM disk)。

這點在各種環境中都非常有用,但是我們的目標僅僅是簡單的利用我們的迷你環境去重新掃描SCSI匯流排,等待外部驅動器識別,然後用它切換到我們真正的根而後繼續啟動。

使用這種方法,我們需要創建2個文件,一個內核和一個初始鏡像文件。

內核僅是一個內建啟動鏡像(initrd)支持常規內核。 initrd 鏡像是一個包涵我們迷你根分區系統的環路(loopback)文件系統鏡像。 (該鏡像可以有選折地使用gzip壓縮來減小它的大小)。

你能在資源章節里找到關於如何創建和定製你自己的初始鏡像的更多信息。

在鏡像文件里,有一個linuxrc的文件。當鏡像給載入時,該文件自動運行,所以請確定其有運行許可權!為了達到我們的目的,linuxrc文件非常的簡單:

列舉 1. initrd linuxrc

#!/bin/sh
REAL_ROOT=/dev/sda1
# mount the /proc filesystem
mount -t proc none /proc

#for scsi-emulation (SCSI模擬)
# modprobe sd_mod

#for pcmcia (PCNCIA卡)
# modprobe pcmcia_core

#for FireWire (火線)
# modprobe ieee1394
# modprobe ohci1394
# modprobe raw1394
# modprobe sbp2

#for USB (USB)
# modprobe usbcore
# modprobe ohci-hcd
# modprobe uhci-hcd
# modprobe usb-storage

# loop rescanning the scsi bus + rerunning devfsd
retries=5
i=1
until [ -e $REAL_ROOT ]
do
if [ $i -gt $retries ]
then
echo "Unable to mount real root ($REAL_ROOT) - Giving up!"
/bin/ash
exit
fi

echo "Real root ($REAL_ROOT) not found, retrying ($i)"
sleep 1
echo "scsi add-single-device 0 0 0" > /proc/scsi/scsi
echo "scsi add-single-device 1 0 0" > /proc/scsi/scsi
echo "scsi add-single-device 2 0 0" > /proc/scsi/scsi
/bin/devfsd /dev -np
i=$((i+1))
done

#umount /proc as it will be remounted by the normal init process
(解除掛載/proc分區當它會給常規的INIT進程重新掛載)
umount /proc

#now we simply exit, and the normal boot process should continue
(現在我們可以退出了,常規的啟動進程將會繼續)
exit 0

我們正在做的是載入適當的模塊去支持外部驅動器: 請按需注視相應行。 (我把所有需要的支持編譯進內核,因此不需要模塊)。 然後循環, 再掃描 SCSI 匯流排 (回應一個命令到/proc虛擬文件系統下一個特別文件並調用devfsd程序) 直到根分區設備出現(我的情況是/dev/sda1 )。在我的情況,被訪問的火線模擬SCSI匯流排是1 0 0,但是並不影響嘗試部分其他的匯流排 -- 如果你知道將會使用哪一個,你可以裁減這個教本。 同時, 如果你有其他的 SCSI 設備 (或模擬 SCSI設備), 驅動器可能有一個不同的字母。(例如,/dev/sdb1) 而且如果你沒有使用外置驅動器上的第一個分區, 你將會需要使用一個不同的數字。( 例如,/dev/sda2)

現在我們需要做的全部是復制相關的文件進initrd鏡像.( 你能夠使用mount -o loop 命令掛載未壓縮的鏡像)尤其,我們需要確定我們有 linuxrc 文件、所有被用到的命令和其依賴的庫。 這個(未掛載的)鏡像可以有選折的壓縮。

復制內核 (bzImage) 和 initrd 鏡像 (initrd.gz)到磁碟。

最後的步是在磁碟上安裝一個boot loader, 而且用下列的選項啟動內核: kernel bzImage root=/dev/sda1 initrd=initrd.gz.

你現在應該可以使用磁碟來啟動了:它會從軟盤中載入內核,載入initrd鏡像入內存,然後從那裡繼續常規啟動。這點以後,磁碟就可以拿開了。

如果磁碟不合適 ( 例如,計算機沒有軟碟機),任何設備在BIOS能用於啟動都可以使用。 個人而言,我就使用一個小小的32MB的USB棒來達到這個目的。
參考資料:

另外,虛機團上產品團購,超級便宜

⑷ Linux系統怎麼修改磁碟參數(名稱,盤符等等

1.mknod

用法:mknod設備名稱【bcp】【Major】【Minor】

設備種類,

b:設置設備名稱為外部的外部的存儲設備文件eg:硬碟

c:設置設備名稱為外部輸入設備文件eg:鍵盤/滑鼠

P:設置設備名稱為FIFO文件

Major:主要設備名稱代碼

Minor:次要設備代碼

eg:【~~~】#mknod/dev/hda10310

註:3和10隻有特殊意義的,不可隨意的設置

在linux系統中,所有的設備都是以文件的形式來表示的,也就是通過文件的主與次來表示的,硬碟的主與次如下所示:

硬碟代號主【Major】次【Minor】

/dev/sda30~63

/dev/sdb364~127

/dev/sdc220~63

/dev/sdd2264~127

2.e2label

【~~~~~~】#e2label設備名稱新的Label名稱

【~~~~~~】#e2label/dev/sda1sda1

【~~~~~~】#mpe2fs-h/dev/sda1

該命令的主要的主要作用是用來修改「磁碟的表頭數據」,即磁碟的卷標。但是請注意,如果你剛好有兩個硬碟,如果你修改了卷標,剛好和另外的有個分區有相同的卷標,系統就無法判斷哪個分區是正確的。

這些命令都是不算是特別常用的,常用的命令你可以學習下這里。第2章 新手必須掌握的Linux命令。www.linuxprobe.com/chapter-02.html,最後我覺得還算是寫干貨,對於新手很適合。

3.tune2fs

【~~~~~~~】#tune2fs【-jlL】設備號


-j:將ext2的文件系統轉換為ext3的文件系統

-l:將超級快內的數據度出來,該功能類似於mpe2fs-h的功能

-L:修改文件系統的卷標,類似於e2label的功能

eg:【~~~~~~】#tune2fs-l/dev/sda1

更多的功能請參考mantune2fs

4.hdparm

如硬碟有DMA模式的功能,系統卻沒有啟動它,那麼,硬碟的讀取性能可能會降低一半以上,就可以使用該命令來啟動DMA模式的功能。該命令有很多的高級的參數設置值,所以不建議隨便的修改,否則容易造成硬碟崩潰,使用這個命令,最多的就是啟動DMA功能,並測試硬碟的訪問性能就可以了。

【~~~~~~~】#hdparm【-icdmXTt】設備名稱


-i:將系統啟動過程中使用的本身的核心的驅動程序來測試硬碟的測試值取出來,但是這些值不一定是正確的

-d:設置是否啟用dma模式,-d1為啟動,-d0為取消。