安装 Linux 应知的十件事
Linux 不是 Windows。尽管它们也有相似之处,但你必须意识到,在你能舒舒服服的使用 Linux 之前,可能得先学习一些处理事情的新方式。Linux 是 UNIX 的开源克隆版本,UNIX 是个在 DOS 和 Windows之前就已存在的健壮的多用户操作系统(OS)。下列条款一般而言适用所有基于 UNIX 的 *nix 系统,如 Linux 和各种 BSD 发行版。鉴于本文之目的,假定它是各种 Linux 发行版。
下面是你应知道的十件事——
文件系统
和那些为每个盘建立一棵文件树的操作系统不同,Linux 的整个文件系统就是一棵巨大的树结构。最顶部是"/"(根目录),所有的文件夹、文件和驱动盘都是这个 Root 的分支。
例如,你有两个硬盘驱动器(名为 a 和 b),一个软盘驱动器和一个 CD-ROM,第一个硬盘上有两个分区(名为 a1 和 a2)。那么在 Windows 里,其组织如下:
- 硬盘a, 分区一(hda1): C盘
- 硬盘a, 分区二(hda2): D盘
- 硬盘b(hdb1): E盘
- 软驱: A盘
- 光驱: F盘
而在 Linux 里,你将只有一个文件系统,而非上述 Windows 里列出的五个。每个盘都被挂载到这个树结构,操作起来与文件夹相仿。各个盘的组织可以是如下方式:
- hda1: / (根目录)
- hda2: /home
- hdb1: /home/user/music
- 软驱: /mnt/floppy
- 光驱: /mnt/cdrom
我们的 D 盘和 E 盘都附加在 C 盘里,因此无需回到顶部才能切换不同盘。这一切换动作和我们从一个文件夹进入另一个文件夹一致。对于软驱和光驱也是如此,它们都作为这个文件系统的一部分加载在 /mnt 目录下。实际上,这些盘几乎可以加载在 Linux 系统的任意一处,这取决于安装程序或 /etc/fstab 文件的设定,该文件告诉计算机把东西(译注:驱动器,分区等等)加载到何处及如何处理它们。 See Figure A.
点击在新窗口中浏览此图片
模块化系统
想想 Windows XP,Win2k,Win98,Win95 和 Apple OS X 的内部构造吧。每个系统的内部组件构成不同,图形界面也不一样。如果你想要 XP 的 Media Player、Win98 里的文件管理器、Win2k 的稳定性和 OS X 的漂亮界面集于一身呢?在 Linux 里,系统的每个方面都各自独立,因此你可以混和搭配各个部分,来构建自己的"弗兰肯斯坦"系统。你可以从各种不同的软件里挑出自己想要的防火墙、多媒体播放器和文件管理器。
微软"塔式"操作系统的方方面面都是互连和相互依赖的,与此不同,Linux 系统则像个大市场:每件东西都为共同的利益一起工作,但是即便厂商(系统的独立部分)被排除在外,该系统仍能运作。不需要多媒体播放器或文件管理器吗?那就干掉它!你的系统不会变成破塔一座。
这种模块化便是如此众多的 Linux 发行版(通常称为 distro)存在的原因。任何个人或公司都可以混和和搭配自认为最有用的程序,然后给这个合集取个响亮的名字。RedHat, Xandros, SimplyMEPIS 和 Suse 就是几个典型的发行版。
一些懒虫使用一些大型发行版所提供的设置,不过会替换其中的程序。这便是 Linux 的风格,就长期而言,混和搭配的方式给用户更多选择。 DistroWatch.com 目前罗列的 Linux 发行版超过 350 个。其中的许多发行版是为服务特定人群而定制的,但稍加调整都可以运行同一个程序。
程序可以替换,图形用户界面(GUI)也是如此。GUI 可以为你提供一个现代操作系统的外观式样,包括鼠标、程序图标和菜单等。任何 Linux 系统(对了,得是在真正的电脑上运行的,而非电话机上)都可以使用大量不同的 GUI 之一,正如它能运行多种 web 浏览器或不同的 email 客户端程序。
想让自己的系统看上去和 Windows 想象吗?采用 XP 主题的 FVWM 即可。追求更快的速度?可以试试 IceWM。想要更多功能?试试 GNOME 或 KDE 吧。上述这些 GUI 都有各自的优缺点,但它们都为用户提供了一个可用鼠标操作的界面。尽管这可能造成每个 Linux 屏幕不同,但它们在幕后都做着一样的工作;多观察观察,就能体会到这一点。
硬件、软件及其之间的一切
自诞生起的短短几年里,Linux 已有了长足的发展。其历史还不到 Microsoft Windows 的一半,但 Linux 却更强大、更稳定,资源要求也低,在图形界面上也堪与那个来自 Redmond(译注:微软总部所在地)又昂贵又不稳定的 OS 媲美(若非更好的话)。
Linux 的一个不足是目前还未得到厂商的广泛支持。譬如,如果你真的很喜欢 QuickBooks,那么抱歉,Linux 上没法直接运行该软件。目前已有多个项目试图让 Windows 程序可在 Linux 中运行,比如 Cross Over Office 和 Wine,但并不总是有效,要视 Windows 程序而定。除非软件厂商决定将其程序移植到 Linux 上,否则你就无法在 Linux 上直接运行这些程序。
当然,也并非一无所有。可在 Linux 上直接运行的开源软件多达 15000 个。由于这些程序(通常)是免费的,因此其质量参差不齐,不过大部分程序都写的很棒,而且仍在不断改进中。这些程序还能导入和导出非本地文件类型。GNUCash 可以很好的读取那些 QuickBooks 文件, OpenOffice.org 能读取 MSWord 的 *.doc 文件。如果你不喜欢 GNUCash,也别失望,还有其它功能类似的程序可免费取得。越来越多的软件公司已开始发布对应的 Linux 版本。
硬件的情况也差不多。正如你不能期望货架上的每个硬件在苹果机上都好使,Linux 也是如此。大部分标准硬件工作完好;硬盘、内存、闪盘、主板、NIC 和数码相机在 Linux 下都没什么问题。稍新的、最新的硬件可能会有问题。除非硬件厂商自己提供 Linux 的支持,否则这些硬件工作所需的驱动程序就必须得由 Linux 社区编写,而这是由社区成员的业馀时间无偿完成的。
由于硬件厂商通常直接与微软合作以保证兼容性,而让 Linux 志愿者自行解决 Linux 上的硬件支持,因此和 Windows 支持相比,Linux 总有些滞后。笔记本通常因其不标准的硬件而声名狼藉,哪怕要在 Linux 里映射一个专有键都是一个不小的挑战。好消息是,正如软件那样,越来越多的公司看到了 Linux 的未来,对 Linux 的硬件支持也不断在改观。
Linux 机器的硬件和软件之间一切都由内核主宰。内核负责硬件和软件的连接,每隔几个礼拜就可以在Internet上获取更新后的内核;现在的最新版本是 2.6.24。如果你的硬件目前未被支持,换一个更新的内核就有可能解决问题。当然,要自己安装内核并非易事;这时,就轮到软件包管理器出场了。
软件包管理器 - 让程序安装更简单
在 Linux 里安装程序有许多方法,但是最简单的方法是使用发行版自带的包管理器(Package Manager PM)。PM 可以确保安装上所需的缺失文件(也称为依赖包),以便程序正确运行。发行版的选择常常归结到自己喜欢的 PM 类型,不过只要你能找到对应发行版的软件包,任何 Linux 软件都可安装成功。
这些PM通常都有程序的在线源,应用程序的安装可以简单到,只需在源里搜索该程序,然后点击安装。在 PM 列表里找不到 IceWM 或 MPlayer?放心,总有办法添加一个包含有所需软件的新源。典型的 PM 包括:用于 Debian 及其衍生版本的 Synaptic(基于 dpkg 和 Apt);RedHat 及其衍生版本的 Yum;SuSE 及其衍生版本的 YaST2;以及 Gentoo 的 Emerge 等。
权限
Linux 支持多用户,并将用户分成组。用户对自己的文件拥有读、写或执行(read,write,execute R/W/X)权限,以及改变这些权限的权限。由于 Linux 的设计目标是多用户,因此每个用户都有自己的密码,这样可以限制别人对其文件的访问。这些就是所谓的用户权限。
每个用户都属于一个或多个组,用户可以设置自己的文件/文件夹权限,可让同组其它用户读取但不能写这些文件,或其它 /R/W/X(读/写/执行)三项的组合。这就是组权限,比如 Joe 和 Susan 同属 Accounting 组,那么他们可以允许 Accounting 组成员访问各自的文件,同时限制 Sales 组成员访问自己的文件。
其它权限则可以允许或拒绝组外的任何人访问这些文件。这些权限的存在是出于整个系统的安全,还有每个用户的数据的安全。大部分家庭用户只需保留文件的默认权限即可。 (See Figure B)
点击在新窗口中浏览此图片
Root 根用户(不要和文件系统的/即根目录混淆),如管理员,有权处置所有文件,是唯一能够更改系统全局设置的用户。根用户拥有自己的密码,用来进行系统维护。这一差别可以防止普通用户在系统上安装有害的间谍软件,或删除重要文件。
主目录
Windows 里有“我的文档”,但是那些不是文档的文件又该放到哪儿呢?答案通常是 Windows 的桌面!Linux 里的桌面也可能搞的乱糟糟,不过每个用户都有自己的主目录,通常位于 /home/user。在主目录里,你可以存放文档(/home/user/documents)、程序连接、音乐(/home/user/Music)或其它任何东西。我们可以在主目录里创建文件和文件夹,随意进行组织或胡乱堆砌,就像在我们自己的家里那样。根据我们的权限设置,我们可以允许或拒绝任何其他用户(Root 用户除外)访问这些文件。
默认安装有区别
不同的 Linux 发行版之间有一些区别,比如某些文件的存放位置或某些缺省程序的名字等。知道 RedHat 和 SuSE 的文件系统可能有些区别就已是一个很好的开始。大部分用户无需知道那些区别的细节,但是应当知道其内部文件系统可能有些微不同。在寻求帮助时,务必让人家知道自己运行的发布版。如果使用系统时未遇到麻烦或者自己也不想区设置复杂的幕后操作,那就别为此费太多心思。
命令行界面(CLI)或"如何运行"
在类似开始(译注: Windows 里的那个 Start 菜单)菜单里,xterm 程序(也称控制台)可以启动一个终端,和 DOS 窗口有点相近,但实际上它比 DOS 出现更早,功能也更强大。这就是命令行界面(Command Line Interface CLI),是我们喜欢的 OS 之源头,每个 Linux 发行版里都有。在此我们不会深入细节,那得写上好几本书,总之 CLI 是个很有用的工具,查找/解决计算机系统故障时常要用到它。如果你在 Internet 上寻求帮助,而有人要你运行 lspci,实际上是要你启动 xterm,输入 lspci,然後敲入回车键,然后提供给他们屏幕上的输出。
当你启动 xterm 时,你通常是个权限受限的普通用户。要在 xterm 里进入 Root 用户模式(参考上面的权限),只需键入 su [回车键],然后输入 Root 密码 [回车键]。现在你便拥有了大量权利,可要与人为善啊。 Root 用户可以破坏任何人的数据,包括Linux运行所需的系统文件。退出 xterm 或 su 模式,可输入 exit [回车键]。
Ctrl-alt-escape
(注:Ubuntu 中有系统监视器,所以不需要该功能。)
键入 Ctrl-alt- escape 组合键会将你的鼠标变成一个X骷髅头或其它不吉利的鼠标箭头。在该模式中,只要点击一个有问题或冻结的应用程序,便可将其杀死(kill)。这和 Windows 任务管理器里的结束进程类似,不过要谨慎使用。如果你不想杀死任何程序,键入 Esc 键可退出 kill 模式。如果在上述模式中,点错了程序(包括桌面 GUI),可能造成严重的麻烦。
与Internet为友!
许多发行版本都有用户论坛,里头遍布着问题、答案和技巧。LinuxQuestions.org 是个提供 Linux 知识和帮助的综合性网站,相当不错。在论坛上发帖提问之前,务必先在网络(如 LQ 和 Google)上搜索一下自己的问题,避免重复提问那些可能已解决的问题。此外,还要查看一下自己找到的答案的回答时间,因为在快速变化的开源软件世界里,那些老旧的答案可能不再适用。提问时,尽可能提供足够有效的系统相关信息,例如:
- 处理器类型(Intel、AMD 还是 Apple PPC?)
- 使用的发行版(SuSE?Debian?)
- 使用哪个软件遇到问题,以及
- 其它相关信息
保持一个开放的头脑
在过去几年里,Linux 和其它开源软件有了快速飞跃的发展,但是对于来自闭源的 Windows 世界的用户而言,Linux 的内部工作机制可能相当陌生。一个开放的头脑和乐于分享知识的意愿有助于 Linux 社区的发展,欢迎你加入我们的行列.