安装arch的笔记和总结

时间:2021-04-24 14:50:32
Arch这个系统,刚开始是在linuxtoy里看到有手册,下载了并看过几眼才接触。对于Arch,它的定义就吸引了 我,毕竟现阶段我还没装过Gentoo,更不用说LFS。另外,Arch的精简,快速和定制性,这些都是我追求的。前段时间全格式化了硬盘,特意留出近 100G的空间就是为了装个linux系统,之后犹疑了几天,到底是装回ubuntu呢还是Arch?上两周周末,总算下定决心,既然是追求,just do it!主要参考了linuxsir上的资料和linuxtoy提供的手册,还有arch官方wiki等等,主要的地址是: http://bbs.linuxsir.org/thread317982.html 完全可以按照这地址里的内容装好arch,只是装好后的配置等最好还是查看多数资料后再弄好点,那样避免一些重复和没必要的错误

开始安装:

  • 1     begin
  • 1.1   寻找速度最快的镜像并下载
http://wiki.archlinux.org/index.php/Mirror
  • 1.2   刻录
使用nero或其他工具刻录,速度最好再×24以上(尽量先看清楚镜像刻录说明要求等再刻录),另外,CD-rw一般情况下质量和刻录速度都比不上CD-r
  • 1.3   设置光驱启动
  • 1.4   基本安装
  • 1.4.1   install
光驱读取字符界面后,直接回车,也可以加一些光盘提供的加载模块命令,或之后才加载
  • 1.4.2  running setup
根据提示,在#后输入/archlinux/setup
  • 1.4.3  CD安装/FTP安装
此处选择了cd安装
  • 1.4.4  分区
可以使用命令cfdisk,当然直接在Partition Hard Drives这步安装更直观一点。没什么好说的,主要就是挂载/home的时候需要手动更改/boot为/home,有其他分区也是这样做。挂载原有分区的时候,提示是否格式化,可视情况选择,不论如何,系统安装完后都会自动挂载的。分区都选择了ext3格式,另外,如果不怎么使用休眠等功能的话, swap可以分512之内或更小就行
  • 1.4.5  选择软件包
至少选择Base,但推荐全都选上,反正也不大。实际情况是,有一次仅选了Base,装完系统后什么都没挂载到,连grub都没有,所以还是全选上吧
  • 1.4.6  配置系统
允许hwdetesct script自动检测硬件,并生成相应配置根据启动时的实际情况选择是否需要对raid,lvm2,和encrypted volumes的支持,以及其他必要的支持选择熟悉的编辑器(nano/vim)后,对/etc下生成的配置文件作适当的修正:
  1. rc.conf:        设置时区为Asia/Shanghai,locale保留默认的en_US.utf8(这样重启后在控制台下可以看到的是英文而不是没配置过时显示不出来的方块乱码(其他语言));hosts为主机名,随便都行;interface那块的设置,主要看上网的方式,dhcp方式为eth0="dhcp",同时注释掉gateway和route两行,若自行配置则必须去掉route中的“!”
  2. locale.gen      设置本机要支持的locale,去掉zh_CN.utf8和zh_CN.gbk的注释或其他语言的注释,比如我就去掉了japan和korea的
  3. root passwd   设置root的管理密码,一定不要忘了这步,否则重启之后可能进不了系统,修改很麻烦的
  4. pacman mirrors   选一最快的安装源或自己输入
  • 1.4.7   安装基础系统及软件包
  • 1.4.8   安装grub/lilo
编辑menu.lst时,timeout改为1,default改为自己需要默认启动的系统对应title的次数(从0开始数起)。grub是安装到mbr下,即sda或hda下,而不是/boot所在的分区
  • 1.4.9  exit
退出安装程序,确认没什么问题后,取出光盘,输入reboot,回车
  • 2  基础配置
  • 2.1   联网
用root用户进入系统,前面rc.conf配置没出错的话,此时就可以上网了,ping测试一下。不行的话,修改 /etc/rc.conf,使用/etc/rc.d/netword restart 重启network守护进程。修改/etc/resolv.conf设置DNS服务器地址。直到正确联网为止(没使用过pppoe协议拨号上网,如adsl,不清楚具体设置情况)
  • 2.2  更新安装包列表
#pacman -Syu
完事后
#reboot
#pacman-optimize 这是优化pacman系统(需要diffutils,#pacman -S diffutils,前面安装时选择了devel包则可不要这步)
安装AUR
#vi /etc/pacman.conf      加入
[archlinuxfr] Server = http://repo.archlinux.fr/i686/
#pacman -S yaourt     (安装一个pacman前端之前更新一下 pacman -Sy)
#yaourt -S tupac       (速度更快的pacman前端,依赖于yaourt)
#tupac -S aurvote     (通过auvote对喜欢的aur软件投票,用“aurvote -h”查看使用帮助)
  • 2.3   安装sudo,创建普通用户

#useradd -mG users,audio,optical,storge,wheel -s /bin/bash yourname

创建一个限制用户,有声音支持,有hal支持,能切换到root权限

#passwd yourname  

#pacman -S sudo

#vi /etc/sudoers 加入:   yourname ALL=(ALL)NOPASSWD:SETENV:ALL(加在root一行下面)

sudo命令补全(仅适用于bash)

#pacman -S bash-completion

#echo source /etc/bash_completion>>/etc/profile

  • 3   安装一个桌面
  • 3.1   xorg

$sudo pacman -S xorg

$sudo X -configure

$sudo vi xorg.conf.new   (作适当修改,如显示器的水平和垂直扫描频率)

$X-config xorg.conf.new  (测试一下配置文件是否能正常工作,用Crtl+Alt+Backspace 退出)

$sudo cp xorg.conf.new /etc/X11/xorg.conf

  • 3.2  安装显卡驱动

$sudo tupac -Ss nvidia    搜索到适合的显卡驱动(我的为n卡,ati卡tupac -S catalys)

$sudo tupac -S nvidia   或$sudo pacman -S nvidia(尽量使用pacman,毕竟是官方认可稳定的)

  • 3.3   安装中文字体
$sudo pacman -S ttf-arphic-uming ttf-arphic-ukai ttf-bitstream-vera wqy-bitmapfont wqy-zenhei 如不安装中文字体,进桌面环境时,若locale是zh*,会出现乱码情况
  • 3.4   安装gnome

$sudo pacman -S gnome   (gnome经过精简,gnome-extra是附加软件,自行选择安装)

$sudo pacman -S gdm    (安装登录器) 启用gdm,注释掉/etc/inittab中  “x:5:respawn:/usr/bin/xdm -nodaemon”这一行,另外再/etc/rc.conf中的DAEMONS 行中加入gdm,即可开机时自动运行

  • 3.5   安装fcitx

$sudo pacman -S fcitx

$cat>>~/.profile<<EOF

>LC_CTYPE="zh_CN.utf8"

>export XMODIFIERS=@im=fcitx

>export GTK_IM_MODULE=xim

>export QT_IM_MODULE=xim

>fcitx &

>EOF

  • 4   安装常用软件
  • 4.1   gnome下的虚拟终端

$sudo pacman -S tilda    (与yakuake类似,有热键控制)

$sudo pacman -S roxterm    (与gnome-terminal类似,但要小巧得多)

  • 4.2   网络浏览
$sudo pacman -S firefox 也可$sudo pacman -S opera
  • 4.3   图像编辑
  1. 代替photoshop的gimp(其实比ps更强大~)$sudo pacman -S gimp
  2. 矢量图形编辑    $sudo pacman -S inkscape
  3. 捕获图像    $sudo pacman -S scrot
  4. 图像查看    $sudo pacman -S gqview
  • 4.4  OpenOffice

$sudo pacman -S openoffice-base openoffice-zh_cn

为了让OpenOffice.org运行与GTK2模式,向shell的配置文件(如:~/.bashrc)添加:

export OOO_FORCE_DESKTOP=gnome

  • 4.5  即时通讯工具

$sudo pacman -S pidgin 也可以安装eva(linux下的一种QQ客户端)

$sudo tupac -S eva        (就是我死活装不上T_T-)

  • 4.6   影音

$sudo pacman -S amarok    (kde下一款音乐播放器,功能非常全)

$sudo pacman -S mplayer mplayer-plugin codecs gstreamer0.10-bad gstreamer0.10-ugly gstreamer0.10-ffmpeg gstreamer0.10-mad gstreamer0.10-mpeg2dec

$sudo -S smplayer    (mplayer的前端,强烈推荐安装,可避免一些配置mplayer的错误)

  • 4.7  下载工具

暂时不需要什么下载工具,所以只装了个firefox的附加软件DownThemAll

参考http://bbs.linuxsir.org/thread317982.html 命令行下载工具,有 wget。此外,aria2 也不错,它支持断点续传和多线程下载:

pacman -S aria2

BitTorrent 下载工具,我们选用 Deluge:

pacman -S deluge

其他的包括 Azureus、rTorrent 等。另外,我们把 aMule 也安装上:

#pacman -S amule

为了能够让 aMule 直接从 Firefox 浏览器中处理 ed2k 链接,我们在 Firefox 的 about:config 中新建字符串 network.protocol-handler.app.ed2k,并将其设为 /usr/bin/ed2k。

电驴工具的话,mldonkey是全世界最快的电驴下载工具(据说的),可代替amule。实际使用中,比amule或其他的电驴工具(如emule)好多了,确实可以说是最快

  • 4.8  文本编辑
$sudo pacman -S vim  gedit  
  • 4.9   VirtualBox虚拟机

$ sudo tupac -S virtualbox_bin   (从AUR安装VirtualBox 的PUEL版本)

$ sudo vbox_build_module  (创建VirtualBox的内核)

$ sudo gpasswd -a YourName vboxusers  (将你的名字加入vboxusers用户组)

$ sudo modprobe  vboxdrv  (如果要立刻开始用,需要加载vboxdrv模块)

$ sudo vim /etc/rc.conf: MODULES中加入vboxdrv,使开机时加载vboxdrv模块.

$ VirtalBox   (从终端运行virtualbox,或从桌面的菜单中运行它) 有时,会因为没有libstdc++5 这个库文件,而使virtualbox不能运行。安装它就是了:

$ sudo pacman -S libstdc++5

  • 4.10  刻录工具
$sudo pacman -S k3b dvd+rw-tools
  • 4.11  文档查看

$sudo pacman -S evince kchmviewer

$sudo yaourt -S chmsee   (也是不错的查看chm文件的一个软件)

  • 4.12   邮件查看
$sudo pacman -S thunderbird thunderbird-i18n
  • 4.13  计算器
$sudo pacman -S gcalctool
  • 4.14  压缩/解压  rar、zip等格式
$sudo pacman -S p7zip  unrar unzip
  • 4.15  星际字典
$sudo pacman -S stardict 字典文件从satrdict官方网站下载,并解压后cp到/usr/share/stardict/dic/目录中
  • 4.16   java支持
$sudo pacman -S jre
  • 4.17   flash插件
$sudo pacman -S flashplugin
  • 5   声音

安装ALSA。实际上,ALSA 已被包含到 2.6 版的内核中。因此,只需安装 ALSA 的相关工具即可:

pacman -S alsa-utils

接着,将当前用户添加到 audio 用户组,以便使用声卡设备:

gpasswd -a YOURNAME audio

同时,将 alsa 添加到 /etc/rc.conf 配置文件的 DAEMONS 中:

DAEMONS=(syslog-ng network netfs crond gdm alsa)

值得注意的是,ALSA 默认是静音状态,需要先打开音量。另外,也可点击”系统 → 首选项 → 音效“进行测试。

$ sudo pacman -S alsa-lib alsa-oss alsa-utils (oss 包解决声卡独占问题)

$ sudo alsaconf   (设置声卡)

$ sudo alsamixer

$ sudo alsactl store  (设置和保存音量,并在 /etc/rc.conf中的 DAEMONS行加入alsa)

$ amixer set Master 75 unmute

$ amixer set PCM 75 unmute  (75 好像是原声,再高的话,声音会失真)

  • 6   可移动设备的自动挂载(HAL + dbus or ivman) 及中文名支持

$ sudo pacman -S hal dbus acpid(hal 依赖 dbus,acpid 可管理设备的电源。)

$ sudo vi /etc/rc.conf

在 DAEMONS行 加入hal,如: DAEMONS=(syslog-ng acpid hal network !netfs @crond @alsa gdm) 注意:如果daemons 列表中有dbus,要移除它,以免出错。hal 会自动加载dbus。

$ sudo gpasswd –a username optical

$ sudo gpasswd –a username storage

把你的用户加入到 optical,storage 这几个组里面。前文中已经加入过了,可跳过。如果用ivman来替代dbus,则需要将用户名加入到plugdev组中。

$ sudo vi /etc/fstab,注释掉下面两行:

/dev/cdrom /mnt/cdrom  iso9660 ro,user,noauto,unhide 0     0

/dev/dvd /mnt/dvd   udf  ro,user,noauto,unhide 0      0

$ sudo vi /etc/hal/fdi/policy/preferences.fdi

可加入一些很有用的规则,如自动挂载NTFS文件系统,自动挂载可移动设备,性能优化,U盘的中文名支持等:

<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
 
    <device>
        <match key="volume.fstype" string="ntfs">
            <append key="volume.mount.valid_options"
            type="strlist">dmask=000</append>
            <append key="volume.mount.valid_options"
            type="strlist">fmask=111</append>
        </match>
    </device>

    <device>
    <!-- Use UTF-8 charset for vfat -->
       <match key="volume.fstype" string="vfat">
           <merge key="volume.policy.mount_option.iocharset=utf8"
           type="bool">true</merge>
       </match>
   </device>

   <device>
       <match key="storage.hotpluggable" bool="false">
          <match key="storage.removable" bool="false">
            <merge key="storage.automount_enabled_hint" type="bool">false</merge>
          </match>
       </match>
   </device>

 <device>
   <match key="block.is_volume" bool="true">
     <match key="volume.size" compare_lt="8000000000">
       <match key="@block.storage_device:storage.hotpluggable" bool="true">
         <merge key="volume.policy.mount_option.sync" type="bool">true</merge>
         <merge key="volume.policy.mount_option.noatime"
         type="bool">true</merge>
        </match>
        <match key="@block.storage_device:storage.removable" bool="true">
         <merge key="volume.policy.mount_option.sync" type="bool">true</merge>
         <merge key="volume.policy.mount_option.noatime"
          type="bool">true</merge>
        </match>
      </match>
     <match key="volume.size" compare_ge="8000000000">
       <match key="@block.storage_device:storage.hotpluggable" bool="true">
         <merge key="volume.policy.mount_option.sync"
          type="bool">false</merge>
         <merge key="volume.policy.mount_option.noatime"
         type="bool">false</merge>
       </match>
       <match key="@block.storage_device:storage.removable" bool="true">
         <merge key="volume.policy.mount_option.sync"
          type="bool">false</merge>
         <merge key="volume.policy.mount_option.noatime"
         type="bool">false</merge>
       </match>
     </match>
   </match>
 </device>

</deviceinfo>

 参看:http://wiki.archlinux.org/index.php/HAL

注意,必须事先安装好ntfs-3g安装包,才能成功挂载NTFS分区。最后:

$ sudo /etc/rc.d/hal restart

即可正常使用HAL支持了,同时移动设备上的中文名(其实其它语言也可以)也可以得到支持。

如果以上不能工作,还可以安装pmount:

$ sudo pacman -Sy pmount

 

 

整个过程看起来挺简单,但这只是不出问题的情况下而已,实际操作中几乎每一步都有不少问题,总结如下:

  1. 开始时是想要FTP安装的,因为我们这的网络比较稳定,速度也能接受,FTP的话装完了就是最新的,当然想。可是用光盘启动后,死活连不了网。 我的网卡是intel 3189类型的,可即使modprobe 3189too ,也不管用。想到以前看过Gentoo的一些资料提到,可以在windows下安装网卡最新驱动,网卡高级功能里面会多出Wake-On-Lan After Shutdown,激活它,即可用光盘联网,可我这样做了,还是不行!为这个问题就停止,不值得,遂放弃。以前使用ubuntu6.04光盘的时候,是可 以联网的,后来的7.04和7.10就也连不了了,不知道是不是因为系统越来越大,一些本来是放光盘的软件包被舍弃了呢?
  2. 选择软件包的时候,想要最小化安装,只选了Base,结果装完后连grub菜单都没有,直接是原来的xp!第一次没注意,就放过去了,第二次的时候特别留意了/etc/fstab,果然是没有加载之前设置的所有分区!手动添加,由于还不是很熟悉,放弃,全选上那些包,搞定
  3. 设置/etc/rc.conf里面的interface时,不是用dhcp忘了注释掉gateway和 route两行,就是自行配置忘了去掉route中的“!”,重启了好几次之后才笨笨的上网找到个重启network服务的方法 (/ect/rc.d/network restart)
  4. 配置控制台下的中文界面,即安装并使用zhcon,失败,也不怎么在那环境下使用,放弃
  5. 配置xorg的时候,按照linuxtoy提供的手册方法,手动选择生成硬件配置文件,然后编辑,很多东西不懂,特别是在鼠标,键盘及显示器(也是最主要的方面了),失败过好几次,后来根据hwd自动检测并在网上找到显示器的详细具体参数,修改了好几次才正确配置好
  6. 第一次安装kde,忘了先安装中文字体就更改locale为中文,结果乱码看得好心烦,寻找了很长时间原因, 才记起没装中文字体!后来重装arch,死死记住了这个,还不用kde了,尝试过之后,在我看来,那个太花巧了,即使它也同样很强大,还是gnome来得 实在点,至少看着朴实
  7. 安装swiftfox,没找到奔腾D的优化版,凑合着用了奔腾4的,装完后很多firefox的附加软件安装 不了!安装firefox,默认浏览器开始忘弄回firefox了,居然为这个乱了那么一会手脚,看着sh文件删除swiftfox,完了还有痕迹在 firefox中!估计是有些文件没清理干净,只好手动在firefox中删那些留下来的书签和一些隐私数据
  8. 解压缩工具是装好了,可是想要的类似ubuntu中右键选项“解压到此处”没有!到现在为止,还不知道怎么弄
  9. 正常装完mplayer后,中文名的视频文件播放不了!修改 /usr/share/appllications/mplayer.desktop中的%U为%F,不行,%f,不行,去掉%U,不行!不知何解,以前 用ubuntu的时候,听说mplayer升级后播放不了中文名的视频文件,只要这样修改之后就行,而且实践证明确实是可以的,可事实在眼前,偏不行!找 了很多资料都是这样的方法,都想要放弃了,又偶然想起有的人说装smplayer就没这问题,之前由于认为smplayer是mplayer的前端,既然 有mplayer,就不必前端了,而且那才显得你是高手(可怜的虚伪~),所以一直不是很想用smplayer的,这回没辙了。装好smplayer, ok,一切正常!而且加载字幕什么的都非常正常(以前加载中文字幕的时候是乱码),才发现装smplayer的好处,可以去掉好多配置中犯错误的痛苦,又不是必须每个细节都要握在手里的,没必要浪费时间和牺牲脑细胞,想通了就舒服多了
  10. 安装ALSA的时候,按照linuxtoy提供的手册方法安装,明明所有该安装的都安装了,说是刚装完的时候 默认是静音,可那时是用的kde,不熟悉得很,连怎么由静音换回有声都不知道如何弄(好失败啊),后来按新找到的资料安装(就上面提到的那些),天,太简单了,而且效果更好,那个音质比在xp中的还要好得多!
  11. 配置virtualbox桥接上网,天,怎么那么烦,配置是配置好了,可主机也上不了网了!问题多多,不想管了,不是必要的,还是用nat方式好了,所以到现在都还是用nat
  12. 其实我就是想要用个虚拟机尝试安装Gentoo和LFS,vbox桥接联网失败,行,用vmware。装的 vmware server,一装完,加载镜像的时候,弹出窗口提示错误!而且还要注册!不是说免费的吗?又是一阵找注册码。好了,一切都顺利,再加载镜像,弹出窗口提 示错误!原来不是注册的问题!wiki,google,forum……没解决,放弃,卸载
  13. 用yaourt安装eva,编译没过去,不管,反正pidgin能用,虽然用得不是很爽
  14. 最最最痛苦莫过于配置hal来自动加载fat32和ntfs文件系统了,按照上面的方法是可以自动加载u盘 的,也能加载硬盘中本来就有的XP系统分区,可是要使用的话就必须得每次都手动点击激活!这个气人呀,使用amarok播放音乐的时候,每次都得先点击一 下音乐文件所在的分区!好吧,在/etc/fstab中加入相应的分区,让它们都挂到/media下,是解决了上面的那个问题,but no write suppored!原因是/etc/fstab中的选项!说起来只有自嘲了,由于不大相信wiki里那简单的设置,我反反复复加了好几个选项,换了好几个 选项,重启了好多次,umount -a / mount -a 了好多次,甚至怀疑到配置自动挂载中添加的那段xml标记语言,把里面的false一个一个改为true,无效,删掉,无效,前前后后持续用掉的时间差不 多一天!后来解决了,偶然解决的(就是wiki里面那方法),居然简单到只是比挂载/分区多了个locale=zh_CN.UTF-8,换了个ntfs- 3g(读写ntfs格式分区的工具),可见这基础也太差了T_T#
  15. amarok中mp3标题乱码,知道是mp3标签的问题,以前在ubuntu中装个python类的软件后,一行命令就可以搞定,可是这回在pacman,yaourt中居然找不到那个软件,傻眼了,知道有个java程序也可以弄的,嫌麻烦,乱码的歌也不多,省了
  16. 还有其他一些琐琐碎碎的问题,基本都解决了,现在系统还算比较稳定,下次乱弄出问题直至崩溃了再说吧
这次只是按需求来安装,没什么多余的东西(3D效果没弄,wine没弄,字体美化没弄),但也有不少想要的东东却又不知道怎么弄(eva, cpu/memory监视)。总的来说收获比较大,和在ubuntu中的状况无法相比,对linux的理解深了那么一点,即使这样也激发了很大的热情,甚 至为了这个每天都在看相关的书和资料,并且输出资料一次预计会有更多次,实在难得。按照以前走过的路,有个想法就是,vmware->ubuntu ->arch->Gentoo->LFS,这条路能否走下去呢,能通吗,有意义吗?仅仅安装的话,网上资料多得很,而核心的东西肯定不 是这个,应该是使用linux来做到自己想要让它完成的事情,比如说开发软件,比如说架构服务器,等等。努力,也要有个方向!