usb接口linux系统设计,AUFS 联合文件系统 - 基于USB接口的微型桌面Linux系统设计
3.4 AUFS 聯(lián)合文件系統(tǒng)
AUFS( Another UnionFS 的縮寫), 是一個與UnionFS 類似的可堆疊聯(lián)合文件系統(tǒng),它將多個目錄整合成單一的目錄,是Linux 文件系統(tǒng)聯(lián)合掛載的實現(xiàn)。
SquashFS 壓縮系統(tǒng)是只讀的,從而避免了對磁盤不必要的擦寫,但同時也造成了修改數(shù)據(jù)不能保存的問題。
AUFS 的出現(xiàn)正好解決了上述問題,它管理一個基本文件系統(tǒng)(即本文中的系統(tǒng)Squashfs 鏡像,保持原只讀狀態(tài))和一個讀寫存儲文件系統(tǒng)(必須具有讀寫權(quán)限)。通過AUFS,用戶可以虛擬地修改基本文件系統(tǒng)上的文件,但修改后的結(jié)果卻保存在讀寫存儲文件系統(tǒng)中,從而實現(xiàn)了數(shù)據(jù)的透明修改。
3.5 Initrd 初始化內(nèi)存盤
Initrd(boot loader IniTIalized RAM Disk 的縮寫),由boot loader 初始化。本系統(tǒng)使用的boot loader 為GNU GRUB 0.97.如果Grub 已配置Initrd,Linux 內(nèi)核在啟動前,會把存儲設(shè)備中的Initrd 文件加載到內(nèi)存,作為一個臨時根文件系統(tǒng);內(nèi)核啟動時通過先執(zhí)行Initrd 中的init 文件,完成設(shè)備驅(qū)動模塊和squashsf、aufs 文件系統(tǒng)模塊的加載,并完成真正的根文件系統(tǒng)的掛載,然后執(zhí)行系統(tǒng)中的/sbin/init 進程。
與普通IDE、SATA 硬盤相比,USB 接口存儲設(shè)備從驅(qū)動模塊加載到設(shè)備可用,比較慢,需要幾秒鐘。
因此內(nèi)核在掛載USB 存儲設(shè)備時,會出現(xiàn):USB 設(shè)備沒有初始化完成,真正根文件系統(tǒng)掛載失敗的問題。為了解決此問題,筆者在Initrd 中修改init 可執(zhí)行文件,當(dāng)加載USB 驅(qū)動后,系統(tǒng)將休眠5 秒,讓USB 設(shè)備初始化完成后再掛載USB 存儲設(shè)備中的根文件系統(tǒng)。本系統(tǒng)的init 文件配置如下:
本系統(tǒng)Initrd 中的最小化根文件系統(tǒng)由BusyBox創(chuàng)建,包含bin、dev、etc、lib、mnt、proc、sbin、sys這些必須的目錄和相關(guān)文件。由于 BusyBox 生成的modprobe 命令不能正常執(zhí)行,所以需要復(fù)制宿主系統(tǒng)中的modprobe 命令并替換Initrd 中的sbin 目錄中的同名文件,同時通過ldd 查看modprobe 依賴的庫文件,并復(fù)制到Initrd 中的lib 目錄。
最后在宿主機器上通過命令:
find 。 | cpio –o –H newc | gzip 》 /boot/initrd.img-2.6.27.27 制作Initrd 鏡像文件。
3.6 Grub 啟動引導(dǎo)器
GNU GRUB (GNU GRand Unified Bootloader 的縮寫),是GNU 項目中一個多操作系統(tǒng)啟動引導(dǎo)程序,也是Linux 系統(tǒng)中最常用引導(dǎo)工具之一。為了讓系統(tǒng)從USB 設(shè)備啟動,必須將GRUB 程序安裝在USB 存儲設(shè)備的主引導(dǎo)記錄(MBR)中。
以GRUB 0.9X 的安裝步驟如下:
安裝grub 程序在U 盤的/boot/grub 目錄下,確保其目錄存在menu.lst,stage1,stage2 三個文件。
進入grub 命令窗口,運行以下命令安裝到U 盤的MBR:
grub》root(hd1,0) #假定Linux 系統(tǒng)所在盤符為第二塊硬盤的第一個分區(qū)
grub》setup(hd1)
實際操作時根據(jù)硬盤分區(qū)不同作相應(yīng)修改。
修改/boot/grub/menu.lst 文件,本文的menu.lst 如下:
3.7 Xfce 桌面環(huán)境
Xfce 是一款適用于多種*NIX 系統(tǒng)上運行的輕量級桌面環(huán)境,它的設(shè)計目的是在節(jié)省系統(tǒng)資源的情況下能夠快速加載并執(zhí)行應(yīng)用程序。與Gnome 和KDE等比較臃腫的桌面環(huán)境相比,Xfce 占用的系統(tǒng)資源少,同時它擁有很小的依賴性和很好的模塊性。本系統(tǒng)所用的Xfce 4.6.2 主要由實用工具libxfce4uTIl、微件庫libxfcegui4、擴展庫exo、菜單庫libxfce4menu、窗口管理xfwm4、桌面管理 xfdesktop、面板xfce4-panel、會話管理xfce4-session、設(shè)置管理xfce4-setTIngs、配置管理xfconf、文件管理thunar、實用程序xfce-uTIls、應(yīng)用程序查找xfce4-appfinder 等部件構(gòu)成。
總結(jié)
以上是生活随笔為你收集整理的usb接口linux系统设计,AUFS 联合文件系统 - 基于USB接口的微型桌面Linux系统设计的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jquery_pagination分页插
- 下一篇: 将输出流转换成输入流