1. 開機(jī)啟動(dòng)時(shí)自動(dòng)運(yùn)行程序
Linux加載后, 它將初始化硬件和設(shè)備驅(qū)動(dòng), 然后運(yùn)行第一個(gè)進(jìn)程init。init根據(jù)配置文件繼續(xù)引導(dǎo)過(guò)程,啟動(dòng)其它進(jìn)程。通常情況下,修改放置在
/etc/rc或
/etc/rc.d 或
/etc/rc?.d
目錄下的腳本文件,可以使init自動(dòng)啟動(dòng)其它程序。例如:編輯/etc/rc.d/rc.local 文件(該文件通常是系統(tǒng)最后啟動(dòng)的腳本),在文件最末加上一行“xinit”或“startx”,可以在開機(jī)啟動(dòng)后直接進(jìn)入X-Window。
?
2. 登錄時(shí)自動(dòng)運(yùn)行程序
用戶登錄時(shí),bash先自動(dòng)執(zhí)行系統(tǒng)管理員建立的全局登錄script :
/ect/profile
然后bash在用戶起始目錄下按順序查找三個(gè)特殊文件中的一個(gè):
/.bash_profile、
/.bash_login、
/.profile,
但只執(zhí)行最先找到的一個(gè)。因此,只需根據(jù)實(shí)際需要在上述文件中加入命令就可以實(shí)現(xiàn)用戶登錄時(shí)自動(dòng)運(yùn)行某些程序(類似于DOS下的Autoexec.bat)。
?
3. 退出登錄時(shí)自動(dòng)運(yùn)行程序
退出登錄時(shí),bash自動(dòng)執(zhí)行個(gè)人的退出登錄腳本
/.bash_logout。
例如,在/.bash_logout中加入命令“tar -cvzf c.source.tgz *.c”,則在每次退出登錄時(shí)自動(dòng)執(zhí)行 “tar” 命令備份 *.c 文件。
?
4. 定期自動(dòng)運(yùn)行程序
Linux有一個(gè)稱為crond的守護(hù)程序,主要功能是周期性地檢查 /var/spool/cron目錄下的一組命令文件的內(nèi)容,并在設(shè)定的時(shí)間執(zhí)行這些文件中的命令。用戶可以通過(guò)crontab 命令來(lái)建立、修改、刪除這些命令文件。
例如,建立文件crondFile,內(nèi)容為“00 9 23 Jan * HappyBirthday”,運(yùn)行“crontabcronFile”命令后,每當(dāng)元月23日上午9:00系統(tǒng)自動(dòng)執(zhí)行“HappyBirthday”的程序(“*”表示不管當(dāng)天是星期幾)。
?
5. 定時(shí)自動(dòng)運(yùn)行程序一次
定時(shí)執(zhí)行命令at 與crond 類似(但它只執(zhí)行一次):命令在給定的時(shí)間執(zhí)行,但不自動(dòng)重復(fù)。at命令的一般格式為:at [ -f file ] time ,在指定的時(shí)間執(zhí)行file文件中所給出的所有命令。也可直接從鍵盤輸入命令:
$ at 12:00
at>mailto Roger -s ″Have a lunch″ < plan.txt
at>Ctr-D
Job 1 at 2000-11-09 12:00
2000-11-09 12:00時(shí)候自動(dòng)發(fā)一標(biāo)題為“Have a lunch”,內(nèi)容為plan.txt文件內(nèi)容的郵件給Roger.
?
Ubuntu下添加開機(jī)啟動(dòng)腳本
Ubuntu開機(jī)之后會(huì)執(zhí)行/etc/rc.local文件中的腳本,所以我們可以直接在/etc/rc.local中添加啟動(dòng)腳本。
當(dāng)然要添加到語(yǔ)句:exit 0 前面才行。
如:
sudo vi /etc/rc.local
?
然后在 exit 0 前面添加好腳本代碼。
后續(xù)有空再研究下添加一個(gè)Ubuntu的開機(jī)啟動(dòng)服務(wù)看看。
如果要添加為開機(jī)啟動(dòng)執(zhí)行的腳本文件,可先將腳本復(fù)制或者軟連接到/etc/init.d/目錄下,然后用:update-rc.d xxx defaults NN命令(NN為啟動(dòng)順序),將腳本添加到初始化執(zhí)行的隊(duì)列中去。
注意如果腳本需要用到網(wǎng)絡(luò),則NN需設(shè)置一個(gè)比較大的數(shù)字,如98 。
?
修改 Ubuntu 啟動(dòng)順序
?
方法一 利用啟動(dòng)管理器
?
1、安裝 啟動(dòng)管理器
sudo apt-get install startupmanager?
方法二 修改 /boot/grub/grub.cfg
1、備份原文件為 grub.cfg.bak
sudo cp /boot/grub/grub.cfg /boot/grub/grub.cfg.bak?
2、修改啟動(dòng)順序
sudo gedit /boot/grub/grub.cfg?
menuentry 'Ubuntu,Linux 2.6.32-22-generic (恢復(fù)模式)'
menuentry 'Ubuntu,Linux 2.6.32-21-generic'
menuentry 'Ubuntu,Linux 2.6.32-21-generic (恢復(fù)模式)'
menuentry "Memory test (memtest86+)"
menuentry "Memory test (memtest86+, serial console 115200)"
menuentry "Microsoft Windows XP Professional (on /dev/sda1)"
注:以下為針對(duì) ubuntu 8.04 版本
啟動(dòng)ubuntu后,輸入:
sudo gedit /boot/grub/menu.lst
輸入正確密碼后,打開menu.lst。從第一行往下看,找到第一個(gè)開頭沒有#的行
default 0
然后往下看,在文件的尾部找到以title開頭的行(注意,以#開頭的都不要理),我的文件以title開頭的行(開頭沒有#)有7行,依次為:
title Ubuntu 8.04.1, kernel 2.6.24-21-generic
title Ubuntu 8.04.1, kernel 2.6.24-21-generic (recovery mode)
title Ubuntu 8.04.1, kernel 2.6.24-16-generic
title Ubuntu 8.04.1, kernel 2.6.24-16-generic (recovery mode)
title Ubuntu 8.04.1, memtest86+
title Other operating systems:
title Windows NT/2000/XP
這些行當(dāng)然不是像這樣連在一起的,它們分散在文件中。我把這7行寫一起,就是讓我們看得清楚些。事實(shí)上,除去每行前面的title,這7行就是我開機(jī)時(shí)出現(xiàn)的啟動(dòng)菜單項(xiàng),系統(tǒng)在啟動(dòng)時(shí)讀的就是該文件。
default 0
表示默認(rèn)情況下啟動(dòng)以上菜單上第 1 行( 0 + 1 )的系統(tǒng)
我們看到windows處于第 7 ( 6 + 1 )行,所以現(xiàn)在把default的值改為 6 ,保存文件,重啟系統(tǒng),默認(rèn)啟動(dòng)的系統(tǒng)就改為Windows系統(tǒng)了。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
