⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 9.htm

📁 debian参考手册,pdf格式的版本。
💻 HTM
📖 第 1 页 / 共 5 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<!-- saved from url=(0063)http://qref.sourceforge.net/Debian/reference/ch-tune.zh-cn.html -->
<HTML><HEAD><TITLE>Debian 参考手册 - Debian系统微调</TITLE>
<META http-equiv=content-type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.3790.118" name=GENERATOR></HEAD>
<BODY><A name=ch-tune></A>
<HR>
[ <A 
href="http://qref.sourceforge.net/Debian/reference/ch-tips.zh-cn.html">上一页</A> ] 
[ <A 
href="http://qref.sourceforge.net/Debian/reference/reference.zh-cn.html#contents">目录</A> 
] [ <A 
href="http://qref.sourceforge.net/Debian/reference/ch-preface.zh-cn.html">1</A> 
] [ <A 
href="http://qref.sourceforge.net/Debian/reference/ch-system.zh-cn.html">2</A> ] 
[ <A 
href="http://qref.sourceforge.net/Debian/reference/ch-install.zh-cn.html">3</A> 
] [ <A 
href="http://qref.sourceforge.net/Debian/reference/ch-tutorial.zh-cn.html">4</A> 
] [ <A 
href="http://qref.sourceforge.net/Debian/reference/ch-woody.zh-cn.html">5</A> ] 
[ <A 
href="http://qref.sourceforge.net/Debian/reference/ch-package.zh-cn.html">6</A> 
] [ <A 
href="http://qref.sourceforge.net/Debian/reference/ch-kernel.zh-cn.html">7</A> ] 
[ <A 
href="http://qref.sourceforge.net/Debian/reference/ch-tips.zh-cn.html">8</A> ] [ 
9 ] [ <A 
href="http://qref.sourceforge.net/Debian/reference/ch-gateway.zh-cn.html">10</A> 
] [ <A 
href="http://qref.sourceforge.net/Debian/reference/ch-edit.zh-cn.html">11</A> ] 
[ <A 
href="http://qref.sourceforge.net/Debian/reference/ch-vcs.zh-cn.html">12</A> ] [ 
<A 
href="http://qref.sourceforge.net/Debian/reference/ch-program.zh-cn.html">13</A> 
] [ <A 
href="http://qref.sourceforge.net/Debian/reference/ch-gnupg.zh-cn.html">14</A> ] 
[ <A 
href="http://qref.sourceforge.net/Debian/reference/ch-support.zh-cn.html">15</A> 
] [ <A 
href="http://qref.sourceforge.net/Debian/reference/ap-appendix.zh-cn.html">A</A> 
] [ <A 
href="http://qref.sourceforge.net/Debian/reference/ch-gateway.zh-cn.html">下一页</A> 
] 
<HR>

<H1>Debian 参考手册 <BR>第 9 章 - Debian系统微调 </H1>
<HR>

<P>本章讲述了基本的基于文本界面的系统配置方法。在学习本章前请先阅读<A 
href="http://qref.sourceforge.net/Debian/reference/ch-install.zh-cn.html">Debian系统安装提示, 
第 3 章</A>. 
<P>如是你很关心安全方面的信息,强烈推荐你阅读<CODE><A 
href="http://www.debian.org/doc/manuals/securing-debian-howto/">Securing Debian 
Manual</A></CODE>,它位于<CODE>harden-doc</CODE>软件包。 
<HR>
<A name=s-init-hints></A>
<H2>9.1 系统初始化提示</H2>
<P>参阅<A 
href="http://qref.sourceforge.net/Debian/reference/ch-system.zh-cn.html#s-init"><SAMP>init</SAMP>程序, 
第 2.4.1 节</A>了解有关Debian init脚本的基础知识。 
<HR>
<A name=s-init-defaults></A>
<H3>9.1.1 自定义init脚本</H3>
<P>Debian使用sys-V 
init脚本系统。尽管<CODE>/etc/init.d/*</CODE>下所有的init脚本均被登记为conffile,系统管理员可以自由地修改它们,但编辑<CODE>/etc/default/*</CODE>下的文件却是创建自定义init脚本的更好的方法。 

<P>例如,<CODE>/etc/init.d/rcS</CODE>可用来定制<CODE>motd</CODE>、<CODE>sulogin</CODE>等为默认启动。 

<HR>
<A name=s-syslogd></A>
<H3>9.1.2 自定义系统日志</H3>
<P>可通过<CODE>/etc/syslog.conf</CODE>配置系统日志记录方式。如果想为日志文件上色可安装<CODE>colorize</CODE>软件包。参阅<CODE>syslogd(8)</CODE>和<CODE>syslog.conf(5)</CODE>。 

<HR>
<A name=s-hdtune></A>
<H3>9.1.3 硬件存取优化</H3>
<P>有一部分硬件优化的配置工作Debian留给了系统管理员来掌握。 
<UL>
  <LI><CODE>hdparm</CODE> 
  <UL>
    <LI>硬盘存取优化。成效显著。 
    <LI>危险。务必先阅读<CODE>hdparm(8)</CODE>。 
    <LI><SAMP>hdparm -tT <VAR>/dev/hda</VAR></SAMP> 测试硬盘存取速度。 
    <LI><SAMP>hdparm -q -c3 -d1 -u1 -m16 <VAR>/dev/hda</VAR></SAMP> 
    加速新型IDE系统。(有一定风险。) </LI></UL></LI></UL>
<UL>
  <LI><CODE>setcd</CODE> 
  <UL>
    <LI>压缩磁盘存取优化。 
    <LI><SAMP>setcd -x <VAR>2</VAR></SAMP>减速至<VAR>2</VAR>x speed。 
    <LI>参阅<CODE>setcd(1)</CODE>。 </LI></UL></LI></UL>
<UL>
  <LI><CODE>setserial</CODE> 
  <UL>
    <LI>串行接口管理工具集。 </LI></UL></LI></UL>
<UL>
  <LI><CODE>scsitools</CODE> 
  <UL>
    <LI>SCSI硬件管理工具集。 </LI></UL></LI></UL>
<UL>
  <LI><CODE>memtest86</CODE> 
  <UL>
    <LI>内存硬件管理工具集。 </LI></UL></LI></UL>
<UL>
  <LI><CODE>hwtools</CODE> 
  <UL>
    <LI>低级硬件管理工具集。 
    <UL>
      <LI>irqtune:修改设备的IRQ优先级,使那些需要高优先级和快速服务的硬件(例如,串行接口、调制解调器)获得它所要的资源。对串口/调制解调器加速后获得原来3倍的吞吐量。 

      <LI>scanport:扫描I/O空间的0x100至0x3ff地址段,查找已安装的ISA设备。 
      <LI>inb:一个小巧的黑客工具,用来阅读I/O端口信息并将其值转换成十六进制和二进制。 </LI></UL></LI></UL></LI></UL>
<UL>
  <LI><CODE>schedutils</CODE> 
  <UL>
    <LI>Linux日程安排工具包。 
    <LI>包括<CODE>taskset</CODE>、<CODE>irqset</CODE>、<CODE>lsrt</CODE>和<CODE>rt</CODE>。 

    <LI>再加上<CODE>nice</CODE>和<CODE>renice</CODE>(不包括在工具包内),就可对进程的日程安排进行全面的管理。 
    </LI></UL></LI></UL>
<P>使用noatime选项挂载文件系统可有效提高文件的读取速度。参阅<CODE>fstab(5)</CODE>和<CODE>mount(8)</CODE>。 
<P>通过proc文件系统,Linux内核可直接调节某些硬件参数。参阅<A 
href="http://qref.sourceforge.net/Debian/reference/ch-kernel.zh-cn.html#s-proc-sys">通过proc文件系统调整内核, 
第 7.3 节</A>。 
<P>Debian中有许多专门的硬件配置工具包。它们中有不少是针对笔记本电脑的。这儿有一些有趣的软件包: 
<UL>
  <LI><CODE>tpconfig</CODE> - 一个配置触摸屏设备的程序 
  <LI><CODE>apmd</CODE> - 高级电源管理(APM)工具 
  <LI><CODE>acpi</CODE> - 显示ACPI设备信息 
  <LI><CODE>acpid</CODE> - ACPI使用工具 
  <LI><CODE>lphdisk</CODE> - 识别Phoenix NoteBIOS下的隐藏分区。 
  <LI><CODE>sleepd</CODE> - 笔记本电脑处于非工作状态时进入休眠 
  <LI><CODE>noflushd</CODE> - 让空闲硬盘进入减速状态 
  <LI><CODE>big-cursor</CODE> - X下的巨型鼠标指针 
  <LI><CODE>acme</CODE> - 激活笔记本电脑上的“多媒体按钮” 
  <LI><CODE>tpctl</CODE> - IBM ThinkPad硬件配置工具 
  <LI><CODE>mwavem</CODE> - Mwave/ACP modem支持 
  <LI><CODE>toshset</CODE> - 访问大部分Toshiba笔记本电脑的硬件接口 
  <LI><CODE>toshutils</CODE> - Toshiba笔记本电脑工具集 
  <LI><CODE>sjog</CODE> - 激活Sony Vaio笔记本电脑上“Jog Dial”功能的程序 
  <LI><CODE>spicctrl</CODE> - Sony Vaio控制器程序可增亮LCD背光 </LI></UL>
<P>在此,ACPI是一种比APM更新式的电源管理系统。 
<P>某些软件包需要专门的内核模块。它们已经包含在许多最新的内核源码中。如果遇以问题,则需要手动打上最新的内核补丁。 
<HR>
<A name=s9.2></A>
<H2>9.2 访问权限控制</H2>
<HR>
<A name=s-loginctrl></A>
<H3>9.2.1 通过PAM和login实现访问权限管理</H3>
<P>PAM(Pluggable Authentication Modules 可嵌入认证模块)提供了登录管理。 <PRE>     /etc/pam.d/*             # PAM管理文件
     /etc/pam.d/login         # PAM登录管理文件
     /etc/security/*          # PAM模块参数
     /etc/securetty           # 管理通过控制台进行的root登录(login)
     /etc/login.defs          # 管理登录行为(login)
</PRE>
<P>如果想在控制台终端不用密码直接登录系统,可按下面的方法修改<CODE>/etc/pam.d/login</CODE>文件的内容,风险自负。 <PRE>     #auth       required   pam_unix.so nullok
     auth       required   pam_permit.so
</PRE>
<P>该方法亦可用于<CODE>xdm</CODE>、<CODE>gdm</CODE>,实现无密码X控制台。 
<P>相反,如果你希望强化密码政策,可安装<CODE>cracklib2</CODE>并按下面的方法修改<CODE>/etc/pam.d/passwd</CODE>: 
<PRE>     password required       pam_cracklib.so retry=3 minlen=6 difok=3
</PRE>
<P>使用一次性登录密码激活帐户也很有用,要实现该功能,在passwd命令后加上<SAMP>-e</SAMP>参数,参阅<CODE>passwd(1)</CODE>。 

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

<P>PAM的文档位于<CODE>libpam-doc</CODE>软件包内。其中《The Linux-PAM System Administrator's 
Guide 》一文涵盖了PAM配置、可用模块等内容,文档中还包含《The Linux-PAM Application Developers' 
Guide》和《The Linux-PAM Module Writers' Guide》。 
<HR>
<A name=s-wheel></A>
<H3>9.2.2 “为什么GNU <CODE>su</CODE>命令不支持<SAMP>wheel</SAMP> group”</H3>
<P>这是Richard M. Stallman的一句名言,位于旧版<SAMP>info 
su</SAMP>页面末尾。别担心:在Debian中,当前版本的<CODE>su</CODE>使用PAM,因此你可以用<CODE>/etc/pam.d/su</CODE>下的<CODE>pam_wheel.so</CODE>来限制任何用户组使用<CODE>su</CODE>的能力。下面的操作将在Debian系统中赋予<SAMP>adm</SAMP>用户等同于BSD 
<SAMP>wheel</SAMP>用户组的权限,而且该组成员不需要密码就能使用<CODE>su</CODE>命令。 <PRE>     # 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
</PRE>
<HR>
<A name=s9.2.3></A>
<H3>9.2.3 各种用户组的含义</H3>
<P>一些有趣的用户组: 
<UL>
  <LI>如果<CODE>pam_wheel.so</CODE>不带任何<SAMP>group=</SAMP>参数,<SAMP>root</SAMP> 
  group就是<CODE>su</CODE>默认的wheel group。 
  <LI><SAMP>adm</SAMP> group可以阅读日志文件。 
  <LI><SAMP>cdrom</SAMP> group可在本地赋予一组用户访问CD-ROM驱动器的权限。 
  <LI><SAMP>floppy</SAMP> group可在本地赋予一组用户访问软盘驱动器的权限。 
  <LI><SAMP>audio</SAMP> group可在本地赋予一组用户访问声音设备的权限。 
  <LI><SAMP>src</SAMP> 
  group拥有源代码以及<CODE>/usr/src</CODE>目录下的文件。它可以在本地赋予某个用户管理系统源代码的权限。 
  <LI>对于管理桌面或低级别的系统管理员,可设置他们为<SAMP>staff</SAMP>成员,该类成员可以在<CODE>/usr/local</CODE>下工作并且可以在<CODE>/home</CODE>下创建目录。 
  </LI></UL>
<P>完整列表参阅<CODE><A 
href="http://www.debian.org/doc/manuals/securing-debian-howto/">Securing Debian 
Manual</A></CODE>的“FAQ”章节,亦见于Woody中的<CODE>harden-doc</CODE>软件包。新的<CODE>base-passwd</CODE> 
(&gt;3.4.6)软件包亦包含了权威列表:<CODE>/usr/share/doc/base-passwd/users-and-groups.html</CODE>。 

<HR>
<A name=s-sudo></A>
<H3>9.2.4 <CODE>sudo</CODE> –一个安全的工作环境</H3>
<P>使用<CODE>sudo</CODE>最主要的目的是保护自己少做蠢事,我认为使用系统时使用<CODE>sudo</CODE>比使用root帐号更好。YMMV 

<P>安装<CODE>sudo</CODE>然后编辑/etc/<CODE><A 
href="http://qref.sourceforge.net/Debian/reference/examples/">sudoers</A></CODE>中有关选项激活它。还可在<CODE>/usr/share/doc/sudo/OPTIONS</CODE>中查看<SAMP>sudo</SAMP>的用户组特性。 

<P>样例中的配置,设定“staff”用户组成员可通过<CODE>sudo</CODE>执行任何root权限的命令而“src”用户组成员只可执行规定的一部分root权限的命令。 

<P>使用<CODE>sudo</CODE>的好处在于只需一个普通用户密码登录,并且所有的活动都受到监控。用它为低级别的系统管理员赋权是个好主意。例如: <PRE>     $ sudo chown -R <VAR>myself</VAR>:<VAR>mygrp</VAR> .
</PRE>
<P>当然,如果你知道root密码(绝大部分在家安装系统的用户都会知道),就可以在普通用户下执行任何root命令: <PRE>     $ su -c "shutdown -h now"
     Password:
</PRE>
<P>(我想我该严格限制admin帐号的<CODE>sudo</CODE>特权,但对于家中的服务器,就不用考虑那么多了。) 
<P>想了解其它允许普通用户执行root权限命令的程序,可以看看<CODE>super</CODE>软件包。 
<HR>
<A name=s-tcpd></A>
<H3>9.2.5 daemon程序的访问权限控制</H3>
<P>对于Internet<EM>超级服务器</EM>,<CODE>inetd</CODE>会在系统启动时通过<CODE>/etc/rc2.d/S20inetd</CODE>(for 
RUNLEVEL=2)加载,S20inetd是一个指向<CODE>/etc/init.d/inetd</CODE>的符号链接。本质上,<CODE>inetd</CODE>允许一个daemon调用其它多个daemon,以减轻系统的负载。 

<P>当某个服务请求到达,系统会查询<CODE>/etc/protocols</CODE>和<CODE>/etc/services</CODE>中的数据库,确定该请求所指定的相关协议和服务,接着<CODE>inetd</CODE>会在<CODE>/etc/inetd.conf</CODE>数据库中查找普通Internet服务或<CODE>/etc/rpc.conf</CODE>中查找基于Sun-RPC的服务。 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -