admin管理员组文章数量:1030354
Arch&Win10双磁盘双系统安装及相关知识
前置
win10 安装在第一块磁盘且有第二块磁盘
分区
以50G硬盘大小为例,使用cfdisk /dev/sda命令进行分区:其中boot分区2G,交换分区4G,剩下全部分配给根目录。分区后完整目录如下:
/dev/sda1 2G
/dev/sda2 4G
/dev/sda3 44G
然后是格式化和挂载。注:挂载时需先挂载根目录,然后创建/mnt/boot目录,再将其挂载到/dev/sda3上。
代码语言:shell复制cfdisk /dev/sda
mkfs.fat -F32 /dev/sda1
mkfs.ext4 /dev/sda3
mount /dev/sda3 /mnt
mkdir /mnt/boot
mount /dev/sda1 /mnt/boot
# 开启交换分区
mkswap /dev/sda2
swapon /dev/sda2
Install
代码语言:shell复制vim /etc/pacman.d/mirrorlist
# 删除原来的镜像源,添加清华源
Server = /$repo/os/$arch
# 开始安装
pacstrap /mnt base base-devel linux linux-firmware sudo vim git dhcpcd
genfstab -U /mnt >> /mnt/etc/fstab
Grub
代码语言:shell复制arch-chroot /mnt
pacman -S grub
pacman -S os-prober efibootmgr
os-prober
grub-install --target=x86_64-efi --efi-directory=/boot
mkinitcpio -P
grub-mkconfig -o /boot/grub/grub.cfg
Reboot
代码语言:shell复制pacman -S intel-ucode
passwd
systemctl enable dhcpcd.service
exit
umount -R /mnt
reboot
Configuration
代码语言:shell复制vim /etc/pacman.conf ## 添加如下语句
[archlinuxcn]
Include = /etc/pacman.d/archlinuxcn-mirrorlist
在 /etc/pacman.d/ 下新建 archlinuxcn-mirrorlist 文件并添加阿里源等,如下
代码语言:shell复制\#\# 阿里源
Server = /$arch
配置完成之后继续安装:
代码语言:shell复制pacman -Syy
pacman -S archlinuxcn-keyring ## 如果报错“could not be locally signed...”执行下面命令
# 以下内容为修复arch keyring有问题的操作,如果-Syy过程中没有报错则可忽略
# pacman -Syu haveged
# systemctl start haveged
# systemctl enable haveged
# rm -fr /etc/pacman.d/gnupg
# pacman-key --init
# pacman-key --populate archlinuxcn
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock --systohc
# 编辑本地化文件,将"en_US.UTF-8" 和 "zh_CN.UTF-8"前面的“#”去掉,其它选项根据自己需要来定,这两个为英文和中文
vim /etc/locale.gen
locale-gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf
echo "chappy" > /etc/hostname
vim /etc/hosts
127.0.0.1 localhost
::1 localhost
127.0.1.1 chappy.localdomain chappy
pacman -S wqy-microhei
添加用户
代码语言:shell复制useradd -m -G wheel tdl
passwd tdl
默认没有安装vi,无法执行visudo命令,解决办法为将 vim 软链接到 vi
代码语言:shell复制ln -s /usr/bin/vim /usr/bin/vi
visudo ## 解注掉 %wheel 行,保存退出
安装xorg
代码语言:shell复制pacman -S xorg-server xorg-xinit xorg-apps
切换到普通用户
代码语言:shell复制mkdir Desktop
git clone
git clone
git clone
cd ~/Desktop/dwm
make
sudo make clean insall
cd ~/Desktop/st
make
sudo make clean install
cd ~/Desktop/dmenu
make
sudo make clean install
cp /etc/X11/xinit/xinitrc ~/.xinitrc
vim ~/.xinitrc ## 删除最后xterm相关的几行,添加下面语句后保存退出
exec dwm
startx
Q&A
1.安装以后重新启动,发现Grub引导界面只有 Arch 引导项,没有 windows !而且在安装Grub的过程(grub-mkconfig操作)中,确实没有类似“Found Microsof Windows...”的输出信息,所以在 Grub 引导界面可能会看不到 Windows Manager 选项,需要手动修复一下。
首先查看ESP分区的uuid(即windows 的EFI分区,如/dev/sd2:UUID="2841-1E44")
代码语言:shell复制blkid ##或输入blkid /dev/<ESP所在磁盘,例如sda、sdb、nvm0>
使用root用户登录Archlinux,通过以下命令编辑 Grub 的配置文件
代码语言:shell复制vim /boot/grub/grub.cfg
追加如下内容:
代码语言:shell复制menuentry 'Microsoft Windows 10' {
innmod part_get
insmod fat #一般填fat,不要填vfat
insmod chain
search --fs-uuid --set=root xxxx-xxxx ## 这里填上ESP分区的UUID
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
}
保存后重启,成功!
2.正常安装是没有问题的,上面提到的执行 os-prober 未找到 windows 系统的问题原因是因为 Grub 默认配置 GRUB_DISABLE_OS_PROBER=false这行被注释掉了,即默认不进行系统探测,在/etc/default/grub文件中找到这一行,将前面的“#”去掉,然后再次执行 os-prober 和 grub-mkconfig -o /boot/grub/grub.cfg 即可!
代码语言:shell复制## /etc/default/grub
GRUB_DISABLE_OS_PROBER=false
小知识:$XDG_CONFIG_HOME
您不需要在任何地方定义它,除非您想更改默认值。
XDG基本目录规范明确指出:
如果
$XDG_CONFIG_HOME
未设置或为空,$HOME/.config
则使用默认值 。
因此将其定义为默认值是多余的。所有兼容的应用程序将已经使用$HOME/.config
但是,如果您确实想在Debian / Ubuntu系统中更改默认设置,最好的地方是:
- 对于系统范围的更改,影响到所有用户:
/etc/profile
- 仅针对您的用户:
~/.profile
Arch&Win10双磁盘双系统安装及相关知识
前置
win10 安装在第一块磁盘且有第二块磁盘
分区
以50G硬盘大小为例,使用cfdisk /dev/sda命令进行分区:其中boot分区2G,交换分区4G,剩下全部分配给根目录。分区后完整目录如下:
/dev/sda1 2G
/dev/sda2 4G
/dev/sda3 44G
然后是格式化和挂载。注:挂载时需先挂载根目录,然后创建/mnt/boot目录,再将其挂载到/dev/sda3上。
代码语言:shell复制cfdisk /dev/sda
mkfs.fat -F32 /dev/sda1
mkfs.ext4 /dev/sda3
mount /dev/sda3 /mnt
mkdir /mnt/boot
mount /dev/sda1 /mnt/boot
# 开启交换分区
mkswap /dev/sda2
swapon /dev/sda2
Install
代码语言:shell复制vim /etc/pacman.d/mirrorlist
# 删除原来的镜像源,添加清华源
Server = /$repo/os/$arch
# 开始安装
pacstrap /mnt base base-devel linux linux-firmware sudo vim git dhcpcd
genfstab -U /mnt >> /mnt/etc/fstab
Grub
代码语言:shell复制arch-chroot /mnt
pacman -S grub
pacman -S os-prober efibootmgr
os-prober
grub-install --target=x86_64-efi --efi-directory=/boot
mkinitcpio -P
grub-mkconfig -o /boot/grub/grub.cfg
Reboot
代码语言:shell复制pacman -S intel-ucode
passwd
systemctl enable dhcpcd.service
exit
umount -R /mnt
reboot
Configuration
代码语言:shell复制vim /etc/pacman.conf ## 添加如下语句
[archlinuxcn]
Include = /etc/pacman.d/archlinuxcn-mirrorlist
在 /etc/pacman.d/ 下新建 archlinuxcn-mirrorlist 文件并添加阿里源等,如下
代码语言:shell复制\#\# 阿里源
Server = /$arch
配置完成之后继续安装:
代码语言:shell复制pacman -Syy
pacman -S archlinuxcn-keyring ## 如果报错“could not be locally signed...”执行下面命令
# 以下内容为修复arch keyring有问题的操作,如果-Syy过程中没有报错则可忽略
# pacman -Syu haveged
# systemctl start haveged
# systemctl enable haveged
# rm -fr /etc/pacman.d/gnupg
# pacman-key --init
# pacman-key --populate archlinuxcn
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock --systohc
# 编辑本地化文件,将"en_US.UTF-8" 和 "zh_CN.UTF-8"前面的“#”去掉,其它选项根据自己需要来定,这两个为英文和中文
vim /etc/locale.gen
locale-gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf
echo "chappy" > /etc/hostname
vim /etc/hosts
127.0.0.1 localhost
::1 localhost
127.0.1.1 chappy.localdomain chappy
pacman -S wqy-microhei
添加用户
代码语言:shell复制useradd -m -G wheel tdl
passwd tdl
默认没有安装vi,无法执行visudo命令,解决办法为将 vim 软链接到 vi
代码语言:shell复制ln -s /usr/bin/vim /usr/bin/vi
visudo ## 解注掉 %wheel 行,保存退出
安装xorg
代码语言:shell复制pacman -S xorg-server xorg-xinit xorg-apps
切换到普通用户
代码语言:shell复制mkdir Desktop
git clone
git clone
git clone
cd ~/Desktop/dwm
make
sudo make clean insall
cd ~/Desktop/st
make
sudo make clean install
cd ~/Desktop/dmenu
make
sudo make clean install
cp /etc/X11/xinit/xinitrc ~/.xinitrc
vim ~/.xinitrc ## 删除最后xterm相关的几行,添加下面语句后保存退出
exec dwm
startx
Q&A
1.安装以后重新启动,发现Grub引导界面只有 Arch 引导项,没有 windows !而且在安装Grub的过程(grub-mkconfig操作)中,确实没有类似“Found Microsof Windows...”的输出信息,所以在 Grub 引导界面可能会看不到 Windows Manager 选项,需要手动修复一下。
首先查看ESP分区的uuid(即windows 的EFI分区,如/dev/sd2:UUID="2841-1E44")
代码语言:shell复制blkid ##或输入blkid /dev/<ESP所在磁盘,例如sda、sdb、nvm0>
使用root用户登录Archlinux,通过以下命令编辑 Grub 的配置文件
代码语言:shell复制vim /boot/grub/grub.cfg
追加如下内容:
代码语言:shell复制menuentry 'Microsoft Windows 10' {
innmod part_get
insmod fat #一般填fat,不要填vfat
insmod chain
search --fs-uuid --set=root xxxx-xxxx ## 这里填上ESP分区的UUID
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
}
保存后重启,成功!
2.正常安装是没有问题的,上面提到的执行 os-prober 未找到 windows 系统的问题原因是因为 Grub 默认配置 GRUB_DISABLE_OS_PROBER=false这行被注释掉了,即默认不进行系统探测,在/etc/default/grub文件中找到这一行,将前面的“#”去掉,然后再次执行 os-prober 和 grub-mkconfig -o /boot/grub/grub.cfg 即可!
代码语言:shell复制## /etc/default/grub
GRUB_DISABLE_OS_PROBER=false
小知识:$XDG_CONFIG_HOME
您不需要在任何地方定义它,除非您想更改默认值。
XDG基本目录规范明确指出:
如果
$XDG_CONFIG_HOME
未设置或为空,$HOME/.config
则使用默认值 。
因此将其定义为默认值是多余的。所有兼容的应用程序将已经使用$HOME/.config
但是,如果您确实想在Debian / Ubuntu系统中更改默认设置,最好的地方是:
- 对于系统范围的更改,影响到所有用户:
/etc/profile
- 仅针对您的用户:
~/.profile
本文标签: ArchampWin10双磁盘双系统安装及相关知识
版权声明:本文标题:Arch&Win10双磁盘双系统安装及相关知识 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/jiaocheng/1747662316a2200486.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论