你曾經(jīng)考慮過 在 Ubuntu 中管理開機啟動應(yīng)用 嗎?如果在開機時,你的 Ubuntu 系統(tǒng)啟動得非常緩慢,那么你就需要考慮這個問題了。
每當(dāng)你開機進入一個操作系統(tǒng),一系列的應(yīng)用將會自動啟動。這些應(yīng)用被稱為‘開機啟動應(yīng)用’ 或‘開機啟動程序’。隨著時間的推移,當(dāng)你在系統(tǒng)中安裝了足夠多的應(yīng)用時,你將發(fā)現(xiàn)有太多的‘開機啟動應(yīng)用’在開機時自動地啟動了,它們吃掉了很多的系統(tǒng)資源,并將你的系統(tǒng)拖慢。這可能會讓你感覺卡頓,我想這種情況并不是你想要的。
讓 Ubuntu 變得更快的方法之一是對這些開機啟動應(yīng)用進行控制。 Ubuntu 為你提供了一個 GUI 工具來讓你找到這些開機啟動應(yīng)用,然后完全禁止或延遲它們的啟動,這樣就可以不讓每個應(yīng)用在開機時同時運行。
在這篇文章中,我們將看到 在 Ubuntu 中,如何控制開機啟動應(yīng)用,如何讓一個應(yīng)用在開機時啟動以及如何發(fā)現(xiàn)隱藏的開機啟動應(yīng)用。這里提供的指導(dǎo)對所有的 Ubuntu 版本均適用,例如 Ubuntu 12.04, Ubuntu 14.04 和 Ubuntu 15.04。
在 Ubuntu 中管理開機啟動應(yīng)用
默認情況下, Ubuntu 提供了一個Startup Applications工具來供你使用,你不必再進行安裝。只需到 Unity 面板中就可以查找到該工具。

點擊它來啟動。下面是我的Startup Applications的樣子:

在 Ubuntu 中移除開機啟動應(yīng)用
現(xiàn)在由你來發(fā)現(xiàn)哪個程序?qū)δ阌锰幉淮螅瑢ξ襾碚f,是 Caribou 這個軟件,它是一個屏幕鍵盤程序,在開機時它并沒有什么用處,所以我想將它移除出開機啟動程序的列表中。
你可以選擇阻止某個程序在開機時啟動,而在開機啟動程序列表中保留該選項以便以后再進行激活。點擊 關(guān)閉按鈕來保留你的偏好設(shè)置。

要將一個程序從開機啟動程序列表中移除,選擇對應(yīng)的選項然后從窗口右邊的面板中點擊移除按鈕來保留你的偏好設(shè)置。

需要提醒的是,這并不會將該程序卸載掉,只是讓該程序不再在每次開機時自動啟動。你可以對所有你不喜歡的程序做類似的處理。
讓開機啟動程序延遲啟動
若你并不想在開機啟動列表中移除掉程序,但同時又憂慮著系統(tǒng)性能的問題,那么你所需要做的是給程序添加一個延遲啟動命令,這樣所有的程序就不會在開機時同時啟動。
選擇一個程序然后點擊 編輯 按鈕。

這將展示出運行這個特定的程序所需的命令。

所有你需要做的就是在程序運行命令前添加一句 sleep XX; 。這樣就為實際運行該命令來啟動的對應(yīng)程序添加了 XX 秒的延遲。例如,假如我想讓 Variety 壁紙管理應(yīng)用 延遲啟動 2 分鐘,我就需要像下面那樣在命令前添加 sleep 120;

保存并關(guān)閉設(shè)置。你將在下一次啟動時看到效果。
增添一個程序到開機啟動應(yīng)用列表中
這對于新手來說需要一點技巧。我們知道,在 Linux 的底層都是一些命令,在上一節(jié)我們看到這些開機啟動程序只是在每次開機時運行一些命令。假如你想在開機啟動列表中添加一個新的程序,你需要知道運行該應(yīng)用所需的命令。
第 1 步:如何查找運行一個程序所需的命令?
首先來到 Unity Dash 面板然后搜索 Main Menu:

這將展示出在各種類別下你安裝的所有程序。在 Ubuntu 的低版本中,你將看到一個相似的菜單,通過它來選擇并運行應(yīng)用。

在各種類別下找到你找尋的應(yīng)用,然后點擊 屬性 按鈕來查看運行該應(yīng)用所需的命令。例如,我想在開機時運行 Transmission Torrent 客戶端。

這就會向我給出運行 Transmission 應(yīng)用的命令:

接著,我將用相同的信息來將 Transmission 應(yīng)用添加到開機啟動列表中。
第 2 步: 添加一個程序到開機啟動列表中
再次來到開機啟動應(yīng)用工具中并點擊 添加 按鈕。這將讓你輸入一個應(yīng)用的名稱,對應(yīng)的命令和相關(guān)的描述。其中命令最為重要,你可以使用任何你想用的名稱和描述。使用上一步得到的命令然后點擊 添加 按鈕。

就這樣,你將在下一次開機時看到這個程序會自動運行。這就是在 Ubuntu 中你能做的關(guān)于開機啟動應(yīng)用的所有事情。
到現(xiàn)在為止,我們已經(jīng)討論在開機時可見到的應(yīng)用,但仍有更多的服務(wù),守護進程和程序并不在開機啟動應(yīng)用工具中可見。下一節(jié)中,我們將看到如何在 Ubuntu 中查看這些隱藏的開機啟動程序。
在 Ubuntu 中查看隱藏的開機啟動程序
要查看在開機時哪些服務(wù)在運行,可以打開一個終端并使用下面的命令:
sudo sed -i 's/NoDisplay=true/NoDisplay=false/g' /etc/xdg/autostart/*.desktop
上面的命令是一個快速查找和替換命令,它將在所有自動啟動的程序里的 NoDisplay=false 改為 NoDisplay=true ,一旦執(zhí)行了這個命令后,再次打開開機啟動應(yīng)用工具,現(xiàn)在你應(yīng)該可以看到更多的程序:

你可以像先前我們討論的那樣管理這些開機啟動應(yīng)用。我希望這篇教程可以幫助你在 Ubuntu 中控制開機啟動程序。任何的問題或建議總是歡迎的。
修改開機啟動等待時間
Ubuntu的開機啟動等待時間默認是10s,等待時間比較長,每次啟動都得按一下回車,于是就想修改一下等待時間。我們可以找到Grub的配置文件(/boot/grub/grub.cfg),在其中進行個性化的配置。
備份配置文件
$ sudo cp /boot/grub/grub.cfg /boot/grub/grub.cfg.bak

查看并修改配置文件
$ sudo vi /boot/grub/grub.cfg
輸入以下內(nèi)容以快速查找定位相關(guān)配置信息
:/timeout
其中
set timeout=10
默認等待時間是10秒(注意:單位是秒)。
我們可以將等待時間修改為自己想要的了。如:
set timeout=3
然后,按下Esc鍵以退出編輯模式,然后輸入
:wq!
強制保存并退出,等下次啟動系統(tǒng)即可發(fā)現(xiàn)等待時間已經(jīng)變成了你設(shè)置的時間。