六招让你的Ubuntu马上提速
Chris Hoffman

Ubuntu的启动速度非常快,按了开机键之后很快就进入桌面。但我们仍然可以充分利用内存,通过多种方法让开机速度更快。某些方法真的可以提速,对于旧电脑的效果尤其明显。
选用轻量级的桌面环境,关闭不必要的应用程序,可以让一台旧电脑如释重负。如果强行在旧电脑上运行Ubuntu的Unity桌面环境,系统的速度会拖得很慢很慢。
预载(Peload)
预载是一个后台服务,可监控系统上使用的程序。它能找出程序使用的库(libraries)和二进制文件(binaries),预先加载到内存中,使程序的启动速度更快。例如,你可能经常在开机后打开Firefox浏览器和LibreOffice,那么设置了预载之后,系统在启动时会自动把这两个程序的文件加载到内存中。你再登陆系统打开这两个程序时,会发现它们比以前启动得更快。
大多数Ubuntu系统在默认情况下都没有启用预载,只有少数版本安装了这项服务。运行以下命令可以安装预载服务:
Sudo apt-get install preload

这样就装好了!预载服务会在后台运行,不会打扰你的工作。你可以在 /etc/preload.conf 文件中修改预载的设置,但一般情况下使用默认设置就可以了。
设置随机启动程序
你可以让某些程序在系统开机时随机启动。某些程序安装好之后也会默认随机启动——例如Dropbox。如果随机启动的程序很多,或者你的系统比较慢,那么你的系统就要花更多时间来启动。你可以在随机启动程序对话框(Startup Applications dialog)中禁止某些程序的随机启动。

很多默认启动的系统服务没有显示在列表当中。运行下面的命令,可以对这些服务进行设置:
sudo sed -i 's/NoDisplay=true/NoDisplay=false/g' /etc/xdg/autostart/*.desktop
这个命令修改了随机启动服务的文件属性,把参数“NoDisplay”的值由“true”改为“false”,让这项服务显示在随机启动的列表当中。运行了命令之后,重新打开随机启动程序对话框,你就能看到之前被隐藏的系统服务了。

除非你这些系统服务是干什么的,否则不要更改默认的启动设置。例如,如果你电脑没有蓝牙设备,那么可以禁止蓝牙管理器的随机启动;如果你使用Ubuntu One服务,就不要禁止它随机启动。
你只需要去掉程序前面的打钩,就可以禁止该程序随机启动了。不要点击Remove,那会从系统上删除该程序的。如果你想让程序恢复随机启动,在前面打钩就可以了。
使用轻量级的桌面环境
如果你的电脑配置比较旧,运行Ubuntu的Unity桌面比较吃力,可以选一款轻量级的桌面环境。LXDE、XFCE都是很好的选择,如果你需要的是最简洁的桌面,可以用Xmonad。这些桌面环境都能保证最基本的桌面功能。

选用轻量级的应用程序
轻量级的应用程序和轻量级的桌面环境搭配起来,能进一步提升旧电脑的系统性能。例如,你可以用Abiword代替LibreOffice,Abiword虽然功能少些,但速度更快。

如果你使用Mozilla的Thunderbird或GNOME的Evolution收发邮件,可以试试Sylpheed,它是一个轻量级的邮件管理器,带有图形界面。大多数软件都能找到轻量级的替代选择,在Google搜索一下就能找到。你甚至可以关闭所有图形界面,用终端完成所有操作——你会找到很多基于终端界面运行的软件。
缩短启动菜单的延时
如果你电脑装了多个系统,Ubuntu的GRUB启动菜单会预留10秒的延时让你选择一个系统。如果你没有选择,10秒后会自动进入默认的系统。如果你通常都是进入默认系统,可以把延时缩短,节省开机时间。
运行下面的命令,在文本编辑器中打开 /etc/default/grub 文件,可以修改启动延时:
gksu gedit /etc/default/grub
把GRUB_TIMEOUT的值改为小于10的整数。可以设为最小值1,以后如果你开机时需要选择启动菜单,可以按上下方向键或Esc键。

保存修改好的文件,运行下面的命令更新启动菜单,才能完成设置:
sudo update-grub2

你还可以使用软件Grub-Customizer,能够修改启动菜单的详细设置。
调整交换分区的参数值(swappiness)
这个方法是有争议的。应该把swappiness设为多少才最合适,Linux内核的开发者对此存在不同的看法。
swappiness影响着Linux内核的运行速度——也就是说,swappiness的值越大,从内存转移到硬盘交换分区的数据就越多,但系统性能会相对降低。Swappiness的值可以从0到100。
0表示系统内核最大限度地使用物理内存运行程序,尽量不使用交换分区。
100表示系统内核最大限度地利用交换分区运行程序,尽量减轻内存的负担。
Ubuntu系统把swappiness参数默认设为60。如果你发现Ubuntu系统过多地使用交换分区,降低了系统性能,你可以调低swappiness的数值,比如降到10。

下面的命令可以临时把swappiness的值改为10:
sudo sysctl vm.swappiness=10
但是下次重启系统后,swappiness又会恢复为默认值。如果你不想恢复默认,可以修改/etc/sysctl.conf文件:
gksu gedit /etc/sysctl.conf
打开文件,找到vm.swappiness,修改它的数值。如果找不到,可以在文件末尾添加一行命令,格式如下:
vm.swappiness=10

最后保存修改即可。
————————————————————
现在你的Ubuntu系统提速了吗?你有没有找到一个合适的swappiness值?可以在下面留言告诉我们。
六招让你的Ubuntu马上提速的更多相关文章
- 苹果教你六招:设计优秀的icon
在iOS 7测试版发布后,网上开始出现大量关于iOS 7设计的资源.在WWDC期间,苹果曾为开发者举办了多场主题演讲,其中有一场是苹果UX布道师Mike Stern的精彩演讲-- 优秀iOS设计最佳实 ...
- Android常见内存泄露,学会这六招优化APP性能
很多开发者都知道,在面试的时候会经常被问到内存泄露和内存溢出的问题. 1.内存溢出(Out Of Memory,简称 OOM),通俗理解就是内存不够,即内存占用超出内存的空间大小. 2.内存泄漏(Me ...
- 六招轻松搞定你的CentOS系统安全加固
Redhat是目前企业中用的最多的一类Linux,而目前针对Redhat攻击的黑客也越来越多了.我们要如何为这类服务器做好安全加固工作呢? 一. 账户安全 1.1 锁定系统中多余的自建帐号 检查方 ...
- Ubuntu Bonding(16.04网卡绑定)
UbuntuBonding(网卡绑定) 绑定,也称为端口聚合或链路聚合,意味着将多个网络接口(NIC)组合到单个链路,从而提供高可用性,负载平衡,最大吞吐量或这些组合.注意bonding只能提供链路监 ...
- Ubuntu下使用sshfs挂载远程目录到本地(和Windows挂载盘一样)
访问局域网中其他Ubuntu机器,在不同机器间跳来跳去,很是麻烦,如果能够把远程目录映射到本地无疑会大大方面使用,就像Windows下的网络映射盘一样.在Linux的世界无疑也会有这种机制和方式,最近 ...
- iOS8:把这些七招APP哭
6月3日.苹果发布了新一代的高配置手机操作系统iOS 8,我们看到了很多新的功能和引人注目的新变化.它为开发人员提供了许多其他更酷能力发展.第三方输入法也开放,这使得国内的百度.搜狗输入法是不过高兴的 ...
- 一张图11招学会Python网络黑客
全部学起来: 第一招:搭建Python防范环境 第二招:扫描漏洞 第三招:暴力破解的秘密 第四招:防SQL注入 第五招:防命令注入 第六招:看清文件上传木马 第七招:看清Web攻击 第八招:利用Pyt ...
- 从零开始一步一步搭建Ubuntu Server服务器、修改数据源、安装Docker、配置镜像加速器、Compose部署Gitlab服务
场景 最终目的是使用Docker Compose部署一个Gitlab服务. 效果 注: 博客: https://blog.csdn.net/badao_liumang_qizhi关注公众号 霸道的程序 ...
- Other | 十招教你找到海量PPT模板
转载自:https://www.douban.com/note/330962457/ 问:PPT模板是什么含义? 答: 先假定你们要的是这种网上到处泛滥成灾的主题PPT吧,下面请耐心看到最后,秋叶老师 ...
随机推荐
- Java+selenium 爬Boss直聘中职位信息,薪资水平和职位描述
需要下载合适的selenium webdirver jar包和对应浏览器的驱动jar包 import org.openqa.selenium.By; import org.openqa.selen ...
- 【转】Qt鼠标键盘事件
http://blog.csdn.net/lovebird_27/article/details/50351336 Qt 程序需要在main()函数创建一个QCoreApplication对象,然后调 ...
- 《剑指offer》第五十五题(二叉树的深度)
// 面试题55(一):二叉树的深度 // 题目:输入一棵二叉树的根结点,求该树的深度.从根结点到叶结点依次经过的 // 结点(含根.叶结点)形成树的一条路径,最长路径的长度为树的深度. //如果左右 ...
- angular在组件中选择dom元素
想选择 在组件中选择自己template里的dom元素,要使用ElementRef. import { Component, EventEmitter, HostListener, OnIni ...
- eclipse 配置打开工作空间
转载自: https://www.cnblogs.com/qq1871707128/p/6093860.html 首先得有eclipse 一.在eclipse的菜单栏中点击 Run -->Ext ...
- SpringData Redis
Redis spring-data-redis
- 雷林鹏分享:C# 运算符
C# 运算符 运算符是一种告诉编译器执行特定的数学或逻辑操作的符号.C# 有丰富的内置运算符,分类如下: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 杂项运算符 本教程将逐一讲解算术运算 ...
- every day a practice —— morning(3)
"WeChat does not store any chat histories. They are stored only on users' phones, computers or ...
- 基于react的记账簿开发
前言 前端是纯 React,后端通过 axios 库请求服务器获得数据. 源码: https://github.com/hfpp2012/react-accounts-app 项目详解: https: ...
- KDD Cup 99网络入侵检测数据的分析
看论文 该数据集是从一个模拟的美国空军局域网上采集来的 9 个星期的网络连接数据, 分成具有标识的训练数据和未加标识的测试数据.测试数据和训练数据有着不同的概率分布, 测试数据包含了一些未出现在训练数 ...