中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

如何搭建Linux內核實驗環(huán)境

如何搭建Linux內核實驗環(huán)境,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

成都創(chuàng)新互聯(lián)服務項目包括平原網(wǎng)站建設、平原網(wǎng)站制作、平原網(wǎng)頁制作以及平原網(wǎng)絡營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關系等,向廣大中小型企業(yè)、政府機構等提供互聯(lián)網(wǎng)行業(yè)的解決方案,平原網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務的客戶以成都為中心已經(jīng)輻射到平原省份的部分城市,未來相信會繼續(xù)擴大服務區(qū)域并繼續(xù)獲得客戶的支持與信任!

Linux 內核實驗環(huán)境

可快速構建,支持 Docker, Qemu, Ubuntu, Mac OSX, Windows, Web

由 Wu Zhangjin 創(chuàng)建于 2016/06/19

評論 打賞

1 項目描述

該項目致力于快速構建一個基于 Qemu 的 Linux 內核開發(fā)環(huán)境。

  • 使用文檔:README.md

  • 在線實驗

    • 泰曉實驗云臺

2 相關文章

  • 基于 Docker 快速構建 Linux 0.11 實驗環(huán)境

3 五分鐘教程

3.1 準備

以 Ubuntu 和 Qemu 為例。其他 Linux 和 Mac OSX 系統(tǒng)請先安裝 Docker CE。Windows 系統(tǒng),請先下載并安裝 Docker Toolbox。

安裝完 docker 后如果想免 sudo 使用 linux lab,請務必把用戶加入到 docker 用戶組并重啟系統(tǒng)。

 
  1. $ sudo usermod -aG docker $USER

由于 docker 鏡像文件比較大,有 1G 左右,下載時請耐心等待。另外,為了提高下載速度,建議通過配置 docker 更換鏡像庫為本地區(qū)的,更換完記得重啟 docker 服務。

 
  1. $ grep registry-mirror /etc/default/docker

  2. DOCKER_OPTS="$DOCKER_OPTS --registry-mirror=https://docker.mirrors.ustc.edu.cn"

  3. $ service docker restart

如果 docker 默認的網(wǎng)絡環(huán)境跟本地的局域網(wǎng)環(huán)境地址沖突,請通過如下方式更新 docker 網(wǎng)絡環(huán)境,并重啟 docker 服務。

 
  1. $ grep bip /etc/default/docker

  2. DOCKER_OPTS="$DOCKER_OPTS --bip=10.66.0.10/16"

  3. $ service docker restart

如果上述改法不生效,請在類似 /lib/systemd/system/docker.service 這樣的文件中修改后再重啟 docker 服務。

 
  1. $ grep dockerd /lib/systemd/system/docker.service

  2. ExecStart=/usr/bin/dockerd -H fd:// --bip=10.66.0.10/16 --registry-mirror=https://docker.mirrors.ustc.edu.cn

  3. $ service docker restart

如果使用 Docker Toolbox,由于安裝的默認 default 系統(tǒng)未提供桌面,所以需要先獲取該系統(tǒng)的外網(wǎng)地址,即 eth2 網(wǎng)口的 IP 地址,然后在外部系統(tǒng)訪問。

 
  1. $ ifconfig eth2 | grep 'inet addr' | tr -s ' ' | tr ':' ' ' | cut -d' ' -f4

  2. 192.168.99.100

如果是自己通過 Virtualbox 安裝的 Linux 系統(tǒng),即使有桌面,也想在外部系統(tǒng)訪問時,則可以通過設置 ‘Network -> Adapter2 -> Host-only Adapter’ 來添加一個 eth2 網(wǎng)口設備。

請務必注意,通過 Docker Toolbox 安裝的 default 系統(tǒng)中默認的 /root 目錄僅僅掛載在內存中,關閉系統(tǒng)后數(shù)據(jù)會丟失,請千萬不要用它來保存實驗數(shù)據(jù)??梢允褂昧硗獾哪夸泚泶娣牛热?/mnt/sda1,它是在 Virtualbox 上外掛的一個虛擬磁盤鏡像文件,默認有 17.9 G,足夠存放常見的實驗環(huán)境。

3.2 工作目錄

再次提醒,在 Linux 或者 Mac 系統(tǒng),可以隨便在 ~/Downloads 或者 ~/Documents 下找一處工作目錄,然后進入,比如:

 
  1. $ cd ~/Documents

但是如果使用的是 Docker Toolbox 安裝的 default 系統(tǒng),該系統(tǒng)默認的工作目錄為 /root,它僅僅掛載在內存中,因此在關閉系統(tǒng)后所有數(shù)據(jù)會丟失,所以需要換一處上面提到的 /mnt/sda1,它是外掛的一個磁盤鏡像,關閉系統(tǒng)后數(shù)據(jù)會持續(xù)保存。

 
  1. $ cd /mnt/sda1

3.3 下載

 
  1. $ git clone https://github.com/tinyclub/cloud-lab.git

  2. $ cd cloud-lab && tools/docker/choose linux-lab

3.4 安裝

 
  1. $ tools/docker/run # 加載鏡像,拉起一個 Linux Lab 容器

3.5 快速嘗鮮

執(zhí)行 tools/docker/vnc 后會打開一個 VNC 網(wǎng)頁,根據(jù) console 提示輸入密碼登陸即可,之后打開桌面的 Linux Lab 控制臺并執(zhí)行:

 
  1. $ make boot

默認會啟動一個 versatilepb 的 ARM 板子,要指定一塊開發(fā)板,可以用:

 
  1. $ make list # 查看支持的列表

  2. $ make BOARD=malta # 這里選擇一塊 MIPS 板子:malta

  3. $ make boot

3.6 下載更多源碼

 
  1. $ make core-source -j3 # 同時下載 linux-stable, qemu 和 buildroot

3.7 配置

 
  1. $ make root-defconfig # 配置根文件系統(tǒng)

  2. $ make kernel-checkout # 檢出某個特定的分支(請確保做該操作前本地改動有備份)

  3. $ make kernel-defconfig # 配置內核

  4.  

  5. $ make root-menuconfig # 手動配置根文件系統(tǒng)

  6. $ make kernel-menuconfig # 手動配置內核

3.8 編譯

 
  1. $ make root # 編譯根文件系統(tǒng),稍微有點慢,需要下載帶 sysroot 的編譯器

  2. $ make kernel # 編譯內核,采用 Ubuntu 和 emdebian.org 提供的交叉編譯器

3.9 保存所有改動

 
  1. $ make save # 保存新的配置和新產(chǎn)生的鏡像

  2.  

  3. $ make kconfig-save # 保存到 boards/BOARD/

  4. $ make rconfig-save

  5.  

  6. $ make root-save # 保存到 prebuilt/

  7. $ make kernel-save

3.10 啟動新的根文件系統(tǒng)和內核

需要打開 boards/BOARD/Makefile 屏蔽已經(jīng)編譯的 KIMAGROOTFS,此時會啟動 output/ 目錄下剛編譯的 rootfs 和內核:

 
  1. $ vim boards/versatilepb/Makefile

  2. #KIMAGE=$(PREBUILT_KERNEL)/$(XARCH)/$(BOARD)/$(LINUX)/zImage

  3. #ROOTFS=$(PREBUILT_ROOTFS)/$(XARCH)/$(CPU)/rootfs.cpio.gz

  4. $ make boot

3.11 啟動串口

 
  1. $ make boot G=0 # 使用組合按鍵:`CTL+a x` 退出,或者另開控制臺執(zhí)行:`pkill qemu`

3.12 選擇 Rootfs 設備

 
  1. $ make boot ROOTDEV=/dev/nfs

  2. $ make boot ROOTDEV=/dev/ram

3.13 擴展

通過添加或者修改 boards/BOARD/Makefile,可以靈活配置開發(fā)板、內核版本以及 BuildRoot 等信息。通過它可以靈活打造自己特定的 Linux 實驗環(huán)境。

 
  1. $ cat boards/versatilepb/Makefile

  2. ARCH=arm

  3. XARCH=$(ARCH)

  4. CPU=arm926t

  5. MEM=128M

  6. LINUX=2.6.35

  7. NETDEV=smc91c111

  8. SERIAL=ttyAMA0

  9. ROOTDEV=/dev/nfs

  10. ORIIMG=arch/$(ARCH)/boot/zImage

  11. CCPRE=arm-linux-gnueabi-

  12. KIMAGE=$(PREBUILT_KERNEL)/$(XARCH)/$(BOARD)/$(LINUX)/zImage

  13. ROOTFS=$(PREBUILT_ROOTFS)/$(XARCH)/$(CPU)/rootfs.cpio.gz

默認的內核與 Buildroot 信息對應為 boards/BOARD/linux_${LINUX}_defconfigboards/BOARD/buildroot_${CPU}_defconfig,如果要添加自己的配置,請注意跟 boards/BOARD/Makefile 里頭的 CPU 和 Linux 配置一致。

3.14 更多用法

詳細的用法這里就不羅嗦了,大家自行查看幫助。

 
  1. $ make help

3.15 實驗效果圖

如何搭建Linux內核實驗環(huán)境

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。

網(wǎng)頁名稱:如何搭建Linux內核實驗環(huán)境
網(wǎng)頁路徑:http://www.rwnh.cn/article14/jieode.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供云服務器、靜態(tài)網(wǎng)站、域名注冊、品牌網(wǎng)站制作、微信小程序、外貿建站

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站
清镇市| 临桂县| 方城县| 巴塘县| 大宁县| 若羌县| 巴彦县| 两当县| 班玛县| 宿松县| 黔西| 巫溪县| 高尔夫| 南开区| 手游| 嘉祥县| 舞阳县| 洛宁县| 响水县| 梅州市| 桦南县| 安仁县| 乌审旗| 沾化县| 长垣县| 美姑县| 连州市| 吴江市| 临西县| 广丰县| 东安县| 信阳市| 乌苏市| 蕉岭县| 杭州市| 西盟| 庆元县| 长春市| 长春市| 都昌县| 阿图什市|