精簡Linux作業系統

2021-04-08 22:54:48 字數 1314 閱讀 1853

mknod 裝置檔名 裝置型別 主裝置號 次裝置號

mknod console c 5 1

mknod fb0 c 29 0

mknod hda b 3 0

mknod hda1 b 3 1

mknod loop0 b 7 0

mknod null c 1 3

mknod ram0 b 1 0

mknod tty c 5 0

mknod tty0 c 4 0

ln –s fb0 fb

以上是建立裝置檔案,可能有的裝置檔案沒有建立,這裡根據你想要的裝置檔案自己建立。

建立好這些檔案之後,檔案系統就可以了。我們還可以把我們的程式拷貝到找個檔案系統當中,然後修改rc.s檔案,使得它自動執行。也可以進去之後,使用busybox提供的shell來執行。

最後一步,就是把找個檔案系統做成乙個記憶體檔案系統的影像。

首先,新建乙個空的檔案,大小為16m,我使用下面的命令:

dd if=/dev/zero of=/tmp/image bs=1024 count=16384

這裡面count大小的值要和ram disk的大小一樣,這個大小在編譯核心時通過make configure設定。

然後,把找個空檔案對映到乙個裝置檔案上面,使用下面的命令進行:

losetup /dev/loop0 /tmp/image

(在這裡我要說下,可能會出現許可權不夠的問題,那是因為你的linux開啟了selinux,可以把它禁用掉,在命令列方式下輸入:system-config-securitylevel,然後禁用就可以了)

把這個影像格式化為ext2格式:

mke2fs /dev/loop0

格式化好之後,把它掛載到我們主機的檔案系統上面來,我把它掛載到/mnt/img:

mount /dev/loop0 /mnt/img

然後把我們建立好的檔案系統從/tmp/usb拷貝過來

cp  /tmp/usb/*  /mnt/img/  -ar

拷貝完成之後,我們的images檔案就是包含了這些檔案的檔案映像了。

把它從系統中解除安裝出來

umount /dev/loop0

把loop0跟imag脫離關係

losetup –d /dev/loop0

sync

現在,我們的檔案映像做好了。再把它壓縮一下:

dd if=image |gzip -9 >image.gz

image.gz就是我們的壓縮的記憶體檔案影像了。把它拷貝到u盤的根目錄下面。

設定系統引導從usb啟動(usb-hdd),系統就會啟動到busybox提供的shell下面。

Linux作業系統

本書以當前最流行的red hat linux的最新發行版本為基礎,論述作業系統的基本原理 基本思想和基本方法,並在此基礎上介紹linux網路作業系統的核心結構 安裝 配置 基本操作 系統管理及網路應用等,從而系統 完整地講述linux作業系統從基本原理到應用實踐的主要內容。本書注意理論內容的選取,注...

Linux 作業系統

linux 作業系統 計算機本身就是一堆硬體,最核心 就是cpu和儲存器裝置,為了能夠計算機獲得資料,有輸入裝置和輸出裝置,輸入輸出裝置通過南橋 北橋接入cache 接入系統的,彼此之間還有匯流排,比如記憶體到cpu的叫系統匯流排,各種鍵盤,滑鼠需要的匯流排也是不一樣的。為了進可能 利用計算機的資源...

Linux作業系統

linux的組成部分 linux核心 是整個作業系統的核心,管理著整個計算機的軟硬體資源。linuxshell 是系統的使用者介面,提供了使用者與核心進行互動操作的一種介面 linux檔案結構 檔案結構是檔案存放在磁碟等儲存裝置上的組織方法,主要體現在對檔案和目錄的組織上。安裝方式 光碟安裝 硬碟安...