色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何制作一個屬于自己的Linux操作系統?

dyquk4xk2p3d ? 來源:良許Linux ? 2023-04-03 09:33 ? 次閱讀

一、前言

Linux操作系統至1991年10月5日誕生以來,就其開源性和自由性得到了很多技術大牛的青睞,每個Linux愛好者都為其貢獻了自己的一份力,不管是在Linux內核還是開源軟件等方面,都為我們后來人提供了一個良好的學習和研究環境。

本文主要通過裁剪現有Linux系統,根據自己的需要,打造一個屬于自己的Linux小系統,讓其能夠具備Linux的一些常用小功能。

二、原理

啟動流程介紹:

制作Linux小系統之前,我們有必要再了解一下Linux的啟動流程:

1、首先Linux要通過POST自檢,檢查硬件設備有沒有故障

2、如果有多塊啟動盤的話,需要在BIOS中選擇啟動磁盤

3、啟動MBR中的bootloader引導程序

4、加載內核文件

5、執行所有進程的父進程、老祖宗init

6、打印歡迎界面

在Linux的啟動流程中,加載內核文件時還需要借助別外兩個文件:

1)initrd,是CentOS5上用內存模擬的磁盤設備

2)initramfs,是CentOS6上用內存模擬的文件系統

在啟程的流程中,init主要是用來做哪些操作的呢?

init通過調用/etc/inittab這個配置文件,然后再去執行/etc/rc.d/rc.sysinit的系統初始化腳本

好啦,原理我們已經知道了,接下來我們來看看具體的思路吧(〃'▽'〃)

三、思路

1、我們要在一個現有的Linux系統上加一塊硬盤/dev/sdb,在硬盤上分兩個分區,一個是/boot,一個是/,并將其格式化。當然,我們需要明確的概念是,我們現在加的這個硬盤在現有的Linux系統中是/dev/sdb,但是,當我們把東西全部設置好時,我們就需要把這個硬盤拔除,放在我們的新系統上,此時,他就是/dev/sda啦。

2、在/dev/sdb這個硬盤上,我們要將其打造成一個獨立的Linux系統,里面的所有文件是需要我們一個一個拷貝進去的。而且,作為一個將來要當/dev/sda的硬盤,里面一定要有grub文件諾~所以我們要安裝grub文件。

3、同時,作為一個能獨立運行的Linux系統,內核是一定不能少的!所以,我們要把內核文件和initramfs文件也一起拷到我們的/dev/sdb上。

4、現在我們系統已經初具規模了,接下來就是需要程序了0.0關于程序的拷貝我們可以通過一個腳本來實現。具體的腳本在下文中會給大家說到。

以上步驟完成,我們的自制Linux就完成啦~我們的思路就是這么回事,接下來,我們就開始吧( ̄▽ ̄)~*

四、操作步驟

本次實驗我們以centos6.9為例~

1、目標磁盤分區

首先,我們在宿主機上添加一塊大小為20G的硬盤:

8c605430-d1af-11ed-bfe3-dac502259ad0.jpg

8c671482-d1af-11ed-bfe3-dac502259ad0.jpg

8c72aedc-d1af-11ed-bfe3-dac502259ad0.jpg

8c8090ce-d1af-11ed-bfe3-dac502259ad0.jpg

8c8b500e-d1af-11ed-bfe3-dac502259ad0.jpg

8c92d946-d1af-11ed-bfe3-dac502259ad0.jpg

8c9aca98-d1af-11ed-bfe3-dac502259ad0.jpg

8ca9d70e-d1af-11ed-bfe3-dac502259ad0.jpg

添加完成后,點擊確定,然后我們打開宿主機。通過fdisk來給我們的/dev/sdb進行分區:

8cb6333c-d1af-11ed-bfe3-dac502259ad0.jpg

接下來,我們對/dev/sdb的分區進行格式化:

8cbe3e10-d1af-11ed-bfe3-dac502259ad0.png

格式化完成后,我們創建一個文件夾。進行掛載:

8cc2f590-d1af-11ed-bfe3-dac502259ad0.png

注意:新建的文件夾必須是/mnt/boot

2、安裝grub至目標磁盤

我們直接用grub-install –root-directory=/mnt命令來安裝。用這個命令會安裝grub引導第二階段的文件。

8cc84ffe-d1af-11ed-bfe3-dac502259ad0.png

我們可以來看一下二進制確認我們是否安裝成功:

8cd9597a-d1af-11ed-bfe3-dac502259ad0.jpg

安裝成功。

3、復制內核文件和initrd文件

將內核文件和initrd文件復制到/dev/sdb下的boot目錄中:

8cf634d2-d1af-11ed-bfe3-dac502259ad0.png

4、建立grub.conf文件

上面我們已經移植了內核和initrd文件,我們可以根據其版本來編寫grub.conf文件:

8cfa44b4-d1af-11ed-bfe3-dac502259ad0.png

注意,我們要把selinux給關掉,同時設定一下init,告訴內核不要再去找這個程序了,不然開機的時候會出現錯誤的~

5、創建一級目錄并復制文件

至此,我們就缺目錄和文件了~

創建開機后的一級目錄,同時把/dev/sdb2掛載至/mnt/sysroot,使該目錄作為根目錄:

8d06ce5a-d1af-11ed-bfe3-dac502259ad0.png

復制文件,復制文件我們通過腳本執行,復制我們平時常用的命令即可,小編這里復制了ls,ifconfig,bash,reboot,rm,modprobe,mount,ip,mkdir,touch,cat,vi,less,shutdown,insmod。我們可以用tree查看一下這些命令的復制情況:

8d138bf4-d1af-11ed-bfe3-dac502259ad0.jpg

很明顯我們都復制成功了~

附:復制命令的腳本源代碼

8d29757c-d1af-11ed-bfe3-dac502259ad0.jpg

6、復制網卡驅動

我們基本工作已經完成了,如果想使這個虛擬機帶有網卡功能,我們就必須把網卡驅動拷過來,具體操作如下:

1)查詢網卡詳細信息

8d3ecde6-d1af-11ed-bfe3-dac502259ad0.png

2)把網卡模塊的路徑復制到/mnt/sysroot的庫文件下:

8d48b7d4-d1af-11ed-bfe3-dac502259ad0.png

以上,我們的操作全部完成。現在我們就可以關機,然后把/dev/sdb這個硬盤拆下來,放到新的虛擬機上運行了~

五、測試開機

我們創建一個新的虛擬機,啟動的時候會帶一個硬盤,我們不用它的,刪掉再把我們自己定義的硬盤加進去:

8d558c84-d1af-11ed-bfe3-dac502259ad0.jpg

8d5b0a4c-d1af-11ed-bfe3-dac502259ad0.jpg

8d6b1662-d1af-11ed-bfe3-dac502259ad0.jpg

8d7d51e2-d1af-11ed-bfe3-dac502259ad0.jpg

8d847f12-d1af-11ed-bfe3-dac502259ad0.jpg

8d93fde8-d1af-11ed-bfe3-dac502259ad0.jpg

此時,我們做好的硬盤已經加進去了。我們可以試試能不能啟動了,如果虛擬機可以正常開啟,就說明我們的實驗成功~

8d9e2fac-d1af-11ed-bfe3-dac502259ad0.jpg

8daaf656-d1af-11ed-bfe3-dac502259ad0.jpg

六、實現網絡功能

8dbbe286-d1af-11ed-bfe3-dac502259ad0.jpg

由于圖片可能會看不清楚,現把代碼標出如下:

8dc4caf4-d1af-11ed-bfe3-dac502259ad0.png

由于復制命令的時候忘記復制ping了……所以我們用另一臺機器來ping一下這個ip地址:

8dd3cc70-d1af-11ed-bfe3-dac502259ad0.jpg

可以ping通~

至此,我們已經完成了私人訂制Linux的全部操作,同時我們的自制Linux也可以聯網啦~

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11342

    瀏覽量

    210152
  • 操作系統
    +關注

    關注

    37

    文章

    6889

    瀏覽量

    123602
  • 磁盤
    +關注

    關注

    1

    文章

    380

    瀏覽量

    25245

原文標題:如何制作一個屬于自己的Linux操作系統?

文章出處:【微信號:良許Linux,微信公眾號:良許Linux】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    轉:構建屬于自己的AVR操作系統

    剛剛在網上找資料看到了這個:構建屬于自己的AVR操作系統,感覺是好東西,雖然我自己用不上,但是SO了下壇子里沒有人分享過哪就共享出來吧因為
    發表于 07-24 10:15

    打造屬于自己Linux操作系統

    跟大神起15分鐘制作屬于自己Linux
    發表于 04-16 14:18

    如何制作基于linux-2.6.19內核的小型Linux操作系統

    本文著重介紹如何制作基于linux-2.6.19內核的小型Linux操作系統,并將它移植到S
    發表于 04-25 08:40

    如何建立屬于自己的AVR的RTOS

    這篇筆記雖然是“51操作系統學習筆記”,但沒有找到合適的代碼。用楊明記的感覺還有點難度。因而轉學《建立屬于自己的AVR的RTOS》這篇文
    發表于 11-24 06:31

    Linux操作系統

    linux的教學內容1 、Linux概述 2 、Linux操作系統安裝3、 Linux的內核 4 、Li
    發表于 04-10 16:54 ?0次下載
    <b class='flag-5'>Linux</b><b class='flag-5'>操作系統</b>

    Linux操作系統原理及應用

    Linux操作系統原理及應用 1.1  操作系統的地位 1.2  操作系統的功能 1.3  操作系統的發
    發表于 04-28 14:53 ?0次下載

    什么是Linux操作系統

    什么是Linux操作系統  簡單地說,Linux
    發表于 12-26 12:04 ?1409次閱讀

    手機支持的Linux操作系統

    手機支持的Linux操作系統   Linux系統Linux系統
    發表于 01-28 17:07 ?1838次閱讀

    基于linux的十大操作系統排名

    基于linux內核開源的特性,并隨著linux的不斷發展,各種基于Linux操作系統版本也在不斷發行出來,其中每一個不同版本的
    發表于 07-10 16:23 ?1.6w次閱讀

    Linux操作系統與Windows操作系統的五大區別

    、Android、Ubuntu等都可以叫做Linux系統Linux系統他是家族,他們有共同
    發表于 07-10 16:28 ?7972次閱讀

    什么是分時操作系統Linux屬于實時操作系統嗎?

    我們平時分享的μC/OS、FreeRTOS、RT-Thread、ThreadX這些都是實時操作系統(RTOS),那么有讀者問:什么是分時操作系統Linux屬于實時
    的頭像 發表于 06-23 17:04 ?9191次閱讀

    51操作系統學習筆記(三):建立屬于自己的AVR的RTOS(1)

    這篇筆記雖然是“51操作系統學習筆記”,但沒有找到合適的代碼。用楊明記的感覺還有點難度。因而轉學《建立屬于自己的AVR的RTOS》這篇文
    發表于 11-15 18:36 ?9次下載
    51<b class='flag-5'>操作系統</b>學習筆記(三):建立<b class='flag-5'>一</b><b class='flag-5'>個</b><b class='flag-5'>屬于</b><b class='flag-5'>自己</b>的AVR的RTOS(1)

    51操作系統學習筆記(四):建立屬于自己的AVR的RTOS(2)

    承接51操作系統學習筆記(三):建立屬于自己的AVR的RTOS(1),在avr中調試下下面
    發表于 11-15 21:06 ?7次下載
    51<b class='flag-5'>操作系統</b>學習筆記(四):建立<b class='flag-5'>一</b><b class='flag-5'>個</b><b class='flag-5'>屬于</b><b class='flag-5'>自己</b>的AVR的RTOS(2)

    Linux是實時系統還是分時操作系統?

    我們平時分享的μC/OS、FreeRTOS、RT-Thread、ThreadX這些都是實時操作系統(RTOS),那么有讀者問:什么是分時操作系統Linux屬于實時
    的頭像 發表于 12-28 11:39 ?1587次閱讀

    linux屬于什么操作系統

    Linux屬于種類UNIX操作系統Linux,全稱GNU/Linux,是
    的頭像 發表于 11-08 11:01 ?4664次閱讀
    主站蜘蛛池模板: 99久久精品国产高清一区二区 | 国内精品免费久久影院 | 免费韩伦影院在线观看 | 欧美videos人牛交 | 国产午夜精品久久理论片小说 | 无人在线观看免费高清视频播放 | 超碰caoporen国产 | 国产精品久久久久久人妻精品蜜桃 | 免费毛片网站在线观看 | 熟妇久久无码人妻AV蜜桃 | 亚洲精品视频免费看 | 日韩美女爱爱 | 处初女处夜情视频在线播放 | 欧美日韩国产在线一区二区 | 女人和男人插曲视频大全 | 久久夜色撩人精品国产 | 国产精品一区二区激情 | 欧美一区二区视频高清专区 | 国产欧洲野花A级 | 老板吻我下身好爽到高潮 | 草神被爆漫画羞羞漫画 | 性欧美FREE少妇XXX | 国精产品一区二区三区有限公司 | 国产精品亚洲电影久久成人影院 | 97在线观看免费视频 | 伊人久久大线蕉香港三级 | 国产精品99久久久久久宅男AV | 精品视频免费在线 | 成人在线观看播放 | 99久久久免费精品国产 | 我不卡影院手机在线观看 | 久久人妻AV一区二区软件 | 肉动漫无码无删减在线观看 | 久久亚洲国产精品亚洲 | 99热国产这里只有精品免费 | 忘忧草在线影院WWW日本动漫 | 波多野结衣 无码片 | 欧美乱码伦视频免费66网 | 一品道门在线视频 | 97视频在线免费播放 | 无限资源日本2019版免费 |