導航:首頁 > 操作系統 > linux配置虛擬目錄

linux配置虛擬目錄

發布時間:2025-06-01 01:08:37

㈠ 在ubuntu中可以重復搭建linux最小系統么

可以的。但是需要注意的是:
1、需要至少分給他二個分區,一個用作交換分區,大概2G左右;另一個做跟目錄分區/,這個要大一些,起碼20G。這個是主要的分區。
2、ubuntu安裝好後可以掛載windows的磁碟。
具體步驟如下:
== A. 准備工作 ==
一、所需硬體
需要 Banana PI 開發板一塊;
一台正常運行 Linux 系統的電腦(Linux 虛擬機也行);
容量大於 1GB SD 卡,或者 TF 配卡套,以及相應讀卡設備;
另准備一張 4GB SD 卡,用於燒寫現有 .img 以啟動 BPI 作輔助操作;

二、所需軟體
從 ubuntu 網站 http://cdimage.ubuntu.com/ubuntu-core/releases/ 下載 ubuntu-core-14.04.1-core-armhf.tar.gz 包文件(60MB)
從 banana pi 網站 http://www.lemaker.org/resources/9-38/image_files.html 下載 Raspbian_For_BananaPi_v3_0.img 包文件
從 sunxi 網站 http://dl.linux-sunxi.org/nightly/u-boot-sunxi/u-boot-sunxi/u-boot-sunxi-latest/ 下載 u-boot-sunxi-bananapi.tar.xz 包

== B. 主要步驟 ==
一、SD 卡分區
在 Linux 電腦上連接 SD 卡,查看設備編號:

$ sudo fdisk -l

如果系統中沒有連接別的設備,通常此 SD 卡設備名為: /dev/sdb ;以下假設此卡就為 /dev/sdb,須根據實際情況進行替換;命令中寫錯設備名後果難料;

進入 fdisk 分區程序,用 n 子命令將此卡空間分成兩個分區,提示輸入第一分區大小時輸入 +30M,其他參數均以回車接受默認值即可;

$ sudo fdisk /dev/sdb

以 p 子命令查看分區情況,確認無誤後,輸入 w 子命令確認分區寫入卡設備中並退出;

二、格式化分區
將 SD 卡中兩個分區分別進行格式化為 vfat 和 ext4 文件系統;

$ sudo mkfs.vfat /dev/sdb1
$ sudo mkfs.ext4 /dev/sdb2

三、寫入 U-Boot 啟動代碼
從下載的 u-boot-sunxi-bananapi.tar.xz 包中取出 u-boot-sunxi-with-spl.bin 文件;

先清除 SD 卡前段內容;

$ sudo dd if=/dev/zero of=/dev/sdb bs=1k count=1023 seek=1

接著在特定位置寫入啟動代碼和數據

$ sudo dd if=/path/to/u-boot-sunxi-with-spl.bin of=/dev/sdb bs=1024 seek=8

注意:此處命令行假設所有下載的文件包均存放在 /path/to 虛擬目錄中,操作時須替換成實際目錄;

四、安裝內核啟動文件
如果願意,Linux 內核文件可以選擇自行編譯;這里為了方便,直接從廠商提供的 IMG 包中取出;這里選用從 Raspbian_For_BananaPi_v3_0.img 包中取出內核文件,主要就這三個:(uImage,script.bin,uEnv.txt);

先查看 IMG 包中第一分區的起始塊位置,這里假設為 8192,將其乘以 512 的結果 4194304 放入下面命令中;

$ sudo mkdir /mnt/img
$ fdisk -l /path/to/Raspbian_For_BananaPi_v3_0.img
$ sudo mount -t vfat -o loop,offset=4194304
/path/to/Raspbian_For_BananaPi_v3_0.img /mnt/img

掛載成功後,從 /mnt/img 目錄中復制出來這三個內核文件即可;

$ cp /mnt/img/uEnv.txt ./
$ cp /mnt/img/bananapi/uImage ./
$ cp /mnt/img/bananapi/script.bin ./
$ sudo umount /mnt/img

由於 ./Raspbian_For_BananaPi_v3_0.img 包中內核放在子目錄 ./bananapi 中,現在我們打算將此三個內核文件直接放在 SD 卡第一分區根目錄中,所以還需要將復制出來的 uEnv.txt 內容用 vi 命令稍稍編輯一下,去掉內核文件的目錄路徑,使其內容寫成這樣子,然後保存退出 vi 命令;

bootargs=console=ttyS0,115200 console=tty0
disp.screen0_output_mode=EDID:1280x720p50 hdmi.audio=EDID:0
console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline
rootwait
aload_script=fatload mmc 0 0x43000000 script.bin;
aload_kernel=fatload mmc 0 0x48000000 uImage; bootm 0x48000000;
uenvcmd=run aload_script aload_kernel

內核文件提取出來後,就可以復制到 SD 卡第一分區中;

$ sudo mkdir /mnt/sd
$ sudo mount -o vfat /dev/sdb1 /mnt/sd
$ cp uEnv.txt script.bin uImage /mnt/sd
$ sudo umount /mnt/sd

如果需要調整 script.bin 中參數,比如AV口接電視機,則需要先用 bin2fex 軟體來實現文件格式轉換成文本文件,再作修改,參見:linux-sunxi.org/Fex_Guide

五、安裝 rootfs
將下載得到的 ubuntu-core-14.04.1-core-armhf.tar.gz 包文件直接釋放到 SD 卡第二分區即可;

$ sudo mount /dev/sdb2 /mnt/sd
$ cd /mnt/sd
$ tar /path/to/xzvf ubuntu-core-14.04.1-core-armhf.tar.gz

六、安裝 moles 和 firmware 文件
採用與前面第四步相同的方法,直接從現成 Raspbian_For_BananaPi_v3_0.img 中取出內核對應的 moles/firmware 文件;

先查出 IMG 包中第二分區的起始塊位置,這里假設為 122880,將其乘以 512 的結果 62914560 放入下面命令中;

$ fdisk -l /path/to/Raspbian_For_BananaPi_v3_0.img
$ sudo mount -t vfat -o loop,offset=62914560 /path/to/Raspbian_For_BananaPi_v3_0.img /mnt/img

掛載成功後,從 /mnt/img 目錄中復制內核版本對應的 moles/firmware 硬體驅動相關文件到 /mnt/sd;

$ sudo cp -r /mnt/img/lib/firmware /mnt/sd/lib/

$ sudo cp -r /mnt/img/lib/moles/3.4.90 /mnt/sd/lib/moles

從宿主系統復制 DNS 伺服器地址信息 resolv.conf 到 /mnt/sd/etc,稍後可能需要在線安裝軟體;

$ sudo cp -p /etc/resolv.conf /mnt/etc

完成以上步驟,SD 卡中 core 系統所需文件基本都已就緒,只待對新系統稍作配置即可開始工作了;

七、初步配置新系統
為了完成 SD 卡中新系統基本配置,需要使用 chroot 命令,方便對新系統設置 root 密碼,安裝必要軟體包等操作;

由於上述操作過程均是在一台 x86 Linux 主系統上進行,而 chroot 需要使用 arm 架構的主系統,所以,這里利用另一張 SD 卡啟動 Banana PI 作為主系統進行操作;如果你使用的主系統電腦本身就是 arm 架構,就不必另啟 BPI 了,可直接利主系統進行其餘操作;

為了切換到 BPI arm 主系統中進行 chroot 操作,須先卸載 x86 系統上掛載的 SD 卡,同時清除臨時目錄;

$ sync
$ sudo umount /mnt/img
$ sudo umount /mnt/sd
$ sudo rm -r /mnt/img /mnt/sd

用燒寫好的另一張 SD 卡啟動 BPI(可以採用 Raspbian_For_BananaPi_v3_0.img),並將新系統 SD 卡通過讀卡器連接到 BPI USB埠,先查看系統中已自動識別的 USB
設備,以確定新 SD 卡的設備名稱,這里假設新SD卡設備名稱為:/dev/sdb

$ lsusb
$ lsblk

掛載新SD卡的第二分區到 /mnt 目錄,然後進入 chroot 狀態;

$ sudo mount /dev/sdb2 /mnt
$ sudo chroot /mnt /bin/bash

正常進入 chroot 後,所有命令均直接針對新系統進行操作;首先,設置 root 密碼;

# passwd

然後配置主機名稱、設置 noatime、添加用戶帳戶、並開啟網路介面等;

# echo "ucore14" > /etc/hostname
# adser newid

在啟動命令文件 /etc/rc.local 中插入一行:mount -o remount -o noatime / ,以提升性能同時防止頻繁擦寫弄壞 SD 卡;

# vi /etc/rc.local

然後設置時區;

# mv /etc/localtime /etc/localtime.0
# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

在 /etc/network/interfaces 輸入網卡配置,比如,打算以 DHCP 方式連接路由器,則在其中填入以下內容:

auto lo
iface lo inet loopback

auto eth0
allow-hotplug eth0
iface eth0 inet dhcp

如果還需要配置 wifi 網路,則須另購一隻兼容的 USB 介面 wifi 網卡,然後通過 wpa_supplicant 軟體進行配置;這里暫時不考慮安裝wifi網卡,待新系統正常運行起來再配置其他子系統即可;

至此,一個最基本的 Ubuntu 核心系統即安裝完成,如果一切正常,便可使用此 SD 卡正常啟動 Banana PI 了;不過得注意,下載得到的 ubuntu-core-14.04.1-core-armhf.tar.gz 包文件中並未安裝 sshd 軟體包,這意味著無法遠程登錄進入系統;假如你沒有 HDMI 顯示器可用,或者你的 Banana PI 只作伺服器運行,則在退出 chroot 狀態前,安裝上 ssh 軟體包是很有必要的,為此,需要跳轉到下一步驟;

如果此時不打算安裝 ssh 服務,也不再進行其他配置和操作,則可以考慮退出 chroot 狀態,並卸載 SD 卡;

# exit
# sync
# sudo umount /mnt

八、安裝 SSH 遠程登錄(無屏必需)
在上面 chroot 狀態中繼續安裝 ssh 軟體包;如果此前已退出 chroot 則需再次進入 chroot ;

# apt-get update
# apt-get install ssh

此命令需要在線下載軟體包,這也是前面需要事先復制 /etc/resolv.conf 到 SD 卡 rootfs 的原因;網速正常的話,通常幾分鍾即可下載安裝完成;

由於默認安裝的 sshd_config 配置,基於對安全性的考慮,不允許以密碼方式遠程登錄 root 帳戶和空密碼遠程登錄,只允許使用 ssh-key 遠程登錄 root 帳戶;這里為了方便登錄,決定暫時開啟密碼登錄,編輯 /etc/ssh/sshd_config 配置文件;

# vi /etc/ssh/sshd_config

將此項設置的值由 "without-password" 改為 "yes" 即可,或者將原設置行注釋掉,再輸入新的設置行,如下:

# PermitRootLogin without-password
PermitRootLogin yes

保存此項設置修改後,必要的安裝和配置就全部完成了,退出 chroot,卸載 SD 卡並關機;

# exit
# sync
# sudo umount /mnt
# sudo poweroff

至此,此 SD 卡中已包含有一個可啟動的 Ubuntu Core 14.04 for Banana PI;將此 SD 卡插入 Banana PI 開機,如果順利,很快就可啟動出來,並可以 ssh 遠程登錄進入系統;上面配置 Banana PI 以 DHCP 方式從路由器自動獲取 IP 地址,所以,在 ssh 登錄前,可在路由器管理界面 DHCP 欄目中查看路由器為 BPI 分配的 IP 地址;

由於 Ubuntu Core 只是一個 Core,沒有包含其他任何應用系統,如:APACHE、MYSQL、PHP、X11、OFFICE 等等,不過,可利用 Debian 系的 apt-get install xxx 很方便的安裝其餘所需要的軟體。。。

== C. 小結 ==
以上試驗步驟實現了在目標 SD 卡中從分區開始配置一個可啟動 Banana PI 的 Ubuntu Core 系統,操作步驟較多,為了省事,也可以採用逆向操作,即直接在 SD 卡中燒寫一個現成的 IMG 系統,然後用目標 rootfs 替換掉原系統即可;網上有許多針對 arm 架構的 rootfs 可用,較小的解壓後只有30M左右,比如:linaro-image-minimal-initramfs-genericarmv7a;不過,為了方便安裝應用軟體,還是選用 debian core, ubuntu core 這類要方便一些,盡管尺寸稍大些;

另外,基於以上操作步驟,稍作變通,即可根據需要製作自己的 .img 系統;過程大致相同,只需將 SD 卡換成一個 .img 文件,將 .img 文件掛載為 loop 設備即可;具體操作此處不再贅述;

㈡ 在linux中怎樣設置在web伺服器里虛擬目錄有讀寫和瀏覽功能

如果只保證個別身份,像apache 配置文件中的user,使用acl, setfacl -m u:用戶:許可權 -R 目錄,如果是所有人,設置其它用戶 chomd -R o=rwx 目錄,兩個-R 都表示子目錄也具有相應的許可權,哦,apache配置文件中虛擬目錄的許可權也要保證allow from all,要不還是沒法

㈢ Linux根目錄下主要目錄功能說明

/bin:存放最常用命令;

/boot:啟動Linux的核心文件;

/dev:設備文件;

/etc:存放各種配置文件;

/home:用戶主目錄;

/lib:系統最基本的動態鏈接共享庫;

/mnt:一般是空的,用來臨時掛載別的文件系統;

/proc:虛擬目錄,是內存的映射;

/sbin:系統管理員命令存放目錄;

/usr:最大的目錄,存許應用程序和文件;

/usr/X11R6:X-Window目錄;

/usr/src:Linux源代碼;

/usr/include:系統頭文件;

/usr/lib:存放常用動態鏈接共享庫、靜態檔案庫;

/usr/bin、/usr/sbin:這是對/bin、/sbin的一個補充;

另一種說法:

/bin 二進制可執行命令

/dev 設備特殊文件

/etc 系統管理和配置文件

/etc/rc.d 啟動的配置文件和腳本

/home 用戶主目錄的基點,比如用戶user的主目錄就是/home/user,可以用~user表示

/lib 標准程序設計庫,又叫動態鏈接共享庫,作用類似windows里的.dll文件

/sbin 系統管理命令,這里存放的是系統管理員使用的管理程序

/tmp 公用的臨時文件存儲點

/root 系統管理員的主目錄(呵呵,特權階級)

/mnt 系統提供這個目錄是讓用戶臨時掛載其他的文件系統。

/lost+found 這個目錄平時是空的,系統非正常關機而留下「無家可歸」的文件(windows下叫什麼.chk)就在這里

/proc 虛擬的目錄,是系統內存的映射。可直接訪問這個目錄來獲取系統信息。

/var 某些大文件的溢出區,比方說各種服務的日誌文件

/usr 最龐大的目錄,要用到的應用程序和文件幾乎都在這個目錄。其中包含:

/usr/X11R6 存放X window的目錄

/usr/bin 眾多的應用程序

/usr/sbin 超級用戶的一些管理程序

/usr/doc linux文檔

/usr/include linux下開發和編譯應用程序所需要的頭文件

/usr/lib 常用的動態鏈接庫和軟體包的配置文件

/usr/man 幫助文檔

/usr/src 源代碼,linux內核的源代碼就放在/usr/src/linux里

/usr/local/bin 本地增加的命令

/usr/local/lib 本地增加的庫

閱讀全文

與linux配置虛擬目錄相關的資料

熱點內容
美團app在哪裡打開 瀏覽:797
狼人殺app哪個好玩 瀏覽:351
hadoop源碼剖析電子版 瀏覽:339
啟動盤鏡像文件要不要解壓 瀏覽:288
psp補丁放在哪個文件夾 瀏覽:782
伺服器如何連接本地電腦 瀏覽:29
小學生解壓折紙超簡單正方形 瀏覽:138
php輸出本地圖片 瀏覽:164
安卓手機怎麼連接北通g1 瀏覽:51
快手為什麼不能訪問伺服器 瀏覽:888
app內充值充到哪裡去了 瀏覽:518
可編程式控制制器證書 瀏覽:69
怎麼能看到自己的手機號碼安卓 瀏覽:856
水貨iphone在哪裡看app聯網 瀏覽:841
登錄不上華為雲伺服器 瀏覽:71
php怎麼在本地運行 瀏覽:83
java編程思維圖靈 瀏覽:220
安卓手機怎麼玩寶可夢大結局 瀏覽:780
三菱plc中st編程 瀏覽:600
學單片機需要什麼硬體知識 瀏覽:285