基于GNU/Linux简约设计的发行版大致有slackware、gentoo、archlinux这几个,gentoo安装尤其复杂,需要将源码下载到本地,编译成本地执行环境再安装;slackware坚持KISS原则,增强了包管理,在Linux复杂包依赖关系给出了解决方案,软件包以压缩文件的形式存在;archlinux相比则更灵活,分别提供了pacman、yaourt、octopi(GUI)三种包管理方案。基于以上比较,我选择更新灵活的archlinux作为Linux工作站。
archlinux官网提供了磁力链和种子两种下载,点击这里进入下载页面。
如果要用CD盘安装系统,直接将下载的archlinux-dual烧录即可;如果使用USB,则使用ISOultra创建启动盘或者在Linux系统中使用DD命令进行写入。
sudo dd if=/path_to_arch_.iso of=/dev/sdX
注意:sda是本机系统硬盘,其它依次是sdb、sdc...
重启按F12选USB进入,如果你使用的是虚拟机可以直接无视本操作。
首先ping一下网络是否联通了,如果不行则查看一下连接信息
ip link dhcpcd enth0
以en开头的就是以太网络,用dhcpcd enXXX连上,再ping一下就OK了;这里只为有线连接,wifi和拨号详细看wiki。
一般分区原则为boot为1G以内,swap为内存两倍左右,/目录为20G左右,/home为剩余硬盘最大容量,/usr、/temp等等可选可不选,当然/home也是可选,一般推荐分区。另外是否需要作扩展分区自己权衡利弊。
查看硬盘信息,list block
lsblk
可以看到,sda为本地硬盘,下面进行分区
cfdisk
选择dos
指定磁盘格式,
mkfs.ext4 /dev/sda1 & mkswap /dev/sda5 & mkfs.ext4 /dev/sda6
挂载/boot,/目录,并建立/home目录,启动交换分区
mount /dev/sda6 /mnt & mkdir /mnt/boot & mount /dev/sda1 /mnt/boot & mkdir /mnt/home & swapon /dev/sda5
用vi或nano打开镜像列表
nano /etc/pacman.d/mirrorlist添加大陆镜像服务
Server = http://mirrors.aliyun.com/archlinux/$repo/os/$arch Server = http://mirrors.163.com/archlinux/$repo/os/$arch Server = http://mirrors.sohu.com/archlinux/$repo/os/$arch
pacstrap -i /mnt base base-devel
genfstab -U -p /mnt >> /mnt/etc/fstab检测一下fstab内容,可以看到根目录和/home已经被挂载
nano /mnt/etc/fstab
切换至新系统
arch-chroot /mnt
配置字符集,将所使用字符集前的#号删除
nano /etc/locale.gen生成locale文件
locale-gen echo LANG=en_US.UTF-8 > /etc/locale.conf export LANG=en_US.UTF-8
查看其提供的区域时间
ls /usr/share/zoneinfo/
写入系统
ln -s /usr/share/zoneinfo/<Zone>/<SubZone> /etc/localtime hwclock --systohc --utc
设置主机名
echo brds > /etc/hostname
创建root密码
passwd
添加一个用户并设置密码
useradd -m -g users -G wheel,storage,power -s /bin/bash <your_name> passwd <your_name>
为用户设置一个超级权限
pacman -S sudo EDITOR=nano visudo
去掉前面的注释
%wheel ALL=(ALL) ALL
自动补全
pacman -S bash-completion
安装grub及常用包
pacman -S grub openssh net-tools vim
grub启动引导至硬盘
grub-install --target=i386-pc --recheck /dev/sda
识别多系统
pacman -S os-prober
配置grub
grub-mkconfig -o /boot/grub/grub.cfg
将网络服务添加至系统启动自动运行
systemctl enable dhcpcd@_name_of_interface.service systemctl start dhcpcd@_name_of_interface.service
退出
exit
卸载并重启
umount -R /mnt & reboot
安装 X
pacman -S xorg-server xorg-server-utils xorg-xinit3D支持
pacman -S mesa
显卡
sudo pacman -S nvidia lib32-nvidia-utils
根据自己机子自行选择
Brand | Type | Driver | Multilib Package (for 32-bit applications on Arch x86_64) |
Documentation |
---|---|---|---|---|
AMD/ATI | Open source | xf86-video-ati | lib32-ati-dri | ATI |
Proprietary | catalyst-dkms | lib32-catalyst-utils | AMD Catalyst | |
Intel | Open source | xf86-video-intel | lib32-intel-dri | Intel Graphics |
Nvidia | Open source | xf86-video-nouveau | lib32-nouveau-dri | Nouveau |
xf86-video-nv | – | (legacy driver) | ||
Proprietary | nvidia | lib32-nvidia-libgl | NVIDIA | |
nvidia-304xx | lib32-nvidia-304xx-utils | |||
nvidia-173xx | lib32-nvidia-173xx-utils | |||
nvidia-96xx | lib32-nvidia-96xx-utils | |||
VIA | Open source | xf86-video-openchrome | – | VIA |
查看一下有哪些驱动
lspci | grep VGA
详细信息
## Nvidia ## pacman –Ss | grep nvidia ## AMD/ATI ## pacman –Ss | grep ATI pacman –Ss | grep AMD ## Intel ## pacman –Ss | grep intel pacman –Ss | grep Intel
注意:像vbox虚拟机不用安装显卡的,但是要添加以下模组
pacman -S virtualbox-guest-utils
载入模组
modprobe -a vboxguest vboxsf
编辑virtualbox配置文件
nano /etc/modules-load.d/virtualbox.conf
加入vboxguest、vboxsf
安装触控板
pacman -S xf86-input-synaptics
安装声卡
pacman -S alsa-utils pulseaudio kdemultimedia-kmix
安装默认桌面环境并启动测试是否成功
pacman -S xorg-twm xorg-xclock xterm startx
输入exit退出
以KDE为例,添加相应包
sudo pacman -S kde
添加到systemd服务
systemctl enable kdm.service systemctl start kdm.service
之后将进入KDE桌面
安装KDE的网络管理器
pacman -S kdeplasma-applets-plasma-nm
把网络管理添加进systemd中
systemctl enable NetworkManager systemctl start NetworkManager取消之前的dhcpcd服务
systemctl disable dhcpcd.service
编辑/etc/pacman.conf
nano /etc/pacman.conf加入以下内容
[archlinuxfr] SigLevel = Never Server = http://repo.archlinux.fr/$arch
以后就可以在终端使用yaourt命令即可
yaourt <name of the package>
一些有用的命令:
更新源
sudo pacman -Sy
更新系统
sudo pacman -Syu
删除包
sudo pacman -R
从AUR更新包
yaourt -Syu
补充说明:
在使用yaourt时,可能会出现无法构建包或无法获取密钥环的情况,可以执行上面的方法或下面推荐的方法:
sudo pacman -S packagekit
sudo pacman -S archlinuxcn-keyring
或
yaourt -Sy base-devel