• 2008-12-26

    新手指南 (简体中文) - [linux]

    新手指南 (简体中文)

    From ArchWiki

    Jump to: navigation, search

     

    Article summary
    本文针对新手,提供了极其详尽的Archlinux的安装过程向导,和相关的简要说明。
    已有的语言版本
    Česky
    Dansk
    简体中文
    正體中文
    Deutsch
    English
    Español
    Français
    Italiano
    Lietuviškai
    Português Brasil
    Türkçe
    相关文章
    Arch Linux 官方安装指南(更通用的安装方式)

    Contents

    [hide]

    [edit] 前言

    [edit] 所有你一直想知道关于安装Arch的事

    这篇文档将会指导你安装和配置Arch Linux ── 一个简洁、轻量级的GNU/Linux发行版,一个类UNIX的操作系统。本文虽然是面向Arch新用户,但也尽力为所有人提供强大的参考资料和信息。本指南将试图讲述该如何获得一个完全配置好的Arch Linux系统(拥有一个图形桌面环境,可以看DVD、上网、发email和听音乐),但显然是不可能涵盖(甚至是预见)所有可能的选择。因此本指南会专注于某些关键性有帮助的步骤,想要进一步深入了解你可以查看Arch Linux Wiki或者Arch Linux论坛。同时有兴趣的话你还可以了解一下Arch之道,它概述了Arch Linux发行版背后的哲学思想。

    本文分三大部分:

    第一部分:安装基本系统

    第二部分:安装X并配置ALSA

    第三部分:安装并配置桌面环境

    [edit] 别怕(DON'T PANIC)!

    要知道Arch Linux的安装方法和过程也许会和你所使用过的其它GNU/Linux发行版非常不同,特别你是个新手的话将更能体会到这点。通常,GNU/Linux发行版会在一张或者一堆CD(甚至是DVD)上捆绑了大量的软件,包含了缺省桌面环境、缺省的应用程序和设置、硬件自动检测和图形化的安装程序,一切都是替你选择好了的。相反的,Arch Linux系统是让用户自己只是用一个bash shell和基本系统工具,从ncurses installer和基础系统上建造起来的。这就是Arch之道。不象其它较死板的发行版,它没有强加于用户的缺省环境或者配置。你可以在命令行使用pacman通过互联网连接从Arch软件仓库安装软件包,直到你的系统配置成你希望的样子。这给予了用户最大的弹性、选择性和对系统资源的控制。因为是建造了它,所以你肯定能了解系统里具体细节,知道底层都有些什么。

    Arch Linux系统是通过编辑文本文件进行配置的,没有提供图形界面的工具,所以需要对系统和linux相对熟悉。 Arch Linux针对的是有能力的GNU/Linux用户以及希望花费时间学习系统知识的用户。

    Arch是一个可以被用户塑造的工具。

    [edit] Arch之道

    Arch的设计思想是"保持简洁"(keeping it simple)。

    这里的‘简洁’并不是指‘简单’或者‘用户友好’,而是‘没有不必要的增加、修改或者复杂性’。简而言之,即优雅、极简之法。


    "Simple' is defined from a technical standpoint, not a usability standpoint. It is better to be technically elegant with a higher learning curve, than to be easy to use, and technically crap." -Aaron Griffin

    "The extraordinary part of [my method] lies in its simplicity..I have always believed that the simple way is the right way." - Bruce Lee

    Occam's razor: Entia non sunt multiplicanda praeter necessitatem or "Entities should not be multiplied unnecessarily." The term razor refers to the act of shaving away unnecessary assumptions and complications to get to the simplest explanation, method or theory.

     

    Note: 仔细遵循本指南是成功安装一个配置正常的Arch Linux系统的基本要点,因此认真仔细的阅读本文
    • 你也可以将本指南打印出来,作为一个较为有用的Arch Linux用户手册。
    • 如果你想在这个wiki里增加内容,请适当描述清楚“为什么会这样”以及“该怎么办”。最佳的文档应该能教会我们如何做和为什么这么做!
    • Arch的wiki是项优秀的资源,可以第一时间用来解决日常问题; 如果找不到答案也可以求助IRC和论坛


    欢迎使用Arch!现在,让我们开始吧。

    [edit] 第一部份:安装基本系统

    [edit] 获取最新的Core ISO

    你可以从www.archlinux.org/download/获取Arch最新的官方快照。

    官方提供两种安装方式(本地安装的core-iso 和 网络安装的FTP/HTTP-downloads),推荐选择core-iso,本指南内容主要是基于core。

    Core-iso包含了创建一个最小GNU/Linux基础系统所必须的软件包。请注意最小基础系统不包含图形界面。 Arch Linux系统的其余部分,包括图形用户界面,需要在命令行里用二进制软件包和配置文件建立的。这个过程会在随后叙述。

    将下载到的ISO刻录到CD。通常为了刻录的稳定可靠(速率越低刻录质量越有保证),推荐刻录的最大速度不超过16倍速。

    [edit] USB安装方式

    警告:这样做会把USB盘里面原有的数据格式化。

    插入USB盘,找到其路径,把.img安装镜像放入USB:

    dd if=archlinux-2008.06-[core_or_ftp]-i686.img of=/dev/sdx

    if= 后面是.img镜像文件的路径,of= 是你的USB路径. Make sure to use /dev/sdx and not /dev/sdx1.

    检查镜像的完整性md5sum (可选,建议检查):

    Make a note of the number of records (blocks) read in and written out, then perform the following check:

    dd if=/dev/sdx count=number_of_records status=noxfer | md5sum

    The md5sum returned should match the md5sum of the downloaded archlinux image file; they both should match the md5sum of the image as listed in the md5sums file in the mirror distribution site.

    [edit] 启动Arch Linux光盘

    可以完全遵循以下指引,建议参考官方安装指南

    插入刻录好的光盘或者USB盘,然后用它启动。可能需要在BIOS里改变一下启动顺序使得光盘/USB先被启动。

    启动了Arch Linux光盘后,选择菜单里的"Arch Linux Installation / Rescue System"。如果你需要改变启动参数,可以按‘e ’键来编辑启动行内容。下面这些参数可能对你有用:

    • ide-legacy 如果在使用IDE驱动器时遇到麻烦
    • noapic acpi=off pci=routeirq nosmp 如果在启动过程中系统挂起
    • memtest86+ 如果你想检查内存是否有错
    • lowmem 对内存较小的老机器会有所帮助

    'lowmem'的系统需求:

    96 MB RAM x86_64 (选择安装所有软件包)

    85 MB RAM i686 (选择安装所有软件包)

    64 MB RAM i686 (只选择基础软件包)

    系统接着就会启动,当启动就绪后会出现一个欢迎信息和某些解释。

    [edit] 登录并根据需要更换键盘映射表

    登录身份处输入root,登录(此时root还没密码)

    如果你使用non-US键盘布局,在提示符后输入

    km
    

    然后选择相应的键盘映射表(常用的已经更新到2008-06)。

    例如以挪威为例:

    在控制台键盘映射表屏幕上选择

    no-latin1
    

    在控制台字体屏幕选择

    lat0-16
    
    

    为谨慎起见,选择"default8x16.psfu.gz"作为控制台字体。

    [edit] 开始安装

    键入

    /arch/setup 
    

    开始安装。

    [edit] 实时查看帮助文件

    在刻录的livecd里面,已经包含了完整的安装指南,在安装的时候可以边安装边查看,按组合键<ALT>+F2 可切换到控制台vc/2(alt+f3,alt+f4……分别可以切换到对应的控制台vc/3,vc/4……以此类推),然后输入:

    less /arch/beginnersguide.txt
    

    按组合键<ALT>+F1回到安装控制台vc/1。

    [edit] 选择安装来源

    接着会出现一个选择安装来源的提示。如果你用core ISO的话请选择CD,如果使用FTP ISO的话则选择FTP。

    • 如果选择 CORE installer,可以直接看下面的硬盘分区配置。
    • FTP/HTTP only: 选择这个需要预先加载网络驱动以便联网安装. 使用Udev来加载这些模块非常有效.

    按组合键ALT+F3切换到控制台vc/3,确认一下看其是否生效 invoking ifconfig -a . (Select OK to continue.) ——把后面的网络配置提前看

    [edit] 硬盘分区配置

    选择第一个菜单项"Prepare Hard Drive"。请注意,"Auto-Prepare"(自动分区)并不是最佳的选择,因为它只分配了最基本的三个区( /,/home,swap)在这里我们用手工进行硬盘分区。选择"2. Partition Hard Drives",接着选要分区的硬盘(比如:/dev/sdx),然后按你需要编辑分区表。

    Arch Linux安装程序使用cfdisk公用程序来对硬盘进行分区。

    接下来,熟悉GNU/Linux的用户可以跳过这段内容直接到下面选择软件包

    [edit] 分区信息

    对磁盘进行分区是指在磁盘上定义若干区域(分区),每个都象是一个独立的磁盘,可以在其上创建(格式化)一个文件系统。 分区的类型分为主分区(Primary)、扩展分区(Extended)和逻辑分区(Logical)三类。

    主分区可以被启动,一个物理磁盘最多能有4个主分区。要使用超过4个的话,只能使用一个包含了逻辑分区的扩展分区。(译者注:为避免误解,较易懂的解释应该是:一个磁盘不算逻辑分区最多只能有4个分区,这4个要么全是主分区,要么就是3个主分区+1个扩展分区,当然你将整个磁盘划为1个主分区也是没问题的,只要不超过4个分区即可)

    扩展分区通常不会被直接使用,它是作为逻辑分区的“容器”存在。一个硬盘只能有一个扩展分区,可以在里面继续再划分逻辑分区。

    当对一个磁盘进行分区时,是按这种数字顺序命名:主分区为sda1-3,跟着是扩展分区sda4(译者注:在/dev和fdisk -l里是看不到这个sda4的),在扩展分区中划分出来的逻辑分区分别是sda5、sda6,如此类推。

    [edit] 交换分区swap

    交换分区Swap是虚拟内存在硬盘上驻留的地方,内核可以用它来储存在物理内存中放不下的数据。

    过去,常用的规则是将交换分区大小设置为物理内存的两倍。但是随着时间推移,现在的计算机已经有更大的内存容量,这条规则已经不适用了。通常,512MB内存的计算机,两倍(1G)的还是够用的。而1G内存的计算机,一倍的也够用了。如果你有更大的内存(比如超过1GB),也许可以完全把交换分区忘了,不推荐这样做!

    • 如果你打算使用休眠到磁盘的电源方案,你必须要有不小于内存容量大小的交换分区,有些用户甚至会推荐大于物理内存容量15%的大小。
    [edit] 规划分区

    磁盘分区的规划是十分个人的设置。每位用户的决策都会根据自己计算机的情况和需求而不同。至少需要有一个包含了根文件系统 ( / )的主分区和一个交换分区。你还可以选择给/boot(主要用来存放内核文件)、/usr、/var和/home(用来存放用户个人数据)划出独立分区。一个较好的做法是给 / 和 /home都划分独立分区。这样的话,当你因为某些原因重装Arch Linux(或者其它发行版),你还可以保留你的个人数据例如音乐、图片、桌面环境配置等。

    在本案例中,我们划分一个分区给 /,一个给/home,另外还有一个交换分区。

    [edit] cfdisk

    让我们开始创建一个包含root(/)文件系统的主分区。

    选择New -> Primary,然后输入你希望的分区大小(对一个完整的Linux系统,4到8G是个不错的选择)。分区要位于磁盘的开头部分。选择刚新建的分区,接着选择Bootable将它置为可启动。

    同时选择分区文件系统类型Type,指定为'83 Linux'.。

    给你的/home目录创建另一个分区。选择另外一个主分区设成你想要的容量大小,这取决于你的用户会在他们的home目录里储存多少文件,其大小可能从几百M办公文档到上百G音频视频,所以这里我无法给出一个建议。如果你要使用磁盘所有的剩余空间,记得保给交换分区留一部分(例如1GB或1024MB)。

    同样的,选择Type为'83 Linux'。

    最后,我们给交换分区创建一个分区。选择一个介于512MB到1GB之间的大小并将Type改为82 (Linux swap / Solaris)。

    现在的分区规划看起来应该象这样(基于你的选择大小也许会有所不同):

    Name    Flags  Part Type   FS Type         [Label]         Size (MB)
    -------------------------------------------------------------------------
    sda1    Boot    Primary     Linux                         (4096 - 8192)
    sda2            Primary     Linux                         (> 100)
    sda3            Primary     Linux swap / Solaris          (512 - 1024)
    

    选择Write并输入'yes'。要注意如果你删除了分区的话,这个操作会破坏你磁盘上的数据。选择Quit退出分区程序。选择Done离开此菜单,接着选择"Set Filesystem Mountpoints"。

    [edit] 我有一个IDE设备,为什么看起来它们和SCSI设备一样?

    最新开发的Linux内核里包含了libata和PATA模块,所有的IDE、SATA和SCSI都采用sdx这种命名方式。这十分正常,无需担心。

    [edit] 设置文件系统挂载点

    [edit] 说明:”文件系统格式(filesystems)“和”文件系统结构(file systems)“的区别:

    从技术层面确切的说,文件系统格式(filesystems)是一种数据格式,涉及信息吞吐,比如ext2;而”文件系统结构(file systems)“则是特定操作系统中文件和目录的布局,比如/home/username/games。因此,当你被问及是否创建文件系统格式(filesystems)时,是在问你是否要格式化该分区…但是当程序向你问及挂载点时,你应该给出的则是该分区应该出现在你的Arch Linux ”文件系统结构“中的位置。

    [edit] 文件系统类型

    强烈建议:创建一个交换分区(SWAP)。选择一个合适的分区(本例中使用的是sda3). 安装程序就会询问你是否要创建swap 文件系统; 选择 yes. 接下来, 选择根分区的挂载点(本例中就是 sda1). 然后安装程序就会询问你需要哪一种文件系统。

    再次说明:文件系统的类型取决于个人喜好,下面只是简单的介绍各种Arch linux支持的文件系统:

    1. ext2 - 古老、 可靠的 GNU/Linux 文件系统。 非常的稳定,不过 不支持日志记录功能。磁盘检测速度较慢,因而有些不便(May be inconvenient due to very long fsck's). ext2可以容易地转换成ext3

    2. ext3 - 基于 ext2 系统, 并添加了日志记录功能。 一般认为他比其他文件系统要 稍微的 慢一点, 不过 非常的 稳定并且使用最为广泛,由 GNU/Linux FS 负责维护和开发。

    3. ReiserFS - Hans Reiser 主持编写的高性能的日志文件系统,使用一种非常独特有趣的数据存储检索方法。ReiserFS 效率非常高, 特别在处理很多小文件的时候更是如此。ReiserFS 在挂载的时候相对比较慢. 性能稳定,有着相当好的口碑。 ReiserFS 现在的开发并不活跃(最新的版本是Reiser4).

    4. JFS - IBM's Journaled FileSystem. JFS 效率非常高并且CPU资源占用率比其他任何一个文件系统都要低。并且在挂载和磁盘检测的时候都非常快,在各方面的表现都非常突出,尤其是 conjunction with the deadline scheduler. (参见 JFS.) 但是并不像ext或者ReiserFS那样应用广泛。

    5. XFS - 非常高效的日志文件系统,特别适合处理大文件。在处理小文件的时候稍慢。在挂载的时候也很快。 由于 /var 需要处理很多的小文件,所以可能不太适合作为/var 分区的文件系统。 唯一一个可用的 GNU/Linux 文件系统 with online defragmentation ability. 应用不及ext和ReiserFS那么广泛。

    最主要的差别在于日志系统 (一些类似的在数据库环境中记录着日志变更的东西). 除ext2之外,几乎所有的文件系统都支持日志记录功能. ext3 完全兼容 ext2,因此哪怕你可以用一个非常古老的CD来挂载他,也没问题。 根分区最安全的选择就是使用ext3文件系统。 ReiserFS, XFS, 和 JFS 也可以使用,因为GRUB (启动引导管理器,稍候在安装部分将会介绍到) 都可以从这些文件系统中启动。 你可以通过选择yes来创建文件系统(并格式化分区),接着你就会被提示添加附加分区。 在我们的例子中, 只有 sda2了。 选择一个文件系统类型,并且把这个分区挂在到/home. 再次说明,创建文件系统并且选择Done。然后回到主菜单。

    [edit] 选择软件包

    现在我们要选择安装哪些软件包到系统中。选择CD作为来源,如果你不止一个光驱的话还需要选择使用哪个的光驱。

    软件包选择分为两个阶段。首先要选择软件包分类,然后出现所选分类中软件包的详细列表供你微调。使用空格键进行选择和取消。

    *BASE:包含最小的软件包集合,仅够构建一个可运行的系统骨架。 *SUPPORT:供网络和文件系统用的额外软件包,例如gpm、fuse、dnsutils、无线驱动、ndiswrapper、ntfs-3g诸如此类。 *DEVEL:软件创建工具,如GCC、autoconf、automake和make等等。 *LIB:大量的库文件,如gmp、lebelf、libevent等等。

    • 2008.06 版的软件包选择,只有一个: BASE ,选择之后进入其详细列表.

    在这里,我们对'Select all packages by default'选择'yes'。

    接下来屏幕将显示你所选的软件包。对于新手,较安全的做法是不修改它,而有经验的用户可能希望裁减掉一些不需要的软件包。(例如,不需要的文件系统类型公用程序,不需要的驱动等等。)

    [edit] 安装软件包

    接着,选择'Install Packages'。你会被询问是否希望保留pacman缓冲里的软件包。如果你选'yes',日后你还可以选择对某些软件包进行降级,因此推荐保留(日后你还是可以清除这些缓存的)。安装脚本跟着就会安装所选软件包到你的系统中。这些软件包是二进制的、针对i686优化的,总共仅100MB,因此安装是相当便捷的。

    [edit] 配置系统

    系统接着会询问你是否要选择hwdetect来收集配置所需信息。新手应该选择是('yes')。

    如果是相当熟悉自己的硬件、所需模块,有能力从零开始手动配置/etc/mkinitcpio和/etc/fstab 的高级用户,可以选择否'no'。(当然,此选项是非常复杂的,已经超过本指南的范围,这里就不详细解释了。)

    接下来,系统会询问你是否需要支持从USB设备、FireWire设备、PCMCIA设备、NFS共享、软RAID阵列、LVM2卷和加密卷上启动。如果需要则选'yes',在本案例中以上都不选。

    新手还应该选择让/etc/mkinitcpio/kernel26-fallback.conf使用hwdetect的结果,这将确保你的硬盘控制器相容次序。

    现在系统会询问你使用哪个文本编辑器;如果你不熟悉vi/vim的话可以选择nano。然后就会出现一个包含系统中大部分重要配置文件的菜单。如果你打算查找/etc/rc.conf中可用的选项,只需按Alt+F2切换到另外一个虚拟控制台进行查找,然后用Alt+F1切换回安装程序。

    [edit] 系统配置主文件/etc/rc.conf

    Arch Linux继承FreeBSD的传统,使用/etc/rc.conf作为系统配置的主要文件。这个文件包含了广泛的配置信息,主要用于系统的启动。正如名字中所包含的意思,它还包含了供/etc/rc*文件使用的配置。/etc/rc.conf提供了一个Arch用户可以轻易访问到的,简洁而又范围广泛的精简系统资源配置方案。

    • LOCALIZATION部分
      • LOCALE=: 系统场所(locale)设置,被所有国际化(i18n-aware)的应用程序使用 。从命令行上运行locale可以列出可用的locale设置。此设置缺省是适合英文(US English)用户使用的en_US.utf8。(此处locale的设置必须与/etc/locale.gen一致,详见下文。)中文一般是zh_CN.utf8,如果使用之后乱码,先换回en_US.utf8,等进图形界面后再换回来。
      • HARDWARECLOCK=: 指示开关机时进行同步的硬件时钟,是UTC时间(协调世界时(Universal Time Coordinated), 过去曾用格林威治平均时(GMT)来表示)还是localtime(本地时间)。通常UTC较为好,因为它大大简化了时区和日光节约时间(中国过去称为夏时制)的变更。而当你同时还有其它操

        历史上的今天: