Home linux网络专题 Linux服务器 第 9 章 - Debian系统微调
第 9 章 - Debian系统微调

9.1 系统初始化

Debian 使用 System V 的 init 脚本系统。参阅 的介绍。

9.1.1 自定义 init 脚本

最简单的控制 init 脚本的方法是改变 /etc/default 目录下,与 init 脚本同名的文件里的环境变量设置。 [] 例如,/etc/default/hotplug 可以控制 /etc/init.d/hotplug 的行为。文件 /etc/default/rcS 可以用来定制 motd、sulogin 等为默认启动。

如果你不能通过设置这些变量来得到你所需要的行为,你可以去修改 init 脚本:它们都是配置文件。

9.1.2 自定义系统日志

可通过 /etc/syslog.conf 配置系统日志记录方式。如果想为日志文件上色可安装 colorize 软件包。参阅 syslogd(8) 和 syslog.conf(5)。

9.1.3 硬件存取优化

有一部分硬件优化的配置工作 Debian 留给了系统管理员。

  • hdparm

    • 硬盘存取优化。效果显著。

    • 危险。务必先阅读 hdparm(8)。

    • hdparm -tT /dev/hda 测试硬盘存取速度。

    • hdparm -q -c3 -d1 -u1 -m16 /dev/hda 加速新型 IDE 系统。(有一定风险。)

  • setcd

    • 压缩磁盘存取优化。

    • setcd -x 2 减速至 2x speed。

    • 参阅 setcd(1)。

  • setserial

    • 串行接口管理工具集。

  • scsitools

    • SCSI 硬件管理工具集。

  • memtest86

    • 内存硬件管理工具集。

  • hwtools

    • 低级硬件管理工具集。

      • irqtune:修改设备的 IRQ 优先级,使那些需要高优先级和快速服务的硬件(例如,串行接口、调制解调器)获得它所要的资源。对串口/调制解调器加速后获得原来 3 倍的吞吐量。

      • scanport:扫描 I/O 空间的 0x100 至 0x3ff 地址段,查找已安装的 ISA 设备。

      • inb:一个小巧的黑客工具,用来阅读 I/O 端口信息并将其值转换成十六进制和二进制。

  • schedutils

    • Linux 日程安排工具包。

    • 包括 taskset、irqset、lsrt 和 rt。

    • 再加上 nice 和 renice(不包括在工具包内),就可对进程的日程安排进行全面的管理。

使用 noatime 选项挂载文件系统可有效提高文件的读取速度。参阅 fstab(5) 和 mount(8)。

通过 proc 文件系统,Linux 内核可直接调节某些硬件参数。参阅。

Debian 中有许多专门的硬件配置工具包。其中有不少是针对笔记本电脑的。这儿有一些有趣的软件包:

  • tpconfig - 一个配置触摸屏设备的程序

  • apmd - 高级电源管理(APM)工具

  • acpi - 显示 ACPI 设备信息

  • acpid - ACPI 使用工具

  • lphdisk - 识别 Phoenix NoteBIOS 下的隐藏分区。

  • sleepd - 笔记本电脑处于非工作状态时进入休眠

  • noflushd - 让空闲硬盘进入减速状态

  • big-cursor - X 下的巨型鼠标指针

  • acme - 激活笔记本电脑上的“多媒体按钮”

  • tpctl - IBM ThinkPad 硬件配置工具

  • mwavem - Mwave/ACP modem 支持

  • toshset - 访问大部分 Toshiba笔记本电脑的硬件接口

  • toshutils - Toshiba 笔记本电脑工具集

  • sjog - 激活 Sony Vaio 笔记本电脑上“Jog Dial”功能的程序

  • spicctrl - Sony Vaio 控制器程序可增亮 LCD 背光

ACPI 是一种比 APM 更新的电源管理系统。

某些软件包需要专门的内核模块。它们已经包含在许多最新的内核源码中。如果遇此问题,则需要手动打上最新的内核补丁。

9.2 访问限制(Restricting access)

9.2.1 用 PAM 来控制登录

PAM(Pluggable Authentication Modules 可嵌入认证模块)允许你控制用户是如何登录的。

     /etc/pam.d/*             # PAM 管理文件
     /etc/pam.d/login         # PAM 登录管理文件
     /etc/security/*          # PAM 模块参数
     /etc/securetty           # 管理通过控制台进行的 root 登录(login)
     /etc/login.defs          # 管理登录行为(login)

如果想在控制台终端不用密码直接登录系统,可按下面的方法修改 /etc/pam.d/login 文件的内容,风险自负。

     #auth       required   pam_unix.so nullok
     auth       required   pam_permit.so

该方法亦可用于 xdm、gdm,实现无密码 X 控制台。

相反,如果你希望强化密码政策,可安装 cracklib2 并按下面的方法修改/etc/pam.d/passwd:

     password required       pam_cracklib.so retry=3 minlen=6 difok=3

使用一次性登录密码激活帐户也很有用。要实现该功能,在 passwd 命令后加上 -e 参数,参阅 passwd(1)。

要设置系统最大进程数,可在 Bash shell 中设定 ulimit -u 1000 或设置 PAM 的 /etc/security/limits.conf 文件。其它参数如 core 等的设置方法与之类似。PATH 的初始值可在 /etc/login.defs 中先于 shell 启动脚本设置。

PAM 的文档位于 libpam-doc 软件包内。其中 The Linux-PAM System Administrator's Guide 一文涵盖了 PAM 配置、可用模块等内容,文档中还包括了 The Linux-PAM Application Developers' GuideThe Linux-PAM Module Writers' Guide

9.2.2 “为什么 GNU su 命令不支持 wheel group”

这是 Richard M. Stallman 的一句名言,位于旧版 info su 页面末尾。别担心:在 Debian 中,当前版本的 su 使用 PAM,因此你可以用 /etc/pam.d/su 下的 pam_wheel.so 来限制任何用户组使用 su 的能力。下面的操作将在 Debian 系统中赋予 adm 用户等同于 BSD wheel 用户组的权限,而且该组成员不需要密码就能使用 su 命令。

     # anti-RMS configuration in /etc/pam.d/su
     auth       required   pam_wheel.so group=adm
     
     # Wheel members to be able to su without a password
     auth       sufficient pam_wheel.so trust group=adm

9.2.3 各标准用户组的目的

一些有趣的用户组:

  • 如果 pam_wheel.so 不带任何 group= 参数,root group 就是 su默认的 wheel group。

  • adm group 可以阅读日志文件。

  • cdrom group 可在本地赋予一组用户访问 CD-ROM 驱动器的权限。

  • floppy group 可在本地赋予一组用户访问软盘驱动器的权限。

  • audio group 可在本地赋予一组用户访问声音设备的权限。

  • src group 拥有源代码以及 /usr/src 目录下的文件。它可以在本地赋予某个用户管理系统源代码的权限。

  • 对于管理桌面或低级别的系统管理员,可设置他们为 staff 成员,该类成员可以在 /usr/local 下工作并且可以在 /home 下创建目录�

    Tags: debian  系统  微调  



    Shares:Google书签Yahoo书签雅虎收藏夹365Key网摘新浪ViVi百度收藏天极网摘diglog和讯网摘POCO网摘YouNote网摘博拉网天下图摘 spurl blogmarksBlinkListredditdiggDel.icio.us

    linux