Linux学习_arch系统安装与配置
参照arch官网wiki:https://wiki.archlinux.org/index.php/Beginners%27_guide
前面略过u盘镜像制作,系统采用archlinux-2014.08.01-dual.iso/x86_64(一个ISO 镜像文件同时支持32位与64位构架),现在最新的镜像应该是2014.09.03,Downloads
引导采用传统的BIOS/Legacy 模式,相比之下UEFI 启动模式优于 BIOS/Legacy 模式,但设置比较麻烦,所以不采用。
建立网络连接
由于arch需要联网安装,所以要先建立网络连接 安装程序会自动运行 dhcpcd
守护进程以尝试有线连接。可以用 ping
来检查是否连通。
ping -c 1 t.cn
PING t.cn (180.149.135.224) 56(84) bytes of data.
64 bytes from 180.149.135.224: icmp_seq=1 ttl=128 time=6.31 ms--- t.cn ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 6.315/6.315/6.315/0.000 ms
说明连接正常,如果100% packet loss或是ping: unknown host,则网络不通,就要手动配置网络
确定有线和无线的接口
ip link
有线接口一般是e开头,无线一般是w开头
Jun% ip link
1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp1s0: mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 28:d2:44:34:f4:d2 brd ff:ff:ff:ff:ff:ff
3: wlp2s0: mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000
link/ether a4:db:30:bf:aa:a8 brd ff:ff:ff:ff:ff:ff
enp1s0就是我的有线接口,wlp2s0是无线接口。 有线连接 禁用自动开启的 dhcpcd 服务:
systemctl stop dhcpcd
激活有线接口(enp1s0):
ip link set enp1s0 up
添加地址/网关:
ip addr add IP 地址/子网掩码 dev 接口名
ip route add default via IP 地址
编辑
/etc/resolv.conf
如下, 以替换您的域名服务器 IP 地址和本地域名:nano /etc/resolv.conf
无线网络 用 netctl 的
wifi-menu
来连接网络:wifi-menu wlp2s0
由于引导使用BIOS/Legacy 模式就选择主引导记录(MBR)作为分区表类型。 如果要对整个磁盘进行安装系统,可以擦除分区表
sgdisk --zap-all /dev/sda
由于我的自己内存是8G的,所以我的分区方案(在64GSSD里)是20G / 分区,剩下都是 /home 分区
lsblk
命令显示所有已连接到系统的硬盘和分区,以及后者的大小
下面是我的硬盘:
Jun% lsblk
NAMEMAJ:MIN RMSIZE RO TYPE MOUNTPOINT
sda8:0059.6G0 disk
├─sda18:1020G0 part /
└─sda28:2039.6G0 part /home
sdb8:160 931.5G0 disk
└─sdb18:170200G0 part /mnt/Jun
用 fdisk 建立 MBR 分区 启动 fdisk :
fdisk /dev/sda
创建分区表:
建立第一个分区:
Command (m for help):
输入n
并按下Enter
- Partition type:
Select (default p):
按下Enter
Partition number (1-4, default 1):
按下Enter
First sector (2048-209715199, default 2048):
按下Enter
Last sector, +sectors or +size{K,M,G} (2048-209715199....., default 209715199):
输入+20G
并按下Enter
Command (m for help):
输入n
并按下Enter
- Partition type:
Select (default p):
按下Enter
Partition number (1-4, default 2):
按下Enter
First sector (31459328-209715199, default 31459328):
按下Enter
Last sector, +sectors or +size{K,M,G} (31459328-209715199....., default 209715199):
按下Enter
Command (m for help):
输入 p
并按下 Enter
保存新分区: Command (m for help):
输入 w
并按下 Enter
保存成功,fdisk 程序将显示如下信息: The partition table has been altered!Calling ioctl() to re-read partition table.
Syncing disks.
若因 fdisk 遇到错误导致以上操作无法完成,可以用
q
命令来退出。 创建文件系统
分区完了,就要把分区格式化成指定的文件系统。 root 和 home 分区都用 ext4: mkfs.ext4 /dev/sda1
mkfs.ext4 /dev/sda2
如果还有swap分区,则格式化并启用:
mkswap /dev/sdaX
swapon /dev/sdaX
挂载分区
显示当前分区布局:
lsblk
不要在同一个目录挂载多个分区,而且依序挂载很重要。
注意要按照顺序挂载,先挂载根分区到
/mnt
mount /dev/sda1 /mnt
然后挂载
/home
分区: mkdir /mnt/home
mount /dev/sda2 /mnt/home
选择安装镜像
安装前需要编辑
/etc/pacman.d/mirrorlist
, 将偏好的镜像放到最前面。mirrorlist 文件也会被 pacstrap
复制到新系统,所以最好现在就设置。 改变镜像源就要刷新: pacman -Syy
安装基本系统
pacstrap -i /mnt base base-devel
生成 fstab
genfstab -U -p /mnt >> /mnt/etc/fstab
nano /mnt/etc/fstab
强烈建议在生成 fstab 后检查一下是否正确。若在运行 genfstab 或是之后发生错误,请勿再次运行 genfstab, 而是直接手动编辑
fstab
文件。 Chroot 并开始配置新系统arch-chroot /mnt /bin/bash
Locale
locale.gen
与 locale.conf 配置
nano /etc/locale.gen
去掉下面前面的#
en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8
zh_TW.UTF-8 UTF-8
接着执行
locale-gen
以生成locale讯息:创建
locale.conf
并提交您的本地化选项: echo LANG=en_US.UTF-8 > /etc/locale.conf
时区
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
硬件时间
hwclock --systohc --utc
Hostname
echo myhostname > /etc/hostname
并在
/etc/hosts
添加同样的主机名: nano /etc/hosts
#
# /etc/hosts: static lookup table for host names
##
127.0.0.1 localhost.localdomain localhost myhostname
::1localhost.localdomain localhost# End of file
配置网络
这次配置网络是为安装的系统的: 使用 wifi-menu
pacman -S iw wpa_supplicant
pacman -S dialog
设置 Root 密码
修改密码
passwd
GRUB引导 安装 grub 包,并执行
grub-install
已安装到 MBR:pacman -S grub
grub-install --target=i386-pc --recheck /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg
卸载分区并重启系统
exit && reboot
【Linux学习_arch系统安装与配置】
推荐阅读
- 由浅入深理解AOP
- 继续努力,自主学习家庭Day135(20181015)
- python学习之|python学习之 实现QQ自动发送消息
- 一起来学习C语言的字符串转换函数
- 定制一套英文学习方案
- 漫画初学者如何学习漫画背景的透视画法(这篇教程请收藏好了!)
- Linux下面如何查看tomcat已经使用多少线程
- 《深度倾听》第5天──「RIA学习力」便签输出第16期
- 如何更好的去学习
- 【韩语学习】(韩语随堂笔记整理)