`
paddy.w
  • 浏览: 506153 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Linux优化指南

阅读更多
        以下内容摘自:http://forum.ubuntu.org.cn/viewtopic.php?f=120&t=61545在此表示感谢!

    有人看到这个标题的时候,心里一定在嘀咕“linux需要优化吗?”。

    在回答这个问题之前,我先问个问题“何谓优化?”,我的理念是,没有最优的,合
适自己的才是更优的,把桌面背景调成自己喜欢的颜色,算不算优化呢?

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

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

    CPU:  AMD AM2 Athlon64 X2 3600+ 
    RAM:  DDRII 800 512M * 2
    DISK: SATA2 250G 8M


§加快启动速度

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

    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  去掉
    其余的服务,不妨自己琢磨琢磨

    使用并发加载 有的单核的机器上反而会变慢,建议双核用户使用
    sudo vi /etc/init.d/rc
    找到 CONCURRENCY=none
    修改为 CONCURRENCY=shell     
    保存后退出

  
§使用适合自己的内核

    从kernel.org下载源码自己编译内核,调整参数,使之适合自己。
  
        内核时钟频率 有100 250 333 1000等选项 选择适合自己的
  
        驱动,将磁盘控制器,文件系统的编译进内核,其余的编译成模块,不需要的就
    去掉不编译

        CPU类型,选择跟自己型号一致的

        内存大小,大于等于1G内存的,打开大于1G内存支持

        可以斟酌的地方很多,这里不再赘述,我的内核精简到了1.2M,这个大小你可以
    参考一下。       


§合理使用内存

        Linux的内存管理机制跟windows不同,纵然你有64G的内存,使用一段时间之后,
    剩余的物理内存仍然会相当的少,内存不是看的,是拿来用的,所以不要觉得奇怪。

        这里需要调整的一个参数是vm.swappiness,Ubuntu默认是60。这个参数是决定
   内核将程序swap到swap里,还是释放掉部分cache。0表示释尽量放掉部分cache,100
   表示尽量使用swap,可以在0到100之间调节。我个人调整成了0。
      
        sudo echo 'vm.swappiness = 0' >> /etc/sysctl.conf
  
    如果要不重启就生效,可以再修改一下 /proc/sys/vm/swappiness
  


§资源限制

    编辑 /etc/security/limits.conf

        *       hard    core            0
        enjoy   hard    nofile          128
        enjoy   hard    fsize           1024000
        enjoy   hard    rss             102400
        enjoy   hard    stack           102400
        enjoy   hard    cpu             10
        enjoy   hard    nproc           20
        enjoy   hard    maxlogins       10
        enjoy   hard    data            102400

        saga    hard    nproc           200
        saga    hard    nofile          4096

    enjoy和saga都是用户名,限制的具体内容看 这个文件的注释。

    如果不作这个限制,可能一行代码就让你很惨了,甚至需要你重启一下。
    你可以把下面这行代码复制粘贴到终端里执行测试一下是否需要限制
    ){ :|:; }; :


§裁减系统体积

    如果硬盘空间吃紧,删除不需要的应用软件,这个对于新手同样是存在风险的,
慎行。


§其他优化
  
    如果你不需要使用ipv6
    sudo vi /etc/modprobe.d/aliases
    找到alias net-pf-10 ipv6
    改为alias net-pf-10 off #ipv6
  
    禁用pango
    sudo echo 'MOZ_DISABLE_PANGO="1"' >> /etc/environment
      
    硬盘优化(SATA的可以不做)
      sudo hdparm -t -T /dev/hda //测试硬盘性能
  sudo hdparm -c 1 /dev/hda  //使用32bit传输模式
  sudo hdparm -d 1 /dev/hda  //使用DMA
  sudo hdparm -t -T /dev/hda //再次测试
      sudo hdparm -k 1 /dev/hda  //保存结果
    这里的/dev/hda换成你自己的对应的设备


§常用软件的设置

    OpenOffice里有个Java的选项,一般可以禁用掉。

    Firefox地址栏输入 about:config 回车

    browser.sessionhistory.max_entries 设置为5
    browser.sessionhistory.max_total_viewers 设置为1
    network.http.max-connections-per-server 设置为10
    network.http.pipelining.maxrequests 设置为10
    network.dns.disableIPv6 设置为true
    network.dnsCacheEntries 设置为9999
    network.dnsCacheExpiration 设置为9999
    browser.cache.disk.capacity 设置为512000
    browser.cache.memory.capacity 设置为102400(内存小的人可以设置小一些)

    具体的含义 自己查看mozilla的官方站点在线文档 设置为合适自己的
分享到:
评论

相关推荐

    linux 编程指南 第三版

    这些知识对于在Linux环境下进行底层编程以及性能优化至关重要。 编程时经常会涉及到进程的管理,Linux编程指南会教导读者如何创建、终止、调度和监控进程。同时,对于多线程编程,书籍会介绍线程的概念、创建和同步...

    linux编程指南(pdf)

    最后,为了适应不断发展的Linux生态,本书可能还会涵盖一些高级话题,如多线程编程、异步I/O、守护进程的创建、性能分析和优化等。这些进阶内容将帮助读者在面对复杂项目时更有信心。 通过阅读并实践《Linux编程...

    Linux编程指南与实例

    8. **调试和性能优化**:学习如何使用GDB等工具进行程序调试,以及如何通过分析和调整代码来优化程序性能,也是Linux编程不可或缺的一部分。 9. **实践项目**:书中很可能包含多个实例项目,如编写简单的服务程序、...

    Tiny6410 Linux开发指南-20120518.pdf

    《Tiny6410 Linux开发指南》是一份详尽的文档,主要针对使用Tiny6410开发板的用户,提供了全面的Linux开发环境搭建、系统配置、硬件接口测试以及软件开发指导。以下是对该指南中提及的关键知识点的深度解析。 ### ...

    Linux初学者指南

    Linux初学者指南是一本专为初次接触Linux操作系统的人设计的入门教程。Linux,作为一个开源、免费的操作系统,因其稳定性和灵活性,在服务器、嵌入式设备和开发者社区中广受欢迎。本指南将帮助读者掌握Linux的基本...

    Linux 2.6.36内核优化指南

    ### Linux 2.6.36 内核优化指南 #### 概述 本文档针对Linux Kernel 2.6.36版本进行了详尽的优化处理,并提供了优化前后的主要性能对比,包括内核尺寸、启动时间和启动后的内存占用等方面。通过对内核编译选项的...

    GUN_linux编程指南及源代码

    通过阅读和分析《GUN Linux编程指南及源代码》中的源代码,开发者可以深入理解Linux编程的底层机制,学习如何优化代码性能,处理异常情况,并了解良好的编程实践。 总之,《GUN Linux编程指南及源代码》为开发者...

    ZRX for Linux移植指南.pdf

    GCC编译器是Linux平台上的默认编译器,提供了丰富的编译和优化选项。 2. 移植代码过程 在移植代码过程中,需要新建一个工程,配置工程,处理资源模块,移植对话框代码等。 2.1. 新建工程 在新建工程时,需要在...

    Linux性能调优指南,IBM专家资深指导

    《Linux性能调优指南》是IBM专家团队倾力打造的一份深入浅出的教程,旨在帮助用户提升Linux服务器的运行效率和稳定性。这份高清PDF文档详细涵盖了Linux性能优化的各个方面,为管理员提供了一套全面而实用的方法论。...

    【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.6.7z

    《I.MX6U嵌入式Linux驱动开发指南》是一本深入探讨嵌入式系统中Linux驱动程序开发的专业教程,特别针对NXP公司的I.MX6U处理器。这本书旨在帮助开发者理解和掌握在嵌入式环境中如何有效地编写和调试Linux驱动程序,以...

    apach+tomcat+linux服务器优化指南

    本指南将深入探讨如何对Apache+Tomcat+Linux环境进行优化,以提升服务器性能、减少资源消耗并增强稳定性。 一、Apache优化 1. **配置优化**:调整Apache的配置文件`httpd.conf`,例如,减少`KeepAliveTimeout`以...

    GNU/Linux编程指南(第二版)

    《GNU/Linux编程指南(第二版)》是一本深入讲解GNU/Linux环境下编程的权威书籍,旨在帮助读者掌握在Linux操作系统上进行高效开发的技能。这本书涵盖了从基础到高级的各种主题,对于初学者和经验丰富的开发者来说,...

    linux服务器优化.pdf

    linux服务器 优化

    【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.7.pdf.7z

    《正点原子》I.MX6U嵌入式Linux驱动开发指南是一本专注于嵌入式系统中Linux驱动程序开发的专业书籍。I.MX6U是NXP(原飞思卡尔)公司推出的一款高性能、低功耗的ARM Cortex-A9处理器,广泛应用于各种嵌入式设备和...

    Linux网管指南4

    《Linux网管指南4》是...综上所述,《Linux网管指南4》是为那些依赖modem接入互联网的Linux系统管理员提供的重要资源,它涵盖了从基本的串行设备配置到复杂的通信协议设置,帮助用户优化网络连接并提升网络管理效率。

    linux操作系统管理指南

    《Linux操作系统管理指南》 Linux操作系统,作为一款开源、免费的操作系统,因其稳定性和灵活性而深受全球技术社区的青睐。本指南将深入探讨Linux系统的结构与原理,以及基础的系统管理技巧,帮助读者掌握在Linux...

    [总结]Linux 基本优化指南

    ### Linux基本优化指南 #### 一、概述 在IT领域,Linux因其稳定性和安全性而备受推崇,成为服务器操作系统中的首选之一。然而,即使是这样优秀的操作系统,也需要适当的优化才能发挥其最大效能。本文将从系统配置...

    linux启动时间优化

    ### Linux启动时间优化 在现代计算环境中,系统启动速度对于用户体验和系统性能至关重要。本文将深入探讨如何优化Linux系统的启动时间,并提供一...希望本文提供的指南能够帮助读者有效地优化Linux系统的启动时间。

Global site tag (gtag.js) - Google Analytics