ARCH LINUX BEGINNING
一、Arch Linux 2013.04版本,VMWARE 9.0。局域网,通过代理服务器访问internet。
二、为了使用sshd,便于复制粘贴,需要先设置网络,打开sshd服务:
1、VMWARE使用的NAT方式,虚拟机只能通过DHCP获取IP地址:
- 用ip命令查看有线连接的接口名字。# ip link
- 手动启动:dhcpcd eth0
- 设置为服务:systemctl enable dhcpcd@eth0
2、设置SSHD服务器启动:
- 设置sshd:systemctl enable sshd
- 启动sshd:systemctl start sshd
- 查看IP地址: ip a
3、然后就可以在虚拟机外通过PUTTY来访问了。
三、代理服务器设置(https://wiki.archlinux.org/index.php/Configuring_Network)
1、通过设置环境变量来使用代理服务器:
export http_proxy=http://10.104.17.70:3389/
export https_proxy=$http_proxy
export ftp_proxy=$http_proxy
export rsync_proxy=$http_proxy
export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com"
2、设置/etc/profile.d/proxy.sh
3、设置.bashrc
function proxy(){
# echo -n "username:"
# read -e username
# echo -n "password:"
# read -es password
export http_proxy="http://10.104.17.70:3389/"
export https_proxy=$http_proxy
export ftp_proxy=$http_proxy
export rsync_proxy=$http_proxy
export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com"
echo -e "\nProxy environment variable set."
}
function proxyoff(){
unset HTTP_PROXY
unset http_proxy
unset HTTPS_PROXY
unset https_proxy
unset FTP_PROXY
unset ftp_proxy
unset RSYNC_PROXY
unset rsync_proxy
echo -e "\nProxy environment variable removed."
}
proxy
4、然后测试一下,应该能访问互联网了。
四、分区
1、当前安装盘包含如下工具:fdisk
, gdisk
, cfdisk
, cgdisk
, parted
. 我选的cfdisk.
最简单的分了一个根分区,一个交换分区(无任何难度,比图形化的分区好用多了)
cfdisk (util-linux 2.22.2)
Disk Drive: /dev/sda
Size: 30064771072 bytes, 30.0 GB
Heads: 255 Sectors per Track: 63 Cylinders: 3655
Name Flags Part Type FS Type [Label] Size (MB)
------------------------------------------------------------------------------
sda1 Boot Primary Linux 20003.89
sda2 Primary Linux swap / Solaris 10060.90*
2、创建文件系统:
mkfs.ext4 /dev/sda1
mkswap /dev/sda2
swapon /dev/sda2
3、挂载分区
mount /dev/sda1 /mnt
五、安装系统
1、vi /etc/pacman.d/mirrorlist 加入163的镜像:
Server = http://mirrors.163.com/archlinux/$repo/os/$arch
在用命令 pacman -Syy 更新源
2、安装基本系统
pacstrap /mnt base base-devel
然后就会去上面的镜像站拖一大堆包回来安装了。
- base
- 来自 [core] 软件源的最小基本系统。
- base-devel
- 来自 [core] 的附加工具例如
make
和automake
。大部分新手都应该安装它,后续扩展系统会用到它,安装AUR中软件包时,base-devel也是必须的。
如果不知道还需要什么软件,可以先跳过,后面可以用 pacman 安装。
Targets (130): acl-2.2.51-3 archlinux-keyring-20130406-1 attr-2.4.46-2
ca-certificates-20130119-1 cloog-0.18.0-1 cracklib-2.8.22-1
curl-7.30.0-1 db-5.3.21-1 dbus-1.6.8-6 dirmngr-1.1.0-4
expat-2.1.0-2 gdbm-1.10-1 glib2-2.34.3-1 gmp-5.1.1-1
gnupg-2.0.19-6 gpgme-1.3.2-1 hwids-20130228-1 iana-etc-2.30-3
iptables-1.4.18-1 isl-0.11.2-1 kbd-1.15.5-3 keyutils-1.5.5-3
kmod-13-1 krb5-1.11.2-1 libarchive-3.1.2-1 libassuan-2.1.0-1
libcap-2.22-4 libffi-3.0.13-1 libgcrypt-1.5.1-1
libgpg-error-1.11-1 libgssglue-0.4-1 libksba-1.2.0-3
libldap-2.4.35-1 libltdl-2.4.2-8 libmpc-1.0.1-1
libnl-3.2.21-1 libpcap-1.3.0-3 libpipeline-1.2.2-1
libsasl-2.1.23-10 libssh2-1.4.3-1 libtirpc-0.2.2-4
libusbx-1.0.14-1 linux-api-headers-3.8.4-1
linux-firmware-20121118-1 lzo2-2.06-1 mkinitcpio-0.13.0-1
mkinitcpio-busybox-1.20.2-1 mpfr-3.1.2-1 ncurses-5.9-5
openssl-1.0.1.e-3 pacman-mirrorlist-20130323-1 pam-1.1.6-1
pambase-20130113-1 pcre-8.32-1 pinentry-0.8.2-2 popt-1.16-5
pth-2.0.7-4 readline-6.2.004-1 run-parts-4.3.4-1
systemd-201-2 sysvinit-tools-2.88-9 tzdata-2013b-1 xz-5.0.4-1
zlib-1.2.7-1 autoconf-2.69-1 automake-1.13.1-1 bash-4.2.045-1
binutils-2.23.2-2 bison-2.7.1-1 bzip2-1.0.6-4
coreutils-8.21-1 cronie-1.4.9-2 cryptsetup-1.6.0-1
device-mapper-2.02.98-3 dhcpcd-5.6.7-1 diffutils-3.3-1
e2fsprogs-1.42.7-1 fakeroot-1.18.4-1 file-5.14-1
filesystem-2013.03-2 findutils-4.4.2-5 flex-2.5.37-1
gawk-4.0.2-1 gcc-4.8.0-2 gcc-libs-4.8.0-2 gettext-0.18.2.1-1
glibc-2.17-5 grep-2.14-2 groff-1.22.2-2 gzip-1.5-3
heirloom-mailx-12.5-3 inetutils-1.9.1-4 iproute2-3.8.0-1
iputils-20121221-1 jfsutils-1.1.15-3 less-451-1
libtool-2.4.2-8 licenses-20130203-1 linux-3.8.7-1
logrotate-3.8.3-1 lvm2-2.02.98-3 m4-1.4.16-3 make-3.82-5
man-db-2.6.3-1 man-pages-3.50-1 mdadm-3.2.6-3 nano-2.2.6-2
netcfg-3.0-1 pacman-4.1.0-2 patch-2.7.1-2 pciutils-3.1.10-1
pcmciautils-018-6 perl-5.16.3-2 pkg-config-0.28-1 ppp-2.4.5-5
procps-ng-3.3.7-1 psmisc-22.20-1 reiserfsprogs-3.6.22-1
sed-4.2.2-2 shadow-4.1.5.1-5 sudo-1.8.6.p8-1
sysfsutils-2.1.0-8 systemd-sysvcompat-201-2 tar-1.26-3
texinfo-5.1-1 usbutils-006-1 util-linux-2.22.2-2
vi-1:050325-3 which-2.20-6 xfsprogs-3.1.10-1
Total Download Size: 155.64 MiB
Total Installed Size: 558.57 MiB
3、生成 fstab
genfstab -U -p /mnt | sed 's/rw,relatime,data=ordered/defaults,relatime/' >> /mnt/etc/fstab
关于UUID http://baike.baidu.com/view/1052579.htm
关于FSTAB详细定义: https://wiki.archlinux.org/index.php/Fstab#Field_definitions
4、Chroot 到新系统
arch-chroot /mnt
六、进入新系统配置:
1、LOCALE:
vi /etc/locale.gen
en_US.UTF-8 UTF-8 zh_CN.GB18030 GB18030 zh_CN.GBK GBK zh_CN.UTF-8 UTF-8 zh_CN GB2312
locale-gen
/etc/locale.conf
LANG=zh_CN.UTF-8 LC_TIME=en_US.UTF-8 #此处大部分文档上都写成了 en_GB.UTF-8, 之前没生成 en_GB.UTF-8 只生成了 en_US.UTF-8
2、 时区sh-4.2
# hwclock --systohc --utc
3、HOSTNAME
sh-4.2# echo blardarch > /etc/hostname
4、网络
sh-4.2# systemctl enable dhcpcd@eth0.service
ln -s '/usr/lib/systemd/system/dhcpcd@.service' '/etc/systemd/system/multi-user.target.wants/dhcpcd@eth0.service'
sh-4.2# cd /etc/network.d/
sh-4.2# ln -s examples/ethernet-dhcp
sh-4.2# systemctl enable net-auto-wired.service
ln -s '/usr/lib/systemd/system/net-auto-wired.service' '/etc/systemd/system/multi-user.target.wants/net-auto-wired.service'
5、配置 pacman
/etc/pacman.conf
6、GRUB
# pacman -S grub-bios
# grub-install --recheck /dev/sda
# cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo
# pacman -S os-prober 安装 os-prober。
# grub-mkconfig -o /boot/grub/grub.cfg
完成。