六招让你的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吧,下面请耐心看到最后,秋叶老师 ...
随机推荐
- 添加删除tag
为某个分支打tag git tag -a v1. 9fceb02 删除tag git tag -d test_tag git push origin --delete tag test_tag 推送: ...
- 9. spring项目中web.xml详解解读
引言:本篇博客的内容大部分都来自网上,有的是直接copy,有的是自己整理而来.既然网上已经有了,为啥还有自己copy呢? 感觉是因为网上的东西太散了或者是样式不够美观,所以自己又copy了一遍.如有侵 ...
- 前端阶段_div以及css介绍
1.div div是html的一个标签,是块级元素,单独使用没有意义,必须结合css来使用,进行网页布局 2.span span是一个html标签,是一个内联元素,主要对括起来的内容进行修饰 3.&l ...
- requests:json请求中中文乱码处理
requests库中,在处理json格式的请求时调用的json.dumps方法参数ensure_ascii默认为True.表示序列化时对中文默认使用的ascii编码.如果想要显示中文,则将此参数的值改 ...
- 力扣(LeetCode) 852. 山脉数组的峰顶索引
我们把符合下列属性的数组 A 称作山脉: A.length >= 3 存在 0 < i < A.length - 1 使得A[0] < A[1] < ... A[i-1] ...
- leecode第一百二十四题(二叉树中的最大路径和)
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode ...
- unbuntu安装Node.js
在官网https://nodejs.org/en/下载 手动创建链接的话,新安装的angular的ng typescript的tsc都要自己手动建立软链接,要不就每个工程里npm install一 ...
- P481tabtenn0
编程环境为Qt Creator 4.0.3 (Community) tabtenn0.h #ifndef TABTENN0_H #define TABTENN0_H #include <stri ...
- Eclipse项目左侧调整显示或者不显示路径
View Menu(倒三角)-->Package Presentation-->选择Flat或Hierarchical
- 关于nodejs访问mysql的思考
nodejs要访问mysql数据库,首先必须要安装包mysql,命令:npm install mysql.安装成功后的访问数据库代码如下: var mysql = require('mysql'); ...