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马上提速的更多相关文章

  1. 苹果教你六招:设计优秀的icon

    在iOS 7测试版发布后,网上开始出现大量关于iOS 7设计的资源.在WWDC期间,苹果曾为开发者举办了多场主题演讲,其中有一场是苹果UX布道师Mike Stern的精彩演讲-- 优秀iOS设计最佳实 ...

  2. Android常见内存泄露,学会这六招优化APP性能

    很多开发者都知道,在面试的时候会经常被问到内存泄露和内存溢出的问题. 1.内存溢出(Out Of Memory,简称 OOM),通俗理解就是内存不够,即内存占用超出内存的空间大小. 2.内存泄漏(Me ...

  3. 六招轻松搞定你的CentOS系统安全加固

    Redhat是目前企业中用的最多的一类Linux,而目前针对Redhat攻击的黑客也越来越多了.我们要如何为这类服务器做好安全加固工作呢?  一.  账户安全 1.1 锁定系统中多余的自建帐号 检查方 ...

  4. Ubuntu Bonding(16.04网卡绑定)

    UbuntuBonding(网卡绑定) 绑定,也称为端口聚合或链路聚合,意味着将多个网络接口(NIC)组合到单个链路,从而提供高可用性,负载平衡,最大吞吐量或这些组合.注意bonding只能提供链路监 ...

  5. Ubuntu下使用sshfs挂载远程目录到本地(和Windows挂载盘一样)

    访问局域网中其他Ubuntu机器,在不同机器间跳来跳去,很是麻烦,如果能够把远程目录映射到本地无疑会大大方面使用,就像Windows下的网络映射盘一样.在Linux的世界无疑也会有这种机制和方式,最近 ...

  6. iOS8:把这些七招APP哭

    6月3日.苹果发布了新一代的高配置手机操作系统iOS 8,我们看到了很多新的功能和引人注目的新变化.它为开发人员提供了许多其他更酷能力发展.第三方输入法也开放,这使得国内的百度.搜狗输入法是不过高兴的 ...

  7. 一张图11招学会Python网络黑客

    全部学起来: 第一招:搭建Python防范环境 第二招:扫描漏洞 第三招:暴力破解的秘密 第四招:防SQL注入 第五招:防命令注入 第六招:看清文件上传木马 第七招:看清Web攻击 第八招:利用Pyt ...

  8. 从零开始一步一步搭建Ubuntu Server服务器、修改数据源、安装Docker、配置镜像加速器、Compose部署Gitlab服务

    场景 最终目的是使用Docker Compose部署一个Gitlab服务. 效果 注: 博客: https://blog.csdn.net/badao_liumang_qizhi关注公众号 霸道的程序 ...

  9. Other | 十招教你找到海量PPT模板

    转载自:https://www.douban.com/note/330962457/ 问:PPT模板是什么含义? 答: 先假定你们要的是这种网上到处泛滥成灾的主题PPT吧,下面请耐心看到最后,秋叶老师 ...

随机推荐

  1. 史上最全Java面试题(带全部答案)

    今天要谈的主题是关于求职,求职是在每个技术人员的生涯中都要经历多次.对于我们大部分人而言,在进入自己心仪的公司之前少不了准备工作,有一份全面细致面试题将帮助我们减少许多麻烦.在跳槽季来临之前,特地做这 ...

  2. C++中的清屏函数

    system("cls") 执行控制台命令cls,功能是清屏,清楚所有屏幕显示信息

  3. 阿里云域名+github建立网站

    1.准备工作 ①购买一个阿里云域名,这里测试的域名为 www.cores.vip ②创建一个github账号 (注意:一个github账号只能建立一个username.github.io的网站,不能建 ...

  4. Unity --- 如何降低UI的填充率

    1.首先简单介绍一下什么叫填充率: Fill Rate(填充率)是指显卡每帧或者说每秒能够渲染的像素数.在每帧绘制中,如果一个像素被反复绘制的次数越多,那么它占用的资源也必然更多.目前在移动设备上,F ...

  5. 20165327 2017-2018-2 《Java程序设计》第9周学习总结

    20165327 2017-2018-2 <Java程序设计>第9周学习总结 教材内容总结 第十三章 (一)教材学习内容总结 理解 URL类是对统一资源定位符的抽象,使用URL创建对象的应 ...

  6. C#定义一个方法的3种形式

    [定义方法对象,可使用签名兼容的委托变量来引用它] 1.定义一个方法,采用常规标准写法(V1.0) [本质上是签名兼容的委托类型的实例 / 对象] 2.定义一个方法,采用匿名方法(delegate)( ...

  7. 使用jquery.mobile和WebSQL实现记事本功能

    1.记事本列表页 1.1.页面结构与样式: <div data-role="page" id="home"> <div data-role=& ...

  8. python记录_day01 初始

    一.python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum),人称龟叔.目前python主要应用于web开发.云计算.科学计算.人工智能.系统运维.金融.图形GUI等 ...

  9. 廖雪峰网站:学习python函数—递归函数(四)

    # 在函数内部,可以调用其他函数.如果一个函数在内部调用自身本身,这个函数就是递归函数 # 计算阶乘n! = 1 x 2 x 3 x ... x n,用函数fact(n)表示,可以看出: # fact ...

  10. react-native run-ios时报错xcrun: error: unable to find utility "instruments", not a developer tool or in PATH

    命令行运行react-native 项目时,报错:xcrun: error: unable to find utility "instruments", not a develop ...