Slackware 12.0
1 基本配置
1.1 初始安装
选择除kdei之外的所有软件包,进行全部安装。
kdei只安装简体中文(zh_CN)和繁体中文(zh_TW)包,共4个安装文件。
不安装引导管理器。
配置网络。
1.2 引导配置
这里Slackware是通过别的系统上的grub来进行引导的。在Slackware下安装grub来负责多重系统引导的方法见:Grub多重引导。
编辑grub所在系统的menu.lst,增加Slackware的启动项。以amd64机器为例:
title Slackware 12.0 (2.6.21.5-smp) root (hd1,4) kernel /boot/vmlinuz-huge-smp-2.6.21.5-smp ro root=/dev/sdb5
1.3 安装补丁
一般来说,安装一个系统并不总是在该系统刚刚发布之时,此时可能已经有一些补丁程序。新系统的第一步就是安装这些补丁,填补发现的漏洞。
选择一个速度快的镜像站点下载补丁程序(位于slackware-12.0/patches/packages),在安装系统之前先准备好这些补丁(如果有的话)。
首先进入单用户模式:
# init 1
进入补丁所在目录,更新:
# upgradepkg *.tgz
重新启动。
附:我一般用lftp在本地建立一个补丁包镜像,供本地所有系统使用,以避免重复下载。以Australia的一个镜像为例:
# cd /pub/software/slackware # lftp ftp://mirror.pacific.net.au/linux/slackware/ >>> mirror -ner slackware-12.0 >>> cd slackware-12.0 >>> lcd slackware-12.0 >>> mirror -ne patches >>> bye
通过关注Slackware的ChangeLogs,或订阅邮件列表,来了解更新动态。
1.4 配置网络
在初始安装时进行了网络配置,这样可以省很多功夫。
由于是多网卡机器,而安装时只配置了一块网卡,所以还需要一些配置。
首先查看udev配置文件/etc/udev/rules.d/75-network-devices.rules,通过MAC地址固定网卡编号。
编辑/etc/rc.d/rc.inet1.conf,配置其余网卡的IP地址等参数。
如果修改别的选项,则还涉及:
- /etc/HOSTNAME
- /etc/hosts
- /etc/networks
- /etc/resolv.conf
1.5 编译内核(amd64机器)
当前的内核配置只能使用3G内存,为了识别全部4G内存,需要打开内核的PAE选项。同时将netfilter编译进内核,不再以模块形式存在。并将CPU类型设置为AMD64。
在编译之前,先安装内核源代码补丁(之前只安装了二进制文件的更新),位于slackware-12.0/patches/source/kernel-source目录下,这是一个严重的local root exploit漏洞:
# cd /usr/src/linux-2.6.21.5 # zcat splice.c.gz | patch -p1
内核配置基于huge-smp版本:
# cd /usr/src/linux # make mrproper # cp /boot/config-huge-smp-2.6.21.5-smp .config # make menuconfig
几个选项设置:
(1).为了与原来的内核文件区别,增加-PAE后缀:
General setup ---> (-smp-pae) Local version - append to kernel release
(2).设置CPU类型和PAE:
Processor type and features ---> Processor family (Opteron/Athlon64/Hammer/K8) ---> (X) Opteron/Athlon64/Hammer/K8 High Memory Support (64GB) ---> (X) 64GB
(3).配置netfilter:
Networking ---> Networking options ---> [*] Network packet filtering framework (Netfilter) ---> ... ...(略)
编译安装:
# make # make modules_install # cp System.map /boot/System.map-huge-smp-2.6.21.5-smp-pae # cp .config /boot/config-huge-smp-2.6.21.5-smp-pae # cd arch/i386/boot # cp bzImage /boot/vmlinuz-huge-smp-2.6.21.5-smp-pae
编辑grub所在系统的menu.lst,增加新内核的启动项:
title Slackware 12.0 (2.6.21.5-smp-pae) root (hd1,4) kernel /boot/vmlinuz-huge-smp-2.6.21.5-smp-pae ro root=/dev/sdb5
重新启动。
1.6 配置声卡
执行:
# alsaconf
选择对应的声卡型号,创建声卡数据。
1.7 配置防火墙脚本
有关各个iptables脚本的详细内容见:Iptables脚本。
这里使用客户机脚本rc.iptables-client.ref:
# cp /newpkg/rc.iptables-client.ref /etc/rc.d/rc.iptables # chmod a+x /etc/rc.d/rc.iptables
修改/etc/rc.d/rc.S文件,在末尾添加模板rc.S.ref的内容。
1.8 设置内核参数
有关脚本的详细内容见:Sysctl脚本。
# cp /newpkg/rc.sysctl.ref /etc/rc.d/rc.sysctl # chmod a+x /etc/rc.d/rc.sysctl
编辑/etc/rc.d/rc.M,将模板rc.M.ref内容加入到rc.inet2的前面。
1.9 配置PPPOE(可选)
# pppoe-setup
设置用户名、密码、网卡接口(eth0)、选择不要防火墙,由ISP提供DNS地址。
拨号:
# pppoe-start
断开:
# pppoe-stop
查看状态:
# pppoe-status
1.10 建立普通用户
这里使用一个额外的分区(/dev/sda7)来存放所有系统的普通用户文件(amd64机器):
# mkdir /pub # mount /dev/sda7 /pub # mkdir -p /pub/home/slackwre # cd /home # mv * /pub/home/slackware/ # cd / # rmdir home # ln -s /pub/home/slackware/ home
添加用户:
# useradd -m -s /bin/bash duangw
1.11 挂载分区(amd64机器)
创建挂载点:
# mkdir /pub/fat # mkdir /pub/ntfs # mkdir /pub/ext3
让普通用户duangw可以直接读写FAT和NTFS分区,采用了uid选项(duangw的uid是1000)。编辑/etc/fstab,增加:
/dev/sda7 /pub ext3 defaults 1 2 /dev/sda5 /pub/fat vfat iocharset=cp936,uid=1000 1 0 /dev/sda6 /pub/ntfs ntfs iocharset=cp936,uid=1000 1 0 /dev/sdb8 /pub/ext3 ext3 defaults 1 3
1.12 启用HAL(可选)
Slackware 12.0中增加了HAL(Hardware Abstraction Layer),提供了对移动设备如CDROM、U盘的支持接口。如果安装时没有打开,则手工启用:
# cd /etc/rc.d # chmod a+x rc.hald
编辑/etc/group,为用户duangw增加组plugdev,HAL通过该设置来决定用户是否有权限使用此功能:
plugdev:x:83:duangw
2 X和本地化
2.1 配置Xwindow
执行xorgsetup,配置Xwindow,一切都按缺省值:
# xorgsetup
弄好后,执行startx,看看能正常启动Xwindow就行了。即使因为驱动问题启动不了也没关系,这只是初始配置,后面还要专门安装显卡驱动。
2.2 安装Nvidia显卡驱动
从Nvidia官方网站www.nvidia.com下载Linux驱动。
安装(amd64机器):
# sh NVIDIA-Linux-x86-169.09-pkg1.run
注:i386机器上使用的是另外一类的驱动程序。
2.3 设置locale
编辑/etc/profile.d/lang.sh,不改LANG,以免在命令行下出乱码,增加:
export LC_CTYPE=zh_CN
同时屏蔽LC_COLLATE:
#export LC_COLLATE=C
2.4 安装文泉译中文字体
从文泉译官方网站wqy.sourceforge.net下载软件包wqy-bitmapfont-pcf-0.8.1-7.tar.gz。官方有很详细的中文安装指导,下面是我的配置步骤。
安装字体:
# tar xzvf wqy-bitmapfont-pcf-0.8.1-7.tar.gz # mkdir /usr/share/fonts/wenquanyi # mv wqy-bitmapfont /usr/share/fonts/wenquanyi # cd /usr/share/fonts/wenquanyi/wqy-bitmapfont # rm fonts.dir fonts.scale fc-cache.* # mkfontdir . # cp fonts.dir fonts.scale
编辑Xwindow配置文件/etc/X11/xorg.conf,增加:
...... Section "Files" ...... FontPath "unix/:7100" ...... FontPath "/usr/share/fonts/wenquanyi/wqy-bitmapfont" EndSection ......
编辑/etc/fonts/fonts.conf,增加:
<dir>/usr/share/fonts/wenquanyi/wqy-bitmapfont<dir>
建立符号链接:
# cd /etc/fonts/conf.d # ln -s /usr/share/fonts/wenquanyi/wqy-bitmapfont/\ 85-wqy-bitmapsong.conf
重启Xwindow,检查配置是否成功:
# xlsfonts | grep wenquanyi # fc-list | grep "WenquaYi"
正确的话,会有相关信息显示。
2.5 安装中文输入法fcitx
从fcitx主页www.fcitx.org下载稳定版fcitx-3.4.2.tar.bz2。
安装:
# cd /sources # tar xjvf fcitx-3.4.2.tar.bz2 # cd fcitx-3.4.2 # ./configure # make # make install
编辑/etc/profile,设置fcitx需要的一个环境变量:
export XMODIFIERS=@im=fcitx
3 应用软件
3.1 安装VMware(amd64机器)
从VMware官方网站www.vmware.com获得软件包VMware-workstation-6.0.2-59824.i386.tar.gz。安装:
# cd /sources # tar xzvf VMware-workstation-6.0.2-59824.i386.tar.gz # cd vmware-distrib # ./vmware-install.pl
在网络配置部分,将vmnet1-vmnet9配置为host-only,加上桥接的vmnet0,一共10块虚拟网卡。
Slackware的X运行级别是4,不是其他发行版常用的5,所以需要做点小调整:
# cd /etc/rc.d/rc5.d # mv * ../rc4.d/
将所有的虚拟机文件放在/dev/sdb8的vmware目录下:
# cd /pub/ext3 # make vmware # chown duangw:users vmware
3.2 安装kchmviewer
kchmviewer是一个chm文件阅读器,从kchmviewer主页www.kchmviewer.net下载kchmviewer-3.1-2.tar.gz。
这里使用www.slackbuilds.org提供的脚本包kchmviewer.tar.gz来编译安装:
# cd /sources # tar xzvf kchmviewer.tar.gz # cd kchmviewer # cp /pub/software/kchmviewer/kchmviewer-3.1-2.tar.gz . # ./kchmviewer.SlackBuild # cd /tmp # installpkg kchmviewer-3.1-2-i486-1_SBo.tgz # cp kchmviewer-3.1-2-i486-1_SBo.tgz /newpkg
3.3 安装媒体播放器mplayer
从mplayer官方网站www.mplayerhq.hu下载源代码包、解码器(codecs)、皮肤(skin)和补丁(截止2008/01/31)。
解压缩:
# cd /sources # tar xjvf essential-20071007.tar.bz2 # tar xjvf MPlayer-1.0rc2.tar.bz2 # tar xjvf Blue-1.7.tar.bz2
补丁:
# cd MPlayer-1.0rc2/ # cp /pub/software/mplayer/*.diff . # cd libmpdemux/ # patch -p0 < ../demux_audio_fix_20080129.diff # patch -p0 < ../demux_mov_fix_20080129.diff # cd ../stream/ # patch -p0 < ../url_fix_20080120.diff # patch -p0 < ../stream_cddb_fix_20080120.diff
安装解码器:
# cd /sources # mv essential-20071007 codecs # mv codecs /usr/local/lib/
安装MPlayer:
# cd /sources # cd MPlayer-1.0rc2/ # ./configure --enable-gui # make # make install
安装皮肤:
# cd /sources # mv Blue /usr/local/share/mplayer/skins/ # cd /usr/local/share/mplayer/skins/ # ln -s Blue default
此外还有一个步骤:安装mplayer使用的字体。根据启动mplayer时的提示从系统字体目录中随便找个文件拷贝过来就行。
4 网络服务
4.1 配置ftp服务
编辑/etc/vsftpd.conf,允许普通用户有写权限:
write_enable=YES
编辑/etc/inetd.conf, 打开vsftp,取消其他所有服务。
允许执行rc.inetd:
# cd /etc/rc.d # chmod a+x rc.inetd
启动inetd:
# /etc/rc.d/rc.inetd start
编辑防火墙脚本/etc/rc.d/rc.iptables,允许ftp:
iptables -A INPUT -p tcp --dport ftp -m state \ --state NEW -j ACCEPT
4.2 配置http服务
允许执行rc.httpd:
# cd /etc/rc.d # chmod a+x rc.httpd
启动httpd:
# /etc/rc.d/rc.httpd start
编辑防火墙脚本/etc/rc.d/rc.iptables,允许httpd:
iptables -A INPUT -p tcp --dport http -m state \ --state NEW -j ACCEPT