pause 发表于 2004-6-18 22:00:00

linux 学习基础

 <p></p></P>
<B>1</B><B>、什么是</B><B>Linux</B><B>?</B>

  准确的说,是指Linux的kernel(系统的核心程序),其内核版权属于Linus Torvalds,在GPL(GNU General Public License)版权协议下发行, 任何人都可以自由的复制(copy), 修改(change), 套装分发(distribute),销售,但是不可以在分发时加入任何限制, 而且所有原码必须是公开的,所以任何人都可以无偿取得所有执行文件和原代码。

  对于Linux用户和系统管理员来说,Linux是指包含Linux kernel、utilities (系统工具程序)以及application (应用软件)的一个完整的操作系统。Linux的应用软件是由自由软件基金会(FSF)开发的,全世界许多热心的程序员为Linux开发或移植了很多应用程序,包括X-Windows、Emacs、TCP/IP网络(包括SLIP/PPP/ISDN)等等,现在Linux(包括内核和大量的应用程序)光是执行程序就已经达到200M,完全安装后的规模将更大(大约500M左右)。

  从本质上讲,Linux是Unix的”克隆”或Unix风格的操作系统,在原代码级上兼容绝大部分的Unix标准(如IEEE POSIX,System V,BSD),它遵从 POSIX规范,例如对于System V来说,把其上程序源代码拿到 Linux下重新编译后就可以运行,而对于BSD Unix来说,它的可执行文件可以直接在Linux环境下运行。

  Linux的标志是可爱的企鹅,至于为什么选用企鹅,Linus是这样说的:别的都被他人用了,企鹅,不是也非常可爱吗?!由Linux作者发布的仅仅是一个内核而己,有一些公司或组织把内核、原代码及相关的应用程序组织在一起发行, 于是就产生了不同的Linux发行(distributor)版本, 比较著名的发行版本有RedHat、SlackWare 、S.u.S.e、Debian 等。

  更进一步地了解Linux, 请浏览下列站点:

  http://www.linux.org

  http://www.linuxresources.com/what.html

  <B>2</B><B>、</B><B>Linux</B><B>的发展历史?</B>

  Linux的历史可以追溯到1990年,Linus Torvalds还是芬兰赫尔辛基大学的一名学生,最初用汇编语言写了一个在80386保护模式下处理多任务切换的程序,后来从Minix(用于操作系统教学、很小的Unix)中得到灵感,发誓要写一个比Minix更好的Minix,于是开始写了一些硬件的设备驱动程序、一个小的文件系统......,这样0.0.1版本的Linux就出来了,但是它必须在有Minix的机器上编译以后才能玩,这时候的Linus已经完全“走火入魔”了,决定踢开Minix“闹革命”,于是在1991年10月5号发布了Linux 0.0.2版本,这个版本已经可以运行bash(一种用户与操作系统内核通讯的软件)和gcc(GNU C编译器)了。

  Linus从一开始,就决定自由扩散Linux、包括源代码,他把源代码发布在网上,随即就引起爱好者的注意,他们通过互连网也加入了Linux的内核开发工作,一大批高水平程序员的加入,使得Linux达到迅猛发展,到1993年底,Linux 1.0终于诞生。Linux 1.0已经是一个功能完备的操作系统了,其内核写得紧凑高效,可以充分发挥硬件的性能,在4M内存的80386机器上也表现得非常好。

  很多人对Linux的认识有个误区,即总把Linux与低档硬件平台联系到一起,其实从2.1.xx系列内核开始,Linux就开始走高端的路子了,大约在1.3版本之后,开始向其他硬件平台上移植,包括号称最快的CPU---Digital Alpha(目前主频是最高的),目前Linux能将硬件的性能充分发挥出来,可以囊括低端到高端的所有应用。

  Linux加入GNU并遵循公共版权许可证(GPL),由于不排斥商家对自由软件进一步开发,不排斥在Linux上开发商业软件,故而使Linux又开始了一次飞跃,出现了很多的Linux发行版,如Slackware、Redhat、Suse、TurboLinux、OpenLinux等十多种,而且还在增加,还有一些公司在Linux上开发商业软件或把其他Unix平台的软件移植到Linux上来,如今很多IT界的大腕如IBM、Intel、Oracle、Infomix、Sysbase、Corel、Netscape、CA、Novell等都宣布支持Linux! 商家的加盟弥补了纯自由软件的不足和发展障碍,Linux得以迅速普及。<p></p></P>
<B>3</B><B>、为什么要使用</B><B>Linux</B><B>?</B>

  使用Linux可让您在相对低价的Intel X86硬件平台上实现高档系统才具有的性能, 许多用户使用benchmarks在运行Linux的X86机器上测试,发现可以和Sun和Digital公司的中型工作站性能媲美。事实上不光是许多爱好者和程序员在使用Linux,很多商业用户比如Internet服务供应商(ISP)也使用Linux做为服务器来代替昂贵的工作站,这些服务器系统稳定性的最高记录是连续运行600天没有碰到过一次系统崩溃!

★    如果您受不了Windows的经常崩溃、想换个系统平台,就选用Linux吧,您会惊奇地发现Linux相当稳定、性能也非常好。

★    如果您想学习操作系统、比如Unix,可从Linux开始,因为狂热喜欢Linux的人在学习UNIX方面的进步是神速的,Linux是开放原代码的OS、遵循公共版权许可证(GPL),而且还很有前途,完全免费,不用您一次又一次地破费去买软件许可证了。

★    如果您是IT企业,Linux这么热,潜在的商机不可估量,尽早研究它,以便为将来发展抢占制高点。

★    Linux非常适合开发Internet/Intranet,利用它的开放原代码,您可以开发WEB服务器、路由器、嵌入式系统、网络计算机、个人数字助理等,Oracle,Infomix,Sysbase,IBM都支持Linux了,用它来做数据库平台也挺不错,采用Linux可以极大地降低开发总成本。

★    开放原代码的Linux可使您拥有对系统的完全控制权,原代码开放,可使您能按照自己的需要添加或删除某些功能,随意打造自己的操作系统,发展自主版权的操作系统,Linux是条路。

  <B>4</B><B>、</B><B>Linux</B><B>能做什么?</B>

  Linux如今在很多方面都超过商业性的Unix系统,它支持多用户、多进程、多线程、实时性较好、功能强大而稳定,可以运行在Intel处理器、DEC的Alphas、Motorola的M68k处理器、Sun Sparc、PowerPC、MIPS等平台上,能运行的硬件平台目前是最多的。象现代Unix操作系统那样, 它也具有虚拟内存、共享库、命令装载、执行代码之间共享的拷贝-执行-写盘页操作、恰当的内存管理和TCP/IP网络等。

  Linux的网络功能十分强大,比如你可以通过FTP、NFS等来安装Linux,用它来做WEB服务器、网关等等,随着Linux的发展,其衍生出来的应用恐怕连Linus本人也很难想到。Linux最大的单项应用是Internet和Intranet服务器,涵盖了从防火墙到Web服务器的具体应用。据分析家估计,Linux已成为网上的第二大通用操作系统。Linux的其它应用“从打印服务器,到FTP服务器、到数据收集等应有尽有”,目前在网上应用最多的Apache Web服务器也已成为各种标准Linux扩散版的一个部分。

  即使作为一种台式机操作系统,与许多用户非常熟悉的Unix相比,它的性能也显得更为优秀。一台Linux服务器支持100到300个用户毫无问题,一台Linux打印服务器支持200到300台网络打印机更是易如反掌。而且它不大在意CPU的速度,它可以把每种处理器的性能发挥到极限,对于Linux来讲,影响系统性能提高的限制因素主要是其总线和磁盘I/O的性能。

  另外Linux和一般软件有很大的不同,因为它属于自由软件,所以你可以和朋友分享LINUX,可以任意地复制、使用它。

  <B>5</B><B>、什么是</B><B>Linux</B><B>发布?有哪些</B><B>Linux</B><B>发布?</B>

  象RedHat那些的销售商一般将Linux kernel和外围程序整合起来,然后发布自己的基于Linux内核的整套Linux系统:通常包括有一个C语言及C++编译器,Perl脚本解释程序,外壳Shell,图形用户界面X窗口系统,还有X Server以及众多的应用程序等,这种整套的Linux系统习惯叫做Linux发布(distribution)。

  目前使用最广泛的Linux发布是RedHat公司的RedHat Linux,现在Netscape、Intel等一些大公司都支持它,前景看好,按照一般的看法Redhat也是最容易上手的Linux发布。以前使用广泛的Slackware,现在也还有许多人在用,SLackware和RedHat相比要稍微复杂些,这主要是指在软件安装方面:由于RedHat使用rpm打包系统,安装新软件简单到只要一行命令即可,而Slackware往往要从源代码重新编译,稍微费事一些。SuSE也用基于rpm打包系统,SuSE的特别之处在于它对X窗口系统的支持非常好,Debian完全是由志愿者开发的,基于自己的Deb格式打包系统,但是它也可以安装rpm软件包。

  <B>6</B><B>、</B><B>Linux</B><B>的</B><B>Kernel </B><B>版本与</B><B> Distribution </B><B>版本有何区别?</B>

  Linux版本是指其内核版本,Linus等人在不断推出新的kernel,使用比较广泛的有1.2.8、1.2.13、2.0、2.2.x等版本,相应的utilities和应用软件则多是GNU的或自由软件。

  初学者常会把 Kernel 与 Distribution混为一谈。对Kernel版本来说,目前版本的序号大约是2.4.0.(以偶数为第二个序号表明这是个可以使用的稳定版本,如2.2.30,而奇数为第二个的,一般有一些新的东西加入,不一定很稳定如2.1.37);相对于 Kernel版本,Distribution的版本随种类不同而不同,其中Slackware Linux是从1.0.4一直到最近的4.0,RedHat最新版本是7.1,Debian是2.2.x。

  Linux Kernel的发展与 Distribution 版本的发展是各自独立的,例如Slackware Linux 通常内附一个Kernel Source code,以及针对很多不同硬件设备的Kernel Image,一般用户最需要掌握的就是更新系统内核技术:也即首先取得最新版(同时必须确定是稳定版本)的Kernel Source,然后取代随Slackware Linux附带的旧版Source code,重新编译成Kernel Binary,进行新旧更新,这样就可以在不重新安装系统的前提下更新系统核心。<p></p></P>
<B>7</B><B>、</B><B>Intel</B><B>平台上有哪些</B><B>Linux</B><B>发布</B><B>(distribution)</B><B>?</B>

  主要有Red Hat、Slackware、Debian、SuSE、OpenLinux、TurboLinux。

  (1)Red Hat   http://www.redhat.com

  以容易安装著称,初学者安装这个版本,遇到挫折的机会几乎是零,如果您对安装Win9x已驾轻就熟的话,Red Hat Linux的安装一定难不倒您。

  Red Hat另一个优点是它的RPM(Red Hat Package Manager);以往在安装软件时,最让使用者伤脑筋的是:软件在解开压缩前先要新建一个目录,然后将软件搬进去解压,解压后,有些部份可能需要搬到另一个目录中去,当要搬移的项目多时,做这些工作就是件苦差事了。而RPM「包裹管理者」就针对这一点,能将所有要安装的路径全部安排好,当使用者解开有「.rpm」扩展名的文件时,会将当初打包该文件时设定好的路径档案先检查一次,然后依照档案里的设定,将各个文件解开,送到它们应该去的地方;不只如此,它还会制作安装记录,当使用者要移除其中任一个rpm文件时,系统会根据安装记录将该文件反安装,这种做法绝对准确,不会像Windows那样会移除不该拿掉的东西。

  Red Hat Linux可以说是相当成功的一个产品,Red Hat公司有「官方版本」(official)供使用者购买,也提供了自由的FTP站供大众直接下载,官方版本与自由下载版本差异在于,官方版本多提供了一些商用软件和印刷精美的说明书。

  (2)Slackware    http://www.cdrom.com

  这是个老字号的门派了,前几年玩Linux的人,几乎都用这套系统。它可完全「手工打造」个人需求的特性,让很多目前已是高手级的玩家仍念念不忘,Slackware在国内用得很多,也许用来做服务器,性能会好些。最新版本4.0,安装的过程已改善了不少,各位想要「完全掌控」情况的朋友可以一试。

  (3)Debian    http://www.debian.org

  您通常会在Debian字眼后看见GNU Linux的字样,该派别目前是大家公认的结构最严谨、组织发展最整齐的,它也有一个包裹管理系统称之为「dpk」(Debian Package),所作的事情和Red Hat的「rpm」异曲同工,使整体文件的管理更加方便。Debian的原始程序代码都是遵循GNU的方式开放的,所以它完全符合开放原代码精神,不像其它的Linux都或多或少的保留了一部份程序代码不开放(Red Hat是直到6.0版才全部开放的)。目前版本2.1,并有一部份程序设计师,将Debian移植到其它平台上,所以也可以在其它平台上看见其踪影。

  (4)SuSE http://www.suse.com

  这是一套在欧洲相当受欢迎的版本,它和XFree86合作开发x86上 的X Server。SuSE安装时可以选择显示德文或英文,它还有自己的一套设定程序叫做「SaX」,可以让使用者较方便的设定,它的安装套件也采用RPM模式,所以要安装、升级与移除程序都非常方便,目前版本6.1。

  (5)OpenLinux    http://www.caldera.com

  这是由Caldera公司推出的版本,并不是很「Open」的一个版本,网上可以下载其Lite版本, 但正式版本是要money的,因为整个套件中有许多商用软件,所以并没有提供网络下载的服务。

  (6)TurboLinuxhttp://www.pacific.com

  由Pacific HiTech公司发展的套件,该套件在日本市场占有一席之地,从安装到使用接口都是日文的,在国内它与清华大学及研究机构合作研发了中文版本,在国内造成了一股Linux潮流,目前已推出3.0.2的简体版本,3.6的英文版本。<p></p></P>

pause 发表于 2004-6-18 22:01:00

初学者常会把 Kernel 与 Distribution混为一谈。对Kernel版本来说,目前版本的序号大约是2.4.0.(以偶数为第二个序号表明这是个可以使用的稳定版本,如2.2.30,而奇数为第二个的,一般有一些新的东西加入,不一定很稳定如2.1.37);相对于 Kernel版本,Distribution的版本随种类不同而不同,其中Slackware Linux是从1.0.4一直到最近的4.0,RedHat最新版本是7.1,Debian是2.2.x。

  Linux Kernel的发展与 Distribution 版本的发展是各自独立的,例如Slackware Linux 通常内附一个Kernel Source code,以及针对很多不同硬件设备的Kernel Image,一般用户最需要掌握的就是更新系统内核技术:也即首先取得最新版(同时必须确定是稳定版本)的Kernel Source,然后取代随Slackware Linux附带的旧版Source code,重新编译成Kernel Binary,进行新旧更新,这样就可以在不重新安装系统的前提下更新系统核心。<p></p></P>
<B>7</B><B>、</B><B>Intel</B><B>平台上有哪些</B><B>Linux</B><B>发布</B><B>(distribution)</B><B>?</B>

  主要有Red Hat、Slackware、Debian、SuSE、OpenLinux、TurboLinux。

  (1)Red Hat   http://www.redhat.com

  以容易安装著称,初学者安装这个版本,遇到挫折的机会几乎是零,如果您对安装Win9x已驾轻就熟的话,Red Hat Linux的安装一定难不倒您。

  Red Hat另一个优点是它的RPM(Red Hat Package Manager);以往在安装软件时,最让使用者伤脑筋的是:软件在解开压缩前先要新建一个目录,然后将软件搬进去解压,解压后,有些部份可能需要搬到另一个目录中去,当要搬移的项目多时,做这些工作就是件苦差事了。而RPM「包裹管理者」就针对这一点,能将所有要安装的路径全部安排好,当使用者解开有「.rpm」扩展名的文件时,会将当初打包该文件时设定好的路径档案先检查一次,然后依照档案里的设定,将各个文件解开,送到它们应该去的地方;不只如此,它还会制作安装记录,当使用者要移除其中任一个rpm文件时,系统会根据安装记录将该文件反安装,这种做法绝对准确,不会像Windows那样会移除不该拿掉的东西。

  Red Hat Linux可以说是相当成功的一个产品,Red Hat公司有「官方版本」(official)供使用者购买,也提供了自由的FTP站供大众直接下载,官方版本与自由下载版本差异在于,官方版本多提供了一些商用软件和印刷精美的说明书。

  (2)Slackware    http://www.cdrom.com

  这是个老字号的门派了,前几年玩Linux的人,几乎都用这套系统。它可完全「手工打造」个人需求的特性,让很多目前已是高手级的玩家仍念念不忘,Slackware在国内用得很多,也许用来做服务器,性能会好些。最新版本4.0,安装的过程已改善了不少,各位想要「完全掌控」情况的朋友可以一试。

  (3)Debian    http://www.debian.org

  您通常会在Debian字眼后看见GNU Linux的字样,该派别目前是大家公认的结构最严谨、组织发展最整齐的,它也有一个包裹管理系统称之为「dpk」(Debian Package),所作的事情和Red Hat的「rpm」异曲同工,使整体文件的管理更加方便。Debian的原始程序代码都是遵循GNU的方式开放的,所以它完全符合开放原代码精神,不像其它的Linux都或多或少的保留了一部份程序代码不开放(Red Hat是直到6.0版才全部开放的)。目前版本2.1,并有一部份程序设计师,将Debian移植到其它平台上,所以也可以在其它平台上看见其踪影。

  (4)SuSE http://www.suse.com

  这是一套在欧洲相当受欢迎的版本,它和XFree86合作开发x86上 的X Server。SuSE安装时可以选择显示德文或英文,它还有自己的一套设定程序叫做「SaX」,可以让使用者较方便的设定,它的安装套件也采用RPM模式,所以要安装、升级与移除程序都非常方便,目前版本6.1。

  (5)OpenLinux    http://www.caldera.com

  这是由Caldera公司推出的版本,并不是很「Open」的一个版本,网上可以下载其Lite版本, 但正式版本是要money的,因为整个套件中有许多商用软件,所以并没有提供网络下载的服务。

  (6)TurboLinuxhttp://www.pacific.com

  由Pacific HiTech公司发展的套件,该套件在日本市场占有一席之地,从安装到使用接口都是日文的,在国内它与清华大学及研究机构合作研发了中文版本,在国内造成了一股Linux潮流,目前已推出3.0.2的简体版本,3.6的英文版本。<p></p></P>
<B>8</B><B>、</B><B>Mac</B><B>平台上有哪些</B><B>Linux</B><B>发布</B><B>(distribution)</B><B>?</B>

  主要有MKLinux、Red Hat、LinuxPPC、Turbo Linux、Yellow Dog Linux等,除了MKLinux是苹果官方的版本外,其它都是「在野人士」;不过大家都不约而同的采用了RedHat公司发展的原始码包装方式,再加上自己的一些套件,然后推出自有的版本;这也就是说,大家的安装方式几乎都一样,对使用者来说,这倒是好事,可以省下很多摸索的时间了。

  (1)Red Hat   http://www.redhat.com

  参见前文介绍

  (2)MKLinux   www.mklinux.apple.com

  MKLinux是苹果计算机公司发展的版本,可以说是「老字号」了,目前版本是DR3版。

  (3)LinuxPPC   www.linuxppc.org

  目前的版本是5.0,采用Linux2.2版核心(kernel)以及glibc 2.1版;该版本支持USB及一些新设备,可以安装在新的Power Mac G3机型上,LinuxPPC的执行效率要比MKLinux好。与MKLinux相比,LinuxPPC只能使用在PCI接口的Power Mac上,而MKLinux可以用在所有机型上,这两个系统长得太像了,除了适用的机型不同和执行效率上的差异外,其它的部份几乎相同,所有可执行软件都一样。

  (4)Turbo Linux    http://www.pacific.com

  Turbo Linux在Mac上可看到的版本是2.1版,它在安装时会出现选取窗口,让使用者在安装时选取安装MKLinux或LinuxPPC,然后开始安装系统,所以该版本只是在安装过程上有些不同,其它的内容大同小异;Turbo Linux的Mac版本并没有中文化,并且开发的速度也比PC版本慢很多,估计Mac版本已经暂时被「搁」在一边了,Pacific HiTech公司在全力发展PC版本。

  (5)Yellow Dog Linux   www.yellowdoglinux.com

  建议把它安装在Mac、iMac、蓝白G3的Power Mac系列机器上使用。它有两种版本,分别是称为「Champion」的服务器版本以及称为「Black Lab」的版本;「Champion」是一般使用者安装的版本,而「Black Lab」版本具有「并行处理」(Parallel Computing)能力:使用者可以在很多台Mac都装上该系统,然后让所有的Mac“一起处理”事情,这会使处理速度变得非常快。开发Yellow Dog Linux的公司专注在PowerPC Mac的平台上发展,目前还没有“Intel平台”的Yellow Dog Linux版本。

  <B>9</B><B>、</B><B>RedHat</B><B>、</B><B>Slackware</B><B>及</B><B>Debian</B><B>,选谁家?</B>

  从互联网上能够取得的Linux版本非常多,CD-ROM 版本就更多了,RedHat Linux、Slackware Linux及Debian Linux是其中最著名的三个发布。

  RedHat Linux 对Linux初学者来说,绝对是最好的选择,它完善的系统配置,预装了丰富的应用软件,功能强大的系统管理程序,可使用户花相当少的时间和精力获得一个完善的Linux环境,其独特的RPM包装程序,更让用户不需要重新安装Linux系统就可以对整个系统进行升级。但是它目录结构复杂,系统配置文件零乱,对高级用户来说,并不是一个好的选择,在这一点上Slackware就要略胜一筹。

  Slackware与Debian相比,不推荐大家使用Debian,因为Debian与更新速度较快的Slackware比较,在软件版本上相差很大。

  所以对于初学者建议选择RedHat Linux,而高级用户使用Slackware似乎更适合。

  <B>10</B><B>、目前有哪些中文</B><B>Linux</B><B>发布</B><B>(distribution)</B><B>?</B>

  目前中文Linux发行版本主要有:腾图Linux风暴系列之一REDHAT Linux6.1、红旗Linux、蓝点Linux、TurboLinux Chinese Version (GB)(下载地址:http://www.turbolinux.com.cn)、Xteam Linux (GB)(下载:http://www.xteam.com.cn)。

  <B>11</B><B>、如何得到</B><B>Linux</B><B>?</B>

  Linux的源代码是公开的,各版本的Linux,包括从内核到众多应用程序的源代码、执行文件,都可以从互联网上免费下载(下载地址:http://freesoft.cei.gov.cn/)。也可以通过购买发行光盘或D版光盘得到Linux系统,和一般软件不同的是,你可以和朋友合法地分享Linux光盘,很显然Linux光盘的价格不会很高。Linux有很多发行版和销售商,建议到www.linux.org去获取必要的信息。<p></p></P>
 <B>12</B><B>、</B><B>Linux</B><B>有那些著名的网站和新闻组?</B>

  著名的网站http://www.li.org和Linux在线http://www.linux.org/,上面有许多关于Linux的新闻、新软件、文档资料、链接等信息。

  Comp.os.linux.announce是著名的Linux新闻组,其中可以发现许多关于Linux的问题和解答,在comp.os.linux.*中下列的新闻组也值得一看:

  comp.os.linux.setup

  comp.os.linux.hardware

  comp.os.linux.networking

  comp.os.linux.x

  comp.os.linux.development.apps

  comp.os.linux.development.system

  comp.os.linux.advocacy

  comp.os.linux.misc

  如果您访问comp.os.linux.*速度慢,还可以访问当地的新闻组,例如中国comp.os.linux.*的新闻组是cn.comp.os.linux。

  <B>13</B><B>、</B><B>Linux</B><B>服务器最多能担负多少用户同时访问</B><B>?</B><B>多少用户同时访问时等待时间能接受</B><B>? </B>

  没有用户数目的限制。如果只是作文件服务器用,基本上没有等待时间。网络带宽是一个限制,如果用100base-Tx,感觉应该和你本地磁盘差不多。

  <B>14</B><B>、什么样的</B><B>PC</B><B>能运行</B><B>Linux</B><B>?</B>

  Linux支持Intel的X86、PIII等CPU,还支持INTEL MP架构的多处理器系统(现在也可以在 Sparc、Alpha、PowerPC等CPU的机器上运行,甚至已经移植到娱乐业的游戏机任天堂64上,成为类似于WindowsCE那样的简易操作系统),至少需要4M内存、一个单软驱动器,该PC的总线:可以是传统ISA bus、EISA、VESA Local、MCA(IBM所有的总线)、或Intel PCI等,支持大多数的ESDI、IDE、ATA33/66/100硬盘。

  Linux可以运行在DEC公司的Alpha机上,也可以运行在Sun公司的Sparc机器上,当然也可以运行在Intel公司的386以上的机器上,编写好的源代码可以不经修改的在各种不同的Linux平台上直接编译、安装运行。

  Linux安装的最小配置是:

  80386以上CPU

  内存4M以上

  硬盘80M以上

  Linux不能在 80286 CPU的机器上运行,内存比4MB少的机器也不行,如果内存少于4MB,就不能安装,想运行X Window的话,8MB是最低要求。如果拿Linux作server的话,至少要有16MB的内存,运行Netscape这类软件则需要64M内存。至于硬盘,从零到几GB都行,最好有500MB以上空间。<p></p></P>
 <B>15</B><B>、</B><B>Linux</B><B>能支持的硬件?</B>

  Linux支持的硬件设备是UNIX系统中最多的,支持几乎所有类型的显示卡和显示器、各式各样的鼠标、几乎所有类型的SCSI设备,大部分的IDE接囗硬件,还支持所有的SCSI磁带机及QIC-02型磁带机、SCSI CDROM驱动器及部分EIDE(ATAPI)接囗CDROM、所有SCSI接囗的外接驱动器、并囗的ZIP驱动器等。

  下面是Linux可以运行的硬件平台及相应网址:

  ★ARM Linux   http://whirligig.ecs.soton.ac.uk/~rmk92/armlinux.html

  ★Linux/68k   http://www-users.informatik.rwth-aachen.de/~hn/linux68k.html

  ★Linux/8086http://www.linux.org.uk/Linux8086.html

  ★Linux/Alpha http://www.azstarnet.com/~axplinux/

  ★Linux/MIPShttp://www.waldorf-gmbh.de/linux-mips-faq.html

  ★Linux/PowerPC      http://liber.stanford.edu/linuxppc/

  ★Linux for Acorn    http://www.ph.kcl.ac.uk/~amb/linux.html

  ★MacLinux    http://www.ibg.uu.se/maclinux/

  Linux支持的CPU有:Intel/AMD/Cyrix 出品的x86系列CPU

  386SX/DX/SL/DXL/SLC,

  486SX/DX/SL/SX2/DX2/DX4,

  Pentium.

  Pentium MMX

  Pentium Pro

  K6,M2,K7,Cyrix 6x86等

  由于Linux Kernel支持模拟FPU,即使无FPU协处理器的CPU,Linux也支持,只是系统速度将会下降,尤其是在做编译和图形处理等方面工作时,但在Pentium系列CPU已成为主流的现在,这个问题已不复存在。

  此外,Linux2.0以后的核心都支持多CPU(SMP),不管哪个发行版本,只要采用2.0以后的核心,都支持多CPU。

  方法是:在编译核心前,把/usr/src/linux/Makefile开头的SMP=1 改成 SMP=n , n是你的CPU数,然后再make dep ; make clean ; make install ; make modules ;make modules_install    启动后,就成功了!

  <B>16</B><B>、</B><B>Linux</B><B>上有哪些软件?在</B><B>Linux</B><B>下如何运行</B><B>DOS</B><B>和</B><B>Windows</B><B>程序?其上能运行</B><B>office2000</B><B>吗?</B>

  Linux 有C程序编译器GCC, 编辑软件Emacs, 图形化界面X-windows, 所有标准的UNIX系统工具(utilities), TCP/IP网络(包括SLIP/PPP)和数以百计的开发或移植的各种应用程序。

  Linux中有一个称作dosemu的Dos模拟器(下载地址ftp://ftp.dosemu.org/dosemu,网址http://www.dosemu.org),它可以模拟DOS,运行一些DOS应用程序。准确的说dosemu并不是Dos模拟器,它提供了一个虚拟x86机来运行dos,可以运行Dos6.22和纯Dos7。它也提供VCPI和DMPI的支持。在dosemu下可以运行标准模式和386增强模式的Win98,不过配置相当困难,表现的性能也不好,不够稳定。

  Linux上也可以运行一些Windows程序,这种模拟器的研制工作已经有了进展,支持SVR4 ELF 和 SVR3.2 COFF二进位的iBCS2 (Intel 二进位兼容标准)模拟代码,可以作为编译项包含在Linux内核中,另外,有些公司提供了一些商业性软件(付费, 有版权),如Motif,Aplixware,WordPerfect等。

  office2000没有for Linux版的,在Windows模拟器上也无法运行,在Linux上可以使用staroffice和applixware office之类的for Linux办公软件,不过它们都是商业软件。</P>

pause 发表于 2004-6-18 22:02:00

<B>Linux</B><B>的使用</B><B>

</B>
<p> <B>1</B><B>、在</B><B>Linux</B><B>下玩</B><B>DOOM</B><B>游戏出问题的解决办法?</B>

  要正确的音效输出,必需使用2.90版或以后的声音驱动程序;它支持即时“DOOM模式”,音效样本是16bit的,如用8bit声卡,可用一些程序(下载地址 ftp://sunsite.unc/edu/pub/Linux/games/doom)让声音出现,如果DOOM动作不流畅,把音效取消(将sndserver文件改名)会有一些改进,DOOM预设是不支持音乐(如同DOS版)的,musserver程序将增加Linux下的音乐支持,它可以在 ftp://pandora.st.hmc.edu/pub/linux/musserver.tgz 中找到。

  <B>2</B><B>、</B><B>Linux</B><B>下的应用程序是否也存在</B><B>2000</B><B>年问题</B><B>?</B>

  应该没有,但是有2161年问题。和其它操作系统一样,Linux的系统时间是一个整数,目前是32位的。它表示从1970年1月1日0点0分0秒开始算起的秒数。2^32/3600/24/365是它溢出的大致年数,这个数是136。1970+136=2106!

  <B>3</B><B>、</B><B>Linux</B><B>与</B><B>DOS</B><B>下执行程序有何异同?</B>

  在Linux下要执行一个程序,就像DOS下那样,键入它的名字即可。如果这个程序被放在 PATH指定的目录中,该程序就会被启动。不同的是,Linux不像DOS那样,可以执行放在现行目录下的程序,除非已经加入PATH中了,在Linux下,若要执行现行目录下的程序,可以这样做:./.

  Linux还可以同时执行数个程序,可以在同一行上键入数个命令:

  $ command1 ; command2 ; ... ; commandn

  Linux还可以将一个原本在背景执行的线程提升到前景并继续执行,而且Linux还可以使你有多个session,就如同有好几台电脑在同时工作!

  有关Session的操作有:

  1)切换 session 1..8:

  $ ... .

  2)开始一个新的 session , 但不离开原本 session :

  $ su - 例如: $ su - root

  这相当有用,比如当你要mount一个磁盘(机)时。因为只有 root可以作这件事。

  3)结束一个 session:

  $ exit

  4)在前景执行一个线程:

  $ progname [-switches]

  5)在背景启动一个线程(在背景执行)要加上 '&amp;' 这个符号:

  $ progname [-switches] &amp;

  6)查看有多少线程正在执行:

  $ ps

  这样会列出一个表格,每一个线程都会有一个 PID 来识别(一个数字)。

  7)删除一个线程:

  $ kill

  有时你需要用该方法来结束一些线程,一个线程可能需要以下方法才可以结束:

  $ kill -15

  $ kill -9
<p>
<p>
<p>
<p> <B>4</B><B>、</B><B>Linux</B><B>的</B><B>shell</B><B>下有关</B><B>“</B><B>工作</B><B>”</B><B>的操作有哪些?</B>

  Shell是Linux下与DOS 的COMMAND.COM相等的东西,它允许你暂停某个线程的执行,或是把前景换到背景、背景换到前景执行,线程也称作'工作'。

  1)查看有多少工作:

  $ jobs这样列出来的工作是以一个 shell 分配的数字来区别的, 而不是用 PID.

  2)暂停一个前景的线程:

  $ (但不总是有效 )

  3)暂停前景的程序:

  $

  (ditto)

  4)将一个被暂停的程序移到背景继续执行:

  $ bg

  5)把一个背景执行中的程序提升到前景:

  $ fg

  6)再一次的, 要砍掉一个线程:

  $ kill %

  这里的 可能是 1, 2, 3, ... 有了这些命令,你就可以在同一个时间格式化磁盘,压缩档案, 编译一个程序, 还可以解压缩, 而且你仍然还是看到提示号和游标在等待你的命令。

  <B>5</B><B>、怎样改变</B><B>Linux</B><B>文件的模式和权限?</B>

  使用chmod命令,它是"Change mode"的缩写。这个命令能轻松改变任何文件的模式,以便让你授权的人能读、修改或执行这个文件。有三个基本级别的用户,即:文件拥有者(user),拥有者所在组(group)和其他人(other)。同时也有三个级别的权限:读(read),写(write)和执行(execute)。用户类型可略写为:"u"代表用户,"g"表示拥有者所在的组,"o"为所有其他的用户,"a"表示任何人。而权限也同样缩写为:"r"表示读,"w"表示写,"x"表示可执行。例如要改变文件harold.cat的权限以允许组外用户可读,可键入:chmod o+r harold.cat,chmod命令能允许同时改变多个文件,例如去掉允许任何人对.cat文件写的权限、去掉组外用户的所有权限:chmod a-w,o-rx*.cat

  <B>6</B><B>、</B><B>Linux</B><B>与</B><B>DOS</B><B>文件常用指令比较,</B><B>Linux</B><B>下怎样压缩一个文件?</B>

  下面左边是DOS 命令,右边是Linux下具同样功能的指令:

  COPY:   cp

  DEL:    rm

  REN:    mv

  TYPE:   more, less, cat

  例如:

  DOSLinux

  C:\GUIDO&gt;copy joe.txt joe.doc    $ cp joe.txt joe.doc

  C:\GUIDO&gt;copy *.* total   $ cat * &gt; total

  C:\GUIDO&gt;copy fractals.doc prn   $ cat fractals.doc | lpr

  C:\GUIDO&gt;del temp$ rm temp

  C:\GUIDO&gt;del *.bak $ rm *~

  C:\GUIDO&gt;ren paper.txt paper.asc $ mv paper.txt paper.asc

  C:\GUIDO&gt;type letter.txt$ more letter.txt

  C:\GUIDO&gt;type letter.txt$ less letter.txt

  C:\GUIDO&gt;type letter.txt &gt; nul   $ cat letter.txt &gt;/dev/null

  n/a $ more *.txt *.asc

  n/a $ cat section*.txt

  Linux命令中.* 表示所有隐藏文件;*.* 就是"某些字元" +一个点 + "某些字元" 的文件名称;例如p*r可以满足peter和piper;picked和peck也可以表示为 *c*。Linux还有另外一组万用字元[],使用方法是:

  * 表示以a,b,或是c开头的文件;

  * 表示由I,J,K,L,M,或 N 开头的文件;

  Linux下压缩一个文件用compress。压缩后的文件名以.z结尾,占用更少的空间,但这也和文件类型有关。例如,TIFF图像文件能压缩到原来的5%,数据库输出能压缩到原来的25%。要压缩一个或多个文件,用compressfilenames。要解压一个文件,用uncompressfilenames或compress -d filenames,两者结果完全一样。要解压的文件都以.z结尾,因此不必把它加到命令行中去。
<p>
<p>
<p>
<p> <B>7</B><B>、</B><B>Linux</B><B>和</B><B>DOS</B><B>目录异同点?</B>

  DOS 用 \表示根目录,Linux则是/.;DOS用 \ 来分隔每一层次目录,Linux 用 /. ,例如:DOS:\PROGRAMS\C++\SOURCES\HELLO.CPP

  Linux:/home/guido/papers/geology/mid_eocene.tex

  相同的是,“..”表示上一层目录,“.”表示现行目录。值得注意的是:Linux系统并不允许你在任何地方cd、rd或是md,每个user都有个自己的目录称作home(这是系统管理者分配的),例如我的home是/home/guido。

  Linux和DOS目录指令比较:

  DIR:    ls, find, du

  CD:   cd, pwd

  MD:   mkdir

  RD:   rmdir

  例如:

  DOSLinux

  C:\GUIDO&gt;dir $ ls

  C:\GUIDO&gt;dir file.txt $ ls file.txt

  C:\GUIDO&gt;dir *.h *.c $ ls *.h *.c

  C:\GUIDO&gt;dir/p    $ ls | more

  C:\GUIDO&gt;dir \*.tmp /s   $ find / -name "*.tmp"

  C:\GUIDO&gt;cd $ pwd

  n/a - see note $ cd

  n/a - see note $ cd ~

  n/a - see note $ cd ~/temp

  C:\GUIDO&gt;cd \other$ cd /other

  C:\GUIDO&gt;cd ..\temp\trash   $ cd ../temp/trash

  C:\GUIDO&gt;md newprogs   $ mkdir newprogs

  C:\GUIDO&gt;md \progs\turbo   $ mkdir /progs/turbo

  C:\GUIDO&gt;rd newprogs$ rmdir newprogs

  C:\GUIDO&gt;rd \progs\turbo    $ rmdir /progs/turbo

  ( ~ 是 home 的一个缩写,cd ~ 可瞬间回到自己的home,不论你在哪里,cd ~/tmp 会带你到/home/your_home/tmp)

  <B>8</B><B>、不想让别的用户看到</B><B>/etc</B><B>目录,怎样做</B><B>?</B>

  chmod 770 /etc 使 /etc 看起来象drwxrwx--- root root /etc
<p>
<p>
<p>
<p> <B>9</B><B>、</B><B>Linux</B><B>和</B><B>DOS</B><B>的</B><B>FORMAT</B><B>命令区别</B>

  DOS的FORMAT A: 实际上作了以下工作:

  1)物理格式化磁盘;

  2)建立 A:\ 这个目录 (=Linux中的建立一个文件系统);

  3)使这个磁盘能被使用者使用(=Linux中的mount一个驱动器)。

  这三步在 Linux 中是分开的,在 Linux中可以建立和使用MS-DOS格式的磁盘,还可用其它格式的(例如最常用的ext2),以下是做一张可用的磁盘方法:

  1)先 su 为 root

  2)格式化一张1.44M的软盘(A:)

  # fdformat /dev/fd0H1440

  3)建立一个文件系统:

  # mkfs -t ext2 -c /dev/fd0H1440(建立一个ext2的文件系统)

  或 # mformat a:(建立一个 MS-DOS 的文件系统)

  在使用这张磁盘前,需要先将这个磁盘连通驱动器mount,mount 一个驱动器:

  # mount -t ext2 /dev/fd0 /mnt

  或 # mount -t msdos /dev/fd0 /mnt

  现在可以使用这张磁盘了,当要拿出磁盘前,一定要umount!

  # umount /mnt

  现在可以把磁盘拿出来了。

  fdformat和mkfs最好只对未格式过化的磁盘用、已作过的就不需要用这两条命令了。

  如要使用B驱动器,用fd1H1440 和 fd1 替换前文中的fd0H1440和fd0。这样,以前对A:,B:的工作现在都移转对/mnt操作了,例如:

  DOS Linux

  C:\GUIDO&gt;dir a: $ ls /mnt

  C:\GUIDO&gt;copy a:*.* \docs\temp   $ cp /mnt/* /docs/temp

  C:\GUIDO&gt;copy *.zip a:\zip$ cp *.zip /mnt/zip

  C:\GUIDO&gt;a: $ cd /mnt

  A:\&gt;/mnt$

  使用硬盘的方法类似于软盘,例如可以 mount一个硬盘或光驱,稍微变一下 /dev 下的 device,例如mount一个光驱:# mount -t iso9660 /dev/cdrom /cdrom

  <B>10</B><B>、如何在</B><B>Linux</B><B>下读取软盘</B><B>DOS</B><B>系统的文件?</B>

  有两种方法:

  1)将含DOS文件的系统挂到Linux的文件系统上,通过mount命令来实现,mount命令的语法是:mount device mount-point   device是指要挂上的设备,如果是软盘,一般是/dev/fd0或者/dev/fd1,表示第一个软驱或第二个。mount-point是希望将文件系统挂上的目录,这个目录必须是在mount之前已经存在,并且一定要是空目录。比如要将系统的第一个软驱中的软盘挂到Linux文件系统中,可以打入如下命令:

  xxx@xxx.xxx root&gt; mount /dev/fd0 /mnt/floppy   然后就可以通过对/mnt/floppy这个目录来访问软盘了。

  2)通过Linux提供的mtool工具来实现的。这些命令使你不需要mount也能访问DOS的文件系统,这样的命令都以m开头,如mdir,mformat,mdel等等。

  (注:第一种方法适合所有Linux支持的文件系统,包括光驱等其他一些设备,可用-t指明想要的文件系统类型。另外,光驱mount以后,不能随便拆除的,必须先umount文件系统才可取出光盘)
<p>
<p>
<p>
<p>  <B>11</B><B>、</B><B>Linux</B><B>中</B><B>AUTOEXEC.BAT </B><B>和</B><B>CONFIG.SYS</B><B>是什么?</B>

  DOS中有AUTOEXEC.BAT 和CONFIG.SYS,当启动 DOS 时,它们负责系统的一些设置工作,如设定环境变量PATH、FILES等等,甚至可以调入其它必需在开机时载入的程序。

  Linux中也有一些类似的文件,但操作它们时,需要特别谨慎,它们是:

  FILES NOTES

  /etc/inittabdon't touch for now!

  /etc/rc.d/*   ditto

  如果想设定PATH或其它的环境变量、修改login时的信息、调入一个程序,见下面:

  FILES    NOTES

  /etc/issue    sets pre-login message设定login前的信息

  /etc/motd    sets post-login message 设定login后的信息

  /etc/profile   sets PATH and other variables, etc. 设定环境变量

  /home/your_home/.profile    does whatever you want 这里可以随意加入你想要的

  如果最后那个文件(~/.profile)存在,(注意它是隐藏文件,功能类似DOS的AUTOEXEC.BAT),则在login后、它的内含命令就会被执行。例如这个.profile:

  # I am a comment

  echo Environment:

  printenv | more   # 相当于DOS下的SET命令

  alias d='ls -l'   # easy to understand what an alias is

  alias up='cd ..'

  echo "I remind you that the path is "$PATH

  echo "Have a good day, "$LOGNAME

  PATH 和 LOGNAME,正如你所预料的,是两个环境变量。

  Linux下所有的事都可以按照你的要求作安排,大多数程序都有其自己的初始化设置文件,这些都可以由你来修改,它们通常都以 .prognamerc的形式存在于home目录中,需要知道的设置文件有:

  ..xinitrc: 用来初始化 X Window System;

  ..fvwmrc: 初始化 fvwm 这个 window manager,可以在/usr/lib/X11/fvwm/system.fvwmrc 找到范例;

  ..xfm/*: xfm (一个 file manager) 的设定文件;

  ..Xdefault: 由 rxvt(一个终端模拟程序)所使用。

  对于其它设定文件,参见Man page。
<p>
[此贴子已经被作者于2004-6-18 22:07:53编辑过]

pause 发表于 2004-6-18 22:04:00

<B>Linux</B><B>下的软件安装</B><B><p></p></B></P> <B>1</B><B>、</B><B>Linux</B><B>下有哪些中文系统?</B>

  主要有CXTERM、wzce、CXWIN、XCIN、ZhXwin。CXTERM是运行在X-WINDOW下的中文终端。Wzce是一个作为shell运行的终端。CXWIN是支持中文的XSERVER。XCIN可以在X-WINDOW下输入中文。ZhXwin是中文输入程序,需要CXTERM。

  可到http://freesoft.cei.gov.cn下载以上软件,例如要下载cxterm则进入自由软件库,查找cxterm即可。

  <B>2</B><B>、怎样在</B><B>X Window</B><B>中象</B><B>Pwin98</B><B>那样显示</B><B>/</B><B>输入中文</B><B>?</B>

  要在X Window的任何地方输入中文,可以使用xcingb,它是一种中文输入法的Server;libst.so.1可以在任何地方显示出中文,一起使用它们即可显示/输入中文。libst.so.1在http://freesoft.cei.gov.cn 里有下载,Freesoft 里有搜索器, 可以很方便用它查找。

  3、怎么样让RedHat Linux在X启动时自动加入中文支持(libst.so.4)?

  有两种常用的方法:startx和xdm。对于这两种方法,可通过在/etc/X11/xinit/Xclients文件中的这个部位加入以下几行来完成:

  # TheNextLevel is supposed to work

  # with both fvwm95 and fvwm2

  # (try fvwm95 first, then fvwm2).

  for FVWMVER in 95 95-2 2;

  do if [ -n "$(type -path fvwm${FVWMVER})" ];

  then env &gt; "$HOME"/Xrootenv.0

  !!!! LD_PRELOAD=/usr/home/min/ZhXwin/lib/libst.so.4

  !!!! export LD_PRELOAD

  # if this works, we stop here

  eval "exec fvwm${FVWMVER} ${FVWMOPTIONS}" &gt;

  "$HOME"/.FVWM${FVWMVER}-erro

  rs 2&gt;&amp;1

  fi

  done

  其中有!!!!的两行是后加上的,注意把/usr/home/min/ZhXwin/lib/libst.so.4的路径改成你的情况。<p></p></P> <p></p></P> <B>4</B><B>、介绍一下</B><B>Linux</B><B>分区的概念,个人使用</B><B>Linux</B><B>,如何设置分区?</B><B> </B>

  Linux使用标准的DOS分区格式,所以能和其他操作系统(例如DOS/OS/2/Win9X/WinNT/Win2000)共享硬盘。Linux和其他UNIX一样没有A、B、C、D驱动器概念。所谓的分区是将硬盘分成若干逻辑上独立的部分,每个部分都可以独立地使用而互不影响。可以在一个分区上建立文件系统,也可以建立虚拟内存的交换区(swap area)。分区的情况记录在每个硬盘的第一个扇区,称为"主自举记录"(MBR,Master Bootstrap Record)。

  如果Linux只是个人使用的话,最好设置三个分区,分别用于:

  1)root文件系统

  2)swap

  3)/usr文件系统

  因为DOS的Fdisk不懂如何设置其他系统的分区,所以可让DOS Fdisk它的分区并装好DOS,然后用Linux的fdisk程序设置Linux的分区。Linux可以安装主分区上或者扩展分区内的分区上(一个硬盘上可有多个扩展分区)。Linux可以读写FAT32分区。

  <B>5</B><B>、</B><B>Linux</B><B>和</B><B>PWin98</B><B>能否共存?它们能否共存于同一个硬盘并实现双重引导?</B>

  可以。但Linux的分区与Win98的分区不兼容,Win98不能访问Linux的ext-2文件系统,Linux可以访问Win98的任何文件系统。建议给Linux一个单独的硬盘,因为虽然Linux可以和别的操作系统和平共处,但Win98容易崩溃,有可能会破坏Linux。

  <B>具体方法是:</B>

  1)首先需要腾出一些硬盘空间,两三百兆即可。用PQMagic这样的软件在原有的硬盘上再分割出一个分区来。

  2)接下来,就和通常装Linux一样,把Linux装到新分出来的分区。装上Linux后,可以用Lilo(它可以选择启动Linux或PWin98);如果不想让别人知道在机器上装了Linux,可用Loadlin在MS DOS方式下启动Linux。

  还有一种方法, 是用UMDOS,就是把Linux的文件系统做在DOS的文件系统上,效果不太好,不推荐使用。

  <B>注意:</B>必须先安装其他OS,最后安装Linux。Linux会很客气地帮你管理所有的系统,千万不要先安装Linux再安装98,因为98会很不客气地将硬盘主分区引导区霸为己有,全然不顾别人的死活。安装98时只分配98所用的分区,安装Linux时,用Linux的分区命令建立自己的分区。<p></p></P> <p></p></P><B>6</B><B>、有在</B><B>Win98</B><B>下看</B><B>ext2</B><B>分区的软件吗?</B>

  1)有个小工具可以用,http://www.accessv.com/~peeter,不过是工作在NT下的。

  2)可以试试ftp://ftp.sjtu.edu.cn//incoming/unix/linux/fsdext2.zip,它可以在win98下安装Linux分区,然后就可以用资源浏览器看到ext2分区下的文件了。

  3)还有个winext2程序可在win98下浏览Linux分区的所有文件。

  A)到http://www.globalxs.nl/home/p/pvs下载文件winext2_016.zip.

  B)解压到一个目录后(例如c:\winext2).

  C)运行c:\winext2里面的DOS批命令文件install.bat进行安装,安装的结果是将两个win98用的vxd文件拷贝到了windows的相应目录下,最好把c:\winext2目录下的 mount.exe程序也拷贝到windows目录下。

  D)重新启动机器。

  E)在win98的DOS窗口下运行mount.exe,可以看到所有的分区信息列表。

  F)在分区信息列表里找到linux native分区,记下它的设备名,用如下命令安装Linux分区:mount /dev/hda3 g (其中g是希望的盘符)

  G)打开“我的电脑”,g盘有了,在机器上显示的是"hda3 (G:)",双击该图标,可列出Linux目录。

  可以把第F步的安装命令写成一个批命令文件,这样每次要看linux分区时,执行它即可。如果要卸载Linux分区,重新启动win98就可以了。如果每次启动win98时都把Linux分区挂上,以把安装命令写进c:盘根目录下的autoexec.bat文件里。

  <B>7</B><B>、</B><B>Linux </B><B>怎样才能认识</B><B>FAT32</B><B>分区</B><B>?</B>

  去www-plateau.cs.berkeley.edu/people/chaffee/fat32.html下载一个FAT32的patch。

  <B>8</B><B>、能否装成</B><B>Linux</B><B>和</B><B>NT</B><B>的双系统?该怎样做?要注意些什么?</B>

  Linux可以和PC上的其他任何操作系统和平共处,倒是微软的东西,特别是NT、Win98有可能对Linux造成破坏。简单地讲:

  1)如果先安装了NT,则用LILO做引导选择,方法和Linux/DOS双启动没什么区别。 NT不对MBR做任何改动。

  如果安装NT时,想用NTFS作为NT分区格式,要记住,目前Linux还无法取用NTFS分区,能读NTFS分区的Alpha版驱动程序可在http://www.informatik.hu-berlin.de/~loewis/ntfs 找到,建议另外建个FAT分区作为资料交换用,或是用DOS格式化的软盘片。另外建议不要使用 NT 的“磁盘系统管理员”来建立 Linux 的置换以及根目录分区,建议使用 Linux 的 fdisk。

  2)如果先装了Linux,要把LILO装到根分区的引导块上,不要放在MBR上,装完Linux后,假设根分区在/dev/hda5,则 dd if=/dev/hda5 of=bootsect.lnx count=1,把这个bootsect.lnx放到软盘或者某个DOS分区上备用。接下来装NT,完成后,可以启动NT了,然后把刚才的那个bootsect.lnx拷到 C:\下,改改c:\boot.ini,在最后加一句:c:\bootsect.lnx="Linux",以后在NT的启动菜单上就有了Linux。

  要注意的是:每次升级了核心,或者修改了/etc/lilo.conf,作了lilo后,都必须重新生成一次bootsect.lnx,否则就前功尽弃了。<p></p></P> <p></p></P><B>9</B><B>、有哪几种方法启动</B><B>LINUX</B><B>,具体怎么做?</B>

  <B>主要有三种方法:</B>
  1)用LILO法。

  LILO属于非常好的启动管理器,可有两种方法安装它:

  A)装到主引导区(MBR),这是最好的,需要说明的是,MBR 的内容是独立于操作系统的,安装lilo不会对Dos,Win9X,Win NT的分区构成任何影响,但是Win9X的安装程序、kv300等会把LILO破坏掉。

  B)装到Linux root分区的引导块中,就是hda5的0块,该法适合使用System Commander、Win NT、OS/2等作引导选 择的场合。因为从本质上讲,引导选择,就是选择一个合适的分区,把它的0块读入内存,再运行之。

  2)使用NT作引导管理法。

  此法较为麻烦,需在安装好lilo后,运行: dd if=/dev/hda6 of=/mnt/dosc/bootsect.lnx count=1假设你的DOS C: mount到 /mnt/dosc,然后修改 boot.ini ,加一句:c:\bootsect.lnx="Linux",(NT 的启动选择器位于C盘的引导记录内,和MBR没关系,安装LILO不会影响它!)

  3)使用软盘启动法。

  该法适合测试新编译的内核,不太适合日常使用。

  <B>10</B><B>、如何不重新启动电脑、从</B><B>DOS</B><B>直接启动</B><B>Linux</B><B>?</B>

  可以把 LOADLIN.EXE 置于DOS路径下的一个子目录(DOS分区)内;然后把内核拷贝到,如C:\DOS\VMLINUZ 的子目录。下面的批处理文件就可用来启动linux:

  rem   linux.bat

  smartdrv /C

  loadlin c:\dos\vmlinuz root=/dev/hda2 r

  如使用Win98,则设定这个批处理文件的特性,使其从MS-DOS状态启动。

  <B>11</B><B>、在硬盘上共装了三个系统:</B><B>Linux</B><B>、</B><B>Win98</B><B>、</B><B>WinNT</B><B>,如何安装使它们共存?</B><B> </B>

  Win98是个很霸道的系统,它会毫不客气地将硬盘主分区引导区霸为己有。应先安装其他系统,最后安装Linux,Linux会很客气地帮你管理所有的系统。用软盘起动Linux,BOOT时输入mount root=你的Linxu分区,然后用命令:lilo -D 默认系统标号,重新设置Lilo。

  Linux还可以放在扩展分区中的子分区上的,但lilo不可以放在子分区上。如果想和NT共存就不要把lilo放在MBR上,放在除了Win98和NT分区之外的主分区中,该主分区必须是Linux分区或者是扩展分区,但不能是子分区。用Linux的fdisk把那个放了lilo的分区置为活动分区。

  让NT帮助启动Win98,不然它启不来。得先装W98/DOS其次装NT,在确信它们都可以通过NT的boot manager选择起动后,最后装Linux。Lilo只让它启动Linux和NT,Win98让NTBootManager去管,能否启动都和lilo没关系。

  如果没有NT,只有W98/DOS的话,必须把W98/DOS分区设成活动分区才行,也就是说,lilo得放在MBR上。

  <B>12</B><B>、如何看</B><B>LILO</B><B>是装在</B><B>MBR</B><B>还是</B><B>SuperBlock</B><B>上呢</B><B>? </B>

  只需看/etc/lilo.conf里boot这一项,以/dev/hda为例,

  如果是boot=/dev/hda则装在MBR上,

  如果是boot=/dev/hda2等等,则是装在第二个分区的SuperBlock上。

  因为/dev/hda表示整个硬盘,安装Redhat时不会问你MBR或SuperBlock,而是让你选择hda还是hda2,Slackware这方面要直观些。

  <B>13</B><B>、启动</B><B>Linux</B><B>必须在</B><B>lilo</B><B>提示时键入:</B><B>linu ether=3,0x300,eth0 </B><B>才能正确启动</B><B>NE2000</B><B>兼容网卡,有无方法把该参数加到启动文件中?</B>

  在/etc/lilo.conf中增加 append = "ether=3,0x300,eth0"然后运行lilo。<p></p></P> <p></p></P> <B>14</B><B>、在</B><B>Linux</B><B>下如何制作启动盘?</B>

  <B>方法是:</B>

  1)将一张有ext2文件系统的软盘放入软驱,如果是尚未建立文件系统,则可以使用命令: mkfs.ext2 /dev/fd0 (假设软盘在A:驱中)

  2)将内核拷贝入软盘,可以先使用mount命令把软盘挂到系统上,再使用命令 cp /vmlinuz/mnt/floppy (假设内核文件是/vmlinuz,软盘挂在/mnt/floppy)

  3)键入:rdev /dev/fd0 /dev/hda1(假设root文件系统在/dev/hda1上)

  <B>15</B><B>、如何用</B><B>Linux</B><B>在第一个扩展分区中建立逻辑盘?</B>

  要注意mount的是哪个设备!第一个扩展分区中的分区从5到8,第二个扩展分区从9到12,第三个扩展分区从13到16。/dev/hd?2不行,得用/dev/hd?5。用Linux可以在一个盘上建立多个DOS Primary分区而且微软的系统会认的,还可以建立多个扩展分区。

  <B>16</B><B>、下载了新的内核,该怎样安装它?</B>

  将新的内核解开到/usr/src目录下,假设新内核被装在linux-2.2.35目录下,则改变/usr/src/linux使它指向新的内核。然后进入/usr/src/linux目录,make config 或 make menuconfig 或 make xconfig 其中的一项进行内核配置,配置并存储以后,依次执行make dep,make zImage,make clean就可以了。具体可以参照内核目录Documentation目录中的说明。

  <B>17</B><B>、如何从</B><B>CD-ROM</B><B>安装</B><B>ReadHat Linux</B><B>?</B>

  在RedHat Linux 6.1的CDROM中有个ezstart.bat,可以在DOS下运行该程序,帮助制作Boot盘和supplement盘,ezstart有详细的提示,照着做即可。从CDROM安装是不需要supplement盘的,只用Boot盘启动就行了。

  如果不能识别光驱,也可以把CDROM上RedHat目录下的所有内容拷到DOS分区下。DOS分区的目录结构应该如下:

  C:

  |--RedHat

  | ┐

  ||

  ||--RPMS

  ||--base

  ||--其他

  | ┘

  |--其他

  |

  注意,从硬盘安装是需要supplement盘的。更详细的解释参阅CDROM的/doc/RHmanual目录下"RedHat Offical Installation Guide"。<p></p></P> <p></p></P><B>18</B><B>、怎样实现一个用户名进入系统后,别人就不能再以此用户名进入系统?</B>

  如果用的是RedHat,可以借助于PAM,把下面这一行加入到/etc/pam.d/loginsession required /lib/security/pam_limits.so,然后修改/etc/security/limits.conf

  <B>19</B><B>、</B><B>RedHat6.1</B><B>启动时出现</B><B>syncing time for xntpd</B><B>然后停顿两分钟,提示</B><B>26 jul 14:31:31 ntpdate&lt;312&gt; can't find host tock.usno.navy.mil</B><B>,接着停顿五分钟才有反应。这是怎么回事?</B>

  把启动任务中的timed去掉,省得每次开机要去同步时间。

  <B>20</B><B>、交换分区只能是</B><B>16M</B><B>吗</B><B>? 32M</B><B>和</B><B>128M</B><B>内存必须开设多大的</B><B>swap</B><B>区</B><B>?</B>

  现在的核心规定:每个SWAP分区最多128M,可以有多个SWAP分区。对于32M内存,64M SWAP是个较好的选择,不过,SWAP占用率会很低,一般情况下10%都不到,也就是说,32M的SWAP足以应付绝大多数情况了;对于128MB内存,在RedHat中开128M的SWAP就足够了,好象除了在用KDE和Netscape 时最多占用30M-60M外,其他时间SWAP占用都不超过12M。

  <B>21</B><B>、对</B><B>Linux</B><B>的</B><B>free </B><B>显示报告如下:</B>

  total used free shared buffers cached

  Mem: 6548 6484 64 2292 104 1504

  buffers/cache: 4876 1672

  Swap: 0 0 0

  交换分区16M Swap,为什么显示为0?

  建了swap可是free说没有,有几种可能性:

  1)在/etc/fstab中少了一行/dev/sda6 swap swap defaults 1 1,将/dev/sda6用交换分区名替换

  2)如果没有改动过/etc/rc.d中的内容,那一定是swap分区没有初始化好或者损坏了。用以下命令创始化mkswap -c /dev/sda6,将/dev/sda6用交换分区名替换

  3)系统初始化文件被改乱了。检查/etc/rc.d/*并把它们改对。

  <B>22</B><B>、如何打开</B><B>XWindow</B><B>的界面和设置墙纸</B><B>?</B>

  Startx;先用程序 xv把gif.jpeg和tiff图象文件转换成xpm格式,然后用命令:

  xpmroot

  </P>

pause 发表于 2004-6-18 22:05:00

  <B>24</B><B>、如何在</B><B>X-WINDOWS</B><B>下配置</B><B>PPP</B><B>连接</B><B>?</B>

  xisp是X-WINDOWS下一个不错的拨号工具软件,但在安装xisp前,要先装有Xforms,可到sunsite或http://users.hol.gr/~dbouras/去下载。若使用的是KDE,则可以很方便地使用它提供的kppp。<p></p></P>
<p></p></P>
  <B>25</B><B>、</B><B>fvwmsr</B><B>、</B><B>fvwmsr98</B><B>、</B><B>tvwm </B><B>等等是什么?怎样设置</B><B>fvwm</B><B>等管理窗口和实际物理窗口一样大?</B>

  Fvwmsr、fvwmsr98、tvwm等都是X Windows的窗口管理程序,如同Win98下的资源管理器。

  有个文件叫做XF86Config,Slackware是放/etc目录中的,在这个文件中找出Screen Section,把对应显示模式Virtual后面的值改为想置的值即可。注意,里面可能有不止一个Screen Section,得修改实际用的那个,否则不会起作用。找对了Section Screen,对应于不同Depth 的Subsection也得找对,不然也不会起作用。

  <B>26</B><B>、</B><B>RedHat Linux</B><B>进入</B><B>X-Window</B><B>后一旦切换窗口,</B><B>X-Window</B><B>就死掉了,只有重新启动才行,如何解决</B><B>?</B>

  用ctrl+alt+Fn ( n=1,2,...6 )来切换虚屏,ctrl+alt+F7从字符方式回到X,切回X的一段时间里不要动鼠标( 2秒左右),否则X连接会断掉,接着重新startx/openwin就可以了。

  <B>27</B><B>、使用</B><B>Xconfigurator</B><B>命令配置</B><B>XWINDOW</B><B>,可将显示配置为</B><B>:800*600,16bit color</B><B>,但使用一些程序时,程序的窗口高度大于桌面高度,使得程序窗口上面看不见菜单</B><B>,</B><B>下面不见状态条,窗口又无法移动,如何解决</B><B>?</B>

  在home目录中放一个.Xdefaults文件,在其中对要用的每一个X client程序尺寸和字体等参数进行配置。一般说来改用较小的字体会有效果。具体如何配置用man命令看相应的命令手册。

  <B>28</B><B>、用</B><B>XF86Setup</B><B>设置了</B><B>X-window</B><B>后,程序可以启动,但分辨率不是</B><B>1024*768*256,</B><B>就是</B><B>640*480*256</B><B>,如何能设置为</B><B>800*600*65536</B><B>?</B>

  如果正确设置了/etc/X11/XF86Config(redhat)或/etc/XF86Config(slackware),应该可以用&lt;小键盘+&gt;动态改变分辩率。

  <B>29</B><B>、在</B><B>Linux </B><B>下拨号连接</B><B>ISP</B><B>的方法</B><B>?</B>

  如果使用redhat 6.0,完全可用redhat本身的方法解决,方法是:

  1)进入X windows, 打开control pannel

  2)选择网络配置, 在网络界面处有lo0, eth0的地方加入ppp0

  3)将启动参数如电话等填入,注意修改起动描述部分,原起动描述部分支持login: .. password:... timeout 5,有的ISP不是这样的,要用username:... password:... annex:ppp timeout 5才行

  4)存盘退出即完成了ppp的设置

  使用时只要打开网络配置,将ppp0改为activate,即可启动。如果想开机时自启动,可以将boot选项设为on。<p></p></P>
<p></p></P>
  <B>30</B><B>、如何配置</B><B>Dial-Up PPP </B><B>连接到</B><B>ISP?</B>

  可用pppd和chat来实现连接,最好是写个shell script,在 /root 下,比如取名为dppp-connect,在每次要连线时执行一下。

  1)首先应知道拨入ISP的电话号码(如163),ISP提供的拨入帐号及密码,MODEM接在哪个串口上,用root来login,编辑 ~/ppp-connect

  pppd connect 'chat -v "" "your_init_string" "" ATDTisp_number CONNECT "" Login: your_username word: your_passwd' /dev/tty(0/1/2) speed modem

  pppd在系统中的/usr/sbin/pppd,然后用chat来拨号,Chat将会送出初始化字串到MODEM、拨ISP的电话号码,等待出现CONNECT以及Login: 帐号符号,接着再送出密码,到此chat就完成了,剩下来的部分由pppd去做。最后一个指令是指定MODEM在那一个串口上(例如在/dev/ttyS1),通常它都是在ttyS1(DOS 下的COM2),ttyS0 (DOS 下的COM1),如用Slackware的版本,就是cua1或cua0。至于spped指的是modem的速度。另外,在调试阶段,pppd 的 -v 选项是非常有用的。例如 ~/ppp-connect 內容为:

  pppd connect 'chat "" "ATZ" "" ATDT163 CONNECT "" Login: john Password: mypass'/dev/ttyS1 115200 modem

  2)有的ISP在登录时要让你选择用何种协议建立连接,例如键入ppp才能建立ppp连接,对这种情况,~/ppp-connect为: pppd connect 'chat "" "ATZ" "" ATDT163 CONNECT "" Login: john Password : mypass $ ppp' /dev/ttyS1 115200 modem

  3)最后为安全起见,设定scipt只有root才能读写执行。

  <B>31</B><B>、拨号脚本一般应如何写?</B>

  拨号脚本一般应为:

  proc main

  transmit ""

  waitfor "Username:" until 10

  transmit $USERID, raw

  transmit ""

  waitfor "Password:" until 10

  transmit $PASSWORD,raw

  transmit ""

  waitfor "Selection:" until 10

  transmit "1"

  transmit "" set ipaddr getip

  endproc

  第3行表示等待登陆屏幕显示“Username:”,第4行模拟键盘输入上网帐号($USERID)

  第9行表示等待登陆屏幕显示“Selection:”,第10行模拟键盘输入了1,应根据你登陆ISP时屏幕上实际显示情况,改写上面的脚本。<p></p></P>
<p></p></P>
<B>32</B><B>、如何实现</B><B>Win98</B><B>工作站通过</B><B>Linux</B><B>主机上网?</B>

  每台工作站的DNS要指向ISP的DNS,或者简单点,在Linux主机上开个cache only和forward only的DNS服务器,如果DNS已经搞定,用squid也非常简单,缺省的配置文件/etc/squid.conf就可以工作(可能需要把http的端口号改为8080),而且可以实现cache的功能,具体步骤:

  1)设好PPP,保证在Linux 主机上可以上网。

  2)运行squid -z 建立cache目录。

  3)/etc/squid.conf,缺省的可以工作,可改可不改,如果要改,把http_port从3128改到8080。

  以后需要上网时,接通PPP,运行squid &amp;,客户端设置好proxy,一切OK,如果把pppd 升级到2.3.5,还可以配置成“按需拨号”。

  <B>33</B><B>、如何用</B><B>Linux</B><B>实现多机访问</B><B>Internet</B><B>?</B>

  <B>有两种方法:</B>

  1)proxy法(即squid或其他proxy).

  2)ipmasq + squid法

  如果只要浏览网页、文件下载,用第一种方法,RedHat带了squid的rpm,很好配置的。

  <B>34</B><B>、如何使</B><B>Linux</B><B>主机支持远程访问,这样在家可拨号回办公室,用</B><B>PPP</B><B>协议访问</B><B>LAN</B><B>?</B>

  在/etc/inittab里加上一句:s1:12345:respawn:/sbin/mgetty ttyS1

  <B>35</B><B>、用</B><B>minicom</B><B>拨号后已输入用户名和密码,屏幕上也出现了一大堆乱码,但不知道怎么运行</B><B>script</B><B>和</B><B>pppd</B><B>,该怎么才能用上浏览器?</B>

  运行minicom 然后输入ISP的电话;输入username 和 passwd;按下Ctrl+Q,如果出现了怪字符,则说明连接成功;使用命令: pppd /dev/modem 建立和ISP的连接。

  <B>36</B><B>、哪有</B><B>Linux</B><B>下的</B><B>Netscape</B><B>浏览器?</B><B>Linux</B><B>下有没有</B><B>html</B><B>编辑工具</B><B>?</B>

  在自由软件库(http://freesoft.cei.gov.cn)的/pub/mirrors/ftp.netscape.com/pub/...下有。

  Netscape Navigator Gold Communicator 4.x以上都可以完成这个工作。emacs同样支持。

  <B>37</B><B>、如何在</B><B>Linux</B><B>上加上</B><B>Web Mail</B><B>的功能,除了写</B><B>CGI</B><B>还有什么办法?</B>
  只能用CGI,或者用c写也可,想不写程序不行。

  <B>38</B><B>、从</B><B>Linux</B><B>上收信出现</B><B>"pop3 server error"</B><B>,怎么办?</B>

  到/usr/sbin下检查有无ipop3d,如果没有就是你安装时没装、重装之;如果有,试试telnet localhost 110,如没反应,则是/etc/inetd.conf有问题,检查POP-3一行前面有没有#。

  <B>39</B><B>、如何设置</B><B>FTP</B><B>才可以上载文件</B><B>?</B>

  把/home/ftp/incoming目录增加可写属性chmd a+w /home/ftp/incoming,然后用户就可以上载到incoming目录了。<p></p></P>
<p></p></P>
 <B>40</B><B>、如何解决</B><B>NFS</B><B>权限禁止问题?</B>

  缺省情况下NFS不允许mount本地目录,可以修改/etc/exports,加上一行:

  /yyy (rw)(yyy为你想mount的本地目录。)

  41、如何设置才能从其他机器Telnet到Redhat Linux服务器上缺省时,UNIX系统是不允许root作远程登录的。在/etc/securetty文件中加入如下设置:

  ttyp0

  ttyp1

  即能置为允许。

  <B>42</B><B>、如何使</B><B>Linux</B><B>服务器成为</B><B>DHCP</B><B>服务器、有目录服务功能?</B>

  有个dhcpd可完成这项工作、RH6.1自带的,其他的可到freesoft.cei.gov.cn下载。

  目录服务可据姓名、Email地址等查找其联系人、电话等信息,有运行于Linux上的LDAP服务器软件提供该服务,可到sunsite.unc.edu上下载最新版。

  <B>43</B><B>、把</B><B>Slackware Linux</B><B>设置成服务器,使别人能通过</B><B>modem</B><B>拨号连上</B><B>Linux</B><B>主机,应怎么做?如何使</B><B>Linux</B><B>主机的</B><B>modem</B><B>能应答拨号?</B>

  1)在/etc/inittab中加入这行:

  d1:345:respawn:/sbin/agetty -mt60 38400,19200,9600,2400,1200 ttyS1

  (假设modem在第二串口上,注意:RedHat所带的mingetty不能用于这个目的,可从freesoft.cei.gov.cn下载mgetty来用。)

  2)如果你的modem有开关可以设置为应答方式,如果没有开关就查它的说明书,找出用什么AT命令进行设置,将该设置命令放在/etc/rc.d/rc.local中即可。

  <B>44</B><B>、如何实现</B><B>Linux</B><B>和</B><B>Win98</B><B>资源共享</B><B>?</B>

  有个叫做Samba的著名软件,可以运行在包括Linux在内的各种Unix上,它支持运行于TCP/IP协议上的SMB协议,可把Unix主机仿真成Windows NT服务器。RedHat 6.1里已包括Samba,只需按需要修改/etc/smb.conf文件,运行smbd和nmbd即可。例如先运行Samba,然后把/home/share目录设置成所有人都能写:chmod a+w /home/share</P>

pause 发表于 2004-6-18 22:05:00

<B>Linux</B><B>下的硬件安装</B><B><p></p></B></P>
<B>1</B><B>、安装</B><B> Linux </B><B>要占用多少硬盘空间</B><B>?</B><B>

</B>  决定于要安装什么distribution的Linux,以及需要装入多少应用程序,是否安装原代码等。

  例如最基本的Slackware Linux大约需要10MB的空间,包括X Windows则要80M,假如要把基本系统工具程序、常用应用软件以及TCP/IP网络软件安装的话 ( 即A、B、N系列编号软件),差不多40-50MB,如要全部安装,大约200MB左右。

  至于RedHat Linux,最小化安装(仅仅最基本的系统)大约需要60M,缺省安装大约要250M左右,全部安装的话,大约需要340M左右,若是包括原代码、X-windows、一些常用工具、应用程序并且留有一定的spool空间的话,大约要450~500M左右。

  安装Debian GNU/Linux需要500Mb--1GB。

  <B>2</B><B>、</B><B>Linux</B><B>的硬件驱动程序一般如何安装?</B>

  Linux支持的电脑硬件种类非常繁多,这是通过软件Driver来办到,这些 Drivers包括在Kernel Source code里,如要学习Driver的写法,可到/usr/src/linux/drivers目录下自行去找相应driver的源码,或参考Kernel Hack FAQ。

  Linux 环境下要「挂上」某Driver,方法与DOS完全不同。DOS下,是通过在CONFIG.SYS中加入相应的驱动程序来挂上的,Linux的方法是通过对系统核心的编译(Recompile Kernel)挂上的,在编译过程中,要做必要的功能和硬件类别选择,之后所有对应的Drivers就会被自动编译进内核,成为 Kernel image的一部份。在Linux2.0版本之后,又加入了功能更加强大的Module模块,可让用户在任何时刻加载或卸除驱动程序,使得Linux硬件驱动程序的安装更加简便与安全。<p></p></P>
  <B>3</B><B>、显示卡一般如何安装?</B>

  对于i740显示卡,使用AX4.1+4100.000.tar.gz;i740/NeoMagic显示卡还可以到http://www.netclub.jlonline.com/~njlug/download/default.htm下载一个rpm包,对于RedHat6.0以下版本(包括6.0),由于显卡数据库没有i740,要下载新的显卡数据库,去http://www.netclub.jlonline.com/~njlug/download/default.htm或http://bigfoot.eecs.umich.edu/pub/linux/redhat/ftp.redhat.com/XFCom-i740-glibc-1.1.0-
1.i386.taz,下载xf86config-glibc-1.1.0.i386.tgz XFCom-i740-glibc-1.10-1.i386.taz这两个文件,然后把它们解压到/tmp/usr/X11R6/bin/目录下,再拷贝到根目录的相应目录下,最后配置xf86config。商业性质的i740显卡驱动程序,可以访问:http;//www.metrolink.com或http://www.xig.com。i740 显卡的Xserver有AccelerateX 4.1,不过不是免费的,价格还很高。<p></p></P>
对于S3 V2/G2(如Winfast S680),使用AX4.1+第016号update;至于Riva TNT,在Nvidia的主页上有XF86的Patch,新出的XF86 3.3.3也已经支持了。

  对于S3的Savage 3D显卡,Linux发行套件只能使用VGA16的X server,在X windows中仅能达到320X200分辨率,可用下法让Linux支持Savage 3D显卡:

  (1)下载Savage 3D显卡X server,拷贝到临时目录/temp中

  网址:ftp://ftp.turbolinux.com.cn/pub/turbolinux/TurboLinuxC-4.0/i386/TurboLinux/RPMS/Xfree86-S3D-0.1-3.i386.rpm

  (2)按SVGA配置XF86Config文件,以ROOT登陆,进入目录/usr/bin/X11R6,输入XF86Config开始配置,配置鼠标、键盘、显示器、显示卡,配置程序询问是否从它的显卡数据库中选,因为它对Savage 3D卡只支持VGA16,所以选NO,再选3使用XF86-SVGA服务器,建立符号链结选YES。

  (3)安装Savage 3D显卡的X server,进入临时目录/temp,用rpm –I Xfree86 –S3D –0.1-3.i386.rpm安装,进入/usr/bin/X11R6,cpXF86-SVGA XSVGA,cp XF86-S3D XF86-SVGA,最后输入startx-bpp32使用真彩色启动X windows。

  18、如何安装X windows 里无驱动程序的显卡? 如何在X window中查看显示卡配置 ?

  只要加载显卡主芯片的驱动程序即可 ( 例如WINFAST S680显示卡 的主芯片为S3VIRGE GX/2)。

  在console下用SuperProbe可查看显示卡的配置。

  <B>4</B><B>、</B><B>X-WINDOW</B><B>下如何配置</B><B>PS/2</B><B>鼠标?</B><B>RedHat Linux</B><B>上鼠标安装要注意些什么?</B><B>X windows</B><B>下</B><B>mouse</B><B>不听使唤了的解决办法</B><B>?</B>

  较为简便的办法是使用XF86Setup来配置。另外也可以直接修改XF86Config文件中的一节,确保文件中的鼠标设备是指向/dev/psaux一般就OK了

  RedHat Linux上鼠标安装要注意:

  首先检查有否/etc/sysconfig/mouse 文件,内容如下:

  MOUSE TYPE="Microsoft"

  XEMU3=yes

  此外,还得有一个/etc/rc.d/init.d/gpm文件,当然其中的设置得与鼠标类型相符。注意:现在流行的电脑中,MOUSE TYPE为“PS/2”。

  mouse不听使唤了的解决办法:在/etc/X11/XF86Config文件(Redhat)或/etc/XF86Config(slackware)文件中有这么几行:

  Section "Pointer"

  Protocol "MouseSystems"

  Device "/dev/mouse"

  说明鼠标是什么协议的、用什么接口,检查一下。<p></p></P>
<p></p></P>
<B>5</B><B>、如何在</B><B>RedHat Linux</B><B>下设置键盘?</B><B>
</B>
  如在安装时遗漏了设置键盘,或改用了其他键盘,则需要:

  (1)从/usr/lib/kbd/keytables/中选取适当的键盘表;例如it.map 就代表意大利键盘

  (2)编辑/etc/sysconfig/keyboard,使其使用:KEYTABLE="/usr/lib/kbd/keytables/it.map"

  (3)设定键盘的重复率和延迟时间,将以下内容加附到/etc/profile或rc的文档之一:

  /sbin/kbdrate -s -r 16 -d 500# or whatever --或其他数值

  (4)最后运行下列指令,以便允许设定键盘:~# chmod 666 /dev/port

  下次开机时,键盘将会正常工作了。

  <B>6</B><B>、运行</B><B>Linux</B><B>系统</B><B>, </B><B>需要配备多少内存</B><B>?</B>

  至少要4MB,如果是4M在安装时要比较麻烦些。如果是用在字符终端模式下,至少要有4MB;若要用X-windows,至少得有8MB。如果拿Linux作server的话,至少要有16MB的内存,运行Netscape这类软件则需要64M内存。

  <B>7</B><B>、系统识别出的内存少于实际数目(例如</B><B>128M</B><B>)怎么办</B><B>?</B>

  boot时加上参数mem=128M

  1)如果用loadlin,在linux.bat文件中启动行的最后面加上mem=128m

  2)如果用lilo,在lilo.conf中加入mem=128m,,然后运行lilo,再启动。

  <B>8</B><B>、怎样在</B><B>RedHat Linux</B><B>下安装声卡</B><B>?</B>

  RedHat4.2 版本时,安装声卡还是比较麻烦的,现今的6.2版,kernel已支持声卡,如果是soundblaster声卡,只要以 root 身份使用命令sndconfig即可设置;如果不是sb声卡,可用以下方法:

  1)使用sndconfig来设置

  2)修改/etc/conf.modules,加入以下几行

      alias sound sb

      options -k sb io=0x220 irq=5 dma=1,5

      alias midi opl3

      options -k opl3 io=0x388

  3)在win98/dos下,检查声卡目前的中断irq及i/o地址的设定,手动装入声卡模块,例如modprobe opl3 irq=5 dma=1,5 io=220

  4)如果还无法工作,就只好试试为声卡重新编译一个新内核了,在 /usr/src/linux下,执行 make menuconfig,如果还没有装入原代码,就执行:

  rpm -i /mnt/cdrom/Redhat/RPMS/Kernel-source*.rpm<p></p></P>
<p></p></P>
  <B>9</B><B>、</B><B>Linux</B><B>支持即插即用声卡吗</B><B>? </B>

  Linux 2.1版后应该能完全支持即插即用,要让即插即用声卡能用,还要做些工作。

  1)如果是有Plug and Play BIOS的PC机,要小心设定声卡,保证将核心声音驱动程序的I/O位址、IRQ及DMA等设置得和BIOS给的一样。

  2)Linux下用来设定这种卡的即插即用工具,可在Red Hat的网站http://www.redhat.com/找到,也可能包含在Linux套餐中。

  3)如果在Windows98下使用这种卡,可用设备管理器设定卡,然后用LOADLIN热启动进Linux,确定Windows98和Linux使用相同的设定参数。

  4)如果在DOS下用这种卡,可以使用声霸卡16PnP卡附的icu公用程序,在DOS下设定,然后用LOADLIN热启动进Linux,确定DOS和Linux用相同的设定参数。

  商业版的OSS声音驱动程序支持声霸卡16PnP,可向4Front Technologies购买。

  10、如何配置声卡

  如果是ISA/PnP的声卡,首先去设置isapnp。

  如果是SoundBlaster系列而且用的是RH5.1以上版本,可以用它带的sndconfig来配置声卡,连isapnp都不用去配了。

  如果声卡已经工作了,则在/etc/sndstat里有声卡的配置信息,如果没有这个文件或者它为空,则声卡没有被驱动(在2.2.127中对于某些PCI声卡可能不同),另外去看看/dev/audio /dev/dsp /dev/mixer等文件是否存在。如果在内核配置里找不到声卡类型,可以尝试按SoundBlaster兼容的方式去配置,不行的话可以去下载OSS(Open Sound System)或OSSFree,前者是商业软件,虽然试用版可以不停地soundoff/soundon,毕竟很麻烦。2.2.12x的内核支持一些新声卡、特别是PCI声卡,可试试。有个站点供参考:http://www.bright.net/~dlphilp/linux_soundapps.html#drivers

  <B>11</B><B>、编译完核心后,</B><B>reboot</B><B>不能自动加载声卡,在提示符下敲</B><B>cat /dev/sndstat</B><B>能用,如何解决</B><B>?</B>

  可用以下方法:

  1)修改/etc/rc.d/rc.modules

  2)查找"sound support"字样

  3)添加"/sbin/modprobe sound"

  4)重新启动<p></p></P>
<p></p></P>
<B>12</B><B>、哪里可找到</B><B>Linux</B><B>的声音软件</B><B>? </B>

  下面的下载库中可以找到Linux专用的声音应用软件:

  ftp://sunsite.unc.edu:/pub/Linux/kernel/sound/

  ftp://sunsite.unc.edu:/pub/Linux/apps/sound/

  ftp://tsx-11.mit.edu:/pub/linux/packages/sound/

  ftp://nic.funet.fi:/pub/OS/Linux/util/sound/

  ftp://nic.funet.fi:/pub/OS/Linux/xtra/snd-kit/

  ftp://nic.funet.fi:/pub/OS/Linux/ALPHA/sound/

  <B>13</B><B>、</B><B>Linux</B><B>能用软猫吗?</B>

  这种猫因为本身没有DSP芯片,是通过软件驱动由CPU来承担DSP工作的,除非厂家支持,否则linux中不能用。

  14、PNP Modem原先在Linux工作正常,因把一个数码相机接到com1下,WIN98 PNP了一下(自动调整了各端口),等回到Linux下,就不能用了,怎么办?

  <B>解决办法:</B>

  1)屏蔽主板上的com2

  2)运行pnpdump&gt;isapnp.conf,并根据情况修改isapnp.conf

  3)设好pnp 直接将 isapnp.conf 拷贝到 /etc下

  4)试试setserial /dev/cua1 -port 0x2f8 -irq3 -UART16550A -v

  如果再不行,索性重装了Redhat 6.1。或者再试一试把串口编译成模块的办法:把串口编译进核心,这样初始化的时间要远远早于调用isapnp的时间,于是isapnp也就白做了。编译成模块后,是先调用isapnp,再modprobe,应该能解决问题。

  <B>15</B><B>、内置调制解调器,设置为</B><B>IRQ12</B><B>和</B><B>IO3e8</B><B>,但在</B><B>Linux</B><B>中,设定为</B><B>COM3</B><B>占用</B><B>IRQ4</B><B>和</B><B>IO 3e8</B><B>,怎样改变设置?</B>

  在BIOS中禁用0x3e8。如果内置调制解调器是即插即用的,可能会被即插即用BIOS重设置为IRQ4,IRQ12应该用win/dos下的设置程序设置。

  <B>16</B><B>、如何安装内置的</B><B>AT &amp; T win Modem</B><B>卡</B><B>?</B>

  不能用,因为它的控制和DSP都用CPU,如果厂家不写驱动程序没人给它写驱动,另外Linux是多用户、多任务操作系统,它的响应时间很重要,也不该由CPU来做DSP、影响Linux的运行。

  <B>17</B><B>、</B><B>Red Hat Linux</B><B>上打印机如何设置?</B>

  Red Hat的设置工具可轻而易举地用来设定常见的打印机;如果不用Red Hat版本的Linux,则可自己手动设定。<p></p></P>
<p></p></P>
<B>18</B><B>、如何在</B><B>Linux</B><B>下安装</B><B>ISA/PnP</B><B>卡?</B>

  这类PnP网卡必须用isapnp进行设置后才能用,例如3c509网卡,最好用厂家的3C5X9XFG.EXE程序将各个参数设好并且禁止PnP,这样在Linux 下用就没有问题了。关于PnP声卡还有需要说明的是,make menuconfig 有时不能正确配置声卡的参数,因为声卡的代码与内核的其它部分相对独立,在配置过程中要调用它自己的脚本对代码进行修改。为了使代码配置完整,make menuconfig 之后应该再进行一遍make config,然后再核对一遍。

  <B>19</B><B>、如何安装多个网卡?</B>

  1)安装两块网卡时,在lilo.conf里加上append = "ether=0,0,eth1"

  2)当插了三块,则为:append = "ether=0,0,eth1 ether=0,0,eth2"

  举例如下:

  boot = /dev/hda

  #compact      # faster, but won't work on all systems.

  delay = 50

  vga = normal    # force sane state

  append= "ether=0,0,eth1"   #不知道网卡irq和iobase时

  

  # ramdisk = 0   # paranoia setting

  # End LILO global section

  # Linux bootable partition config begins

  image = /zImage

  root = /dev/hda1

  label = linux

  read-only # Non-UMSDOS filesystems should be mounted read-only for checking

  # Linux bootable partition config ends

  如果已经编译成模块,应该在/etc/rc.d/rc.modules(在Redhat里是/etc/conf.modules),加上类似的一行:/sbin/modprobe ne io=io1,io2<p></p></P>
<B>20</B><B>、不用网卡、只用两根串行线或并行线连接两台计算机,如何在</B><B>Linux</B><B>下实现文件的传输?能实现类似于</B><B>Win98</B><B>下的</B><B>"</B><B>直接电缆连接</B><B>"</B><B>功能吗?</B>

  两头同时起动pppd就行了,仔细看看配置文件就能弄通。如果其中一台要接受串口登录,Redhat原配的mingetty不行,得改用agetty或者mgetty,两者在自由软件库(ftp.freesoft.cei.gov.cn )中有,然后再改/etc/inittab的相应内容。如果没有登录功能,就简单多了,不过速度很慢。Linux也支持称作PLIP的并口IP通信。

  <B>21</B><B>、系统无法识别</B><B> NE2000</B><B>网卡</B><B>?</B>

  可能有两种原因造成的:

  (1)核心( Kernel )不支持。解决方法是重编译 Kernel,具体步骤:

  cd /usr/src/linux ; make menuconfig 选择网卡为 M 或是 Y 然后:

  make mproper; make dep; make clean; make bzImage; make modules; make modules_install 然后编译新核心 ( 例如bzImage ) 到 /boot 覆盖原来的老版本(安全起见,要预先 backup),最后执行 lilo,重启动

  (2)网卡参数设置不正确。

  使用网卡带的驱动盘找出网卡的中断和IO,修改/etc/conf.modules,并添加如下内容:

  alias eth0 ne

  options ne io=0x300

  或者在lilo.conf中添加如下内容:

  append="ether=10,0x300,eth0"

  <B>22</B><B>、如何配置</B><B>Accton PNP</B><B>网卡?</B><B>
</B>
  用NE2000的驱动程序来驱动Accton PNP网卡,修改/etc/conf.modules(如果没有就创建一个),并添加如下内容:

  alias eth0 ne

  options ne io=0x300

  或者在lilo.conf中添加如下内容:

  append="ether=10,0x300,eth0"<p></p></P>
<p></p></P>

pause 发表于 2004-6-18 22:06:00

<B>Linux</B><B>下的软件开发</B><B><p></p></B></P>
<B>1</B><B>、如何升级、编译内核?</B>

  如果你不想改变内核的版本,直接转到以下第四步。

  1)在任何一个子目录下(但通常是在/usr/src/下)untar解开新的内核源程序:

  tar xvfz linux-x.x.xx.tar.gz (例如linux-2.0.35.tar.gz)

  或者是打补丁(patch):gzip -cd patch-2.0.35.gz | patch -p0

  打完补丁直接跳到第四步

  2)rm /usr/src/linux   这通常是一个符号连接。

  3)在 /usr/src/ 下建立一个符号连接到你的新内核目录。

  ln -s /usr/src/linux.2.x.xx /usr/src/linux

  老版本的内核可能还要做一下工作:

  cd /usr/include

  rm -rf asm linux scsi

  ln -s /usr/src/linux/include/asm-i386 asm

  ln -s /usr/src/linux/include/linux linux

  ln -s /usr/src/linux/include/scsi scsi

  4)将当前目录变成 /usr/src/linux

  cd /usr/src/linux

  5)变成超级用户su

  6)配置内核

  如果你在X window下并且希望有图形界面,就用: make xconfig

  (注: 需要安装Tk/Tcl包并且X Server的分辨率在800x600以上)

  如果你不在X Window下或不想使用图形界面,就用:

  make config 或 make menuconfig(推荐),逐个回答完问题后稍等片刻,等提示符出现或图形界面消失,就配置好了系统。

  7)生成新内核,用:

  make dep ; make clean

  make zImage (或用make bzImage进一步压缩内核)

  (注意有大小写区分)

  还有make zlilo/make install等可选择。

  8)如果你用了模块,你还需要生成和安装模块

  make modules

  make modules-install

  depmod -a

  9)检查/etc/lilo.conf,把用的那个目录、那个文件作为 image。例如:image = /boot/vmlinuz (slackware版是/vmlinuz)

  将 /usr/src/linux/System.map 复制到 /boot 目录中,

  将 /usr/src/linux/arch/i386/boot/zImage 复制到 /boot 目录中并改名为 vmlinuz      

  用一个新文件名将新内核拷贝到相应的目录下,如

  cp /usr/src/linux/arch/i386/boot/zImage /boot/zImage2

  然后编辑/etc/lilo.conf文件,把原内核有关的那一段复制一份,如

  image = /boot/vmlinuz

  root = /dev/hda1

  label = linux

  复制后把image改成/boot/zImage2 把label改成newlinux.

  这样新内核与旧内核可以共存,当新内核不能启动时,还有备份在那儿。注意复制后放置的位置,如果没有设置default,则谁是第一项谁就是缺省启动项。

  10)安装新内核并重新起动。

  lilo

  shutdown -r now

  (提示:开机启动LILO、出现"LIL"提示时,按TAB键显示所有可启动的项(由label定义)<p></p></P>
<p></p></P>
  <B>2</B><B>、</B><B>Linux</B><B>下除了</B><B>EMACS</B><B>,有那些写程序用的编辑软件?</B>

  字符方式下有wpe(Window programming environment),非常类似于Borland C++3.1 for DOS。在X Windows下有xwpe,如果用RedHat,CDROM上该有这个东西,还有code-crusader也可以试试,joe,jed/xjed,nedit,kde带的kedit,kbuilder带的ksrcedit等可供参考。其中xjed, ksrcedit是彩色文本编辑,joe/jstar的热键与turbo c基本相同。还可以到166.111.68.98下载C-forge,SourceNavigator,SN是商业软件。

  <B>3</B><B>、介绍一下</B><B>Linux</B><B>中</B><B>shell</B><B>提供的叙述语言?</B>

  在DOS下,我们可以把一长串命令写进.BAT文件中,以便自动执行一连串动作,Linux中可以由在profile或.profile中设定alias来完成,当.BAT太过复杂时,可用shell提供的叙述语言(Scripting language)来写:它强大而易用,可以使用变量,有while,for,case if.. then .. else,的语法结构;还可以作为程序设计语言的替代品。

  要撰写一个script,就像在DOS下写.BAT一样,只要编写一个ASCII的文件,内含你想要的指令,然后保存。系统内定的编辑器叫作vi,使用不太方便,也可以使用其它的编辑器如joe或是X下的emacs。以下是vi常用操作法:

  1)加入一段文字到文章中:按下‘ i ’;

  2)离开 vi 但不储存文章:按ESC,再键q!

  3)离开且保存:按ESC,再键wq

  以下是一些shell script范例:

  EXAMPLE 1: first_script

  #!/bin/sh

  # I am a comment

  # don't change the first line - it's got to be there

  echo "Today is `date`"

  echo "My name is "$0

  echo "You gave me the following "$#" parameters: "$*

  echo "First parameter is "$1

  echo "Have you grasped the trick?"

  EXAMPLE 2: 2exe

  #!/bin/sh

  echo "making "$1" executable... "

  chmod u+x $1

  EXAMPLE 3: backup

  #!/bin/sh

  echo "Copying files in ~/bak... "

  for name in $*

  do

  cp ${name} ~/bak

  done

  使用这个命令:$ chgmod u+x 来执行script,在要执行时,键入它的文件名即可。

  <B>4</B><B>、哪里有</B><B>Linux</B><B>下</B><B>C</B><B>语言库函数手册?</B>

  用xman命令看第三章,或到http://www.xa.col.com.cn/~isc/gcc/library_toc.html看看。

  5、Linux有没有数据库管理软件?(例如象informix那样)

  Linux有好几个DBMS,其中Ingres可能最接近INFORMIX,但是需要自己进行编译,另外它的维护和进一步开发好象不太活跃。目前看来postgreSQL比较好,Redhat-5.0带这个DBMS和它的开发系统。mSQL和MySQL也不错。Informix和Sybase的for Linux版本已出来了,可去他们的站点看看。

  OPEN LINK :http://www.openlinksw.com/ (提供大量的ODBC JDBC,收费的)

  postodbc :http://logical.thought.net/postodbc/ 这个免费的;

  PERL :http://www.perl.com/

  PHP :http://www.php.net/ 成熟的数据库接口提供商 perl.module

<B>  </B><B>6</B><B>、如何调试</B><B>CGI</B><B>脚本</B><B>?</B>

  对于一些简单的perl-cgi,可把要求输入的变量都在程序中预定好,然后su nobody运行调试,运行结果正确了,再把预定的变量去掉,放入http服务器,一般即可。

<B>  </B><B>7</B><B>、</B><B>Linux</B><B>下有</B><B>MOTIF</B><B>编程的软件包吗?</B>

  MOTIF由于不是免费的、运行速度慢,不推荐使用,现在有KDE。如果真想开发MOTIF界面,最好采用TCL/TK来进行,这样可大大节省开发时间、而且开发出来的程序运行效率也好。只需用TCL、也可以用PERL语言编写脚本,然后利用TK工具包进行粘接。无论是TCL还是PERL,它们都有与C/C++程序协同工作的能力。这样,对速度要求高的程序部分用C/C++编写,然后嵌入到TCL或者PERL脚本中。</P>

lwpstorm 发表于 2009-8-21 15:30:00

这么多啊,学习。。。。。

xiaomowen 发表于 2009-8-22 16:15:00

昨天刚看了点关于linux的东西,借鉴

lookforpleasure 发表于 2009-9-2 13:44:00

<p>看的我头都大了</p>

zzzgll 发表于 2009-9-2 15:57:00

徐517 发表于 2009-9-7 22:01:00

学习中 不过内容太多了 看得很晕

liu.cy 发表于 2009-9-8 12:08:00

太古老了吧,还WIN98和MODEM呢

fdisk54 发表于 2009-9-13 13:49:00

我是Linux高手,.有问题请问我好了,这么多的东东,建议排版一下,看的头痛.

jovee 发表于 2009-9-16 11:07:00

<p>谢谢分享,学习了</p>

kuailedehuhu 发表于 2009-11-9 16:27:00

辛苦你老人家了 哈哈

sesshoumaru 发表于 2009-11-10 09:28:00

楼主辛苦了!

tjaizl 发表于 2009-11-11 01:07:00

学习了,谢谢分享。

xingyuanzhou 发表于 2009-11-12 16:57:00

<p>版在排一下,应该还是不错的基础知识!</p>
页: [1]
查看完整版本: linux 学习基础