首頁 系統教程 Linux 在linux中如何掛載VHD和其他虛擬磁碟文件

在linux中如何掛載VHD和其他虛擬磁碟文件

Jan 09, 2024 am 10:17 AM
磁碟掛載

1、RAW格式虛擬磁碟

linux下可以直接掛載raw格式的虛擬磁碟映像檔。

例如,這裡先用dd指令建立一個文件,然後將其格式化為ext4格式(只有一個分割區),然後掛載到/mnt目錄。

下面的raw.img磁碟映像檔就一個分割區,所以沒有使用offset=來指定偏移。如果有多個分割區,則可以透過指定偏移來掛載。具體的可以查閱mount指令的相關參數資訊。

> dd if=/dev/zero of=raw.img bs=1M count=512

記錄了512 0 的讀入

記錄了512 0 的寫出

536870912 bytes (537 MB, 512 MiB) copied, 0.207045 s, 2.6 GB/s

/home/o [o@o-pc] [10:29]

> mkfs.ext4 -q raw.img 

#/home/o [o@o-pc] [10:30]

> sudo mount -o loop raw.img /mnt

/home/o [o@o-pc] [10:30]

> df -h

在linux中如何掛載VHD和其他虛擬磁碟文件

# 2、VHD/VHDX磁碟檔案掛載

linux不能直接支援掛載VHD磁碟映像檔。可以透過vmware的vmware-mount等工具來掛載。 vmware沒有直接提供這個工具,但在vmware player和vmware workstation中都有提供。但這裡不打算使用這種方式。

這裡使用qemu-nbd來掛載磁碟鏡像檔。

a)安裝qemu

首先要安裝一下qemu-kvm,我這裡使用的是Fedora 25,安裝指令如下

sudo dnf install qemu-kvm 

如果你是用的debian/ubuntu等,可以使用sudo apt-get install qemu-kvm進行安裝。

archlinux可以使用sudo pacman -S qemu來安裝。

b)載入nbd驅動程式

NBD(Network Block Device)是網路區塊設備的縮寫。這個模組可以將一個遠端主機的磁碟空間(與掛載nfs有區別),當作一個本地區塊設備來使用。

NBD是一個核心模組,大部分Linux發行版都已經包含它,這裡不需要再安裝了。

使用modprobe來載入nbd驅動程式

/media/o/data [o@o-pc] [11:04]

> sudo modprobe nbd max_part=8

載入完成後,可以使用modinfo指令來查看模組資訊

/media/o/data [o@o-pc] [11:05]

> modinfo nbd

#filename:       /lib/modules/4.9.6-200.fc25.x86_64/kernel/drivers/block/nbd.ko.xz

license:        GPL

description:    Network Block Device

depends:        

##intree:         Y

#vermagic:       4.9.6-200.fc25.x86_64 SMP mod_unload 

#signat:         PKCS#7

signer:         

#sig_key:        

#sig_hashalgo:   md4

parm:           nbds_max:number of network block devices to initialize (default: 16) (int)

parm:           max_part:number of partitions per device (default: 0) (int)

上面的資訊說,初始化網路區塊裝置的數目為16,說明其在/dev/下創建16個nbd裝置。

/media/o/data [o@o-pc] [11:05]

> ls /dev/nbd*

/dev/nbd0  /dev/nbd0p1  /dev/nbd1  /dev/nbd10  /dev/nbd11  /dev/nbd12  /dev/nbd13  /dev/nbd14  /dev/devd15  nbd4  /dev/nbd5  /dev/nbd6  /dev/nbd7  /dev/nbd8  /dev/nbd9

c)將vhdx檔案連接到nbd設備

這裡使用qemu-nbd來進行連接(使用-c參數為連接,使用-d參數斷開連接)

/media/o/data [o@o-pc] [11:05]

> sudo qemu-nbd -c /dev/nbd0 VS2017RC-offline.vhdx 

#連線上之後使用fdisk查看一下裝置資訊。

/media/o/data [o@o-pc] [11:05]

> sudo fdisk -l /dev/nbd0

#Disk /dev/nbd0:100 GiB,107374182400 字節,209715200 個磁區

單元:磁區 / 1 * 512 = 512 位元組

扇區大小(邏輯/物理):512 位元組 / 512 位元組

I/O 大小(最小/最佳):512 位元組 / 512 位元組

在linux中如何掛載VHD和其他虛擬磁碟文件磁碟標籤類型:dos

磁碟標識符:0xa373e501

#其實磁碟只有一個分割區,分割區格式為exFAT,磁碟大小為動態成長。

d)掛載分割區

直接使用mount指令掛載nbd0p1即可

/media/o/data [o@o-pc] [11:36]

> sudo mount -t exfat -o rw  /dev/nbd0p1 /mnt

[sudo] o 的密碼:

FUSE exfat 1.0.1

/media/o/data [o@o-pc] [12:05]

> ls /mnt/

'$RECYCLE.BIN'  'System Volume Information'  vs2017rc  安裝說明.txt### ###安裝exFAT支援### ###因為分割區是exFAT格式的,不能直接掛載。 ###

先安裝一下fuse-exfat和exfat-utils。

具體的安裝過程簡要的說一下

先下載兩個rpm源碼包。

wget http://download1.rpmfusion.org/free/el/updates/6/SRPMS/exfat-utils-1.0.1-2.el6.src.rpm

wget http://download1.rpmfusion.org/free/el/updates/6/SRPMS/exfat-utils-1.0.1-2.el6.src.rpm

然後安裝fuse-devel和rpmbuild,並解壓縮src.rpm套件。

sudo dnf install fuse-devel rpmbuild

sudo dnf install scons    # 建構exfat-utils需要

rpm -ivh exfat-utils-1.0.1-2.el6.src.rpm exfat-utils-1.0.1-2.el6.src.rpm

解壓縮完成後可以在目前使用者的home目錄下看到rpmbuild目錄,進入該目錄下的SPECS目錄。

然後使用rpmbuild建構rpm包。

rpmbuild -ba exfat-utils.spec

rpmbuild -ba fuse-exfat.spec

建置完成之後進入rpmbuild/RPMS/x86_64目錄(這裡x86_64與你的系統架構有關),安裝產生的rpm套件。

/home/o/rpmbuild/RPMS/x86_64 [o@o-pc] [12:04]

> sudo rpm -ivh exfat-utils-1.0.1-2.fc25.x86_64.rpm fuse-exfat-1.0.1-1.fc25.x86_64.rpm 

準備中...                          

[100%]

###正在升級/安裝...### ###1:fuse-exfat-1.0.1-1.fc25          ############################################################################################################################################## 50%]### ###2:exfat-utils-1.0.1-2.fc25         ################################## [ 100%]### ###ubuntu上可以直接使用apt來安裝sudo apt install exfat-utils exfat-fuse### ###3、其它虛擬磁碟檔案的掛載### ###其它的就不再說了,與上面的VHD掛載是一樣的,前提是要是支援的磁碟映像格式才行。 ###

以上是在linux中如何掛載VHD和其他虛擬磁碟文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

Linux最好使用的是什麼? Linux最好使用的是什麼? Apr 03, 2025 am 12:11 AM

Linux最適合用作服務器管理、嵌入式系統和桌面環境。 1)在服務器管理中,Linux用於託管網站、數據庫和應用程序,提供穩定性和可靠性。 2)在嵌入式系統中,Linux因其靈活性和穩定性被廣泛應用於智能家居和汽車電子系統。 3)在桌面環境中,Linux提供了豐富的應用和高效的性能。

Linux的5個基本組件是什麼? Linux的5個基本組件是什麼? Apr 06, 2025 am 12:05 AM

Linux的五個基本組件是:1.內核,管理硬件資源;2.系統庫,提供函數和服務;3.Shell,用戶與系統交互的接口;4.文件系統,存儲和組織數據;5.應用程序,利用系統資源實現功能。

什麼是基本的Linux管理? 什麼是基本的Linux管理? Apr 02, 2025 pm 02:09 PM

Linux系統管理是通過配置、監控和維護來確保系統穩定、高效和安全。 1.掌握shell命令如top、systemctl。 2.使用apt或yum管理軟件包。 3.編寫自動化腳本提高效率。 4.調試常見錯誤如權限問題。 5.通過監控工具優化性能。

如何學習Linux基礎知識? 如何學習Linux基礎知識? Apr 10, 2025 am 09:32 AM

Linux基礎學習從零開始的方法包括:1.了解文件系統和命令行界面,2.掌握基本命令如ls、cd、mkdir,3.學習文件操作,如創建和編輯文件,4.探索高級用法如管道和grep命令,5.掌握調試技巧和性能優化,6.通過實踐和探索不斷提陞技能。

Linux最有用的是什麼? Linux最有用的是什麼? Apr 09, 2025 am 12:02 AM

Linux在服務器、嵌入式系統和桌面環境中的應用廣泛。 1)在服務器領域,Linux因其穩定性和安全性成為託管網站、數據庫和應用的理想選擇。 2)在嵌入式系統中,Linux因其高度定制性和高效性而受歡迎。 3)在桌面環境中,Linux提供了多種桌面環境,滿足不同用戶需求。

什麼是Linux設備? 什麼是Linux設備? Apr 05, 2025 am 12:04 AM

Linux設備是運行Linux操作系統的硬件設備,包括服務器、個人電腦、智能手機和嵌入式系統。它們利用Linux的強大功能執行各種任務,如網站託管和大數據分析。

Linux的成本是多少? Linux的成本是多少? Apr 04, 2025 am 12:01 AM

linuxisfundallyformallyfore,體現了“ freeasinfreedom” WhoallowSuserStorun,研究,共享和ModifyTheSoftware.however,costmarisefromprofessionalsupport,CommercialDistriptions,CommercialDistriptions,proprietaryhardarardwaredrivers,and learlearningresrivers andlearningningningressources.despiteSpiteThesepiteTeThesepototenesepototen

Linux的缺點是什麼? Linux的缺點是什麼? Apr 08, 2025 am 12:01 AM

Linux的缺點包括用戶體驗、軟件兼容性、硬件支持和學習曲線。 1.用戶體驗不如Windows或macOS友好,依賴命令行界面。 2.軟件兼容性不如其他系統,缺乏許多商業軟件的原生版本。 3.硬件支持不如Windows全面,可能需要手動編譯驅動程序。 4.學習曲線較陡峭,掌握命令行操作需要時間和耐心。

See all articles