日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
使用LinuxBusyBox輕松實現(xiàn)便捷關(guān)機(jī)(linuxbusybox關(guān)機(jī))

在Linux操作系統(tǒng)中,關(guān)機(jī)是一個常見的操作。但是,在某些情況下,傳統(tǒng)的Linux關(guān)機(jī)方式并不如我們所期望的那樣便捷。為了解決這個問題,本文將介紹一種使用BusyBox來實現(xiàn)便捷關(guān)機(jī)的方法。

成都創(chuàng)新互聯(lián)公司專注于中大型企業(yè)的網(wǎng)站建設(shè)、網(wǎng)站設(shè)計和網(wǎng)站改版、網(wǎng)站營銷服務(wù),追求商業(yè)策劃與數(shù)據(jù)分析、創(chuàng)意藝術(shù)與技術(shù)開發(fā)的融合,累計客戶成百上千,服務(wù)滿意度達(dá)97%。幫助廣大客戶順利對接上互聯(lián)網(wǎng)浪潮,準(zhǔn)確優(yōu)選出符合自己需要的互聯(lián)網(wǎng)運用,我們將一直專注成都品牌網(wǎng)站建設(shè)和互聯(lián)網(wǎng)程序開發(fā),在前進(jìn)的路上,與客戶一起成長!

什么是BusyBox?

BusyBox是一個集成了許多Unix工具的單一可執(zhí)行文件,這些工具在嵌入式操作系統(tǒng)、移動設(shè)備和桌面系統(tǒng)中都很常見。BusyBox的設(shè)計目標(biāo)是提供一種小巧而高效的替代品,以便在嵌入式設(shè)備上運行一個完整的Linux操作系統(tǒng)時,可以盡可能地減小系統(tǒng)的存儲需求。

接下來,我們將詳細(xì)介紹如何使用BusyBox來實現(xiàn)便捷關(guān)機(jī)。

步驟1:安裝BusyBox

我們需要安裝BusyBox。

在Ubuntu和Debian等基于Debian的發(fā)行版中,可以使用以下命令來安裝BusyBox:

“`

sudo apt-get install busybox

“`

在基于Red Hat的發(fā)行版中,可以使用以下命令來安裝BusyBox:

“`

sudo yum install busybox

“`

步驟2:創(chuàng)建一個腳本

接下來,我們需要創(chuàng)建一個用于執(zhí)行關(guān)機(jī)操作的腳本。為此,我們將創(chuàng)建一個名為“shutdown.sh”的文件,并將其保存在主目錄中。

“`

nano ~/shutdown.sh

“`

在打開的編輯器中,將以下代碼粘貼到文件中:

“`

#!/bin/sh

busybox poweroff

“`

保存并關(guān)閉文件?,F(xiàn)在,我們需要將文件設(shè)置為可執(zhí)行:

“`

chmod +x ~/shutdown.sh

“`

步驟3:創(chuàng)建一個別名

為了方便使用該腳本,我們需要將其添加為一個別名。為此,我們將創(chuàng)建一個名為“.bashrc”的文件,并將以下別名添加到文件中:

“`

nano ~/.bashrc

“`

在打開的編輯器中,將以下代碼粘貼到文件底部:

“`

alias shutdown=’~/shutdown.sh’

“`

保存并關(guān)閉文件?,F(xiàn)在,我們需要重新加載.bashrc文件,以使別名生效:

“`

source ~/.bashrc

“`

步驟4:測試

現(xiàn)在,我們的設(shè)置已經(jīng)完成,可以開始測試了。為了測試,我們可以使用以下命令來關(guān)閉系統(tǒng):

“`

shutdown

“`

這將執(zhí)行我們之前創(chuàng)建的腳本,并引導(dǎo)系統(tǒng)進(jìn)行正常的關(guān)機(jī)操作。

結(jié)論

作為一種小巧而高效的工具,BusyBox為Linux用戶提供了許多便利。通過使用BusyBox來實現(xiàn)便捷關(guān)機(jī),我們可以將關(guān)機(jī)過程減少到一個簡單的命令行操作,從而提高操作系統(tǒng)的便捷性和易用性。

成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián)為您提供網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)頁設(shè)計及定制高端網(wǎng)站建設(shè)服務(wù)!

linux 如何設(shè)置無盤啟動

用網(wǎng)卡啟動,網(wǎng)絡(luò)要有bootp服務(wù)器(pxe服務(wù)器)

你可以參考一下……這個筆記做的還行??!

一.編譯內(nèi)核

1. 進(jìn)入linux源代首碰碼目錄:

#cd /usr/src/linux-2.4.20

2. 清理源代碼樹,檢測內(nèi)核包里面的文件是否正確:

#make mrproper

3. 運行配置程序:

#make xconfig

說明:最關(guān)鍵要選擇fs(ext3),initrd,cpu,網(wǎng)卡型號的支持,或直接將準(zhǔn)備好的config文件拷貝到/usr/src/linux-2.4.20/arch/i386目錄下,改名為defconfig(注意先將原有的defconfig文件備份,切記).

4. 開始編譯,檢查相關(guān)獨立性:

#make dep

5. 清除內(nèi)存和編譯過程中生成的.o文件:

#make clean

6. 生成bzImage內(nèi)核文件,在./arch/i386/boot下:

#make bzImage

二.Busybox文件系統(tǒng)的生成

1. Busybox簡介

busybox是一個集成了一百多個最常用linux命令和工具的軟件,他甚至還集成了一個http服務(wù)器和一個telnet服務(wù)器,而所有這一切功能卻只有區(qū)區(qū)1M左右的大小.我們平時用的那些linux命令就好比是分力式的電子元件,而busybox就好比是一個集成電路,把常用的工具和命令集成壓縮在一個可執(zhí)行文件里,功能基本不變,而大小卻小很多倍,在嵌入式linux應(yīng)用中,busybox有非常廣的應(yīng)用,另外,大多數(shù)linux發(fā)行版的安裝程序中都有busybox的身影,安裝linux的時候案ctrl+alt+F2就能得到一個控制臺,而這個控制臺中的所有命令都是指向busybox的鏈接.

2. 配置busybox

busybox的配置程序和linux內(nèi)核菜單配置方式簡直一模一樣.

解壓: #tar xvfz /Nodiskboot/busybox-1.00.tar.gz

#cd /Nodiskboot/busybox-1.00

#make menuconfig

下面是需要編譯進(jìn)busybox的功能選項,其他的可以根據(jù)需要自選,但是同樣臘芹緩不要太貪心.

General Configuration應(yīng)該選的選項

Show verbose applet usage messages

Runtime SUID/SGID configuration via /etc/busybox.conf

Build Options

Build BusyBox as a static binary (no shared libs)

這個選項是一定要選擇的,這樣才能把busybox編譯成靜態(tài)鏈接的可執(zhí)行文件,運行時才獨立于其他函數(shù)庫.否則必需要其他庫文件才能運行,在單一個linux內(nèi)核不能使他正常工作.

Installation Options

Don’t use /usr

這個選項也一定要選,否則make install 后busybox將安裝在原系統(tǒng)的/usr下,這將覆蓋掉系統(tǒng)原有的命令.選擇這個選項后,make install后會在busybox目錄下生成一個叫_install的目錄,里面有busybox和指向他的鏈接.

其他選項都是一些linux基本命令選項,自己需要哪些命令就編譯進(jìn)去,一般用默認(rèn)的就可以了.

配置好后退出并保存.

3. 編譯并安usybox

#make

#make install

這樣,在busybox目錄下將生成一個_install的文件夾,里面會有四項bin,in和linuxrc,其中bin,in都是目錄,busybox文件放在bin下面,然后其他的所有文件都是符號連接,連接到busybox上。

上述步驟生成了initrd簡單的目錄架構(gòu),我們還有手工輪模添加若干。

4. 制作根文件系統(tǒng)

一個根文件系統(tǒng)必須包含支持一個完整的Linux系統(tǒng)所需的最基本的全部文件:

* 最基本的文件結(jié)構(gòu)

* /dev, /proc, /bin, /etc, /lib, /usr, /tmp 等目錄的最小

* sh, ls, cp, mv等基本工具程序

* rc, inittab, fstab等基本配置文件

* /dev/hd*, /dev/tty*, /dev/fd0等基本設(shè)備

* libc-x.x.x.so等程序運行所需的各種動態(tài)庫文件

).創(chuàng)建目錄rootfs

mkdir /Nodiskboot/rootfs

cd /Nodiskboot/rootfs

).基本目錄結(jié)構(gòu)

#mkdir etc usr var tmp proc home root dev etc/init.d mnt lib

#chmod 755 etc usr var tmp home root dev etc/init.d mnt lib

#chmod 555 proc

介紹一下各種目錄的作用:

* /dev — 設(shè)備文件,實現(xiàn)系統(tǒng)I/O 所需

* /proc — 使用proc文件系統(tǒng)所需

* /etc — 包含系統(tǒng)配置文件

* /in — 包含重要的系統(tǒng)程序

* /bin — 包含大部分系統(tǒng)程序

* /lib — 包含提供動態(tài)鏈接所需的共享庫文件

* /mnt — 掛載其他設(shè)備:磁盤、光盤、u設(shè)備等的掛載點

* /usr — 額外的程序、函數(shù)庫文件以及配置文件

).拷貝busybox

#cp -R /Nodiskboot/busybox-1.00/_install/* /Nodiskboot/rootfs/

).建立dev設(shè)備文件名

#cd /Nodiskboot/rootfs/dev

#mknod -m 666 tty c 5 0

#mknod -m 666 console c 5 1

#mknod -m 666 tty0 c 4 0

#mknod -m 600 fd0 b 2 0

#mknod -m 600 ram0 b 1 0

#mknod -m 600 null c 1 3

mknod是在dev下成生mknod節(jié)點設(shè)備文件。加載磁盤的命令是:

#mknod -m 660 hda b 3 1

其中3是之一條主線上,1是主設(shè)備上之一個分區(qū)(0~63),如果是第二條線則是22,如果是從設(shè)備則是(64~127).

但是手工方法建立太麻煩了,通常直接從/dev下把需要的設(shè)備文件拷貝過來.

這些設(shè)備文件是特殊文件,在拷貝時一定要加上-R參數(shù)才能拷貝.

#cp -R /dev/console ./

#cp -R /dev/null ./

#cp -R /dev/zero ./

).建立etc目錄下的配置文件

寫入三個文件inittab,fstab,init.d/rc.sysinit,文件內(nèi)容如下

inittab:

::sysinit:/etc/init.d/rcS

::askfirst:/bin/sh

fstab:

proc /proc proc defaults 0 0

init.d/rcS:

#!/bin/sh

mount –a

exec bin/dhcpcd

# chmod 755 rc.sysinit

其中rcS中exec語句是啟動dhcp客戶端軟件,啟動自動配置IP功能。

).在lib下面cp相應(yīng)的庫文件

用ldd命令查看文件運行所用到的庫,由于未用到動態(tài)鏈接庫,而是直接鏈接到linuxrc文件上,所以lib下面是空的.

).存儲節(jié)點的初始化是另一個需要注意的問題。在前面曾提到,內(nèi)核引導(dǎo)的最后一項工作是創(chuàng)建并執(zhí)行init進(jìn)程,隨后init進(jìn)程將創(chuàng)建其他進(jìn)程,運行一些系統(tǒng)所需的重要程序。由于在通常的Linux系統(tǒng)中的init程序的使用和配置與System V系統(tǒng)中的init程序類似,而在嵌入式系統(tǒng)等特殊應(yīng)用場合并不需要實現(xiàn)多個用戶(multiuser)的使用,也不需要用戶登陸終端,所以System V系統(tǒng)中的init程序?qū)ξ覀兊囊蠖怨δ苓^于復(fù)雜。在此,我們采用使用比較廣泛的工具busybox中的init程序。busybox包含常用的基本工具程序如:sh,ls,mount,init,cp等,而大小只有幾百K(視所選擇工具程序的數(shù)目來決定大小)。實際上,編譯busybox后只有一個busybox程序,其余的所有工具程序都是busybox程序的符號鏈接,busybox通過辨別不同的程序名稱,跳轉(zhuǎn)執(zhí)行不同的功能。

busybox中的init程序可以完成初始化的基本功能而且去掉了System V系統(tǒng)init程序的多余功能,init程序執(zhí)行的順序如下:

. 創(chuàng)建init的信號處理

. 初始化控制臺

. 分析inittab文件,/etc/inittab

. 執(zhí)行系統(tǒng)初始化腳本,/etc/init.d/rcS

. 執(zhí)行所有inittab中類型為wait的程序

. 執(zhí)行所有inittab中類型為once的程序

完成以上步驟后,init循環(huán)執(zhí)行所有inittab中類型為respawn和askfirst的程序。文件inittab中的每一行配置遵照格式如下:

id:runlevel:action:process

雖然這個格式與傳統(tǒng)的System V init 類似,但是id 域的含義不同。id 通常是用來指定控制啟動進(jìn)程運行的tty。如果id域為空則代表這個進(jìn)程的運行不需要與shell交互。在busybox中,runlevel域 可以完全忽略。process 指明執(zhí)行程序以及所帶參數(shù)選項。 action域可以選擇一下八個類型:

sysinit提供給init初始化腳本所在的路徑;

respawn當(dāng)進(jìn)程終止后將其重新啟動;

askfirst與respawn類似,不同之處是在終端提示“Please press Enter to activate this console.”;

wait代表init等待這個程序執(zhí)行完后才繼續(xù)執(zhí)行;

once表示執(zhí)行一次而且不需要等待完成;

ctrlaltdel表示當(dāng)按下Ctrl-Alt-Delete時執(zhí)行;

shutdown表示程序在關(guān)機(jī)時執(zhí)行;

restart表示程序在重啟時執(zhí)行,通常是init本身。

在存儲節(jié)點上運行的程序是:掛載硬盤(mount),掃描硬盤生成多媒體文件報告的程序,流媒體服務(wù)器(vls),與管理節(jié)點通信程序(agent),監(jiān)視網(wǎng)絡(luò)帶寬使用狀況的程序()。其中,mount的action域應(yīng)為wait,因為首先要將存有多媒體文件的硬盤掛載才能對其執(zhí)行掃描;vls的action域應(yīng)為respawn,vls運行出現(xiàn)嚴(yán)重錯誤后,重新啟動vls,并向管理節(jié)點報告,寫入log。

三. 制作ramdisk映象文件

根文件系統(tǒng)所有東西都放在/Nodiskboot/rootfs下,我們將利用ramdisk把這些內(nèi)容做成ramdisk映象文件并壓縮它.

# dd if=/dev/zero of=/dev/ram0

dd: 正在寫入 ‘/dev/ram1’: 設(shè)備上沒有空間

讀入了 8193+0 個塊

輸出了 8192+0 個塊

zero是一個特殊的設(shè)備,表示全部為0的字符塊.上面這條命令的意思是把系統(tǒng)的之一個ramdisk用全部為0的數(shù)據(jù)填充,因為 ramdisk默認(rèn)大小為4M,因此當(dāng)讀滿8192個塊(每塊512字節(jié))后,顯示’設(shè)備上沒空間’.這很正常,/dev/ram0已經(jīng)被填充滿了.

如果指定塊的大小:

# dd if=/dev/zero of=/dev/ram0 bs=1M count=4

讀入了 4+0 個塊

輸出了 4+0 個塊

不會有錯誤提示,這里演示了dd的一般用法,接下來還要頻繁用到dd命令.

在/dev下有很多ramdisk設(shè)備ram0,ram1,ram2,ram3…. 一般用之一個就可以了.

填充后,ram1就有可空間,可以在這個空間上創(chuàng)見一個文件系統(tǒng):

# mkfs.ext2 -m0 /dev/ram0

將ram0掛裝到文件系統(tǒng)中:

先建立一個掛裝點:

#mkdir /mnt/ram0

掛上ram0:

#mount /dev/ram0 /mnt/ram0

將先前做好的Nodiskboot根文件系統(tǒng)拷貝到ram0上.

#cp -R /Nodiskboot/rootfs/* /mnt/ram0

做完以上幾步,你應(yīng)就白了ramdisk設(shè)備的含義,他是和hda1,hdb1,一樣的塊設(shè)備,用mount掛到文件系統(tǒng)下后就可以訪問,往里放東西,但是所有的東西在內(nèi)存上.關(guān)機(jī)將丟失所有東西.

拷貝好Nodiskboot根文件系統(tǒng)后卸載ram0:

#umount /dev/ram0

如果出現(xiàn)”device is busy”,說明有別的進(jìn)程在使用/dev/ram0上的文件,解決辦法如下:

#fuser -v /mnt/ram0

#umount /dev/ram0

這時,雖然不能通過/mnt/ram這個掛裝點訪問ram0中的內(nèi)容了,但是他卻切切實實得在內(nèi)存中存在.

再用dd把這個ram1以映象方式取出來:

# dd if=/dev/ram0 of=/Nodiskboot/ramdisk.img

驗證一下取出來的內(nèi)容:

# file ramdisk.img

ramdisk.img: Linux rev 1.0 ext2 filesystem data

他是一個ext2 文件系統(tǒng),類似一個ISO光盤映象文件.

因次,我們可以用loop設(shè)備來把他重新掛裝到文件系統(tǒng)里:

# mount -o loop ramdisk.img /mnt/ram0/

為了方便,我仍舊把他掛在/mnt/ram0下,因此,在先前一定要把/dev/ram0 umount掉

查看/mnt/ram0下的內(nèi)容,他應(yīng)該和/Nodiskboot/rootfs下的一模一樣,否則就是出錯了:

# ls /mnt/ram0

etc usr var tmp proc home root dev etc/init.d mnt lib

這樣,我們就得到了一個ramdisk根文件系統(tǒng)映象ramdisk.img

把他umount掉:

#umount /mnt/ram0

壓縮ramdisk.img印象文件:

# gzip -v9 ramdisk.img

查看壓縮后的大小:

# ls -lh ramdisk.img.gz

四. 壓縮內(nèi)核與根文件系統(tǒng)

當(dāng)內(nèi)核與根文件系統(tǒng)準(zhǔn)備好之后,就要將這兩者壓縮在一起,使用的工具是mknbi,它是DHCP啟動映象制作工具,在linux下與etherboot配合使用.mknbi壓縮的文件下載到存儲節(jié)點后,由etherboot進(jìn)行分析,對內(nèi)核與根文件系統(tǒng)分離解壓后

1:將bzImage拷貝到mknbi下,將initrd也拷貝到mknbi下

2:mkelf-linux –output=/tftpboot/boot.eb –param=”rw root=/dev/ram initrd=0x075F0000″ bzImage initrd

其中param參數(shù)的設(shè)置, initrd代表內(nèi)核映象文件bzimage將被解壓縮到的內(nèi)存的位置。

五.最后一步――執(zhí)行

將mknbi-linux生成的壓縮文件boot.eb放置在管理節(jié)點的/tftpboot路徑下,并修改/etc/dhcpd.conf中的配置,使boot.eb作為每一個存儲節(jié)點通過TFTP需要從管理節(jié)點下載的文件。然后,管理節(jié)點啟動DHCP守護(hù)進(jìn)程(# service dhcpd start),運行TFTP服務(wù)(# chkconfig tftp on)。

存儲節(jié)點在上電后就可以分配得到IP地址,下載操作系統(tǒng)內(nèi)核和根文件系統(tǒng),運行各種配置好了的程序,可以在存儲節(jié)點上ifconfig,可以看到節(jié)點上的網(wǎng)卡開始工作,現(xiàn)在可以完成busybox里面集成的簡單命令,如ping之類。

linux busybox 關(guān)機(jī)的介紹就聊到這里吧,感謝你花時間閱讀本站內(nèi)容,更多關(guān)于linux busybox 關(guān)機(jī),使用Linux BusyBox輕松實現(xiàn)便捷關(guān)機(jī),linux 如何設(shè)置無盤啟動的信息別忘了在本站進(jìn)行查找喔。

香港云服務(wù)器機(jī)房,創(chuàng)新互聯(lián)(www.cdcxhl.com)專業(yè)云服務(wù)器廠商,回大陸優(yōu)化帶寬,安全/穩(wěn)定/低延遲.創(chuàng)新互聯(lián)助力企業(yè)出海業(yè)務(wù),提供一站式解決方案。香港服務(wù)器-免備案低延遲-雙向CN2+BGP極速互訪!


新聞標(biāo)題:使用LinuxBusyBox輕松實現(xiàn)便捷關(guān)機(jī)(linuxbusybox關(guān)機(jī))
網(wǎng)站地址:http://m.5511xx.com/article/dhgpeeg.html