随笔 - 298  文章 - 377  trackbacks - 0
<2008年7月>
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789

常用链接

留言簿(34)

随笔分类

随笔档案

文章档案

相册

收藏夹

搜索

  •  

最新评论

阅读排行榜

评论排行榜

入门篇安装篇
Q:如何制作安装磁盘?

你可以使用两中方法制作安装磁盘。在M$-DOS下,可以使用专门为其开发的rawrite命令(安装光盘\dosutils下),将boot.img(安装光盘\images下)映像文件传输到软盘上;在linux下可以用命令dd,但不要把软驱设备mount入系统。具体语法如下:
e:\>e:\dosutils\rawrite
Enter disk images source file name: ..\images\boot.img
Enter target diskette drive: a:
please insert a formatted diskette into drive A and press [Enter]
或者
# dd if=boot.img of=/dev/fd0 bs=1440K
另注:boot.img基于光盘安装,bootnet.img基于网络安装,pcmcia.img和pcmciaadd.img基于PCMCIA引导盘的安装。rawrite工具只接受8.3类(短文件名.三扩展名)!


Q:在安装的时候我错过了制作启动盘,我想要一张bootdisk怎么办?

命令uname -a可以让你看到你的系统内核版本是多少,一般表示为……kernel 2.x.xx-xx……,然后你可以把一张空白的(当然,有数据资料的也可以,呵)软盘放到软驱里去,千万不要习惯地mount上软驱哟!直接打命令mkbootdisk --device /dev/fd0 2.x.xx-xx 就可以了。


Q:boot:后加的选项有哪些?是什么意思?

boot:text 开始文本模式安装程序(在你不知道自己的linux版
本是否支持计算机显卡设备的时候,强烈建议使用此模式;效率高的安装模式)
boot: nofb 该选项允许你不用一个frame缓冲来使用图形安装程序(在引导进入图形安装界面遇到问题的话,而你非要图形界面的话,可以试用该选项)
boot:linux mediacheck 测试ISO映像的查验值的完整性(小红帽7.3的ISO文件内嵌了md5sum,可以进行查验值测试)
boot:linux noprobe 安装程序没有正确检测到你的硬件设备时引导进入专家模式(同样可以使用boot:text noprobe,在安装的时候可以有选择载入驱动程序选项的选择余地)
boot:linux console=在串线(serial mode)模式中执行安装(同样可以使用boot:linux text console=,device是你在使用的ttyS0或ttyS1)
boot:linux mem=128M 让linux识别你全部的RAM (同样可以使用boot:linux text mem=128M,如果linux不可以识别你所有的内存,你可以这样做)
boot:linux hdX=cdrom //X的值为:a第一个主IDE设备,b第一个次IDE设备,c第二个主IDE设备,d第二个次IDE设备 如果您的ATAPI光驱无法找到,请指定位置。
boot:linux rescue 进入救援模式,当系统崩溃的时候可以进行救援。
boot:linux single 进入单人模式,单人模式方便系统管理员root忘记密码的时候使用,由于有安全性的问题,所以服务器上一般会把引导配置文件修改使得无法使用single。
boot:expert 进入专家模式,专家模式不会检查大多数硬件, 而是在安装时让您自己选择驱动程序。
boot:lowres 用图形安装的话,启动640X480的分辨率模式

Q:如何从MS-DOS引导进入安装程序?

启动进入MS-DOS模式,
A:\>E:进入光驱E盘,
E:\>E:\DOSUTILS\AUTOOOT.BAT回车便可以引导进入了。(为解决无法直接从光驱引导或使用非ISO硬盘安装而使用此方法)


Q:如何从SCSI光盘驱动器上安装linux ?

如果你拥有的是SCSI光盘驱动器,那么也许在检测的时候无法发现光驱,安装程序会询问并让你选择一个SCSI驱动,请选择与你的适配器最近的驱动程序(大都已经获得支持)。

Q:如何确定应该选择哪种安装类型?

工作站(WorkStation),如果你是新手或需要一个图形界面的话可以使用工作站安装模式;服务器(Server),系统具有适当的服务器功能模块,基于系统安全因素考虑,默认状态下GUI(图形界面)是不会被加入该模式的;便携电脑(Laptop),专为笔记本电脑所需的功能而设定;自定义(Customer),自己定义系统,你可以定义拥有各个类型的功能或是完全安装;升级(Update),当你的系统有重要的数据而你又希望把新的版本安装到你的计算机上,请使用此类型。

Q:安装linux时如何合理分区?

工作站,/boot为50M,/分区大小根据安装包大小自定;服务器,/boot为50M,/为384M,/usr存放本地用户配置、程序文件,视所需定义大小;/home存放所有用户数据文件,视所需定义大小;/var为256M,存放日志。自定义安装方便多系统并存,你可以采用如工作站的分区模式。

Q:swap分区的大小?

有一种通行的说法是内存大小的两倍。可如果你已经拥有256M以上的RAM,并且计算机的用途只是个人娱乐、学习使用,你完全没有必要去划512M的交换区(swap),推荐使用128M以下32M以上。

Q:为什么我要使用ext3文件系统格式?

ext3文件系统格式是基于ext2系统之上的,它有个很大的优点就是——记帐。使用一个记帐的文件系统减少了崩溃之后恢复系统所花的时间,因为无需运行fsck来检察文件系统。强烈推荐使用。

Q:MBR是什么东西?

Master Boot Record(主引导记录),每个硬盘都有这样一个MBR,负责当BIOS完成POST后,接手计算机系统引导操作系统的请求。正因为是这样,任何一个硬盘都不可能没有MBR的(当然,CIH破坏的MBR也只是坏的MBR而已),所以,要卸载GRUB或LILO的话,只能用另外的一种MBR工具来替代(fdisk /mbr)。


Q:lilo启动错误提示信息:

没有提示: LILO没有安装或者安装LILO的分区没有被激活。

  L〈错误码〉 : LILO的第一部分已经被装入并运行了,但它不能装入第二部分的引导程序。两位数字的错误码指示问题的类型(参见“磁盘错误码”),这种情况通常是在介质访问失败或硬盘参数错误。

  LI: LILO第一部分正确但是第二部分执行时出错。这一般是硬盘参数有误或/boot/boot.b被移动后没有重新运行map安装程序。

  LIL: LILO第二部分开始执行,但是不能从“map”文件中读取描述符表( descriptor table)。 这通常是因介质错误或磁盘参数有误引起的。

  LIL?[/b]: LILO在错误的地方加载。原因与“LI”大致相同。

  LIL-:描述符表(descriptor table)错误。典型原因是硬盘几何参数微妙的不匹配或/boot/boot.b被移动而没有运行map安装程序。

  LILO: LILO执行正确。

  1010101010: 分区情况已经改变却没有重新安装LILO,另外,超频也可能会出这种情况。

Q:如何备份lilo

fdformat /dev/fd0h1440(格式化一张空白软盘)
dd if=/boot/vmlinuz of=/dev/fd0 (用你自己的内核文件名替代vmlinuz)

rdev /dev/fd0 /dev/sda3 (用你的根分区设备名称替代/dev/sda3)

rdev -R /dev/fd0 1 (安装根文件系统成只读模式)

作用: 这样当系统LILO失败时,可用该软盘引导系统且安装硬盘根文件系统


Q:如何删除MBR中的lilo

用windows启动盘启动,运行fdisk/mbr.或者在linux下运行lilo -u

Q:如何重装lilo到MBR

用软盘或光盘启动到boot:,
系统安装有: Windows xp, Linux Redhat 7.2
C:\ 对应于Linux中 /dev/hda
Linux ROOT 为Linux中 /dev/hda4


Q:提示“kernel panic: VFS: Unable to mount root fs on XX:YY”是什么意思?

首先,请根据 device code 清单检查 device XX:YY ;它是正确的 root device 吗?如果不是,那你可能没有做过 rdev -R ,或者是你是对错误的image 执行rdev -R。如果 device code 是正确的,那么请仔细地检查被编译到你 kernel 内的 device 驱动程序。请确定它有没有对filesystem进行支持。


Q:启动时提示的0xXXX磁盘错误码是什么意思?

1、0x00 "内部错误"。由LILO扇区读子程序产生.可能是因为被破坏的文件,重建map文件试试看。另一个原因也许是,当使用linear参数时去访问超出1024的柱面。
2、0x01 "非法命令"。它不该发生,如果它出现了,意味着LILO去访问BIOS不支持的硬盘。整理这份文档的时候,我的一个朋友就遇到了L010101...的错误,因为他把Linux装在第二个IDE口上(/dev/hdc),加上Disk参数就好了。
3、0x02 "没找到地址标记"。通常是介质问题,多试几遍看看。
4、0x03 "写保护错"。仅在写操作时出现。
5、0x04 "扇区未找到"。典型的原因是硬盘参数不匹配。
6、 0x06 "激活顺序改变"。这应该是短暂的错误,再试一次。
7、0x07 "无效的初始化"。BIOS没有适当地初始化硬盘,热启动一次或许有帮助。
8、0x08 "DMA超出限度"。这不应当发生,重新启动。
9、0x09 "DMA试图越过64k边界"。这不应当发生,建议忽略COMPACT参数。
10、0x0C "无效的介质"。这不应当发生,重新启动看看。
11、0x10 "CRC错误"。检测到介质错误。建议多启动几次,运行map安装程序,把map文件从坏块写到正常的介质上。
12、0x11 "ECC矫正成功"。读错误发生然后被矫正,但是LILO并不知道这个情况,终止了启动过程
13、0x20 "控制器错误"。不应该发生。
14、0x40 "定位失败"。这可能是介质问题,重新启动试试。
15、0x80 "磁盘超时"。磁盘或驱动器没有准备好。介质坏了或磁盘没有转,如果从软盘启动则可能是没有关门。
16、0xBB "BIOS错误"。这不应该发生,如果反复发生,则考虑移去COMPACT参数或加上/取消


Q:如何使用Disk Druid工具分区?

强烈推荐新手使用PowerQuest PartitionMagic(硬盘分区魔术师)来对硬盘分区进行管理。基于图形界面的Disk Druid工具可操作性也很强,你可以先把某个分区删除(Dele)掉然后在进行重新分区适配你的linux系统(多系统并存),你也可以对已有的分区进行编辑(Edit),又或者你可以新建(new)一个分区。重设(Reset)按钮可以恢复你原来的分区状态。


Q:如何使用FIPS?

FIPS (First Interactive Partition Splitter) 程序是一个功能非常强大的MS-DOS工具程序,它可以在不删除硬盘上原有数据的情况下将硬盘上的一个分区重新进行规划。该程序只能分割MS-DOS的主分区,不能分割MS-DOS的扩展分区。FIPS的详细的文档在red hat光盘的dosutils/fipsdocs目录下,假设未分割前的硬盘分区已经全部分配给 DOS/Windows 使用。
请您建立一张 DOS 启动盘, 将 CDROM 上的 /install/FIPS 目录下的FIPS.EXE, RESTORRB.EXE,和 ERRORS.TXT 拷贝到该软盘上,我们不推荐直接在硬盘上使用FIPS。 在您运行FIPS之前, 请您使用DOS 或 Windows95 提供的 SCANDISK (或 Norton 公司最新版本的NDD)来检查要划分的硬盘,修复错误,然后使用用DEFRAG(Norton公司最新版本的Speedisk)来将硬盘重新整理,保证硬盘的后半部分没有任何MS-DOS文件,注意像mirror或image这样的程序会重新把一些文件放在硬盘的最后面, 请用“attrib -r-s -h image.idx”或 “attrib -r -s -h mirorsav.fil”将这些文件的属性改为可读并删除他们,另外在autoexec.bat或config.sys中除去image或者mirror及其他防病毒程序如NAV,防止他们在FIPS重新启动机器时恢复原来的硬盘分区表。此外如果要用FIPS分割被doublespace,stacker,drivespace压缩的磁盘时只能分割压缩盘的宿主盘。
接下来用做好的FIPS启动盘启动机器。运行FIPS, 当用户启动 FIPS 的时候,程序可以让用户把硬盘上boot区及root区 的备份写到软盘上的ROOTBOOT.00x (其中的 x代表一个从0到9的数字)文件里。如果在使用 FIPS 时发生任何错误,用户可以从软盘启动并执行RESTORRB 来恢复硬盘上原先的配置。 请注意:如果用户不止一次地使用 FIPS 的话 (这一般是不必要的,但是可能发生),程序会把一个以上的ROOTBOOT 档案写到软盘上。RESTORRB会让用户选择要恢复哪个配置文 件。RESTORRB.000 这个文件包含用户原先的配置。
用户现在必须输入新分区应该从哪个磁柱开始。使用左/右方向键来递增或递减磁柱的计数。剩下的分区以及新分区的大小会在程序中显示,所以选择正确的磁柱对用户来说并不困难。用户可以使用上/下方向键一次递增十个磁柱。准备 好后,按下enter继续。在此之后,可以选择重新编辑分区表(这会让用户重新选择划分分区)或是继续。如果用户键入“c”,则FIPS将会计算改变过的启动分区,再检查一次并提示用户是否要继续。如果用户键入“y”,那么FIPS将会把 这些改变写入硬盘并结束。重新启动机器,用FDISK查看新配置是否已经起作用。现在,您的系统上应该有两个FAT分区,第一个是您的DOS/Windows的文件系统,第二个是个空的分区,可以被Linux作为自己的分区。
另外,如果您拥有 patitionmagic 4.0以上的版本,这是一个非常专业而且功能强大 的分区编辑软件,您也可以使用该工具对您的硬盘分区进行重新划分。


Q:如何使用fdisk?

fdisk 包含一个简单而有用的在线帮助. 这是一点提示:
帮助的命令是 m。
用 p 命令列出当前的分区
用 n 增加一个分区。
Linux fdisk 创建的分区默认类型为 Linux native。当您创建Linux swap 类型的分区时, 不要忘记用 t 命令改变类型。Linux native 的值是83,Linuxswap的值是82.fat16的值是6.用l命令可以察看分区类型及对应的值的清单。
Linux允许一个硬盘至多四个分区。如果您想创建更多分区, 其中一个必须是扩展(extended)分区,它可以包含一个或多个逻辑(logical)分区。因为扩展分区是一个'容器', 所有它的大小不能小于它包含的逻辑分区的大小的总和。
您最要在创建分区时记下那个分区(如/dev/hda2)对应哪个文件系统 (如/usr)。
请注意: 在您用w命令存盘并退出fdisk之前, 所有的改变都没有生效。您可以用q命令不存盘而退出fdisk。


Q:如何使用NFS方式安装linux?

如果您想从NFS服务器安装Red Hat Linux, 选择'NFS image' 然后选 OK。 然后, 安装程序检查您的系统试图识别您的网卡。大多数情况, 会自动识别您的网卡。如果不行的话,就会让您选择一个支持您的网卡的驱动程序并指定一些必须的选项。
配置好您的网卡之后,会出现几个对话框配置您的TCP/IP网络.第一个屏幕让您三种网络方式之一:
静态IP地址 -- 您必须手工设置网络的信息。
BOOTP -- 网络信息通过bootp请求自动提供。
DHCP -- 网络信息通过dhcp请求自动提供。
请注意: BOOTP 和 DHCP 选择要求您的局域网上有一台已经配置好的bootp (或 dhcp)服务器正在运行。
如果您选了 BOOTP 或 DHCP, 您的网络配置将自动设置, 您可跳过其余部分。
如果您选了Static IP address, 您必须自己设定网络的信息. 如果您在进行NFS安装, 请读下去。
下一个对话框要求NFS服务器信息 . 输入NFS服务器的名字或IP地址, 以及包含Red Hat Linux CD的目录名. 例如, NFS 服务器将Red Hat Linux CD安在/mnt/cdrom, 在 Red Hatdirectory 域输入 /mnt/cdrom 。如果NFS输出的不是CD而是Red Hat Linux安装树的一个镜像, 输入包含Red Hat目录的目录名。 例如, 如果您的NFS服务器包含目录/mirrors/Red Hat/i386/Red Hat,输入/mirrors/Red Hat/i386
短暂延迟之后, 出现下一个对话框,继续安装Red Hat Linux。

Q:如何驱动第二块网卡?

在Linux系统中,你可以很容易地使用配置工具netconf安装第二块网卡,在netconf中选择第二块网卡,设备名:eth1、选择其驱动模块、输入IO地址和IRQ中断号,存盘退出后,执行:
/etc/rc.d/init.d/network restart

Q:关于root密码丢失后的解决办法

用GRUB启动的解决办法:
到GRUB启动-->按e进入编辑界面-->在引导菜单root=/dev/hdax后加1或single
-->按b进入单用户模式-->用passwd命令修改密码

Q:一般情况下,如何在PC安装linux?

当计算机系统启动的时候按DEL键(或F2,视主机板不同)进入CMOS,将启动项设置为优先从IDE CDROM设备启动,保存并退出。将linux系统安装盘的DISK1放入光驱,reset你的计算机,进入linux安装程序。直接按回车键后,如果你拥有的linux发行版较新,而该版本内含的XFree86可以支持你的显卡,那么将进入图形安装界面,象所有window$用户一样,你可以用鼠标点击next来完成你的安装。

Q:为什么我无法在VMWare里的linux启动X?

先到http://www.vmware.com/download/ 把最新的版本的vmwarefor window$版本下过来,点击“下一步”便可以顺利安装了。启动VM后设置相关的RAM大小、驱动器和网卡及其他设备后,启动你设置的虚拟机象平时一样把linux装上。然后按alt+ctrl键使用鼠标点击VM的菜单栏settings项,选择Vmware Tools install...,回到虚拟机,mount /dev/cdrom /mnt/cdrom,你会发现在/mnt/cdrom下有个叫vmware-linux-tools.tar.gz的包。
#cp /mnt/cdrom/vmware-linux-tools.tar.gz /tmp //你是没有办法在/mnt/cdrom下解包的
#gunzip /tmp/vmware-linux-tools.tar.gz
#tar -vfx /tmp/vmware-linux-tools.tar
#/tmp/vmware-linux-tools/install.pl
系统会提示你是否把以前的X配置文件在后头加.OLD以保存下来,推荐[yes]
#startx //如果你的显示卡已经获得支持,enjoyed it

Q:我下了linux的ISO安装文件,应该怎么样安装呢?

你可以用两种方法使用ISO安装文件。第一种是把ISO文件分别刻到光盘上,然后从光驱启动安装(方法见前面);第二种是直接从硬盘上安装。先用软件winiso(假设你的下载平台是M$ window$)把disk1里的loadin.exe、autoboot.bat和整个autoboot目录拷贝到存放ISO安装文件的相同目录里(强烈建议放在某个盘的根目录下),然后用MS-DOS启动盘启动进去,运行autoboot.bat文件后,根据提示指定安装介质的位置就可以了。

Q:我在8.4G外装linux系统,LILO无法引导怎么办?

有些BIOS不能识别大于8.4G的硬盘,旧的LILO不能识别位置大于1024柱面的系统内核(kenerl)。因此可能的问题是:LILO被装入MBR,而为Linux准备的硬盘分区远在1024柱面之外,因此Linux不能引导。
解决方案:
也许你已经安装了Linux,不要delete它,改改还能用!好,现在开始:
1. 用PartitionMagic5.0在第一个硬盘的开始分出个10M的ext2分区,格式化。最好把为Linux准备的分区也一同准备好,省得以后麻烦。
2. 用Loadlin或Linux的boot和rescue盘引导系统。mount那个10M的分区--/dev/hda1,假设我使用boot和rescue盘,mount到/mnt/tmp。把/boot/*和内核映象文件拷贝到/dev/hda1相同的目录下,编辑/etc/lilo.conf,在所有的目录前加上/dev/hda1的mount路径,并且将LILO安装到/dev/hda1。
把lilo.conf中的
boot = /dev/hda
install= /boot/boot.b
message = /boot/bootmsg
map= /boot/map
image = /boot/vmlinuz-2.2.13
修改为
boot = /dev/hda1
install= /mnt/tmp/boot/boot.b
message = /mnt/tmp/boot/bootmsg
map = /mnt/tmp/boot/map
image = /mnt/tmp/boot/vmlinuz-2.2.13
调用lilo -v命令,重新安装LILO。
注:其实,就今天的发行版linux带的内核而言,上面的方法实在是“非常”老了。你只需要在lilo.conf里加一行lba32就可以了
再者,用GRUB吧~ 漂亮好用


Q:怎么重新恢复启动界面?

假如你的linux的根目录是/dev/hda1
用起动盘启动linux(安装盘就可以的)
在linux:后面输入
vmlinuz root=/dev/hda1
然后进入系统以后就执行lilo就可以了

Q:用GRUB重新恢复启动界面

1)用起动盘启动linux(安装盘就可以的)
在boot:后面输入
grub -install /dev/hda1

2)以RedHat 7.3为例〕
1.把安装盘的第一张放到光驱,然后重新启动机器,在BOIS中把系统用光驱来引导。
2.等安装界面出来后,按〔F4〕键,也就是linux rescue模式。
3.一系列键盘以及几项简单的配制,过后就〔继续〕了。。。这个过程,我不说了,比较简单。
4.然后会出现这样的字符
sh#
5.我们就可以操作GRUB了。。。哈。。。只要能出现这样的,以后都是小KISS了,我就是不说 ,谁也能明白,地球人都知道了。。。。
sh#grub
会出现这样的字符
grub>
我们就可以在这样的字符后面,输入
grub>root (hdX,Y)
grub>setup (hd0)
如果成功会有一个successful......
这里的X,如果是一个盘,就是0,如果你所安装的linux的根分区在第二个硬盘上,那X就是1了;Y,就是装有linux系统所在的根分区。 setup (hd0)就是把GRUB写到硬盘的MBR上。

我来举个例子吧,如果以我的硬盘为例。我在第一个硬盘上装了XP,在第一个硬盘的hda9个装了RH73.我总共有两个硬盘。如果我把GRUB丢了,就用这种办法找回来。 如果你不知道你的linux安装到哪个分区上,也就是说,不知道这个Y是多少,这也不要紧,先输入root (hdX,然后用[TAB]来查看,一下就明白了...

操作如下:〔前面开机启动的上面有说明〕

sh# grub

会出现下面的字样的

grub>

然后再这样操作,如果我知道我的linux装在第一个硬盘上,但我不知道装在哪个分区上,就可以先输入root (hd0,然后用〔TAB〕键来补齐,然后就明白了。

grub>root (hd0,8)
grub>setup (hd0)

3)
grub>cat (hd0,0)/root/grub/grub.conf(为了看参数。)
grub>root (hd0,1)
grub>kernel (hd0,0)/boot/vmlinuz-2.4.18-11 ro root=LABEL=/
grub>initrd (hd0,0)/boot/initrd-2.4.18-11.img
grub>boot



Q:如何设置图形界面的分辨率?

方法有两种:
执行Xconfigurator出现欢迎屏幕。然后选OK回车,程序自动找到显卡等。再OK,出现显示器列表,选择显示器类型,或选Custom来自定义一个显示器。接下来选择显存大小,后面出现的一个窗口是要求识别时钟的配置,要选No Clockchip Setting。然后OK,再选显示顔色和分辨率有三组,然后选OK回车,再测试一下就OK。最后一个YES和NO是问你下次启动是否直接进入X。再点OK完毕。
或直接改/etc/X11/XF86Config-4以及/etc/X11/XF86Config文件!
用右键点上述文件,选高级编辑器(当然,在命令行下用vi命令也可以编辑),修改文件的最后几行:
Modes "800x600" --- 为显视解析度
Virtual 800 600 --- 为虚拟桌面的大小


Q:如何设置图形界面的刷新率?(注:请小心操作!)

如果你用的是Redhat的话你的X window配置文件是
/etc/X11/XF86Config
Slackware的X Window配置文件是
/etc/XF86Config
在那个文件中你会看到象下面这样的东西:
# 640x400 @ 70 Hz, 31.5 kHz hsync
Modeline "640x400" 25.175 640 664 760 800 400 409 411 450
# 640x480 @ 60 Hz, 31.5 kHz hsync
Modeline "640x480" 25.175 640 664 760 800 480 491 493 525
# 800x600 @ 56 Hz, 35.15 kHz hsync
ModeLine "800x600" 36 800 824 896 1024 600 601 603 625
# 1024x768 @ 87 Hz interlaced, 35.5 kHz hsync
Modeline "1024x768" 44.9 1024 1048 1208 1264 768 776 784 817
Interlace
# 640x480 @ 72 Hz, 36.5 kHz hsync
Modeline "640x480" 31.5 640 680 720 864 480 488 491 521
# 800x600 @ 60 Hz, 37.8 kHz hsync
Modeline "800x600" 40 800 840 968 1056 600 601 605 628
+hsync +vsync
# 800x600 @ 72 Hz, 48.0 kHz hsync
Modeline "800x600" 50 800 856 976 1040 600 637 643 666
+hsync +vsync
# 1024x768 @ 60 Hz, 48.4 kHz hsync
Modeline "1024x768" 65 1024 1032 1176 1344 768 771 777 806
-hsync -vsync
# 1024x768 @ 70 Hz, 56.5 kHz hsync
Modeline "1024x768" 75 1024 1048 1184 1328 768 771 777 806
-hsync -vsync
# 1280x1024 @ 87 Hz interlaced, 51 kHz hsync
Modeline "1280x1024" 80 1280 1296 1512 1568 1024 1025 1037 1165
Interlace
# 1024x768 @ 76 Hz, 62.5 kHz hsync
Modeline "1024x768" 85 1024 1032 1152 1360 768 784 787 823
# 1280x1024 @ 61 Hz, 64.2 kHz hsync
Modeline "1280x1024" 110 1280 1328 1512 1712 1024 1025 1028 1054
# 1280x1024 @ 74 Hz, 78.85 kHz hsync
Modeline "1280x1024" 135 1280 1312 1456 1712 1024 1027 1030 1064
# 1280x1024 @ 76 Hz, 81.13 kHz hsync
Modeline "1280x1024" 135 1280 1312 1416 1664 1024 1027 1030 1064
这些东西控制这你的显示卡的设置,例如
下面这一行注释说分辨率为1280x1024,刷新速率为76赫兹,行扫频率为81.13千赫兹
# 1280x1024 @ 76 Hz, 81.13 kHz hsync
下面这一行具体设置显示卡:
Modeline "1280x1024" 135 1280 1312 1416 1664 1024 1027 1030 1064
这行中每个项目的意义如下:(从左到右)
模式行,分辨率,像元频率(兆赫兹),每行像元数,行同步(消隐)脉冲开始的时钟周期,行同步(消隐)脉冲结束的时钟周期,每行的时钟周期数,每帧的图象行数,帧同步脉冲开始的扫描行数,帧同步脉冲结束的扫描行数,每帧的扫描行数。
调整这些数目你可以最大限度地使用你的显示卡和显示器,例如您的显示卡有一兆存储器,您可以设置成1152x900的分辨率。需要当心的是仔细核对你的显示器所允许的扫描频率,有些显示器当收到过高的扫描同步脉冲后会烧毁行扫描晶体管。
下一个问题是你的显示卡有什么像元频率可以用,例如上面的行要求135MHz,但你的卡只有125兆赫兹,怎么办呢?[/b]也好办,用emacs或vi把135改为125就完了。
如果你的配置文件中对应于您所要的分辨率有多个模式行的话,您可以将其它频率较低的模式行用#号给封上,只留下你想要的频率就能改变扫描频率了。
当然,你还可用XF86带的xvidtune软件调整


Q:我的256M内存没有全部被linux用上,怎么办?

你可以在你的系统引导程序配置文件(LILO用户见/etc/lilo.conf,GRUB用户见/boot/grub/grub.conf)里加入一行append="mem=256M"传递参数到系统让linux可以完全识别你的大内存。

Q:安装系统时提示xxx xxx signal 11 error然后中断安装怎么办?

signal 11的错误提示可能是由于你的系统总线内存的硬件错误。内存的硬件错误可能会被可执行文件的问题导致,或是系统的硬件问题(比如光驱的读盘能力)。请查找最新版本的映象文件。如仍无法解决问题,请尝试在BIOS里关闭CPU缓存或将你的内存调换位置或换一个插槽。


Q:先安装linux然后再装window$ xp,用linux bootdisk软盘启动后,出现如下提示:
……
Mounting root filesystem
VFS:Can't find ext3 filesystem on dev ide0(3,7)
moun:error 22 mounting ext3
pivotroot: pivot_root(/sysroot,/sysroot/initrd) failed:2
Freeing unused kernel memory
280K freed
Kernel panic: No init found. Try passing init = option to kernel.
怎么办?[/b]

这是因为XP在安装后改变了分区表的缘故。你可以用第一次安装时制作的linux bootdisk启动计算机,然后boot:加一句“linux root=/dev/hdyx”(注:y为a,b,c,d,x为自然数,你可以在SYSLINUX的头提示行中找到相仿的一句),由于分区表已经被改变,所以你不能再把启动盘默认的/root的位置作为参数传递给内核,这时候x的值应该是(x-1或x+1)。顺利启动后,你会发现你无法激活swap,没有关系,你可以修改/etc/fstab,同样把“(/dev/hdyx) swap swap default 0 0”的x值加1或减1,事先你只需要mount一下这个节点,系统会告诉你“it seems a swap”的。最后,你要恢复用LILO或GRUB对多系统进行引导,记得把里头关于/root位置的项目改过来哟~,还有最重要的一点就是,别忘了重新mkbootdisk --device /dev/fd0 x.x.xx-x做张新的bootdisk啊!


Q:我已经装了window$2000/XP,现在我还想装linux,怎么办?

如果你已经知道了如何去安装linux(当然,不知道的话,请看前面的FAQ),你害怕的主要会是在引导的时候会出现一些问题。假设你由于不希望GRUB或LILO会破坏你的winLoader而没有把引导程序装上(是“没有装”,而不是装在first sector哟!),你如果还信得过GRUB或LILO,请在计算机重新启动后用你安装linux时做的启动盘启动linux系统,以root身份登陆
# grub-install /dev/hda //安装GRUB,假设你的硬盘位置是IDE0
# lilo -v //安装LILO,如果你拥有GRUB的任何版本,对于新手不推荐使用LILO
如果你知道第三方软件可以引导装在first sector的linux系统引导程序,而你已经在安装的时候把GRUB或LILO装在了first sector上,这时你还应该知道的是,2K/XP是允许在系统盘所在的根位置提供一个多系统引导镜象的。同样用你的linux启动盘启动,然后以root身份登陆
# mount -t vfat /dev/hda1 /mnt/vfat //把C盘挂到任意一个挂点上
# dd if=/dev/hda4 bs=512 count=1 of=/mnt/vfat/linux.lnx //假设你的boot在/dev/hda4上
# umount /mnt/vfat
启动进入2000/XP,修改boot.ini文件(XP可以在系统属性里直接编辑)
加入一句 c:\linux.lnx="My Linux Loader here"
保存退出,下次启动你将看到winLoader可以引导linux了。

Q:如何引导多linux系统?

非常不推荐使用LILO引导多linux系统(其实第三方引导程序作得也很不错的)。以下介绍如何使用GRUB对同一个硬盘上的多个linux系统进行引导。GRUB使用的配置文件是grub.conf。
# more /boot/grub/grub.conf //你可以看到你的GRUB的详细配置文件
然后你会发现,其实要对同一个硬盘上的多linux系统进行引导是一件非常简单的事情。要注意的就是在安装第二个linux的时候,不要把任何的linux系统引导程序(LILO/GRUB)装上!因为你将使用第一个linux的引导程序对其进行引导。安装完毕后,只要把GRUB里的一个引导项“抄”一次,修改其细节参数就OK了。我把我的grub.conf写下,大家看看吧。
#……
#这个符号是用来注释掉行的
#……
#boot=/dev/hda
default=0
timeout=99
splashimage=(hd0,6)/boot/grub/splash.xpm.gz
#这是一个引导项的开始,引导小红帽
title Redhat Linux 7.3
root (hda0,5)
kernel /boot/vmlinuz-2.4.18-3 ro root=/dev/hda6
initrd /boot/initrd-2.4.18-3.img
#以下引导项的参数请mount到该区详细查看后记录,否则无法引导!
#引导Xteam
title Xteam Linux 2.4
root (hda0,7)
kernel /boot/vmlinuz-2.4.8xtm ro root=/dev/hda8
initrd /boot/initrd-2.4.8xtm.img
#引导mandrake
title Mandrake Linux 8.0
root (hda0,8)
kernel /boot/vmlinuz-2.4.16-3mdk ro root=/dev/hda9
initrd /boot/initrd-2.4.16-3mdk.img
#引导window$
title Microsoft Window$ 2K Pro/Data Center
rootnoverify (hd0,0)
chainloader +1

Q:i386、i586和i686等不同版本有何区别
i386 、 i586 、 i686 指的是适用于 intel i386 、 i586 、 i686 兼容指令集的微处理器。一般来说,等级愈高的机器可接受较低等级的rpm文件。你可以透过/proc/cpuinfo 这个档案查询你的CPU等级。

Q:grub的用法:

1. 安装grub
我用的grub是Redhat7.3带的grub安装包: grub-0.90-11.i386.rpm
安装: rpm -ivh grub-0.90-11.i386.rpm

其他安装方式也一样,只要你安装上grub就行了.RH7.2缺省用的grub, 1,2步骤可以
省了.

2. 建立grub的环境
cp /usr/share/grub/i386-redhat/* /boot/grub

3. 生成grub的配置文件/boot/grub/menu.conf
menu.conf的内容如下:
######### beginning of menu.conf ####################
default=1
timeout=4
#splashimage=(hd0,3)/boot/grub/splash.xpm.gz # 想要漂亮的启动画面,去掉行首"#"
title Red Hat Linux (2.4.12)
root (hd0,3)
kernel /boot/vmlinuz-2.4.12 ro root=/dev/hda4
title Red Hat Linux (2.4.14)
root (hd0,3)
kernel /boot/vmlinuz-2.4.14 ro root=/dev/hda4
######### end of menu.conf ####################

系统有两个内核, 第一为稳定的内核, 以确保第二个内核(刚编译的)启动
失败时,能引导进系统.另外, 这个menu.conf没有设password, 安全起见,最
好加上,具体怎么加,看看手册了.
注意了, 我的linux在/dev/hda4,所以menu.conf那些分区位置为(hd0,3),
你的可能不一样了,不能完全照着"画瓢"噢! 下面第3步install的中的分区
位置也应该和你的系统一致.

3. 安装grub至Linux分区boot
将grub的stage1安装到/dev/hda4的boot扇区(hd0,3). 过程如下:

/sbin/grub (运行grub)
grub> install (hd0,3)/boot/grub/stage1 d (hd0,3) (hd0,3)/boot/grub/stage2 p
(hd0,3)/boot/grub/menu.conf

(注意,上面"grub>"为grub的提示符,其后内容写在一行上.)

4. 取得grub的boot信息
过程如下:
dd if=/dev/hda4 of=/grub.lnx bs=512 count=1

这样得到grub的引导信息,只要用NT Loader来加载它就行了.

5. 将上面得到的grub.lnx弄到Windows的C盘根目录下
可以先把grub.lnx弄得软盘上,然后启动windows,拷贝到C:\; 情况允许也可以直接
在Linux下拷贝到C:了. 我的C盘(即设备/dev/hda1)为FAT32, 可以直接从Linux下弄
过去了. 如下:

mount -t vfat /dev/hda1 /mnt/c
cp /grub.lnx /mnt/c
umount /mnt/c

6. 修改NT Loader的boot.ini
在其中加入一行: C:\grub.lnx="Redhat Linux - GRUB"
加入后boot.ini的内容如下:

[boot loader]
timeout=5
default=C:\boot.lnx
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\PNT40W="Windows xp
.00"
multi(0)disk(0)rdisk(0)partition(1)\PNT40W="Windows xp
.00

[VGA mode]" /basevideo /sos
C:\grub.lnx="Redhat Linux - GRUB"

OK. 可以用NT Loader加载Linux了, 其实上面过程基本上和用NT Loader加载LILO
一样.其基本思想就是用NT Loader来加载LILO或grub的引导区(grub.lnx), 其中的关
键就是LILO或grub的引导区的获取了,我喜欢把它们安装在Linux的ROOT分区上,然后用
dd取得这个引导分区信息(即分区的第1个扇区), 存为一个文件,放到windows的C:\下,
在boot.ini中加入相应的引导指示行即可.


Q:如何安装声卡?

在字符模式下运行sndconfig或setup,如果这样不还不行的话,请下载声卡配置工具alsa(alsa工具包包括alsa-driver-0.5.10b.tar.bz2,alsa-lib-0.5.10b.tar.bz2,
alsa-utils-0.5.10b.tar.bz2,0.5.10是版本号。)按照drive、lib和util的顺序安装。也可以下载oss工具包来配置你的声卡。
(oss安装指南:http://www.linuxeden.com/edu/doctext.php?docid=1974;
ALSA安装配置AC 97声卡:http://www.linuxeden.com/edu/doctext.php?docid=1251)


Q:如何安装显卡?
用setup或Xconfigurator。如果不能找到和你的显卡和显示器匹配的,可以选择指标相近的代替。你也可以生级你的XFree或到厂家的网站上找for linux的驱动。
(驱动I810显卡:http://www.linuxeden.com/edu/doctext.php?docid=1248)

如何驱动intel i740显卡?
如果你的Linux无法识别i740的话,你可以这么做:
1)下载新的 显卡数据库 和 i740 XBF驱动程序:
xf86config-glibc-1.0.0.i386.tgz 和 xfcomi740.tgz
2)解压这两个包,覆盖原来目录:
tar xvfz /tmp/xf86config*.tgz
tar xvfz /tmp/xfcomi740.tgz
3)执行cp /usr/X11R6/bin/XFCom_i740 /usr/X11R6/bin/XF86_XBF_i740;
4)用xf86config进行配置:显示器水平扫描频率选6;垂直刷新频率选2;在显卡库选择时,选311(即i740);显卡服务器类型选5;
5)配置完成后运行startx就行了。

如何驱动Savage4显卡?
1) 到www.linhardware.com下载savage2000的驱动程序;
2) 使用tar -xvfz 文件名解开驱动程序;
3) 解压后,你能看到五个文件,其中有一个是XF86_SVGA;
4) 备份/usr/X11R6/bin/XF86_SVGA,然后将新的XF86_SVGA复制到这个目录下,替换掉这个文件;
5) 重新运行xf86config配置,不选显卡,在选X-server时,选3(也就是SVGA),并且不检测;
6) 完成后,运行startx -bpp32,就可以了。

如何驱动SAVAGE3D显卡?
1) 到ftp.lib.pku.edu.cn/incoming/savageX下载Savage3D显卡的驱动程序:SavageX_0_1_4.tar.gz;
2) 解压这个程序,用新的XF86_SVGA替换/usr/X11R6/bin的原文件;
3) 运行Xconfigurator,配置显卡时选择Unlisted Card, 然后选择Xserver为SVGA;
4) 完成后,运行startx运行x-win。

通用的显卡驱动方法
由于显卡产商支持有限,使得在Linux下驱动显卡一直都是难题。为了解决这个问题,Linux 2.2.x以上版本提供了一种新的解决方案---使用frame buffer设备,通过VESA VBE 2.0标准,利用显卡SVGA特性,配合XFree86的XF86_FBDev,驱动你的显卡。这的确可以帮你个忙。
1)确认你有XF86_FBDev文件,如果没有就从ftp.xfree86.org下载;
2)执行“mknod /dev/fb0 c 29 0”建立frame buffer设备;
3)修改/etc/lilo.conf文件,加入:
image = /boot/vmlinuz-2.2.5-fb (新编译的内核)
label = linuxfb (启动标号,可自定)
root = /dev/hda2 (参照lilo.conf其他部分)
vga = 0x314 (显示模式,参照下表)
附:显示模式表
640x480 800x600 1024x768 1280x1024
256色 0x301 0x303 0x305 0x307
32k色 0x310 0x313 0x316 0x319
64k色 0x311 0x314 0x317 0x31A
16M色 0x312 0x315 0x318 0x31B
4) 执行/sbin/lilo,使配置生效,然后重启系统,以新的内核启动系统。当然,如果你的内核已经支持了,就无需做这个修改,直接加上vga=那一行就行了。
5) 接着进行frame buffer Server的配置:参照/etc/X11/XF86Config中vga的配置,加入一个screen小节,如下所示:
Section "Screen"
Driver "fbdev"
Device "My Video Card"
Monitor "MAG XJ500T"
Subsection "Display"
Depth 16 (色深,须与前面所选显示模式的色深一致)
Modes "default"
ViewPort 0 0
EndSubsection
EndSection
6) 将X指向XF6_FBDev:
cd /etc/X11
mv X X.bat
ln -snf /usr/X11R6/bin/XF86_FBDev X

Q:如何安装网卡?

用netconf和netconfig配置你的网卡和网络环境。一般的网卡都可以选择为ne2000兼容网卡。

www.linuxaid.com.cn/support/showfom.jsp?i=665

如何驱动D-Link DE220网卡?
D-Link的DE220是一款性价比较好的,支持即插即用的ISA网卡。但正是由于即插即用功能使得其在Linux下安装会遇到一些麻烦:
1) 在DOS环境下,用DE220网卡的驱动程序盘中的一个工具setup将其设置成非PNP的;
2) 到Windows的控制面板中获取其IO地址和中断号,一般情况下,IO地址是240,中断号是10;
3) 启动Linux,登录后执行“netconf”,将第一块网卡设为Enable,设备名为eth0,模块为ne,IO地址为0x240,IRQ为10;
4) 存盘退出后,运行/etc/rc.d/init.d/network restart即可。

如何驱动D-Link DFE530 TX网卡?
D-Link 530 TX网卡是一款性价比较好的10M/100M自适应的PCI网卡,拥有广大的用户群,然后Linux在安装向导中却没有列在列表中。
其实,一般Linux都已经包含了这款网卡的驱动模块:tulip.o,你可以直接执行“insmod tulip”来完成网卡的安装。

如何驱动D-Link DFE540 TX网卡?
如果你的网卡是D-Link DFE540 TX,那么在安装时不要选网卡,否则可能造成一些不必要的麻烦。
1) 从http://cesdis.gsfc.nasa.gov/linux/d...r/src/tulip下;
2)执行以下命令,编译生成tulip.o:
  #cd /usr/src/tulip
   #gcc -DMODVERSIONS -DMODULE -D__KERNEL__ -Wall -Wstrict-prototypes -O6 -c tulip.c
3)执行insmod tulip.o;
4)执行/etc/rc.d/init.d/network restart,让网卡生效。

如何驱动Davicom 9201网卡?
Davicom 9201 PCI网卡在安装Linux时,不能直接完成。其实,大多数的Linux发行版都提供了这款网卡的驱动模块---dmfe.o,如果你的机器也是这种网卡的话,可以在安装Linux时略过网卡配置,安装完启动系统、登录后,执行:“insmod dmfe”命令添加驱动模块,然后执行“/etc/rc.d/init.d/network restart”就可以了。

进程式篇


Q:什么是rpm包安装的依赖性(相关性)?

rpm的全称是Redhat Packages Management,在你使用rpm命令安装某个rpm包的时候,系统会提示你某个包或.o文件must be installed by xxxxx,这就是rpm包安装的依赖性问题。解决方法很简单,按照系统提示你没有装的包先安装就可以了。如果你遇到诸如A包依赖B,B包也依赖A的时候,请使用参数--nodeps,强制rpm不检查安装文件的依赖性安装。


Q:rpm和tar的使用方法(软件包的安装方法)

rpm:
  1)安装rpm包时显示进度:用-vh参数,如rpm -ivh ipchains-1.3.6-1.i386.rpm,用 glint或xrpm则不必。
  2)直接通过ftp来安装rpm包:如rpm -iftp://ftp.xxx.xxx ;
  3)校验所有的rpm包,查找丢失的文件:rpm -Va
  4)查找一个文件属于哪个rpm包:例如:rpm -qf /usr/bin/who
  5)列出一个rpm包的描述信息:例如:rpm -qpi mon-0.37j-1.i386.rpm
  6)列出一个rpm包的文件信息:例如:rpm -qpl mon-0.37j-1.i386.rpm
7)安装同一个目录下的所有RPM文件:例如:rpm -Uvh *.rpm
8)安装同一个目录下的所有RPM文件,不管依赖性:例如:rpm -Uvh *.rpm --force --nodeps

tar:
tar zvfx xxx.tgz/xxx.tar.gz 在当前目录下展开这个包
tar zvft xxx.tgz/xxx.tar.gz 只测试不展开
tar zvfx xxx.tgz/xxx.tar.gz -C /new dir 展开后放到/new dir目录下
tar zvfc xxx.tgz/xxx.tar.gz /test 把/test目录下的所有文件及自目录打包成test.tgz

Q:使用光盘和软盘

mount -t ext2 /dev/fd0 /mnt/floppy(挂载linux文件系统的软盘)
mount -t vfat /dev/fd0 /mnt/floppy(挂载fat32文件系统的软盘)
一般情况下可直接用:mount /mnt/floppy
挂载光盘用:mount /mnt/cdrom(记住:在拿出关盘和软盘前要先卸载,用命令umount)


Q:REDHATLINUX7.X汉化方法

下载:
www.linuxsir.org/software/fm-1.2.tar.gz
#tar xvfz fm-1.2.tar.gz
#cd fm-1.2
#./fm.sh
重启
#ttfm.sh --add simsun.ttf (simsun字体在当前目录下,如果你用的是WIN2K的宋体的话,把simsum.ttc改名为simsun.ttf就行)


Q:优化虚拟控制台

编辑/etc/inittab文件
  大部分Linux的发行套件都建立六个虚拟控制台,实际上三个已经足够,并且可以节省可贵的内存空间。编辑/etc/inittab文件,在下面三

行的前面加上#。

  4:2345:respawn:/sbin/mingetty tty4
  5:2345:respawn:/sbin/mingetty tty5
  6:2345:respawn:/sbin/mingetty tty6

Q:使用多达23个的虚拟控制台(VT)

假设你现在有6个,仿照/etc/inittab种的文件,加入
8:234:respawn:/sbin/getty 38400 tty8
24:234:respawn:/sbin/getty 38400 tty24
要跳过VT7,因为X使用这个终端。然后telinit q以重新加载配置文件。使用左Alt+Fn在1-6和8-12件切换,使用右Alt+Fn键在13-24之间切换


Q:在命令符下读WINDOWS目录

编辑/etc/mtools.conf文件
  一般情况下,都是在自己的机器安装Windows 98与Linux两种操作系统,通过安装mtools包,可以不用安装相应的文件系统,允许在MSDOS、Windows 98与Linux的文件系统之间,实现文件的读、写、移动、显示等操作。假设Windows 98安装在/dev/hda1、/dev/hda5分区下,修改/etc/mstools.conf文件,加入以下内容:

  drive c: file="/dev/hda1"
  drive d: file="/dev/hda5"

  这样就可以执行mdir c:等命令。


Q:拷贝各种配置文件

  根据机器的用途,编辑拷贝相应的配置文件,例如:samba的配置文件/etc/smb.conf,域名服务器的配置文件,DHCP的配置文件

/etc/dhcpd.conf等。一般情况下,这些文件一旦配置好,很少发生改动,这样可以节约许多时间。注意原来的配置文件一定要做好备份,如果

配置文件发生改动也要做好备份!


Q:如何安装新内核?

到/usr/src/linux目录下(一般都是这个目录,也有例外的,具体情况看自己/usr/src下那个目录包含了核心程序)。
有一下六步:(每一步需要很长时间,请等待)
make mrproper (用来消除原来编译的影响)
make menuconfig (用config, xconfig也可以)
make dep
make bzImage
make modules (如果你设置了模块就要用这个)
make modules-install
cp /usr/src/linux/arch/i386/boot/bzImage /boot/
vi /etc/lilo.conf
修改lilo.conf,添加(或修改)
image=/boot/bzImage
label= linux
read-only
root=/dev/hdxx linux所在分区
存盘推出,运行lilo,如果一切ok,那么重起就可以使用nfs了


Q:定制自己的登录信息

编辑/etc/rc.local文件
如果需要定制自己的登录信息,注意要修改/etc/rc.d/rc.local文件,因为每次执行/etc/rc.d/rc.local文件,都需要修改/etc/issue与

/etc/issue.net文件,可以注解掉这些命令,编辑定制自己的/etc/issue文件,加快Linux引导过程,并且加入以下内容:
echo "base=0xd8000000 size=0x800000 type=write-combining" >> /proc/mtrr
# Enable NumLock
for tty in /dev/tty[1-3]; do
setleds -D +num < $tty
done
说明:关于第一行命令请看/usr/src/linux/Documentation/mtrr.txt文件。


Q:怎样加快linux的运行速度?

默认情况下,linux是不打开硬盘的DMA读写方式的,我们可以以手工方式打开:
hdparm -d1 -X66 /dev/hda //打开Udma2传输模式
hdparm -c1 /dev/hda //开启IDE 32位传输模式
hdparm -k1 /dev/hda //重启后依然有效
你可以把这两句加到/etc/rc.d/rc.local文件里以便让系统启动时自动运行
用hdparm -t /dev/hda 测试一下优化前和优化后的硬盘读写速率
hdparm -i /dev/hda 查看硬盘设置信息


Q:如何让启动的时候不自动进入XWINDOW?

修改/etc/inittab.conf里面的
id:5:……成为
id:3:……就可以啦!


Q:怎样从XWINDOW到控制台?

ctrl+alt+F1...F6
其中F7,F8是XWINDOW用的。比如:
startx
就是用的ctrl+alt+F7
而startx -- :2
就是用的ctrl+alt+F8


Q:Linux下加载Windows分区的几种方法

1)手工加载
假设要加载的分区在Windows中是G盘,你可以在Linux的/mnt目录下建一个g目录(/mnt是Linux专门为加载各种存储设备而设的目录,默认情况下就有floppy(软驱)和cdrom(光驱)两个目录,hda1是c:,逻辑分区从hda5开始,一般的d:是hda5,以后顺延。具体的你可以在 linux下用 cfdisk查看分区情况)
你还可以用linuxconf来挂载你的windows分区,在命令提示符下输入linuxconf,选 择file system下的access local drive,再添加你的新的装配点
#mount -o iocharset=cp936 /dev/hda8 /mnt/g
(“mount”是加载分区的命令,“-o iocharset=cp936”是参数,使用这个参数,我们在加载某一分区后,不仅可以读写文件,还可以正常显示中文长文件名。“dev/hda8”是G盘在Linux下的名称,它是被作为一个设备放在/dev目录下的,“/mnt/g”是加载G盘的目标目录。整个命令的意思是把“dev/hda8”(G盘)挂接到“/mnt/g”目录,并且可以显示中文长文件名,可以读写文件。)

2)半自动加载
在桌面上单击右键,在弹出的菜单中选择“应用程序链接”,在“常规”选项卡的文本输入框中输入你自己指定的名称(如“加载G盘”),切换到“执行”选项卡,在“命令”输入框中输入“mount -o iocharset=cp936 /dev/hda8 /mnt/g”,选中“在终端中运行”复选框,点“确定”退出。 单击桌面上的“加载G盘”图标,终端窗口一闪,G盘就可以加载了。

3)全自动加载

用任一文本编辑器打开/ect目录下的fstab文件,把“/dev/hda8 /mnt/g vfat defaults,iocharset=cp936 0 0”添加到最后一行后面,保存后退出。以后每次重新启动系统时都会自动加载G盘。说明:“vfat”表示加载的是FAT32文件系统,如果是“msdos”则是FAT16文件系统,“ntfs”是NT的NTFS文件系统。


Q:我的在KDE选择了中文后为什么FAT分区里中文看起来只有一些问号,怎么办呢?

编辑你的/etc/fstab文件添加一行
/dev/hda1 /mnt/c vfat iocharset=gb2312,umask=0,codepage=936 0 0
启动的时候挂上你的C盘。当然既然这样一来你当然也可以用同样的交互式命令实现对光盘上的中文的识别
# mount -t iso9600 -o iocharset=gb2312,umask=0,codepage=936 /dev/cdrom /mnt/cdrom


Q:怎么样将自己的USB移动盘挂装到linux中

1)在字符模式或在Konsole输入如下命令:
fdisk -l /dev/sda 注:不要在sda后面加通配符“*”或“?”,否则运 行命令后返回的信息将不正常。如果你有多个usb硬盘的话,他们在linux下就分别是sda、sdb、sdc等。
我在我的电脑上运行上面的命令返回信息如下:
Disk /dev/sda: 2 heads, 63 sectors, 512 cylinders
Units = cylinders of 126 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 511 32161+ 4 FAT16 <32M
注:显示找到我的U盘,位置为/dev/sda1,可启动(Boot下面的那个*表示是活动分区),大小为32MB。如果运行上面的命令返回的信息不与上面的类似,那么你就应该要怀疑你的USB端口有没有在BIOS中打开或U盘与电脑的物理连接有没有连接好了。

2)在/mnt目录下建立一个挂装U盘的目录:
mkdir /mnt/usbdisk
3)然后再运行挂装命令:
mount -t vfat /dev/sda1 /mnt/usbdisk 注:将你的U盘挂装到/mnt/usbdisk目录下。
4)再运行ls命令查看一下:
ls /mnt/usbdisk 注:查看U盘里的信息。


Q:窗口一移动,KDE就死!

拖KDE的窗口死的问题基本确认为KDE对XIM支持的一个BUG。到“控制中心->观感->窗口行为->移动”下将两处显示内容均选中就可以解决该问题


Q:安装完Linux后,根目录下一大堆,都是些什么?

/bin:存放最常用命令;
/boot:启动Linux的核心文件;
/dev:设备文件;
/etc:存放各种配置文件;
/home:用户主目录;
/lib:系统最基本的动态链接共享库;
/mnt:一般是空的,用来临时挂载别的文件系统;
/proc:虚拟目录,是内存的映射;
/sbin:系统管理员命令存放目录;
/usr:最大的目录,存许应用程序和文件;
/usr/X11R6:X-Window目录;
/usr/src:Linux源代码;
/usr/include:系统头文件;
/usr/lib:存放常用动态链接共享库、静态档案库;
/usr/bin、/usr/sbin:这是对/bin、/sbin的一个补充;

Q:如何使用vi

你可以使用vi来编辑一个文件文件,它是在Unix世界里最普及的文字处理工具,几乎所有的UNIX机器上都有这个编辑器。
1) 启动vi:执行“vi 文件名”,一启动vi在命令状态,可以输入各种vi的命令,不能编辑;
2) 存盘:w、存盘退出:wq、不存盘退出:q!;
3) 进入编辑状态:插入:i、新增:a;
4) 退出编辑状态:按ESC键;
5) 进入编辑状态后,编辑起来很像DOS下的edit;
6) 在命令状态下还有一些常用的命令:
x 删除游标所在字元;
   dd 删除游标所在的列。
其实如果你英文还可以的话,什么能比man vi更详细呢?

Q:在Linux如何对文件进行操作

你可以使用ls –l命令列出目录的详细信息,就相当于DOS的DIR命令。ls命令的输出如下所示:
total 2
drwxr-xr-x 2 xu user 1024 Mar 13 0:34 sub1
-rw-r----- l xu user 678 Jun 15 1:45 hodo.txt
最左边一列是文件/目录权限,d是目录,r是可读,x是可执行,w是可写。自第二个字母开始每三个为一组,分别为用户|组|其他的属性;第2列是硬连接的数目;第3列是的属主信息,第4列是属主所在用户组,第5列是所占空间大小,接下去是日期、时间,最后一列是文件/目录名。以下是一些 常用文件操作命令:rm:删除文件 more:浏览文件 cp:拷贝文件


Q:如何删除linux

我们常说的删除linux其实有两个部分。一是指把linux系统删除;另外还要把其他操作系统的引导程序恢复。常常采用的方法是把linux的分区删除掉来把linux系统删除掉。MS-DOS的命令fdisk便可以做到这一点。选择Dele all Non-DOS partition(删除所有非MSDOS分区)便可以把ext2/3文件系统格式的分区删除掉。当然,强烈推荐新手使用PowerQuest PartitionMagic(硬盘分区魔术师)来完成这样的工作。然后fdisk /mbr可以恢复window$ 95/98/me系统的引导程序,对于window$ 2000,你需要使用事先制作的“灾难恢复盘”,用2000的启动盘(软盘光盘无所谓)启动,然后进行修复。


Q:如何在linux下使用滚轮鼠标

一般用mouseconfig可以配置你的鼠标,选中你鼠标的型号。如何无效,请尝试在/etc/X11/XF86Config-4中将和mouse有关的input device中“protocol”“PS/2”改为“IMPS/2”,设置完成后就可以使用你的滚轮了。


Q:如何递归删除一个目录下的所有子目录

rm -rf 命令可以不做任何提示而递归删除某目录下的所有目录文件(强烈要求root用户不要这样使用该命令!)。


Q:我无法软关机该怎么办

也行是你BIOS里APM设置的问题,可我们现在探讨的是系统的问题,使用halt -p命令如果可以顺利关机的话,请修改您的

/etc/rc.d/init.d/halt文件
message = $"Halting system ..."
command = "halt"
把这行的halt命令改成"halt -p",保存退出。


Q:删除具有特殊文件名的文件

假设Linux系统中有一个文件名叫“-ee”,如果我们想对它进行操作,例如要删除它,按照一般的删除方法在命令行中输入rm -ee命令,界面会提示我们是“无效选项”(invalid option),原来由于文件名的第一个字符为“-”,Linux把文件名当作选项了,我们可以使用“--”符号来解决这个问题,输入“rm -- -ee”命令便可顺利删除名为“-ee”的文件。如果是其他特殊字符的话可以在特殊字符前加一个“”符号,或者用双引号把整个文件名括起来。


Q:linux怎么给一个普通用户reboot权限

分四种情况讨论:

1)让任何人(包括根本不拥有系统帐号的人)都可以通过控制台reboot
在/etc/inittab文件中保留ca::ctrlaltdel:/sbin/shutdown -t3 -r now
这一行。这样全国人民都可以reboot你的机器,只要你把控制台交出来。

2)让所有系统用户都可以reboot
执行# > /etc/security/console.apps/reboot即可。这就在console.apps
目录下生成了一个空文件,文件名就是授权的application。以上路径是针对
Mandrake系统而言的,其他系统我不清楚。不过,真正高雅的Mandraker或许
根本就不会去靠“>”来生成这个文件——他们会使用msec来进行控制的。

3)让指定的用户才可以reboot
假设我们要让用户zhizunbao拥有reboot的权限,我们靠uid/gid来完成控制:
# groupadd reboot
# cd /usr/local
# mkdir reboot
# chown root:reboot reboot/
# chmod 750 reboot/
# cd reboot
# cp /sbin/reboot .
# chmod 4755 reboot
# usermod -G reboot zhizunbao
现在,zhizunbao就可以运行/usr/local/reboot/reboot来重启动机器。

4、在一台不设普通用户的机器上启用口令验证reboot
这实际上是靠添加一个关机帐号来实现的,该帐号的shell就是加了s位的
/sbin/halt,并且口令只有少数维护人员知道。我们这里采用的就是第4套方案。



Q:一次添加大量系统用户

使用内建的工具 newusers 及 chpasswd
先编辑帐号文件,每一列须按密码文件的格式书写.
(请善用文书编辑程序的拷贝复制功能来大量产生)
例: 一个帐号档名为 new_alist
stu001::600:600:stu:/home/stu001:/bin/bash
stu002::601:601:stu:/home/stu002:/bin/bash
stu003::602:602:stu:/home/stu003:/bin/bash
stu004::603:603:stu:/home/stu004:/bin/bash
stu005::604:604:stu:/home/stu005:/bin/bash
stu006::605:605:stu:/home/stu006:/bin/bash
建帐号:
newusers < new_alist
执行 pwunconv
编辑密码对照文件:
例: 建一个密码对照文件, 文件名为 new_plist
stu001:密码
stu002:密码
stu003:密码
stu004:密码
stu005:密码
stu006:密码
建密码:
chpasswd < new_plist
执行 pwconv


Q:linux启动服务解释大全

FreeWnn
amanda
amd这个好像是管理mixer设备的)?
amidxtape
*anacron(命令调度)
*apmd(高级电源管理)
arpwatch(看ARP的?)
*atd (功能cron类似)
*autofs(自动加载文件系统)
*bcm5820
bgpd
cwnn
bootparamd(启动参数管理?)
chargen
chargen-udp
comsat
*crond
daytime(夏时制管理的daemon?)
daytime-udp(udp-用户数据报协议,与之同级别的是TCP)
dbskkd-cdb
dhcpd(动态主机服务)
echo(服务器回显客户数据服务)
echo-udp(UDP版本的echo)
eklogin
finger(finger服务)
gated (网关服务)
*gpm(控制台下的鼠标)
gssftp (gss ftp服务器还有wu-ftp服务器)
httpd (超文本协议服务)
identd
imap(邮件服务中的imap协议)
imaps(邮件服务中的imap协议?)
innd(互联网新闻服务)
*ipchains(防火墙)
ipop2 (邮件服务的发件服务第2版)
ipop3(邮件服务的发件服务第3版)
*iptables(防火墙)
irda
*iscsi(利用高速专线组成SCSI磁盘阵列)
*isdn (提供对isdn设备的支持)
junkbuster
kwnn
kadmin
kdcrotate
keytable(键盘的配置)
klogin(远程登录)
kprop
krb5-telnet (krb5 是什么? 提供telnet服务?)
krb524
krb5kdc
kshell
*Kudzu
ldap(目录服务)
*linuxconf(疑问:linuxconf为什么要作为服务启动?)
linuxconf-web(打开linuxconf的web配置端口)
*lpd(提供对打印机的支持)
mars-nwe(模拟novell网服务器)
mcserv
mysqld(提供mysql数据库的支持)
named(域名服务器)
*netfs(网络文件系统)
*network(提供网络支持)
nfs(网络文件系统)
*nfslock(网络文件系统锁定?)
nscd
ntalk(talk-在线聊天服务)
ntpd
ospftd
spfd
*pcmica(提供对pc卡的支持)
pop3s(是不是pop3的服务器?)
*portmap(端口映射列表,但不清楚是干什么的)
postgresql(提供对postgre sql数据库的支持)
radvd
*random(产生并存储高精度数据运算的随机数,为什么平时要自动启动呢?)
rawdevices(好像是对读写设备的支持例如磁带机?)(Read After Write)
regongfig(支持远端配置?)
rexec(远端执行?)
rhnsd
ripd
ripngd
rlogin(支持远端登录)
routed(linux路由服务)
rsh(r shell?)
rstatd
rsync
rusersd
rwalld
rwhod
*sendmail(大名鼎鼎的邮件服务器)
smb(是不是samba呀?--是)
sgi_fam
snmpd(简单网络管理服务)
squid(代理服务器)
swat(smb的901web配置)
*systlog(系统日志服务)
talk
telnet(telnet服务)
time(回响系统时间)
time-udp(回响系统时间的UDP版本)
tux(好像 是基于内核的高速静态web)
ups(提供对ups的控制支持?)
vncserver
*wine(在linux下直接执行windows二进制代码!)
wu-ftpd(华盛顿大学的ftp服务器.很好用
xfs(x font server)
xinetd(新版本的互联网服务器)
ypbind
yppasswdd
ypserv
yhpxfrd
Zebra
keytable(键盘影射,适用于韩文,日文,德国等语言)
KZUZU----启动系统时检测PC硬件有无变动,比如换了显卡会提示你重新配制XF86
*gpm-----好像是在控制台模式下实现mouse 的CP和PASTE功能.
*crond---一个基于UNIX的定期命令调度器
swat----基于视窗的samba配置程序
xfs---Xwindows Font Server
bgpd(bgp路由协议daemon)
*gpm(字符终端状态下的mouse驱动)
*ipchains(2.0 kernel下的防火墙进程)
*iptables(防火墙进程)
kshell(k shell)
ldap(ldap服务进程)
ntalk(网络talk进程)
ntpd(网络时间服务进程)
ospftd(ospf 路由协议进程?)
spfd(spf路由协议进程?)
ripd(rip路由协议进程)
smb(是不是samba呀?)---是的
squid(代理服务进程)
talk(应该是本机talk进程吧)
Zebra(一个很有名的路由服务套件)
Kudzu 搜索硬件
cwnn 中文输入法

Q:安装CHINPUT

1,安装中文字体
    cd /tmp
    tar zxvf zh-fonts.tar.gz    (产生misc目录)
    cd misc                (到子目录下)
    cp *.Z /usr/X11R6/lib/X11/fonts/misc (拷贝字体)
    cat fonts.alias >> /usr/X11R6/lib/X11/fonts/misc/fonts.alias
                    (在别名文件中附加Chinput所使用的别名)
    cd /usr/X11R6/lib/X11/fonts/misc(到字体目录)
    mkfontdir            (产生或更新fonts.dir)
    xset fp    rehash            (更新X Server的字体, 现在就可以使用了)
    rm -fr /tmp/misc        (-

2,安装输入法字典
    cd /usr/lib                (至库文件目录)
    tar zxvf /path/of/unicon2-im.tar.gz    (解压文件至该目录,
     其中path为tar文件所在目录)
3,安装GNU pth
    tar zxvf pth-1.3.7.tar.gz        (解压pth库)
    cd pth-1.3.7                (进行安装)
    ./configure
    make
    make install
4,安装Chinput3.01
    安装前必须先安装输入法字典和GNU pth
    tar zxvf Chinput-3.0.1.tar.gz
    cd Chinput-3.0.1
    make
    make install

5,修改某些设置
(1)编译新 locale,以 root 身份执行:localedef -f GB2312 -i zh_CN zh_CN.gb2312
若无错误提示,则编译成功,在 /usr/lib/locale 下会增加 zh_CN.gb2312 目录。
(2)确定在 /usr/lib/gconv/gconv-modules 文件中包含了 alias GB2312-1980// EUC-CN//
一行,若没有,加入它。
(3)在cxterm下使用 export LC_ALL=zh_CN.gb2312 启用中文 locale 支持。执行命令
date,看看有无变化?你可看到日期为中文显示.
(4)为在下一次自动进入中文支持状态,在 HOME 目录下的 .bashrc 中加入:

export LANG=zh_CN.gb2312
export LC_ALL=zh_CN.gb2312

或根据你的需要来设置。
6,让LINUX支持中文TRUE TYPE字体

(1)进入 /etc/X11 目录,打开 XF86Config-4 文件,将 FontPath 改为你所需要的字体路径。
Section "Files"
#    FontPath "unix/:7100"
    FontPath "/usr/X11R6/lib/X11/fonts/misc:unscaled"
    FontPath "/usr/X11R6/lib/X11/fonts/75dpi:unscaled"
    FontPath "/usr/X11R6/lib/X11/fonts/100dpi:unscaled"
    FontPath "/usr/X11R6/lib/X11/fonts/misc"
    FontPath "/usr/X11R6/lib/X11/fonts/Type1"
    FontPath "/usr/X11R6/lib/X11/fonts/Speedo"
    FontPath "/usr/X11R6/lib/X11/fonts/75dpi"
    FontPath "/usr/X11R6/lib/X11/fonts/100dpi"
    FontPath "/usr/share/fonts/default/TrueType" (本行为我们加上的,注意路径为
     我们下面字体文件的所在路径)
    FontPath "/usr/share/fonts/default/Type1"
EndSection


加载 X-TrueType 字体解释器。

Section "Module"
    ...
    Load "xtt"
EndSection


(2)将你的 Windows 的中文 TrueType 字体复制到
/usr/share/fonts/default/TrueType 目录下,
cp /你的windows映射/windows/fonts/simsun.ttf /usr/share/fonts/default/TrueType

在WIN98和LINUX共存的机器中,此工作很容易,只需在LINUXCONF中看FILESYSTEM里加上WIN98
所在看文件系统便可.

(3)进入/usr/share/fonts/default/TrueType目录,执行 ttmkfdir > fonts.dir,生成
fonts.dir 文件,将 simsun 的字符集改为 gb2312.1980-0。生成 fonts.scale 文件,
cat fonts.dir > fonts.scale。
例:fonts.dir

4
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-ascii-0
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-iso8859-1
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-iso8859-15


若你使用 freetype 字体解释器,需将 /usr/X11R6/lib/X11/fonts/encodings/encodings.dir
复制到 /usr/share/fonts/default/TrueType。

将 /etc/gtk/gtkrc.zh_CN 中的字体定义改变为 TrueType 字体定义。(可将原来看定义
用#注释掉,再加上如下句子)

style "gtk-default-zh-cn" {
    "-misc-SimSun-medium-r-normal--12-0-0-0-p-0-*-*"
}
class "GtkWidget" style "gtk-default-zh-cn"

至此,中文 TrueType 字体安装完成!

7,优化你看设置
(1)修改 /usr/lib/ZWinPro/Chinput.ad 文件:
由于 XFree86 没有自带的 BIG5 码字体,若你不需要输入 BIG5 码字符,
则对 Chinput.ad 做以下调整:

...
chinput.gblocale    =    zh_CN.gb2312
chinput.big5locale    =    zh_CN.gb2312
...
chinput.gbfont     = -*-*-medium-r-normal--16-*-*-*-c-*-gb2312.1980-0
chinput.big5font = -*-*-medium-r-normal--16-*-*-*-c-*-gb2312.1980-0

注意:在 Chinput.ad 的字体定义中,不能出现空格,这是由于 Chinput 的限制。

(2)将 export XMODIFIERS=@im=Chinput 加入你的 HOME 目录下的 .bashrc 文件中。
并重新登录,使其生效。
(3)由于 Chinput 需要 libstdc++-libc6.1-2.so.3,而 RedHat 的 compat-libstdc++
兼容库中只包含 libstdc++-3-libc6.2-2-2.10.0.so,则需手动建立一个库链接:

# ln -s libstdc++-3-libc6.2-2-2.10.so libstdc++-libc6.1-2.so.3

8,其他用户如要用上TrueType和Chiput,也必须改其主目录下看.bashrc文件
export LANG=zh_CN.gb2312
export LC_ALL=zh_CN.gb2312
export XMODIFIERS=@im=Chinput

大功告成,本文所提到的部分文件可压于明俭看主页上下载http://go.163.com/~yumingjian.
本文在GNOME上的文本编辑程序GNOTEPAD+中用五笔字型完成.

Q:redhat 7.2 minichinput 可能出现的问题及解决方法
www.linuxeden.com/forum/showthread.php?threadid=9938
在第二张盘上miniChinput-0.0.2-1.i386.rpm
mandrake8.1在第一张盘上Chinput-3.0.1-5mdk.i586.rpm
(同样可能存在这样的问题)
一、安装时没有选择big字库
按ctrl+空格没反应,在命令行下键入chinput提示字体错误
1、
修改/usr/lib/Chinput/Chinput.ad文件里那行
将............*-*-big5-0
改成. ........*-*-gb2312.1980-0
2、
在第二张盘上找到kde-i18n-Chinese-Big5-2.2-8.noarch.rpm
rpm -ivh kde-i18n-Chinese-Big5-2.2-8.noarch.rpm 即可。

二、参数设置问题
1、检查/etc/bashrc和~/.bash_profile中看chinput是否真正运行了
2、env 看环境变量XMODIFIER是否是@im=chinput
无上述内容在~/.bash_profile中添加
export LC_ALL=zh_CN.GB2312
export LANG=zh_CN.GB2312
export XMODIFIERS=@im=Chinput


在RH72中修改/etc/X11/xinit/xinitrc.d/xinput 即可自动运行
然后重起X。
使用
ctrl+period(.)切换全角即可输入 “、”“。“等符号

3.系统中的LOCALE环境变量是zh_CN(RH7。2的locale_config不知为什么有的人安装后没有zh_CN.GB2312选项了?)而 /usr/lib/Chinput.ad

中默认设置的是 zh_CN.GB2312 的话当然打不开中文输入法了,/usr/lib/Chinput.ad 中的zh_CN.GB2313 改成 zh_CN 然后 reboot 就成了.

4、/root/.pyinput/usrphrase.tab is not valid pinyin phrase file.
找到一个好的usrphrase.tab文件替换原usrphrase.tab
5、
选项—观感—字体中字符集选择的类型与chinput设置的不同。导致输入的汉字无法显示,比如,字符集都选择gbk,输入汉字就出现上述问题

,chinput,默认是gb2312。


Q:G五笔最新版本1.0-1安装

致谢:多谢Yuking兄,有了G五笔,才让弟兄们感觉到什么自由。同时也感谢参与测试及使用的弟兄!

该版本的最新特性:

1]修正了拼音输入不能输入空格的问题

2]修正了区位输入输入条不能正常显示的问题

3]修正了几个小BUG

一。下载

1.tar包下载〔适用RedHat〕

www.linuxsir.org/gwubi/gWuBi-1.0.tar.gz

2]RPM包下载〔适用RedHat、Mandrake、SuSE、Turbo等多种发行版〕
第一站下载:
www.linuxsir.org/gwubi/gWuBi-1.0-1.i386.rpm
第二站下载:
www.linuxsir.com.cn/gwubi/gWuBi-1.0-1.i386.rpm


二。安装方法[注:选择其中之一即可]

1.两点说明[对于新手]

1]操作权限的问题

a]在控制台下操作命令时,要字母的大小写要区,切记,以下同!

b]要以roo身份来执行安装或卸载如在非root超级用户下,可在安装或卸载之前用如下命令,root用户则免引步聚,以下同!

#su
Password:[在这里输入root权限密码]


2]先把以前的的输入法卸掉。

如果是G五笔以前的版本,可用

#rpm -e gWuBi

如果是RedHat系统中自带的输入法Chinput,可用

#rpm -e miniChinput

如果是Mandrake可用下面的方法来卸载

#rpm -e Chinput



2.安装方法之一[rpm安装法]

0]适用于大多数的发行版,如RedHat、Mandrake、SuSE、TurBo等

1]下载rpm

www.linuxsir.org/gwubi/gWuBi-1.0-1.i386.rpm

2]在终端上运行[到你所下载到的G五笔的目录下运行]

#rpm -ivh gWuBi-1.0-1.i386.rpm --nodeps

3]退出KDE,然后再进入,G 五笔就能用了。

4]如果五笔不能自动加载运行,如在SuSE、Mandrake等发行版中,可用下面的方法。

对于普通用户[root以外的用户]

$ln -s /usr/bin/gWuBi /home/你想自动加载用户名/.kde/Autostart/gWuBi

举例:比如我是以beinan用户登录的,那我就应该做如下链接
$ ln -s /usr/bin/gWuBi /home/beinan/.kde/Autostart/gWuBi

如果是想在root用户登入的,想自动加载G五笔,可用下面的方法[通用]

# ln -s /usr/bin/gWuBi /root/.kde/Autostart/gWuBi

注:在SuSE下的root用户,可能会出现G五笔加载不能使用的现象,这与系统设置或中文化有关。普通用户无此问题。



3.安装方法之二[tar包安装法]

注:仅适用于RedHat

0]下载tar包

www.linuxsir.org/gwubi/gWuBi-1.0.tar.gz

1]首先确定您的系统安装了以下包:

make
XFree86用其开发包
gcc

2]进入用户root(建议使用命令“su -”) ,将gWuBi-1.0rc.tar.gz复制到某个目录下,比如是/temp。执行以下操作:
#cd /temp
#tar zxvf gWuBi-1.0.tar.gz
#cd gWuBi-1.0
#make
#make install


3]本软件会向系统复制以下文件:
/usr/bin/gWuBi //主程序
/usr/share/gWuBi/punc.mb //中文标点映射表,可以修改
/usr/share/gWuBi/wbx.mb //取自cjpvinput的GBK五笔码表,有大量词组
/usr/share/gWuBi/py.mb //拼音码表文件
/usr/X11R6/lib/X11/fonts/misc/studio-song14.pcf.gz //14点阵中文GB字库,取自BluePoint Linux 1.0

4]程序运行时会在当前用户目录生成目录.gWuBi,并可能在该目录下生成文件config、
profile和wbx.mb。

5]如果需要御载,可在源码目录下执行:
#make uninstall
或是直接删除该软件复制及生成的文件(注意,用户目录下的文件.gWuBi/wbx.mb中包含
用户自定义的词组)。

6]任何问题都可以给我发信(yuking_net@sohu.com),如果您能提出建议或错误报告,本人将不胜感激。


三。使用98版本五笔设置方法[用86版本的弟兄,这步省略]
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
使用五笔98版的弟兄,还得下载五笔的码表,然后用下面的方法做,使用86版本的弟兄们,就此停住!
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
将该码表替换/usr/share/gWuBi/wbx.mb即可。如果用户目录的.gWuBi下有wbx.mb,应该删除

五笔98码表下载:
www.linuxsir.org/gwubi/wb98.mb.gz

g五笔说明

>>版权
本程序以GPL的方式发布……

>>编译说明
编译本程序只需安装XFree86(4.X以上版本,3.3.6及以下版本未经测试)的开发库就行
了,具体安装方法请参看文件INSTALL。

>>功能说明
.五笔输入:提供标准的五笔86输入法,支持'z'键模糊输入, 可输入特殊符号(请查
看文件wb_fh.htm)
.造词功能:该功能允许的最长词组为10个汉字。由于众所周知的原因,新增加的词组
不可能直接添到原始的五笔码表文件中(即/usr/share/gWuBi/wbx.mb),
而是放在用户目录下的.gWuBi中(文件名为wbx.mb),因此,不同的用户可
能会有不同的五笔码表
.拼音输入:本程序提供两种拼音输入方法:
- 在五笔状态,先输入“z”,然后按全拼输入即可(需打开Z_PinYin选项
)。在进行五笔输入时,如遇到某些不会打的字,可以用该方法;
- 切换到拼音方法,直接按全拼输入。
本程序中带的拼音为GBK拼音,并有丰富的词组
.区位输入:由于该功能只是为了方便输入少量的特殊符号,因此只提供了简单的支
持。该方式只支持0~9输入。
.GBK支持:在系统装有支持GBK的字体情况下,输入条总能正确显示GBK汉字。
.快速中英文切换
.全角输入
.删除词组:该功能只能删除词组,不能删除单字。
.调整词序
.自动处理“.”和“。”
.自动隐藏输入条
.支持OverSpot光标跟随模式。

>>使用说明
.切换中文输入状态:按Ctrl+SPACE键;或是中文输入状态下按左CTRL键进行快速中英
文切换;
.切换输入法:鼠标单击输入条的“五笔/拼音/区位”处,程序将按 五笔->拼音->区
位 循环切换;或按左Ctrl+SHIFT切换;或按Alt+数字(Alt+1-->五笔,
2-->拼音,3-->区位);
.快速中英文切换:在中文输入状态下,按左Ctrl键可以进行中英文切换;
.中英文标点切换:鼠标单击输入条的“。”;
.全角/半角切换:鼠标单击输入条的“A”,或是按Shift+空格
.在输入状态,按“Enter”键会使输入条上的用户输入送到应用程序;
.在输入状态,按“Esc”键可取消所有输入;
.自造词:该功能可生成自定义的词组。在输入状态下按Ctrl+8键会弹出造词窗口,按
“+”/“-”处可增加/减少字数。此处能记住启动g五笔后输入的最后10个
汉字;
.删除词组:该功能只能删除词组,不能删除单字。在五笔输入状态下按Ctrl+7,按提
示信息操作即可。
.调整词序:该功能可调整与输入完全匹配的字/词的顺序。在五笔输入状态下按键
Ctrl+6,按提示操作即可。
.自动处理“.”和“。”:在中文输入状态下,如果输入了一个数字,则紧接着的
“.”将会输出“.”,而不是“。”
.重新读取文件profile:热键为Ctrl+5;注意此处并不能使修改的显示字体马上生效。

>>配置文件
本程序会在用户主目录下生成目录.gWuBi,并生成两个配置文件
.config
此文件保存了程序的状态,不必修改;
.profile
用户可在此文件中设置程序,包括以下项目:
FontName:程序的显示字体,格式为“中文字体,英文字体”,如
“-*-*-medium-r-normal--14-*-*-*-*-*-gb2312.1980-0*,fixed”;
FontLocale:程序显示字体的区域设置,当您的系统中有支持GBK或GB18030的字体
时,请将该项设为“zh_CN.GBK”或“zh_CN.GB18030”,否则请设为
“zh_CN.GB2312”;
AutoHide:输入条是否自动隐藏,值为1(自动隐藏)或0;
AutoHideInterval:输入条自动隐藏时间间隔,以秒计(设为0试试?);
HideMainLogo:是否隐藏程序主图标;
TrackCursor:输入条是否光标跟随,当应用程序支持OverSpot时可实现光标跟随;
Z_PinYin:在五笔方式下,是否使用“z”输入拼音,值为1(使用)或0;
Bell:出错时是否响铃提示,值为1(响铃)或0。
*格式为“项目 = 值”,注意“=”前后各有一个空格。

>>注意事项
XIM程序如果发生意外崩溃,可能会导致X和使用该XIM程序的应用软件崩溃,因此,您
一定要随时保存自己的有用数据。
Q:Linux服务器的一些基本应用

声明:本文由xchen兄〔cdcxx@etang.com〕所有,任何人转帖必须注明原创作者Xchen兄的大名及电子信箱,其次也要注明来源于[url]www.linuxsir.com[/url]。我原来说过“如果你不认同本站对您有什么帮助,您可以不注明来源”,可以不注明来源于本站,但现在看起来还有点问题,因为我在别的网站上看到来源于本论坛的原创作品,并没有把作者的大名说上。所以从今天开始,为了表达LinuxSir对原创作者的敬意,也为了防止类似情况的发生,我觉得还是有必要把我原来说过的话收回来。这样有利于通过来源,真正知道谁才是真正原创作者。
尊重他人就是尊重自己!!!!!


致谢:多谢xchen兄〔cdcxx@etang.com〕为弟兄们传道,授业,解惑!


*****************************************************************


Linux服务器的一些基本应用 作者:Xchen[cdcxx@etang.com〕 2002.8

*****************************************************************
玩linux也有有一段时间了,作为一个初学者,遇到的麻烦实在不少。所幸这是个网络时代,在众多好心大哥帮助下,我跛子般一关一关闯了过来,其间酸甜苦辣实在让人回味。向这世界上千千万万伟大的linux程序员致敬,是他们让我们能有这么优秀的操作系统可用。这篇东西主要是给刚接触linux的而又急切想配一个服务器的朋友看的,由于鄙人水平有限,错误有所难免,欢迎大家指证。
现就以本公司的网络架构为例,来说一下linux服务器的配置。在正式配置之前先说一下这个服务器所要实现的功能:

1.    数据共享
2.    打印共享
3.    模拟NT域
4.    ADSL共享
5.    内部DNS服务
6.    DHCP服务
7.    FTP服务
8.    WWW服务
9.    OPENSSH
10.    磁盘配额
11.    动态域名

网络架构如下:[如下图〕

http://www.linuxsir.org/photo/Xchen.gif

Network:10.10.0.0
Server IP:10.10.1.1
Server Subnet-mask:255.255.0.0
Client IP:10.10.1.10-10.10.1.100
Client Subnet-mask:255.255.0.0
Client getway:10.10.1.1
Client DNS:10.10.1.2,202.96.134.133

一、准备工作:

1.    RedHat linux 7.2光盘一套
2.    以太ADSL拔号器及您的ADSL接入帐号
3.    两张网卡,最好是即插即用的,免跳线的请察明irq和io。
4.    当然啦,除本机以外的其它机器

二、    RedHat linux 7.2安装:

1.初学者建议用图形界面,请用定制安装。

2系统分区如下(10G):
swap:500M
/:2G
/var:1G
/home:2G
/tools:500M
/data:4G
分区的合理化请参考相关文章。

3.若是即插用网卡,系统能检测到,请设置好ip地址,子网掩码等,请分别设为10.10.1.1和10.10.1.2,subnet-mask为255.255.0.0;若是免跳线网卡,那就等装好系统再设置吧。

4.软件包选择,要全选上也没关系,只要你有空间,若是空间有限有话,不妨定制一下软件包,下面是我的选择,仅供参考:
Printing Support
Network Support
Dialup Support
SMB:windows file server
WWW:web server
DNSNS name server
Software Development

5.好了,现在就next一路安装下去吧,最后不要忘了做一张启动盘。

三、linux网络环境配置

1]重启机器进入系统以后,去掉一些不必要的服务吧,留着它们启动速度慢,而且也不安全,下面是我机器刚安装好以后所保留的一些服务:
gpm/iptables/netfs/network/nfs/nfslock/portmap/syslog/xfs/xinetd
至其它的服务,等我们配置好再加载吧。

2]安装linuxconf,配置网络。
放入光盘1
mount /dev/cdrom /mnt/cdrom
cd /mnt/cdrom/RedHat/RPMS
rpm –ivh linuxconf-1.25r7-3.i386.rpm
请用setup/system services或是chkconfig –levlel 3 linuxconf on将linuxconf设置为系统自启动服务。
netconf选择Host name and IP network devices进行主机名及网络设置:
Host name + domain:cxserver
------第一张网卡----------
config mode:Manual
primary name + domain:abc
Ip address:10.10.1.2
Netmask:255.255.0.0
Net device:eth0
Kernel Module:ne
I/O port:0x300
Irq:3
------第二张网卡----------
config mode:Manual
primary name + domain:cxserver
Ip address:10.10.1.1
Netmask:255.255.0.0
Net device:eth0
Kernel Module:ne
I/O port:0x320
Irq:5
选择Accept退出,重新启动就会看到eth0和eth1两网卡启动成功,进入系统后可用ifconfig命令查看状态,用ping命令测试其连通性,比如ping一部windows机器。

四、DNS服务器配置

为了让局域网内部用户访问服务器方便一点,配置一个DNS服务器是十分有必要的,毕竟一个名字总比一串数字好记,下面我将服务器10.10.1.1配一个域名[url]www.cx.com[/url],[url]ftp.cx.com[/url],好,开始行动:
需要配置的文件:
/etc/named.conf
/etc/resolv.conf
/var/named/named.hosts
/var/named/named.local
/var/named/named.10.10

1]配置/etc/named.conf文件。此文件是dns引导文件,named进程在启动时要读取它。
vi /etc/named.conf
// generated by named-bootconf.pl
options {
directory "/var/named";
// query-source address * port 53;
};

zone "." IN {
type hint;
file "named.ca";
};
//----------------------手工添加如下两节------------------------------
zone "cx.com" IN {
type master;
file "named.hosts";
};

zone "10.10.in-addr.arpa" IN {
type master;
file "named.10.10";
};
//------------------------------------------------------------------------------
zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
};

// include "/etc/rndc.key";

以下的三个文件是DNS数据库文件,具体参数不作详解,请参考相关资料。

2]vi /var/named/named.local

$TTL 86400
@ IN SOA ns.cx.com. root.ns.cx.com. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS ns.cx.com.

1 IN PTR localhost.

3]vi /var/named/named.hosts
@ IN SOA ns.cx.com. root.ns.cx.com. (
2002042302; serial
28800; refresh
14400; retry
3600000; expire
86400; minimu
)
IN NS ns.cx.com.
cx IN A 10.10.1.1
cx1 IN A 10.10.1.223
www IN CNAME ns.cx.com.
ftp IN CNAME cx

4]vi /var/named/named.10.10
@ IN SOA ns.cx.com. root.ns.cx.com. (
2002042302; serial
28800; refresh
14400; retry
3600000; expire
86400; minimu
)
IN NS ns.cx.com.
1 IN PTR ns.cx.com.
2 IN PTR ns1.cx.com.

5]编辑/etc/resolv.conf文件
vi /etc/resolv.conf
domain cx.com
nameserver 10.10.1.1

好,让我们来启动服务吧:
/etc/rc.d/init.d/named start
chkconfig –level 3 named on #将dns服务设置成系统服务,开机自启动
测试:ping cx.cx.com
ping [url]www.cx.com[/url]
ping ftp.cx.com
或用nslookup,用法请参考nslookup –help。

五、    DHCP服务器配置

1]安装dhcp。
放入光盘1或是光盘2
mount /dev/cdrom /mnt/cdrom
cd /mnt/cdrom/RedHat/RPMS
rpm –ivh dhcp-2.0p15-8.i386.rpm
请用setup/system services或是chkconfig –levlel 3 linuxconf on将linuxconf设置为系统自启动服务。

2]配置dhcpd.conf文件。
Vi /etc/dhcpd.conf
subnet 10.10.0.0 netmask 255.255.0.0{
range dynamic-bootp 10.10.2.0 10.10.2.100; #IP地址分配范围
option routers 10.10.1.1; #默认网关
option subnet-mask 255.255.0.0; #默认子网掩码
option domain-name "cx.com"; #默认域名
option domain-name-servers 10.10.1.1,202.96.134.133;
}
#最后一行:DNS服务器设置,之所以把10.10.1.1放在前面是想让客户机在作域名解析的时候优先选择内部dns服务器,若域名不能解析,则用下一个dns服务器解析,202.96.134.133是深圳地区ADSL上网用户主DNS服务器.用下一个dns服务器解析,202.96.134.133是深圳地区ADSL上网用户主DNS服务器。

3]启动服务:/etc/rc.d/init.d/dhcpd start

4]使用:不论Win9x还是2K都使用自动获取IP地址,其它什么都不用设。

六、    ADSL及防火墙配置

1]下载软件:http://www.roaringpenguin.com/pppoe/rp-pppoe-3.5.tar.gz

2]安装软件:
tar zxvf rp-pppoe-3.5.tar.gz
cd rp-pppoe-3.5
./go #开始安装软件

3]软件安装好后,会运行设置程序adsl-setup

USER NAME
>>> Enter your PPPoE user name (XXX):________ #此处填写ADSL用户帐号

INTERFACE
(default eth0):_____ #以太接口,eth0或者eth1

>>> Enter the demand value (default no): #可以不填

DNS
>>> Enter the DNS information here: 202.96.134.133 #本地电信提供的主域名服务器
>>> Enter the secondary DNS server address here: #本地电信提供的辅助域名服务器

PASSWORD
>>> Please enter your PPPoE password:
>>> Please re-enter your PPPoE password: #密码

FIREWALLING
0 - NONE: This script will not set any firewall rules. You are responsible
for ensuring the security of your machine. You are STRONGLY
recommended to use some kind of firewall rules.
1 - STANDALONE: Appropriate for a basic stand-alone web-surfing workstation
2 - MASQUERADE: Appropriate for a machine acting as an Internet gateway
for a LAN
>>> Choose a type of firewall (0-2): 0
防火墙设置,选择2可使主机设成局域网的internet网关,将客户机网关设为本机IP,DNS设为电信提供的DNS服务器IP即可上网了,它是由ipchains之ip伪装实现的,而rh7.2中的ipchains已经没有了ip_masq_ftp模块,所以客户机无法使用FTP服务,因此我们在这里不用防火墙,选择0。在rh72中已经有了iptables,它是ipchains的替代品,功能也更为强大了,呆会儿我们写一个脚本,用它来实现ADSL共享。

>>> Accept these settings and adjust configuration files (y/n)? y #保存设置

4]接下来,我们编写一个脚本/etc/rc.d/firewall
vi /etc/rc.d/firewall
#!/bin/sh
echo "Start iptables rules..."
/etc/rc.d/init.d/iptables stop
echo 1 > /proc/sys/net/ipv4/ip_forward
modprobe ip_tables
modprobe ip_nat_ftp
modprobe ip_conntrack
modprobe ip_conntrack_ftp

iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

iptables -N mine
iptables -A mine -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A mine -m state --state NEW -i ! ppp0 -j ACCEPT
//允许外部访问我的www服务器
iptables -A mine -p tcp --dport 80 -i ppp0 -j ACCEPT
//允许外部使用openssh服务,openssh相当于telnet,但是它的数据传输是加密的,
//所以更安全,强烈推荐使用。
iptables -A mine -p tcp --dport 22 -i ppp0 -j ACCEPT
//允许外部访问我的ftp服务器
iptables -A mine -p tcp --dport ftp -i ppp0 -j ACCEPT
iptables -A mine -p tcp --dport ftp-data -i ppp0 -j ACCEPT
//禁止外部ping我
iptables -A mine -p icmp --icmp-type echo-request -i ppp0 -j DROP
//
iptables -A mine -i ppp0 -m limit -j LOG --log-prefix "Bad packet from ppp0:"
iptables -A mine -i ! ppp0 -m limit -j LOG --log-prefix "Bad packet not from ppp0:"
iptables -A mine -j DROP

iptables -A INPUT -j mine
iptables -A FORWARD -j mine

//iptables功能十分强大,这里不作详解,使用方法请参考相关资料。

5]将这个脚加入到/etc/rc.d/rc.local里去,让它开机时自动运行。
chmod 700 /etc/rc.d/firewall #将firewall设为可执行文件
echo firewall >> /etc/rc.d/rc.local
当然也可以用vi编辑/etc/rc.d/rc.local文件,在尾部加入一行firewall即可。

6]chkconfig –level 3 iptables on #开机时启动iptables

7]好,重启,用root登录系统
用adsl-start命令连接网络,几秒以后出现.Connected,OK,网络已经连通,好!我们来测试:前提:前面写的防火墙脚本已经运行,内部局域网已经连通,DHCP服务已经运行,将客户端tcp/ip设置为自动获取IP地址,其它的什么都不用填,重启登录以后,试试www/ftp/qq等服务吧,速度奇快,爽死你,哈哈。

8]存在的问题:
ping一下前面我们设置的域名服务器吧,ping [urlwww.cx.com[/url],你会发现ping不通,为什么呢?你应该还记得我们在安装设置adsl的时候,填入了本地电信dns服务器地址,哈,就是它惹的祸。我们在运行adsl-start的时候,会调用adsl-connect脚本,而它会重写/etc/resolv.conf文件:
原来的:cat /etc/resolv.conf
domain cx.com
nameserver 10.10.1.0
现在的:cat /etc/resolv.conf
nameserver 202.96.134.133
在这种情况下DNS服务器要是运行起来了,那才稀奇了,呵呵。
解决方法:
修改/etc/resolv.conf文件:
vi /etc/resolv.conf
domain cx.com
nameserver 10.10.1.1
nameserver 202.96.134.133
修改/usr/sbin/adsl-connect脚本文件:
vi /usr/sbin/adsl-connect
找到下面几行,并将其注释掉:
---------------------------------------------------------------------------
if test "$DNSTYPE" = "SERVER" ; then
# Sorry, dude...
rm -f /etc/resolv.conf
ln -s /etc/ppp/resolv.conf /etc/resolv.conf
elif test "$DNSTYPE" = "SPECIFY" ; then
# Sorry, dude...
rm -f /etc/resolv.conf
echo "nameserver $DNS1" > /etc/resolv.conf
if test -n "$DNS2" ; then
echo "nameserver $DNS2" >> /etc/resolv.conf
fi
fi
-----------------------------------------------------------------------------

9]重启,ADSL连接成功,DNS服务器正常,OK,继续前进吧!

七、文件(打印)服务器、模拟NT域的实现。

1]编辑/etc/samba/smb.conf文件
vi /etc/samba/smb.conf
[global]
workgroup = CX #把它当成NT登录域吧
server string = Samba Server
netbios name = cxserver #服务器的netbios名字
hosts allow = 10.10.1. 10.10.2. 127. #只允许10.10.1.0、10.10.2.0网段访问
printcap name = /etc/printcap
load printers = yes
printing = lprng
log file = /var/log/samba/%m.log
max log size = 0
security = user #安全等级为user级,访问资源需要身份验证
encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
domain master = yes
preferred master = yes
domain logons = yes #可以登录
dns proxy = no

[homes] #登录后可以看到用户home目录
comment = Home Directories
browseable = no
writable = yes
valid users = %S
create mode = 0664
directory mode = 0775

[printers] #若有打印机,在\\mineserver中可看到打印机,右键安装
comment = All Printers
path = /var/spool/samba
browseable = no
guest ok = no
writable = no
printable = yes

[public] #共享/mnt/data/public文件夹,共享名为public,admin组有写权限
comment = software
path = /mnt/data/public
public = yes
wirte list = @admin

2]用testparm测试/etc/samba/smb.conf文件中语法是否正确

3]/etc/rc.d/init.d/smb start启动服务,并用smbclient –L localhost测试服务器是否正常,若是提示输入密码,回车以后看到服务器信息,则服务器正常。

4]添加用户和组
useradd test
groupadd admin
gpasswd –a test admin

5]设置smb用户密码
smbpasswd –a test
输入密码并验证

6]用setup之Printer configuration配置一本地打印机,其过程请参考相关资料,这里不过多赘述。

7]测试:
请设置windows机器的网络属性,登录方式为网络用户登录,直接登录到NT域,NT域为cx,重启后用前面添加的test帐号登录,密码为smbpasswd –a test时设置的密码,进行系统后用控制面板之”用户及密码”可修改登录密码。
打开网上邻居,看是否能浏览到cxserver,亦可用\\cxserver访问。
最后设置:chkconfig –level 3 smb on #让smb开机自动运行

八、磁盘配额

前面我们在配置文件共享的时候,有一个共享资源为homes,如aa登录,在\\cxserver中有一个aa文件夹,aa用户对这个文件夹具读写权限,

如若我们不限制aa的话,他有可能会将硬盘塞满,任何一个管理员都不希望看到这种事情,下面我们用quota来实现对用户使用磁盘空间的限制。

1]首先明白一个概念,quota是针对分区的,所以我们在前面安装linux的时候单独分了一个/home区。

2]而所有的用户home目录都在/home下,现在开始在home目录下建立两个文件:
cd /home
touch quota.user
touch quota.group
chmod 600 quota.user //只允许root对这两个文件读写
chmod 600 quota.group

3]在/etc/rc.d/rc.local文件尾部加入quota启动脚本:
if [ -x /sbin/quotacheck ]
then
echo "Checking quotas. This may take some time..."
/sbin/quotacheck -avug
echo "Done"
fi
if [ -x /sbin/quotaon ]
then
echo "Turning on quota"
/sbin/quotaon -avug
echo "OK"
fi

4]修改/etc/fstab文件中定义/home分区的那一行:
原内容: /dev/hda3 /home ext3 defaults 1 2
新内容: /dev/hda3 /home ext3 defaults,usrquota,grpquota 1 2
看得出来只是在defaults后面加了usrquota,grpquota而已。
注意啊,是usrquota而不是userquota,若是错了,后果难以预料。

5]重启,在启动过程中会出错,主要是因为quota在/home目录下打不到aquota.user和aquota.group两个文件,没关系,咱们进了系统以再慢慢收拾它。

6]用root登录,然后我们生成aquota.user和aquota.group两个文件:
convertquota -u /home
convertquota –g /home
若以上步骤不出错的话,我们用ls /home –al就会看到aquota.user,aquota.group两
个文件了

7]再重启,注意观察,不会再出错了。进入系统后就可以对用户home目录进行限制了。比如现在有一个test用户,我们对他进行限制:
edquota –u test #此命令将进入一个vi编辑模式,其内容如下:
Filesystem blocks soft hard inodes soft hard
/dev/hda3 0 0 0 0 0 0
注解标识: A B C D E F
在讲解各参数之前先说说限制的两种方式:soft,hard
soft:又称软限制,当用户到达这个限制以后,系统会给予警告,但仍可写入。
hard:又称硬限制,到达这个限制,就完全禁止任何写入啦。
ABC为磁盘空间的限制设置,而DEF为总文件个数的限制
A:已使用空间,无需要设置
B:用户空间使用限制,为软限制,需要设置。
C:用户空间使用限制,为硬限制,需要设置。
D:已有文件总数,无需要设置。
E:文件总数限制,为软限制,需要设置。
F:文件总数限制,为硬限制,需要设置。

我们要限制test用户使用空间100M,最多不能超过120M,文件总数为2000个,
最多不能超过2500个,设置如下:
Filesystem blocks soft hard inodes soft hard
/dev/hda3 0 102400 122880 0 2000 2500
注:空间限制是以k为单位的。

8]测试:进入自己的home目录,然后拷贝文件,若是超过120M,就不允许再写入了。

9]其它命令的使用:
复制相同调协至其它用户:
edquota –p test –u username1 username2 username3 username4……
显示某个用户当前磁盘使用情况:
quota –v username
显示所有用户当前磁盘使用情况:
repquota –a
其它的一些命令请参考相关资料。

九、FTP服务器:

Rh72自带了wu_ftp,但是由于其毛病不少,所以我们不用它,我们用性能及安全性能均优于它的proftpd来代替它。

1]下载软件:ftp://ftp.proftpd.org/distrib/source/proftpd-1.2.5.tar.gz

2]安装:
tar zxvf proftpd-1.2.5.tar.gz
cd proftpd-1.2.5
./configure –prefix=/usr/local/proftpd //指定安装在/usr/local/proftpd目录下
make
make install
cp contrib/dist/rpm/proftpd.init.d /etc/rc.d/init.d/proftpd
chmod 700 /etc/rc.d/init.d/proftpd
chkconfig –level 3 proftpd on //设置为系统自启动服务
cp /usr/local/proftpd/sbin/proftpd /usr/sbin //将proftpd拷至/usr/sbin目录下,让系
统能自动搜索到,也免得再去加一个搜索路径

3]配置/usr/local/proftpd/etc/proftpd.conf文件:
vi /usr/local/proftpd.conf
ServerName "Xchen FTP server" //服务器登录提示
ServerType standalone
DefaultServer on
Port 21
Umask 022
MaxInstances 30
User nobody
Group nobody //原来为nogroup,请改成nobody
RequireValidShell off //手动添加此名,重要
//限定test组用户只能访问自己的home目录,而不能向上浏览
DefaultRoot ~ test
//限定test组用户只能访问自己的/home/ftp目录,不能向上浏览
DefaultRoot ~/ftp test
//限定music组用户只能访问/home/music目录,不能向上浏览
DefaultRoot /home/ftp music
//除music组中bb用户外都能访问/home/music目录,不能向上浏览
DefaultRoot /home/ftp music,!bb
//上面组需要自己建立:groupadd test,gpasswd –a username test
ServerIdent off //登录时不显示版本信息
<Directory /*>
AllowOverwrite on
</Directory>
<Anonymous /home/ftp> // /home/ftp为匿名用户登录目录
User ftp
Group ftp
UserAlias anonymous ftp
MaxClients 10
DisplayLogin welcome.msg
DisplayFirstChdir .message
<Limit WRITE>
DenyAll
</Limit>
</Anonymous>

4]启动服务:/etc/rc.d/init.d/proftpd start

5]测试,在客户端用FTP软件或命令行FTP程序进行访问ftp.cx.com。

6]proftpd技岂只此,还有很多高级应用,请参考相关资料,这里就不多赘述。

十、WWW服务

www服务用apache来实现,步骤极其简单,当然,这里说的是初级应用。因为我们要实现的是简单的www服务,所以只需更改下面几个参数即可:

1]Vi /etc/httpd/conf/httpd.conf
ServerName [url]www.cx.com[/url]
DocumentRoot ”/var/www”

2]拷贝网页文件到/var/www目录

3]启动服务:/etc/rc.d/init.d/httpd start
将httpd设置为系统自启动服务:chkconfig –level 3 httpd on

4]测试:在ie中用http://www.cx.com测试。

为什么把www服务讲得这么简单呢,主要是因为这种单一类型的网页文件服务用得较少,现在大多数都要用cgi,asp,php,还有数据库等,关于这方面配置还请参考相关资料,这里不作详解。

十一、动态域名服务
动态域名这个叫法不大妥当,应该叫动态ip for 域名才对。到现在为止,ftp和www服务我们都实现了,在局域网内可以用[url]www.cx.com[/url]来访问,但是我们已经用ADSL连通了internet,我们怎样让外部访问我们的ftp,www服务器呢,总不成每都通知对方服务器的IP吧,所以就要用到动态域名服务,大致原理是每次ADSL拔号时将自身IP更新到外部DNS服务器数据库中所对应的那个域名,所以我们每次访问这个域名就可以了,在这里讨论一下[url]www.3322.org[/url]提供的动态服务的实现。
1]登录[url]www.3322.org[/url]网站,注册一个用户,并申请一个动态域名xxxx.3322.org。
2]下载linux客户端软件:
http://www.3322.org/dyndnspage/ez-ipupdate-3.0.10-linux-i386.tgz
3]安装软件:
tar zxvf ez-ipupdate-3.0.10-linux-i386.tgz
mv ez-ipupdate-3.0.10-linux-i386 /usr/local/ezip
4]编辑/usr/local/ezip/qdns.conf文件:
vi /usr/local/qdns.conf
service-type=qdns
user=usernameassword //用户名及密码,用冒号隔开
host=xxxxx.3322.org //你申请的域名
interface=ppp0 //接口为ppp0
max-interval=2073600
cache-file=/tmp/ez-ipupdate.cache

5]将当前ip现新到我们申请的域名:
cd /usr/local/ezip
ez-ipupdate –c qdns.conf
系统会提示数据更新成功,好,我们来ping一下xxxx.3322.org,哈,果然是ppp0
的IP,再用http://xxx.3322.org试一下,一切OK,爽。

6]问题又来了,难道我们每次启动ADSL都要用手动更新一次吗,你可能会想到用crontab让它每隔几分钟更新一次,建议不错,不过为了ip更新而启用crond服务
似乎有点小题大做,我的方法,修改/usr/sbin/adsl-start脚本:
vi /usr/sbin/adsl-start
找到倒数25行”tty –s && $ECHO “ Connected ! “,在其下增加一行:
/usr/local/ezip/ez-ipupdate –c /usr/local/ezip/qdns.conf
存盘退出,OK,我们让ADSL拔号完成以后自动更新,爽吧!

7]测试一下:
adsl-start
. Connected!
ez-ipupdate Version 3.0.10
Copyright (C) 1999-2000 Angus Mackay.
connected to members.3322.org (202.108.36.139) on port 80.
request successful
OK,数据更新成功。

好,现在你随时随地都可以用xxxx.3322.org访问你的服务了,不错吧。


十二、openssh的设置
如果你在家里或者其它地方,怎样控制你的服务器,你可能会想到用telnet,本来是可以的,但是由于telnet用的是明码传输,容易给那些不怀好意者可乘之机,所以我们用openssh来代替telnet。

1]卸载原来的2.9x版,2.9x版有bug,不安全:
rpm –e openssh

2]最新软件包下载:

ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-3.4p1.tar.gz

3]安装软件:
tar zxvf openssh-3.4p1.tar.gz
cd openssh-3.41
./configure --prefix=/usr/local/ssh \
--sysconfdir=/etc/ssh \
--with-tcp-wrappers \
--with-ipv4-default \
--with-md5-passwords
make
make install
注:安装完成以后,会自动生成主机密钥,还会提示需要sshd用户帐号,可用useradd加一个sshd用户。
install /contrib/redhat/sshd.pam /etc/pam.d/sshd
cp contrib/redhat/sshd.init /etc/rc.d/init.d/sshd
chkconfig --level 3 sshd on ;配置成系统服务

4]配置openssh之/etc/ssh/ssh_config文件
vi /etc/ssh/ssh_config
Host *
ForwardAgent no
ForwardX11 no
RhostsAuthentication no
RhostsRSAAuthentication no
RSAAuthentication yes
PasswordAuthentication yes
BatchMode no
CheckHostIP yes
StrictHostKeyChecking ask
IdentityFile ~/.ssh/identity
Port 22
Cipher 3des
EscapeChar ~

5]配置openssh之/etc/ssh/sshd_config文件
vi /etc/ssh/sshd_config
Port 22
ListenAddress 0.0.0.0
ListenAddress ::
HostKey /etc/ssh/ssh_host_key
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
KeyRegenerationInterval 3600
ServerKeyBits 768
SyslogFacility AUTH
LogLevel INFO
LoginGraceTime 600
#PermitRootLogin yes #还是不要让root直接登录为妙!
StrictModes yes
RSAAuthentication yes
PubkeyAuthentication yes
RhostsAuthentication no
IgnoreRhosts yes
RhostsRSAAuthentication no
HostbasedAuthentication no
IgnoreUserKnownHosts no
PasswordAuthentication yes
PermitEmptyPasswords no
Subsystem sftp /usr/local/ssh/libexec/sftp-server

6]配置用户的加密密钥
useradd test
passwd test
su test
ssh-keygen -d
出现提示请回车并输入passwd,再次输入passwd。
注:这个密码是系统加密运算时用到的,登录时还用原来密码。

7]启动服务
/etc/rc.d/init.d/sshd start

8]在客户端用test帐号进行测试。


Q:关于smb服务的文章

samba的有关配置
安装篇(只讲rpm的安装):
首先用rpm -q samba
如果有提示安装了
就不用装了.如果没装就用
rpm -ivh samba*.rpm
把smb装上
samba-2.2.3a-6.i386.rpm
samba-client-2.2.3a-6.i386.rpm
samba-common-2.2.3a-6.i386.rpm
samba-swat-2.2.3a-6.i386.rpm
其中samba-swat-2.2.3a-6.i386.rpm可装可不装
设置篇:
要启动smb需要设置/etc/samba/smb.conf
设置一些简单的
(你可以把原有的smb.conf内容全删了.然后用vi新建一个smb.conf.写入以下内容)
[global]
workgroup=samba
security=share
# the first share dir
[test]
guest ok =yes
path=/home/test
writable=no
写完后用下面的命令重启smb(启动前可以用testparm来测试一下smb.conf文件也行)
testparm

然后再:
/etc/rc.d/init.d/smb start

这样就完成了第一个目录的共享.想要此目录能让别人写入.还需要键入一个命令
chmod 777 /home/test/

要让此smb服务开机就运行.键入:
chkconfig --level 3 smb on
或是用ntsysv进入把smb这项服务选中.让它开机直接运行.

进一步设置smb.conf

[global]
workgroup=samba
security=share
server string = samba server
log file =/var/log/samba/log.%m
max log size=1000
encrypt passwords=yes
smb passwd file = /etc/samba/smbpasswd
# 开始设置个人共享目录
[first]
guest ok =yes
path=/home/test/
writable=yes

[zq]
#注解此目录由谁访问
comment=dir for zq
#路径
path=/home/zq
#是否可写
writable=yes
只允许zq这个用户使用
valid users=zq

[zzm]
comment=dir for zzm
path=/home/zzm
writable=yes
valid users=zzm

然后要建立一个samba的密码文件

[root@linuxsmb samba]# cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd
[root@linuxsmb samba]# chmod 600 /etc/samba/smbpasswd (此步是为了不让别人取得这个密码)

重启smb
/etc/rc.d/init.d/smb start

再建立smb用户的密码
[root@linuxsmb samba]# smbpasswd zq
[root@linuxsmb samba]# smbpasswd zzm
(当然.前提需要系统里有这两个用户.)
好了.到此为止share级的SMB就做好了

再讲user安全级的smb

只需要把
security=share
改为security=user
然后重启smb
这时要访问samba就要密码了
(这步我没有试)

再讲server安全级的smb
security=server
然后再加一句
password server = servername #此句的意思是设定要验证密码的主机名是servername

smb passwd file=/etc/remotesmbpasswd #指定passwd server存放密码文件的位置
如果是NT主机验证密码就不用这行


再讲domain安全级的smb

要装smb服务器加入到win2000域中
执行:
smbpasswd -j samba -r dc_machine
这里的samba指要加入的主机名,dc指域控制器的主机名
然后修改smb.conf
workgroup=samba #要加入的工作组名
security=doman
password server=dc_machine

Q:怎么设置在LINUX下设置你的乙太猫或路由猫

如果你想通过你的乙太猫和路由猫上网〔什么是乙太猫和路由猫,简单的说就是ADSL的接口是直接接在网卡上面的,但路由猫能让每台电脑不通过主机就能上网,乙太猫必须设置一台主机,其它的计算机都通过主机上网〕。
现在我主要说乙太ADSL。因为路由猫通过设置应用〔DHCP〕就可以上网了,是最简单的。不过乙太猫还得设置一下:PLEASE SEE!
乙太ADSL猫的设置:
一、在KDE桌面下点〔系统〕-〔Internet Configuration Wizard〕-〔XDSL Connection〕
二、在[provider Name]中填上你想用的名字,不妨你填上电信给你的用户名;
三、在〔Login Name〕中填上:电信给你的用户名
四、在〔Password〕中填上:你的密码;
五、〔OK〕
六、点〔系统〕-〔Network Configuration〕,再点〔Device〕,然后我们就能看到我们刚才加入的ADSL链接了,然后选中它,点击〔Edit〕,我们再点〔Genernal〕,然后我们就把那两项选中就是了。一个是开机就激活连接,把它选上。
〔另外〕如果你有多台机器,你想把WINDOWS当主机,那么你就得建一个共享连接,并且你的网卡也得设置如下:
WINDOWS主机网卡的TCP/IP设置:
IP地址:192.168.0.1
子掩码:255.255.255.0
默认网关:〔不设置最好〕
DNS:也就是你的ISP提供商给你的,每个地区可能都不一样,我这儿的是202.101.103.54,这个也可以用,不过因为地区间相差太远,有时可能效果不太好!
LINUX机器的网卡设置:
IP地址:192.168.0.X〔X可以随便设置,但不要和你的WINDOWS主机相同。如果你有两台机器,那可以设置成为2,以此类推。〕
子掩码:255.255.255.0
默认网关:192.168.0.1
DNS:和WINDOWS的主机设置一样!
这样LINUX机器就通过WINDOWS主机上网了!
路由ADSL猫的设置:
点〔系统〕-〔Network Configuration〕,再点〔Device〕,我们就能看到〔eh0〕这个网卡设备了,然后选中它,点击〔Edit〕,我们再点〔Protoclos〕,然后我们就选中〔Automationcally obtain IP address settings with DHCP,就可以了!!!
**************************************
在用乙太口的ADSL的条件下,本人多次试着用LINUX当主机,WINDOWS当客户机,WINDOWS机器通过LINUX上网,但总不能实现。现在请高手指点!


Q:linux单机上网的设置

网卡的设置[eh0]
〔系统〕-〔Network Configuration〕,再点〔Device〕-》eh0,把eh0,设置成如下的。

IP地址:192.168.0.1
子掩码:255.255.255.0
默认网关:不要设置
DNS:设置成你本地的。如果找不到本地的,用下面的也行。不过速度有点慢

202.96.134.133
202.101.103.54
202.96.168.68

乙太ADSL猫的设置:
一、在KDE桌面下点〔系统〕-〔Internet Configuration Wizard〕-〔XDSL Connection〕
二、在[provider Name]中填上你想用的名字,不妨你填上电信给你的用户名;
三、在〔Login Name〕中填上:电信给你的用户名
四、在〔Password〕中填上:你的密码;
五、〔OK〕
六、点〔系统〕-〔Network Configuration〕,再点〔Device〕,然后我们就能看到我们刚才加入的ADSL链接了,然后选中它,点击〔Edit〕,我们再点〔Genernal〕,然后我们就把那两项选中就是了。一个是开机就激活连接,把它选上。

Q:如何在Linux上建立DNS服务器

作者:四通立方网友 OpenView
E-mail:ws_sh@hotmail.com
一、 假定
本文假定你已对域名服务器 DNS 有基本的了解,如果不是,请参看相关的文裆。

许多DNS的文章都是从DNS原理开始介绍,本人则从使用的角度出发,为Linux的管理员提供一些简单实用的应用实例。

下面假定我们需要建立一台企业网的DNS主服务器,应用条件如下:

(1) 一个C类网段地址 (本例中假定是192.22.33)

(2)企业域名为 my.com,并已注册 (主域名服务器地址 192.22.33.20,主机名为 linux.my.com)

(3)企业网通过路由器与Internet连接

假如你的应用环境与上述条件不同,也请往下看,本文会在上述例子的基础上针对以下情况作修正:

(1) 多个网段

(2) 封闭的内部网

(3) 只能访问局部公共网的情况(如169网、上海热线等)
二、named、/etc/named.boot 和 ndc
DNS 服务器的主体是域名服务器进程 named ,named 启动后向DNS客户机提供域名解析服务,把域名转换成IP地址。

named 启动时需要读取一个初始化文件,缺省情况下是 /etc/named.boot,所以/etc/named.boot 是 named 的基本配置文件。

虽然启动 named 可直接执行 named,在Linux上我们可以使用一个控制 named 的工具 ndc。ndc 可以用于启动、中止、重启动、刷新DNS数据、输出DNS数据等多种调试功能,我在这里推荐大家用这个工具来帮助 DNS 服务器的调试。

有关 ndc 的详细用法,请参看 Linux 有关文档。
三、建立 named 配置文件 /etc/named.boot
/etc/named.boot 是基本的配置文件,但不包含任何 DNS 数据,针对我们前面的假定,我们先建立以下 /etc/named.boot,其内容如下:

;
; boot file for name server
;
directory /var/named

primary my.com db.my
primary 0.0.127.IN-ADDR.ARPA db.127.0.0
primary 33.22.192.IN-ADDR.ARPA db.192.22.33
cache . db.cache

其中以“;”开头的行是注释行,其他各行含义是

(1)diretory /var/named

指定 named 从 /var/named 目录下读取 DNS 数据文件。这个目录用户可自行指定并创建,指定后所有的DNS 数据文件都存放在此目录下。

(2)primary my.com db.my

指定 named 作为 my.com 域的主域名服务器,db.my 文件中包含所有 *.my.com 形式的域名转换数据。

(3)primary 0.0.127.IN-ADDR.ARPA db.127.0.0

指定 named 作为127.0.0网段地址转换主服务器,db.127.0.0 文件中包含了 127.0.0.* 形式的地址到域名的转换数据。(127.0.0网段地址是局域网接口的内部 loopback 地址)

(4)primary 33.22.192.IN-ADDR.ARPA db.192.22.33

指定 named 作为 192.22.33 网段地址转换主服务器,db.192.22.33 文件中包含了所有 192.22.33.* 形式的地址到域名的转换数据。

(5) cache . db.cache

指定 named 从 db.cache 文件中获得 Internet 的顶层“根”服务器地址

要注意(3)(4)两行中的网段地址是倒写的,另外,各个文件名也是可以自行决定的。
四、建立各个 DNS 数据文件
下一步,要按 /etc/named.boot 中的定义,建立各个 DNS 数据文件。

(1)建立正向域名转换数据文件 db.my

根据 /etc/named.boot 的定义,我们在 /var/named 目录下建立 db.my,其中应该包括所有在 my.com 域内的主机节点。但在机器数量较多时,为了调试方便,建议一开始只把几台节点的数据放入文件,待 named 正常工作后再把其他节点的数据补充进去。下面是 db.my的例子:

@ IN SOA linux.my.com. root.linux.my.com. (
199511301 ; serial, todays date + todays serial #
28800 ; refresh, seconds
7200 ; retry, seconds
3600000 ; expire, seconds
86400 ) ; minimum, seconds
NS linux.my.com.
MX 10 support.my.com.

localhost A 127.0.0.1
linux A 192.22.33.20
support2 A 192.22.33.102
hp712 A 192.22.33.160
support A 192.22.33.100
mail MX 10 support.my.com.
MX 20 support2.my.com.
www CNAME hp712.my.com.
ftp CNAME hp712.my.com.
ns CNAME linux.my.com.

其中第一行是 SOA 记录,定义了域名数据的基本信息,依次是 DNS 服务器名、DNS 管理员邮件地址,括号内的第一个数字是文件版本号,每次本文件内容修改后,必须更改此号。其余数字与DNS服务器直接的数据交换有关,在这里我们不需要改动。

括号后面有一条 NS 记录和一条 MX 记录,定义了域名服务器本身的域名和 username@my.com 形式邮件地址所对应的邮件服务器名字。

在此以下是各种域名/地址转换数据,其中 A 记录是 DNS 域名到 IP 地址的记录,是必须有的,以 hp712.my.com 为例,在 A 记录中域 my.com 被省略,只写成 hp712,named 在处理时会根据 named.boot 中的定义自动加上 my.com,而其对应 IP 地址为 192.22.33.160。

另一种记录是 MX 记录。MX 是邮件地址转换记录,本例中定义了将 username@mail.my.com 的邮件地址转换成 username@support.my.com 或 username@support2.my.com,即实际上真正的邮件服务器是 support.my.com 和 support2.my.com,其中 support.my.com 的优先数为 10,support2.my.com 的优先数为 20,所以通常邮件首先被发往优先数小的主机 support.my.com。

还有一些是为方便提供的 CNAME 记录。CNAME 定义了一些主机的别名,比如我们将 hp712.my.com 作为公司的 www 和 ftp 服务器,所以我们提供了 www.my.com 和 ftp.my.com 作为 hp712.my.com 的别名,用户只需要根据习惯就可以访问公司的 www、ftp 服务器了,如果将来我们换用别的主机作 www 和 ftp 服务器,只需要修改 CNAME 记录就可,对用户没有影响。

注意:MX 和 CNAME 记录最后的带域名的主机名后必须带一个“.”

(2)建立反向 DNS 数据文件 db.127.0.0 和 db.192.22.33

反向 DNS 数据文件用来提供根据 IP 地址查询相应 DNS 主机名,每个网段分别有一个数据文件。

对于内部网段 127.0.0 通常只有一个地址,即 127.0.0.1 loopback 地址,db.127.0.0 内容如下:

@ IN SOA linux.my.com root.linux.my.com. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS linux.my.com.

1 IN PTR localhost.

而外部网段的数据文件 db.192.22.33 中包含所有主机 IP 地址到 DNS 主机名的转换数据。db.192.22.33 内容如下:

@ IN SOA linux.my.com. root.pc590.my.com. (
199609206 ; Serial
28800 ; Refresh
7200 ; Retry
604800 ; Expire
86400) ; Minimum TTL
NS linux.my.com.
;
; All hosts
;
20 PTR linux.my.com.
102 PTR support2.my.com.
100 PTR support.my.com.
160 PTR hp712.my.com.

反向 DNS 数据文件中的主要部分是 PTR 记录,PTR 记录中的 IP 地址都只有主机号,named 会根据 named.boot 的定义自动加上前面的网络号,注意后面的主机名要附加一个“.”

(3)获得 db.cache 文件

在 Linux 系统上通常在 /var/named 下已经提供了一个 named.ca,该文件文件中包含了 Internet 的顶层域名服务器,但这个文件通常会发生变化,所以建议最好从 Internic 下载最新的版本。该文件可通过匿名 ftp 从 ftp.rs.internic.net 下载,在 domain 目录下,文件名为 named.root。注意该文件下载后要拷贝到 named 的工作目录并重命名成 named.boot 中指定的文件名,本文中为 db.cache。
五、启动和测试 named
首先,根据先前推荐的方法,用 ndc 启动 named:

ndc start

然后,为了使用和测试 named,要把 Linux 设置在使用 DNS 状态。方法是在 /etc 目录下,创建 resolv.conf 文件。以我们的例子,/etc/resolv.conf 内容为:

search my.com
nameserver 192.22.33.20

然后,我们就可以测试 named 了。

Linux 和其他 Unix 系统均提供了 nslookup 工具,在命令行状态下输入:

nslookup

就进入交换式 nslookup 环境,如果 named 正常启动,nslookup 会显示当前 DNS 服务器的地址和域名,否则表示 named 没能正常启动。下面简单介绍一些基本的 DNS 诊断:

(1)检查正向 DNS 解析

在 nslookup 提示符下输入带域名的主机名,如 hp712.my.com,nslookup 应能显示该主机名对应的 IP 地址,如果只输入 hp712,nslookup 会根据 /etc/resolv.conf 的定义,自动添加 my.com 域名并回答对应的 IP 地址。

(2)检查反向 DNS 解析

在 nslookup 提示符下输入某个 IP 地址,如 192.22.33.20,nslookup 应能回答该 IP 地址所对应的主机名。

(3)检查 MX 邮件地址记录

在 nslookup 提示符下输入:

set q=mx

然后输入某个域名,以本文的例子,输入 my.com 或 mail.my.com,nslookup 应能够回答对应的邮件服务器地址,即 support.my.com 和 support2.my.com。

(4)检查 CNAME 别名记录

在 nslookup 提示符下输入:

set q=cname

然后输入某个别名,如 www.my.com,nslookup 应能回答对应的真实主机名,即 hp712.my.com。

如要退出 nslookup,可输入 exit。
六、修改 DNS 数据
如果要在网络中增加主机,例如要增加一台叫做 pc01.my.com 的 PC 机,管理员要在 db.my 中增加该主机对应的 A 记录,并且要在 db.192.22.33 中增加对应的 PTR 记录,然后用 ndc 更新 named 的数据:

ndc reload

要注意必须同时更改 A 记录和 PTR 记录,许多管理员往往只增加 A 记录而忽略了逆向查询用的 PTR 记录,结果会使许多应用程序不能正常运行。

特别注意,一旦修改了 DNS 数据文件的内容,请务必改动数据文件的版本号( Serial )
七、使网络中的其他系统(客户机)使用 DNS 服务器
一旦 DNS 服务器开始工作,就可以配置所有企业网内的主机使用 DNS 服务。

Unix 主机配置的方法,已经在前面说明过,即创建 /etc/resolv.conf 文件,内容见前面第五节。

Windows 95 的配置则是在网卡的 TCP/IP 配置中,选择使用 DNS (enable),然后在配置窗口中分别填入各项参数。以本文的例子,如果运行 Windows95 的主机被命名为 pc01.my.com,则在主机名(Host)一栏中填 pc01,在域名(Domain)一栏中填 my.com,然后把域名服务器 (DNS Server)加入搜索列表中。

Windows NT 节点的配置大致相同。
八、几种不同环境下的修正
(1)如果 IP 网段多于一个

假定现在在 my.com 域中增加一个 IP 网段 192.22.37,则 /etc/named.boot 的内容中就增加一个网段的定义,具体如下:

;
; boot file for name server
;
directory /var/named

primary my.com db.my
primary 0.0.127.IN-ADDR.ARPA db.127.0.0
primary 33.22.192.IN-ADDR.ARPA db.192.22.33
primary 37.22.192.IN-ADDR.ARPA db.192.22.37
cache . db.cache

而反向 DNS 数据文件则增加一个定义 192.22.37 网段的文件 db.192.22.37,其中包括了所有处于 192.22.37 网段中的节点,其格式与 db.192.22.33 类似。

(2)如果企业网是封闭的

如果企业网络不与外界 Internet 直接互连,DNS 服务器就不必关心本企业域以外的域名,所以配置 named 的时候可以不理会 db.cache,我们可以将 /etc/named.boot 中的 cache 行去除。

(3)如果你联入的公共网不能访问 Internet

如果你的内部网接入的公共网只能访问有限的范围,如免费的169网、上海热线等,那么你的 DNS 服务器就不能通过 Internet 的顶层服务器(root server)进行地址解析,所以你必须用你直接能访问到的 DNS 服务器来替代。具体办法是用 forwarders 选项来指定上级 DNS 服务器,以本文为例,named.boot 的内容为:

;
; boot file for name server
;
directory /var/named

primary my.com db.my
primary 0.0.127.IN-ADDR.ARPA db.127.0.0
primary 33.22.192.IN-ADDR.ARPA db.192.22.33
primary 37.22.192.IN-ADDR.ARPA db.192.22.37
forwarders ...
options forward-only

其中、等是你能直接访问到的 DNS 服务器的地址,通常就是你的 ISP (169、上海热线等)的 DNS 服务器的地址,至少要有一个。

通过 forwarders 和 options forward-only 参数的指定,你的企业 DNS 服务器就工作在 forward-only 模式下,所有本地不能解决的名字都被传送到 ISP 的 DNS 服务器上去解析。
九、建立后备 DNS 服务器 (Secondary DNS Server)
通常有一台 DNS 主服务器,网络即可正常工作,但根据 Internic 对域名的管理规范,一个独立的域名必须至少有两台 DNS 服务器,即一台 DNS 主服务器 ( Primary Server )和一台后备 DNS 服务器 ( Secondary Server ),这主要是为 DNS 服务的可靠性考虑,能使 Internet 的性能更为可靠。

现在仍以前面的例子,现在要加入一台运行 Linux 的机器 nspc.my.com,IP 地址为 192.22.33.60。

(1)主服务器上的修改

首先确认 DNS 主服务器工作正常,然后,在主服务器上的正向 DNS 数据文件 db.my 中,加入 nspc.my.com 的有关记录,并增加一个NS记录,使主服务器上的 db.my 成为下列内容:

@ IN SOA linux.my.com. root.linux.my.com. (
199511301 ; serial, todays date + todays serial #
28800 ; refresh, seconds
7200 ; retry, seconds
3600000 ; expire, seconds
86400 ) ; minimum, seconds
NS linux.my.com.
NS nspc.my.com. ; 必须增加的记录
MX 10 support.my.com.

localhost A 127.0.0.1
linux A 192.22.33.20
support2 A 192.22.33.102
hp712 A 192.22.33.160
support A 192.22.33.100
nspc A 192.22.33.60 ; 增加的记录
mail MX 10 support.my.com.
MX 20 support2.my.com.
www CNAME hp712.my.com.
ftp CNAME hp712.my.com.
ns2 CNAME nspc.my.com. ; 增加的记录
ns CNAME linux.my.com.

然后对主服务器上的各个反向 DNS 数据文件做类似的修改,增加有关后备服务器的 NS 记录,然后重新起动 named。

可见,其实在主 DNS 服务器上的改动主要是增加了一条 NS 记录,其余的改动和增加一台普通节点一样,如果是用现有的节点做后备 DNS 服务器,则增加 NS 记录是唯一必须的步骤。

(2)后备 DNS 服务器(secondary server)的配置

需要在后备 DNS 服务器上创建的配置文件只有 named.boot 和 db.cache,格式与主服务器相似,named.boot 内容为:

;
; boot file for secondary name server
;
directory /var/named

secondary my.com 192.22.33.20 db.my
secondary 0.0.127.IN-ADDR.ARPA 192.22.33.20 db.127.0.0
secondary 33.22.192.IN-ADDR.ARPA 192.22.33.20 db.192.22.33
cache . db.cache

其中的三行 secondary 定义,使得 named 从 192.22.33.20,即主服务器上获得各种 DNS 数据,并存在本地的各个数据文件中。本地的数据文件由 named 从主 DNS 服务器的 named 下载后生成,通常与主服务器上的数据文件完全一样,万一后备服务器与主服务器失去连接而不能下载 DNS 数据,后备服务器可利用本地的数据文件工作。

而后备 DNS 服务器的 db.cache 通常由系统管理员从主服务器上拷贝过来即可。

通常,后备 DNS 服务器可以建立在企业网内,也可利用外部的 DNS 服务器充当,如让 ISP 的服务器作为企业的后备 DNS 服务器,这样可以提高 DNS 服务的可靠性。注意,同一台 DNS 服务器可以同时成为多个 DNS 域的服务器,而且可以既作某些域的主服务器,同时又是另一些域的后备服务器。

(3)DNS 客户机端的改动

对于内部网上的 Unix 主机,应该在 /etc/resolv.conf 中增加一行 nameserver 说明,使得系统能够搜索后备 DNS 服务器,以本文的例子,/etc/resolv.conf 的内容为:

search my.com
nameserver 192.22.33.20
nameserver 192.22.33.60

注意,我们可以根据需要决定 /etc/resolv.conf 中所列出的 DNS 服务器的顺序,通常选择访问速度快的服务器在前。

对于 Windows95 和 NT,则是在 DNS 服务器的列表中把后备 DNS 服务器添加进去即可,添加的顺序同样可以决定访问各 DNS 服务器的优先级。

欢迎各位网友对本文提出修正和改进意见,本人 E-mail:ws_sh@hotmail.com

嗯,nsswitch.conf的配置以及把DNS配置成cache only的方式没有讲,不过那比较简单,很多书上都有.


Q:用Linux建立局域网服务器

Linux系统作为网络服务器的优点数不胜数,但它的缺点也不少,特别是繁琐的配置让不少人望而却步。本文以TurboLinux 4.0为例,介绍配置局域网Linux服务器时的一些经验,希望对读者有一些帮助,也希望能起到抛砖引玉的作用。

一、TCP/IP网络配置

  TurboLinux对网卡的支持还是比较好的,大部分网卡在安装时就可以自动检测出来。如果你的运气不好,Linux找不到你的网卡,可以进入X Windows,以root身分运行linuxconf命令。这是一个图形界面的配置工具,大部分Linux设置可以通过点点鼠标简单完成。首先在其中找到Basic Host Setting一项,在这一项中设置网卡的类型、I/O port和IRQ,一般没有列出的ISA卡可以用ne,PCI可以用ne或ne2k-pci,接着设置IP地址和子网掩码,只要和局域网中的其他机器设在同一个子网中就可以了。如果要连接外部网络还要设置网关。关于这方面的问题还可以参看TurboLinux的帮助文件。

二、Samba服务器的配置

  Samba是一个文件和打印服务器,它最重要的特点就是可以和Win98/NT共享文件,还可以为其提供打印服务。简而言之,就是可以在Win98的网上邻居中看到Linux服务器,并能存取其中的文件。
  关于Samba的配置都存放在/etc/smb.conf中,其中多数可用它的默认设置,我就不再多说了,但有几处是非改不可的:
  smb.conf文件中采用类似于Windows ini 文件的方式,以[]为一段的开始,每一行为一个等号表达式,注释以打头。其中每一个[]都表示一个共享目录(global和printer)除外[global]中是一些通用的配置,其中对Win98机器比较重要的一个就是guestaccount,表示不用密码的用户名,如果在Win98中以这个用户名登录,访问public=yes的目录就不用密码,但不能访问public=no的目录。
[global]
guest account = guest
  Workgroup要改为Win98网络配置中所设的名字,不然网上邻居中就找不到这台机器
workgroup = Samba Server
[homes]
  因为Win98不区分大小写,而Linux却区分大小写,所以要加入以下两行
preserve case = yes
short preserve case = yes
[myshare]
  如果要设置一个目录只对几个用户有读写权限,只要加入以下一行每两个用户名中间以空格分开
valid users = user1 user2 user3
  设置完smb.conf文件后,运行turboservice,把samba服务设置为开机自动启动。
  以后Linux开机后,就可以在Win98的网上邻居中找到它了。
  以上只是用Win98共享Linux资源,那么如何用Linux共享Win98中的文件呢?其实更简单,只要用命令smbmount。例如:要共享另一台主机ntserver中sharefile目录,用户名是student,密码是1234,只要打入命令:
  smbmount ′\\ntserver\sharefile′ -U student -P 1234 /mnt/sharefile
  以后/mnt/sharefile就成了ntserver中的sharefile目录,如果没有用户名和密码-P 和 -U 参数就可以省掉了。

三、Apache服务器的配置

  你是不是也想在局域网上发布主页呢?那就选择Apache吧。
  用Apache安装Http Server是最简单不过的了,只要用turboservice命令把Web Server服务启动即可。它的默认主页是/home/httpd/index.html,把它替换成自已的主页,然后在浏览器中输入Linux主机的IP地址看看有什么反应。
  只用IP地址实在太单调了,想不想试试用www.ld60.com这样Cool的域名,那就看看下面的介绍吧。假设Linux主机的局域网中的IP地址是192.1.1.1,打开/etc/hosts文件,找到192.1.1.1对应的那一行,把主机的别名改为www.ld60.com。然后把局域网中另一台Win98机器设置为通过局域网连接,并在局域网代理服务器设置一栏中填入Linux主机的IP地址。最后打开IE,输入www.ld60.com,享受一下你的劳动成果吧!
posted on 2008-06-15 20:25 聂文龙 阅读(2196) 评论(0)  编辑 收藏 引用 所属分类: Linux

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理