安装最新版Arch Linux,遇到一些想不到的问题,记录一下。
主要参考以下文章:
https://blog.csdn.net/r8l8q8/article/details/76516523
检查是否连通网络:
ping www.baidu.com
安装vim工具:
pacman -S vim
修改镜像列表:
vim /etc/pacman.d/mirrorlist
注释掉第一个镜像站,在前面加2个##,将 第二个镜像站:mirrors.xxxxxx.com/……的xxxxxx改为163
也可以手动注释掉或者删除掉非中国的镜像站
开始分区(UEFI+GPT)
本次将为sda硬盘重新建立分区表,重新建立分区,数据会全部丢失.
分区方案:
sda1---------------200M------------------------/boot/EFi
sda2---------------200M------------------------/boot
sda3---------------100G------------------------/
先查看下电脑硬盘设备,执行lsblk,如下图所示:(不同电脑设备不同,有可能会是 /dev/sdb……)
(有parted、fdisk两种分区方法,本次采用fdisk进行分区)
用fdisk进行分区
(1)建立GPT分区表
执行:
fdisk /dev/sda
进入fdisk交互界面:
输入:g 建立gpt分区表:
(2)建立分区
输入:n 添加一个分区
回车:
提示让输入开始扇区(一个扇区512B,按自己要分区容量大小进行计算)
输入2048,回车
让输入结束扇区,由于一个扇区512B,要创建200M的分区,应该输入:+200M;
建立第二个分区:
输入n;
回车
输入开始扇区: 回车 (默认开始扇区即可)
输入结束扇区:+200M
建立第三个分区:
输入n;
回车
输入开始扇区:回车 (默认开始扇区即可)
输入结束扇区:直接回车(默认大那个数字)
输入:w 保存并退出;
执行:lsblk 如下图所示:
格式化分区,并挂载
(1)格式化分区
执行:
mkfs.fat -F32 /dev/sda1
(格式化ESP分区)
mkfs.ext4 /dev/sda2
(格式化boot分区)
mkfs.ext4 /dev/sda3
(格式化根分区)
(2)挂载:
# mount /dev/sda3 /mnt
# mkdir /mnt/boot
# mount /dev/sda2 /mnt/boot
# mkdir /mnt/boot/EFI
# mount /dev/sda1 /mnt/boot/EFI
执行:
# lsblk
#7.开始安装基本操作系统
执行:
# pacstrap -i /mnt base base-devel linux linux-firmware
后开始安装
8.配置基础系统
(1)配置fstab
执行:
# genfstab -U /mnt >> /mnt/etc/fstab
最好再执行:
# cat /mnt/etc/fstab
检查一下
(2)切换到新系统
执行:
# arch-chroot /mnt /bin/bash
执行:
# vim /etc/locale.gen
反注释(删掉前面的#)
en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8
这两个,ESC,:wp退出保存
执行:
# locale-gen
执行:
# echo LANG=en_US.UTF-8 > /etc/locale.conf
(4)设置时区
执行:
# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
设置时区。
执行
# hwclock --systohc --utc
设置硬件时间
#安装grub
grub是一个启动引导器,同时支持EFI和BIOS方式的启动。若使用的UEFI方式引导系统,则还需要安装efibootmgr,如果是双系统的话,还需要安装os-prober,且如果使用Intel CPU的话,则需要安装 intel-ucode 并启用因特尔微码更新。
因为我们使用的是虚拟机和UEFI引导方式,因此只需要安装grub和efibootmgr:
pacman -S grub efibootmgr
然后,还需要将其安装到EFI分区当中:
grub-install --recheck /dev/sda
注意:此处的 /dev/sda 后没有数字。
若提示 error:cannot find EFI directory,则说明EFI文件夹的路径不正确,找不到EFI文件夹的位置,此时就需要在上面命令中加入 efi-directory 参数指定安装路径:
grub-install --recheck /dev/sda --efi-directory=/boot
最后还需要生成一个grub的配置文件:
grub-mkconfig -o /boot/grub/grub.cfg
提示:如是在已经有Windows系统的PC上安装Linux成双系统,那么由于在安装介质环境中,此时可能检测不到Windows系统。在之后重启后进入Arch Linux后,再重新执行一遍此命令,这样就能检查到所有的系统了。
出现archlinux will not proceed with blocklists错误:
在安装这个系统的时候,发现非uefi启动的,输入命令之后,出现这个错误的,那么该如何解决的了?英文提示为:grub-install error will not proceed with blocklists。
archlinux will not proceed with blocklists
方法/步骤
遇到错误的时候,先输入:
chattr -i /boot/grub/i386-pc/core.img
然后输入:grub-install --target=i386-pc --recheck --debug --force /dev/sda
这个是硬盘在sda为例子的。
然后输入:
chattr +i /boot/grub/i386-pc/core.img
接着输入这个命令即可:
grub-mkconfig -o /boot/grub/grub.cfg
https://jingyan.baidu.com/article/b0b63dbf2bbe254a483070c4.html
用户管理
(1)设置root密码
执行:
# passwd
(2)添加用户
执行:
# useradd -m -g users -s /bin/bash 用户名
(务必添加一个 用户 ,否则后面sddm显示管理器登录的时候无法登录,sddm不会列出root用户)
执行:
# passwd 用户名
为刚才添加的用户设置密码
执行:
# vim /etc/sudoers
在 root ALL=(ALL) ALL 下面添加
用户名 ALL=(ALL) ALL
为你刚才创建的用户 添加sudo权限
(3)网络配置
pacman -S dhcpcd
(1)有线连接
# systemctl start dhcpcd
arch-chroot下执行不了此命令,可以省略,执行完下面的命令一会重启会自动启动dhcpcd服务)
启动dhcpcd
# systemctl enable dhcpcd
开机自动启动dhcp服务
(2)无线连接:
# pacman -S netctl iw wpa_supplicant dialog
退出chroot重启
(笔记本没有网线的话别重启请直接跳到下面网络配置,安装无线网络相关模块)
(也可以不重启,直接进行下面的网络配置和桌面环境配置)
执行:
# exit
退出chroot
执行:
# reboot