`

Linux爱好者入门经典教程2

阅读更多

第四章 X的配置 

虽然文章写得不好,但是我还是希望我的文章为公社的朋友提供帮助,和以前一样的,这个系列教程的文章我只在公社发表,希望大家捧场。 

我的文章耽误了很久了,很抱歉。前段时间因为我一直忙着找工作,又生病一场,所以文章的事情一推再推,现在终于可以奉献给大家了。 

这一章我主要介绍X系统用的主要配置文件XF86Config-4,我采用了对照的方法介绍,一边贴出我的XF86Config-4文件,一边介绍具体的内容。这篇文章对于大家没有什么立杆见影的帮助,不果可以让你对于X的只是有一个基本的了解。 

XF86Config-4文件是X系统的主要配置文件。在Redhat 8以前版本中都叫做XF86Config-4这个名字,Redhat 8已经不再叫做这个名字。 

编辑这个文件需要小心谨慎一点,因为一点错误,你的X将不能启动。不果没关系啦,改回来就是了学习Linux最好的办法当然还是求助于男人(man),大家有什么问题尽管看看man的帮助就是了。如果你要删除文件中的内容,最好不要直接的删除,而应该在前面加上#符号把它变成注释。 

在Redhat 8以前的版本中,X的配置工具是Xconfigurator,在Debian中X的配种方法是: 
dpkg-reconfigure xserver-xfree86 
当然你都得用root的身份来运行。 

在/usr/share/doc/xfree86-common/FAQ.gz文件中你可以看到具体的技巧。 


第一段是Files段,这个部分用来配置X系统说能够使用的字体,每一行都代表一个目录,保存了具体的字体和字体的配置信息。 
代码: 

Section "Files" 
    FontPath     "/usr/X11R6/lib/X11/fonts/xp" 
  FontPath     "/usr/X11R6/lib/X11/fonts/XChinese" 
  FontPath   "unix/:7100"       # 这是本地字体服务器 
  # 如果本地字体服务器出了问题,我们可以使用下面的配置 
  FontPath   "/usr/lib/X11/fonts/misc" 
  FontPath   "/usr/lib/X11/fonts/cyrillic" 
  FontPath   "/usr/lib/X11/fonts/100dpi/:unscaled" 
  FontPath   "/usr/lib/X11/fonts/75dpi/:unscaled" 
  FontPath   "/usr/lib/X11/fonts/Type1" 
  FontPath   "/usr/lib/X11/fonts/Speedo" 
  FontPath   "/usr/lib/X11/fonts/100dpi"   #这两个字体是每一个X 
  FontPath   "/usr/lib/X11/fonts/75dpi"   #系统都必需安装的英文字体 
EndSection 


下面的是模块段,用来配置X系统加载的模块。 
代码: 

Section "Module" 
  Load   "xtt"     #gtk1使用的字体引擎,效果好,速度稍慢 
  Load   "GLcore"   #如果你是用的是Nvidia的显卡,似乎一定要注消掉这一行 
  Load   "bitmap" 
  Load   "dbe" 
  Load   "ddc" 
  Load   "dri" 
  Load   "extmod" 
#   Load   "freetype"   #如果你使用了xtt模块,那么freetype模块就需要注消掉 
  Load   "glx" 
  Load   "int10" 
  Load   "record" 
  Load   "speedo" 
  Load   "type1" 
  Load   "vbe" 
EndSection 


下面的段是用来配置你的键盘的,属于“输入设备” 
代码: 

Section "InputDevice" 
  Identifier   "Generic Keyboard"   #这是你的键盘的名字,随便你啦 
  Driver     "keyboard"     #键盘的驱动…哇,键盘也有驱动 
  Option     "CoreKeyboard"     #如果你有多个键盘,那么你需要在这里指定哪一个键盘是主要的键盘 
  Option     "XkbRules"   "xfree86" 
  Option     "XkbModel"   "pc104"   #键盘的分布格式,一般来说 
  Option     "XkbLayout"   "us"   #美国104键盘是大家通用的。 
EndSection 


这里配置你的鼠标,当然你可以配置两个鼠标,如果你有的话 
代码: 

Section "InputDevice" 
  Identifier   "Configured Mouse"   #鼠标的名字 
  Driver     "mouse"       #鼠标的驱动 
  Option     "CorePointer"     
  Option     "Device"     "/dev/input/mice" 
  #注意,这里很重要,这是鼠标的设备文件 
  #我的鼠标是光电鼠标,用的USB接口,对应的鼠标文件是/dev/input/mice 
  #如果你的鼠标是普通的滚轮鼠标,用的是PS2接口,那么你应该使用 
  #/dev/mouse或者/dev/psaux或者/dev/ttys0这个设备 
  Option     "rotocol"     "ImPS/2" 
  #这是鼠标的类型,如果不是是滚轮鼠标,那么使用PS/2 
  Option     "Emulate3Buttons"   "true" 
  #在Linux系统中,鼠标的第三个键非常有用, 
  #如果你的鼠标没有第三个键,那么我们应该允许使用双键同时点击来模拟 
  Option     "ZAxisMapping"     "4 5" 
EndSection 


下面的设备是显卡,这是最头痛的设备了,如果你的显卡太新潮,很有可能不能支持哦。Nvidia的GForce2显卡就必需自己编译显卡的驱动程序才能使用 
代码: 

Section "Device" 
  Identifier   "Generic Video Card" 
  Driver     "ati"     #如果你是Nivida的显卡,这里应该是"nvidia" 
EndSection 



这个设备是显示器。 
代码: 

Section "Monitor" 
  Identifier   "Generic Monitor"   #显示器的名字 
  HorizSync   30-60       #显示器的频率,一半来说你的显示器 
  VertRefresh   50-75       #应该可以达到我的这个水平 
            #因为我的显示器是15"的老显示器了 
            #大家的电脑都比我的好吧? 
  Option     "DPMS" 
EndSection 


下面是综合以上你的配置的设备的各种显示效果 
代码: 

Section "Screen" 
  Identifier   "Default Screen"   #效果的名字 
  Device     "Generic Video Card"   #你可以指定你的显卡的名字 
  Monitor     "Generic Monitor"   #指定你的显示器的名字 
  DefaultDepth   24       #默认的颜色深度 
  SubSection "Display" 
    Depth     1 
    Modes     "1024x768" 
  EndSubSection 
  SubSection "Display" 
    Depth     4 
    Modes     "1024x768" 
  EndSubSection 
  SubSection "Display" 
    Depth     8 
    Modes     "1024x768" 
  EndSubSection 
  SubSection "Display" 
    Depth     16 
    Modes     "1024x768"   #在这里你可以指定扫描频率例如 
            #"1024x768 @ 85"就是用85mhz的频率 
  EndSubSection 
  SubSection "Display" 
    Depth     24 
    Modes     "1024x768" 
  EndSubSection 
EndSection 



最终你必需定义下面的段用来告诉X服务器你使用的配置 
代码: 

Section "ServerLayout" 
  Identifier   "Default Layout"   #刚才我们给我们的配置取的名字 
  Screen     "Default Screen"   #给我们的效果取的名字 
  InputDevice   "Generic Keyboard"   #我们的键盘的名字 
  InputDevice   "Configured Mouse"   #我们的鼠标的名字 
          #这些名字一定要在前面的配置中已经定义 
EndSection 

Section "DRI" 
  Mode   0666 
EndSection 



一般来说我们X启动时候会遇到的问题是: 
1:no screen found 
这有可能是你没有正确的定义所需要的效果,也有可能是你的其他部分定义出错倒置你的效果不能实现 
2:xtt和freetype的冲突,注消一个就可以了 
3:驱动没有找到,如果你的显卡非常的新潮,那么多半是这个错误了,编译你的驱动吧…
_________________


第五章 Linux命令和技巧 

1. mount umount 命令 

在Linux里面想要使用你的软盘和光盘可不是像在Windows里面那么的危险。 
想想看如果你在Windows里面安装一个光盘里面的软件或者玩游戏的时候,你的女朋友,甭管是第几个女朋友,因为对你每天打游戏而不做晚饭,乃至于别人做了晚饭你居然没时间吃,而气急败坏的按了一下光盘的Eject按钮……哈哈,害怕了?放心,在Linux里面这种事情绝对不用你操心。 

要使用光盘,首先把光盘安放好以后,执行以下命令: 

mount -t iso9660 /dev/cdrom /mnt/cdom 把光驱挂装到/mnt/cdrom目录 

-t参数是指定光盘的文件系统类型,一般来说,光盘都是用的iso9660标准的格式。接下来的/dev/cdrom是你的光驱对应的设备文件,我们前面说过每一个硬件设备都对应了一个标准的设备文件。最后一个/mnt/cdrom目录是你的一个本地硬盘上的目录,在使用以前如果发现没有这个目录,可以建立一个。当然也不一定非要使用这个目录,你甚至可以很变态的使用mount /dev/cdrom /root命令把你的光驱挂装到你的的/root目录,这样一来你的/root的内容将不再是原来的内容,直到你取消挂载。 

下面的命令取消挂载: 

umount /mnt/cdrom 或 umount /dev/cdrom 

这两个命令都可以把刚才挂装上去的光盘取消挂载,只有这样你的光盘才能取出。不行的话,你再执行一次挂装命令,然后按一下光驱上的Eject按钮,看看有没有什么反应啊?没有,对不对?这就是Linux的一个优点,虽然操作起来有点麻烦的感觉,但是想想看,非常安全和稍微的复杂,你选哪一个? 

使用软盘的方法也很类似: 

mount /dev/fd0 /mnt/floppy 

/dev/fd0是你的软盘对应的设备文件,后面的自然是你的挂装目录。但是如果这个时候你想要尝试能不能在没有取消软盘的挂装就推出软盘,你就是一个非常BT的人了。有没有搞错?软盘的退出是机械的操作,你硬要按出来,我有什么办法?那么取消软盘挂载的方法也是很类似的: 

umount /dev/fd0 或 umount /mnt/floppy 

其实挂装时候第一个参数-t,可以省略,因为系统会自动的判断应该用什么样的格式来识别。不过知道了我们用的软盘或者光盘的格式,对于挂装一个ISO文件有帮助。 

mount -t iso9660 -o loop /home/kris/somewhat.iso /mnt/cdrom 

我们都知道现在网上有很多的ISO文件,就是把光盘的所有内容打包成为一个文件,方便网上的传送。我们获得这样的文件以后不一定非要用刻录机把它刻录成为光盘,我们只要用上面的命令就可以把光盘的ISO文件挂载到/mnt/cdrom目录了。第一个参数-t iso9660就是光盘使用的文件系统格式,第二个参数是loopback的意思。 

取消挂装:umount /mnt/cdrom 

2. 管道命令 

管道命令是Linux系统的一个很重要的内容,这里我们只介绍一些简单的。 

首先我们已经学过一个命令cat,用来显示一个文件的内容,但是你有没有遇到一个文件很长,一页显示不完的情况?如果你需要把一个很长的文件分页显示,每当你按一个键才显示下一页的话,你可以用more命令: 

more LoveLetter 
这样,LoveLetter的内容显示在屏幕上,没到一页就自动停下来,等待你的按键,然后才继续显示下面一页。 

可是如果我们用ls命令显示一个目录的所有文件的时候遇到一页不能显示完的情况该怎么办?这就需要一个管道符号“|”,就是“\”按钮上面的字符: 

ls /dev | more 

下面,我们遇到一个新的问题,我们不仅仅想要看看/dev目录下面有哪些文件,我们还希望用一个文件来纪录刚才ls的命令显示的所有结果,难道需要用手工输入?不需要,我们介绍两个管道符号:“>;”“>;>;”,也就是大于符号啦。 

ls /dev >; filenames.txt 

还有一个管道符号是由两个大于号组成的“>;>;”,它和刚才“>;”的区别在于一个大于符号的管道是用来创建一个新的文件filenames.txt,如果已经有了同名的文件就复盖掉以前的内容;而两个大于符号的管道是用来在已经存在的文件后面追加新的内容,如果没有这个文件就创建它。 

现在我们vi filenames.txt看看一共有多少行,是不是1000多行啊?我们运行 

ls /dev >;>; filenames.txt 

再来vi filenames.txt看看,是不是一共2000多行啦? 

其实这两个管道符号很容易记忆,向左边的箭头意思就是把前面命令的内容输入到后面的文件中去,刚才那个“|”管道符号是用来把前面命令的输出结果当作后面一个命令的输入数据。下面我们看一个和刚才“>;>;”刚刚相反的管道符号“<<”: 

cat >;>; friends << "EOF" 
>; a 
>; b 
>; c 
>; EOF 
运行第一行以后,意思就是把我们接下来的输入内容保存到friends文件里面,当我们输入“EOF”的时候结束。“<<”的意思就是向前面的命令传送一个数据。 
中间我象征性的输入了a b c三行,每一行前面的“>;”是系统自动产生的提示符号。第四行输入“EOF”系统就保存刚才输入的a b c三行到一个叫做friends的文件里面去。 
现在我们cat friends看看是不是刚才的输入成功的保存了。怎么样,同样的命令,使用不同的管道符号,即可以显示文件内容,也可以用来创建文件,这就是管道符号的强大 

3. Linux使用技巧(没有整理完成,有待大家的帮助) 

Linux中有太多的使用技巧,这里慢慢的总结: 
4. 基本命令总结 

1) ls 

ls --color=never *.txt >; report 不显示文字颜色,将所有txt文件记录到report文件中 

2) cd 
cd ../ 到上一级目录 
cd ../.. 到上二级目录 
cd ~ 进入用户的个人目录,root用户就是/root目录,kris用户就是/home/kris目录 

3) rm 
rm -fr 目录名 直接删除一个目录和里面的所有目录,没有任何提示 

4) cp 
cp 源目录 目标位置 -R 复制原目录里面所有的文件和子目录的内容 

5) echo 
echo message “我爱你” 在字符界面下面显示一些内容,这里是“我爱你” 

6) export 
export LC_ALL= 定义一个变量LC_ALL并且设置为空NULL 
export LANG=zh_CN.gb2312 定义一个变量LANG的值是zh_CN.gb2312 
export http_proxy="
http://xxx.xxx.xxx.xxx:port
定义http代理服务器 

7) find 
find -iname [目录] 文件名 在指定目录里面(如果不指定目录就是当前目录)查找指定文件名的文件 

grep 
ps -A | grep some_command 

用ps命令加上-A参数显示所有的当前运行的进程,用管道符号“|”加上grep命令检索是否有我们指定的some_command运行 

9) lynx 
lynx 
www.google.com 

字符界面的网络浏览器,我们这里用来浏览
www.google.com,因为没有图片,所以非常快

分享到:
评论

相关推荐

    linux基础教程资源合集(精华)PDF版

    Linux,在今天的广大电脑爱好者心中已经不再是那个遥不可及的新东西了,如果说几年前的 Linux 是星星之火的话,如今 Linux 不仅在服务器领域的应用取得较大进展,而且在桌面应用领域也有越来越多的人选择使用。...

    C#入门经典教程三部曲

    本教程“C#入门经典教程三部曲”旨在为初学者提供一个全面且深入的学习路径,从基础到高级,帮助你掌握C#的核心概念和技术。 第一部曲:“C#完全手册”作为入门经典,主要涵盖了以下几个关键知识点: 1. **C#语法...

    Red.Hat.Linux.9宝典(中文版)

    经典Linux入门啊,中文影印完整版,本人资源全都是免费的,超强超多的电子书,请加关注!!!!!!!!!!... 本书全面、系统地介绍了Red Hat ...本书适用于Red Hat Linux技术开发人员、系统维护人员和广大Linux爱好者。

    Linux鸟哥 私房菜

    《Linux鸟哥私房菜》是一本深受Linux爱好者和专业人士喜爱的经典教程,它全面而深入地介绍了Linux操作系统。这本书不仅适合初学者入门,也适合有经验的Linux用户深化理解和提升技能。书中涵盖的内容广泛,包括了...

    鸟哥linux私房菜

    《鸟哥的Linux私房菜》是一本深受Linux爱好者欢迎的入门级教程,特别是其第四版,更是被视为经典的Linux学习资料。这本书详细介绍了Linux操作系统的基础知识,旨在帮助初学者快速掌握Linux系统的使用和管理。 首先...

    MySQL培训经典教程

    - **市场需求分析**:市场上关于MySQL的专业培训资料相对较少,使得很多爱好者难以深入学习MySQL。 #### 三、MySQL培训教材定位 - **教材定位**:本书面向具有一定计算机基础知识的读者,旨在提供一套系统的MySQL...

    树莓派入门指南.pdf

    综上所述,树莓派不仅仅是一款小型计算机,更是一个充满无限可能的平台,适合各种年龄层的计算机爱好者学习和探索。无论是用于编程学习、个人项目还是家庭娱乐,树莓派都能提供强大的支持。随着技术的进步,树莓派的...

    linux程序设计(英文版第四版)

    《Linux程序设计(英文版第四版)》是一本深受Linux开发者和爱好者推崇的经典教程,它深入浅出地讲解了在Linux环境下进行程序开发的各种技术与技巧。这本书对于想要提升Linux编程技能的人来说,无疑是一份宝贵的资源...

    OpenCV3编程入门

    总而言之,《OpenCV3编程入门》是一本全面覆盖OpenCV3基础和进阶知识的实用教程,对于想要踏入图像处理和计算机视觉领域的爱好者来说,是一份宝贵的资源。通过阅读和实践书中的例子,读者可以逐步提升自己的技能,...

    linux设备驱动程序 第二版 完整版

    《Linux设备驱动程序》第二版是Linux内核开发者和爱好者们不可或缺的一本经典教程,它详细阐述了在Linux操作系统中编写设备驱动程序的各种技术和实践。这本书主要针对的是Linux内核版本2.4,尽管现在更现代的内核...

    书籍——Linux——清晰

    【Linux经典书籍】是IT领域的宝贵资源,尤其对于学习和研究Linux操作系统的人来说至关重要。这些书籍涵盖了从基础到高级的各种主题...无论是对于个人兴趣还是职业发展,这些资源都是Linux爱好者和专业人士的宝贵财富。

    树莓派入门使用手册

    这款设备因其小巧的体积、低廉的价格和强大的可扩展性而受到广大爱好者喜爱。以下是一份详细的树莓派入门使用手册,涵盖了从硬件设置到软件配置的全过程。 一、树莓派硬件介绍 树莓派主要由主板、处理器(BCM2835/...

    linux相关资源.docx

    9. **Cool Retro Term**:模拟经典计算机风格的界面,适合复古爱好者。 10. **Termius**:专为远程服务器管理和SSH连接而设计的应用程序。 #### 二、Linux开源项目推荐 对于希望深入了解Linux内核或想要参与开源...

    NOI Linux学习资料集(PDF)-2020-10-27.rar

    【NOI Linux学习资料集】是一份专门为信息学竞赛(NOI)参与者准备的Linux学习资源,涵盖了从基础到进阶的各种知识点。这份资料集旨在帮助参赛者掌握...同时,这些资源也能为非竞赛的Linux爱好者提供宝贵的自学材料。

    dynampic的经典的教程

    总之,《Dynamips/Dynagen/Pemu中文教程》是一份全面且实用的指南,它不仅适合初学者入门,也为高级用户提供了深入的技术细节和实践案例。通过这份文档的学习,读者可以充分掌握如何使用这些工具构建和管理复杂的...

    20本最好的Linux免费书籍目录

    适合任何希望学习GIMP的专业人士或爱好者。 #### 十四、The Linux Knowledge Base and Tutorial - **作者**:James Mohr - **格式**:PDF - **页数**:614页 - **主要内容**:这本书是一本全面的Linux知识库和教程...

    鸟哥的私房菜

    《鸟哥的Linux私房菜》是一本深受Linux爱好者、运维人员及开发者欢迎的经典教程,尤其对于初学者来说,它提供了全面且深入的Linux基础知识。基础版主要关注于Linux操作系统的基础操作、系统管理以及基本的网络配置等...

    树莓派资料包(全).rar

    树莓派是一款基于Linux操作系统的微型电脑,它以其小巧的体积、低廉的价格和强大的可扩展性,深受硬件爱好者和DIY发烧友的喜爱。这个“树莓派资料包(全)”是一个综合性的资源集合,旨在帮助新手快速入门并掌握...

    学习ARM需要的资料书

    无论是对于想要从事嵌入式系统开发的专业人士还是爱好者而言,都是不可或缺的参考资料。 2. **《Linux内核完全注释》** - 该书通过对Linux内核源代码进行逐行注释的方式,帮助读者深刻理解Linux内核的工作原理。...

Global site tag (gtag.js) - Google Analytics