Linux基本优化指南

有人看到这个标题的时候,心里一定在嘀咕“linux需要优化吗?”。在回答这个问题之前,我先问个问题“何谓优化?”,我的理念是,没有最优的,合适自己的才是更优的,把桌面背景调成自己喜欢的颜色,算不算优化呢?

我想上面两个问题都不用回答,如果你有兴趣,可以接着看下去。

这里要说的优化,主要指性能上的。优化是针对自己硬件,针对自己需求来做的,因此不存在适合所有人的优化方法。以我的机器为例,结合Ubuntu讲述。

加快启动速度

如果你常常使用大量的外设,比如说红外、蓝牙、打印机、扫描仪等,这部分可以跳过,因为这里将去掉这些东西在引导系统时的加载,以提高启动速度。

Ubuntu和其它多数发行版一样,在引导的时候,默认会加载大量的你不需要的东西,HP打印机,LVM,RAID,甚至是盲人使用的特性。这些东西一般都可以去掉,即使你偶尔
需要使用,可以通过手动的方式启动,不会影响你的使用,这就类似于windows的自启动程序,Ubuntu的自启动程序数量是的惊人的。

虽然可以通过命令行直接控制服务的一切,但对于新手来说,这不够直观,也没那么安全,因此借助第3方的工具来实现,不过请放心,那个工具是免费的。

安装这个工具,并且运行:

sudo apt-get install sysv-rc-conf
sudo sysv-rc-conf


哪些是需要的 哪些是不需要的 可以一个个的去用google搜索,这里给出一些大部分人可以考虑去掉的例子。

evms,cron,anacron,apmd,atd,mdamd,lvm 如果不知道是什么,可以放心去掉
bluez-utiles 蓝牙,如果你每次开机都要用,那么留着也无妨。
bootlogd 如果你有查看日志的爱好 那么留着吧
cupsys 如果你常用打印机,就留着
dns-clean 如果是拨号上网的,留着
fetchmail 如果不知道是干嘛的 也可以去掉
hdparm 如果都是SATA硬盘 去掉吧
hotkey-setup 只有笔记本可能需要,你可以尝试去掉,有副作用就改回来
hotplug 大多数人可以去掉,有些硬件可能需要,比如品种罕见的声卡
hplip 你有惠普打印机的话 就留着
klogd 去掉也无妨
networking 在交大宿舍上网的可以放心去掉
ntp-server 时间同步,一般可以去掉
pcmcia 传说中的设备 我没见过,因此去掉了
powernowd 如果CPU支持变频,可以留着省电,去掉也无妨
ppp   拨号上网用的 不拨号的就关掉
ppp-dns   同上
readahead  关掉
rmnologin  去掉
rsync   如果不知道干嘛的 去掉
screen-cleanup  去掉
stop-bootlogd  去掉
sysklogd  去掉也无妨 随你
urandom  去掉也无妨
usplash  那个黄色的启动画面 去掉吧
bittorrent 去掉
其余的服务,不妨自己琢磨琢磨

并行运行开机启动脚本

/etc/init.d/ 下面的都是启动脚本,默认这些脚本是按顺序启动的,实际上,如果你使用的是 SATA 或 SCSI 接口,可以并行启动这些脚本程序,加速启动过程。

使用 vi 编辑 sudo vi /etc/init.d/rc,把:

CONCURRENCY=none
修改为
CONCURRENCY=shell

禁用 IPv6

目前 IPv6 还没有到来,Ubuntu 这个超前的功能暂时可以屏蔽掉,以加快速度。

编辑 sudo vim /etc/modprobe.d/aliases,把:

alias net-pf-10 ipv6
修改为
alias net-pf-10 off #ipv6

不过没有找到/etc/modprobe.d/aliases文件啦,有说用grub设置。也可以只关闭firefox的ipv6,我们要的只是网页的速度嘛,不用全局禁用_

打开firefox,在地址栏中输入about:config,回车
在搜索栏中输入network.dns.disableIPv6 (只输入v6来搜索也行,变量就是左边那串东西)
将这个变量的值从false改为true即可

将 localhost 化名为主机名

据说这个方法可以改善使用 Ubuntu 一段后,在 GNOME 中启动应用程序变慢的问题。

编辑 sudo gedit /etc/hosts,把:

127.0.0.1 localhost
127.0.1.1 Ubuntu
在第一行末尾加上主机名,也就是第二行的那个名字。
127.0.0.1 localhost Ubuntu
127.0.1.1 Ubuntu

禁用 Pango

Pango 是一个着重于国际化的,用于输出和文本渲染的库,但是这个库可能导致 Firefox 等一些程序占用过高的 CPU,所以我们可以禁用它。这样可以很好的降低CPU的使用率。

编辑 sudo gedit /etc/environment,添加:

MOZ_DISABLE_PANGO=“1”

禁用 gettys

打开 sudo gedit /etc/event.d/tty3,把所有以 start 开头的行,用 # 注释掉。

安装 preload

可以把一些常用到的 lib 库和应用程序预加载到内存,以提高程序的启动速度。

sudo apt-get install preload

设置 swappiness

减少系统对于 swap 频繁的写入,将加快应用程序之间的切换,有助于提升系统性能。

系统默认为 60,你可以修改为 10:

sudo sysctl vm.swappiness=10

如果要让它开机自动设定,编辑 sudo gedit /etc/sysctl.conf 文件,加入:

vm.swappiness=10

时间: 2024-07-31 07:55:54

Linux基本优化指南的相关文章

Linux Kernel - Debug Guide (Linux内核调试指南 )

http://blog.csdn.net/blizmax6/article/details/6747601 linux内核调试指南 一些前言 作者前言 知识从哪里来 为什么撰写本文档 为什么需要汇编级调试 ***第一部分:基础知识*** 总纲:内核世界的陷阱 源码阅读的陷阱 代码调试的陷阱 原理理解的陷阱 建立调试环境 发行版的选择和安装 安装交叉编译工具 bin工具集的使用 qemu的使用 initrd.img的原理与制作 x86虚拟调试环境的建立 arm虚拟调试环境的建立 arm开发板调试环

Linux音频编程指南

Linux音频编程指南 虽然目前Linux的优势主要体现在网络服务方面,但事实上同样也有着非常丰富的媒体功能,本文就是以多媒体应用中最基本的声音为对象,介绍如何在Linux平台下开发实际的音频应用程序,同时还给出了一些常用的音频编程框架. 一.数字音频 音频信号是一种连续变化的模拟信号,但计算机只能处理和记录二进制的数字信号,由自然音源得到的音频信号必须经过一定的变换,成为数字音频信号之后,才能送到计算机中作进一步的处理. 数字音频系统通过将声波的波型转换成一系列二进制数据,来实现对原始声音的重

linux内核调试指南

linux内核调试指南 一些前言 作者前言 知识从哪里来 为什么撰写本文档 为什么需要汇编级调试 ***第一部分:基础知识*** 总纲:内核世界的陷阱 源码阅读的陷阱 代码调试的陷阱 原理理解的陷阱 建立调试环境 发行版的选择和安装 安装交叉编译工具 bin工具集的使用 qemu的使用 initrd.img的原理与制作 x86虚拟调试环境的建立 arm虚拟调试环境的建立 arm开发板调试环境的建立 gdb基础 基本命令 gdb之gui gdb技巧 gdb宏 汇编基础--X86篇 用户手册 AT&

Linux 汇编语言开发指南

一.简介 作为最基本的编程语言之一,汇编语言虽然应用的范围不算很广,但重要性却勿庸置疑,因为它能够完成许多其它语言所无法完成的功能.就拿 Linux 内核来讲,虽然绝大部分代码是用 C 语言编写的,但仍然不可避免地在某些关键地方使用了汇编代码,其中主要是在 Linux 的启动部分.由于这部分代码与硬件的关系非常密切,即使是 C 语言也会有些力不从心,而汇编语言则能够很好扬长避短,最大限度地发挥硬件的性能. 大多数情况下 Linux 程序员不需要使用汇编语言,因为即便是硬件驱动这样的底层程序在 L

Linux音频编程指南(转)

转自: http://www.ibm.com/developerworks/cn/linux/l-audio/ Linux音频编程指南 虽然目前Linux的优势主要体现在网络服务方面,但事实上同样也有着非常丰富的媒体功能,本文就是以多媒体应用中最基本的声音为对象,介绍如何在Linux平台下开发实际的音频应用程序,同时还给出了一些常用的音频编程框架. 1 评论: 肖文鹏 ([email protected]), 自由软件爱好者 2004 年 2 月 01 日 内容 一.数字音频 音频信号是一种连续

web 性能优化指南阅读笔记

1.关于拥塞预防算法 PRR-比例降速,RFC6937 规定的一个新算法,其目标是改进丢包后的恢复速度,谷歌测量结果:该算法改进丢包造成的平均连接延迟减少了3%-10%.PRR是linux 3.2+内核默认的用赛预防算法. 2.关于拥塞窗口 把服务器的初始CWND值增大到RFC 6928新规定的10段,是提升用户体验以及所有TCP 应用性能的最简单方式.Linux上,IW10是2.6.39以上版本内核的新默认值. web 性能优化指南阅读笔记

Linux汇编语言开发指南

http://blog.chinaunix.net/space.php?uid=25299072&do=blog&id=2943093 一.简介 作为最基本的编程语言之一,汇编语言虽然应用的范围不算很广,但重要性却勿庸置疑,因为它能够完成许多其它语言所无法完成的功能.就拿 Linux 内核来讲,虽然绝大部分代码是用 C 语言编写的,但仍然不可避免地在某些关键地方使用了汇编代码,其中主要是在 Linux 的启动部分.由于这部分代码与硬件的关系非常密切,即使是 C 语言也会有些力不从心,而汇编

Linux 桌面玩家指南:16. 使用 CUDA 发挥显卡的计算性能

特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之间的内容按照数学公式进行排版,从而导致评论区格式混乱.如果大家的评论中用到了$,但是又不是为了使用数学公式,就请使用\$转义一下,谢谢. 想从头阅读该系列吗?下面是传送门: Linux 桌面玩家指南:01. 玩转 Linux 系统的方法论 [约 1.1 万字,22 张图片] Linux 桌面玩家指南

Spark性能优化指南——高级篇

Spark性能优化指南--高级篇 [TOC] 前言 继基础篇讲解了每个Spark开发人员都必须熟知的开发调优与资源调优之后,本文作为<Spark性能优化指南>的高级篇,将深入分析数据倾斜调优与shuffle调优,以解决更加棘手的性能问题. 数据倾斜调优 调优概述 有的时候,我们可能会遇到大数据计算中一个最棘手的问题--数据倾斜,此时Spark作业的性能会比期望差很多.数据倾斜调优,就是使用各种技术方案解决不同类型的数据倾斜问题,以保证Spark作业的性能. 数据倾斜发生时的现象 绝大多数tas