macbook pro 2018 T2 芯片安装 archlinux 双系统

2024-03-31 22:20

本文主要是介绍macbook pro 2018 T2 芯片安装 archlinux 双系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • @[toc]
    • 配置无线网和分区
    • 修改时区
    • 安装内核和驱动
    • 自动生成 fstab 文件
    • 配置 pacman
    • 切换到安装好的系统
      • 设置时区
      • 配置 pacman 国内源
      • 安装 gui
      • 安装 GRUB 引导
        • 建立引导
      • 增加内核模块
      • 配置开机自启
      • 修改 root 用户密码
      • 创建普通用户
        • 配置 sudo
    • 重启进入新系统
      • 配置 wlan 自动连接 wifi
      • 配置 dns
      • 开启时钟自动同步
      • 安装服务

之前使用官方镜像安装过一次 archlinuxmac 的双系统,但是确实很多驱动,键盘不能用,触摸板和 touchbar 都不能用,找过一些文章编译镜像,相当的困难,这次通过 t2linux-wiki 找到了 Arch Linux ISO for Macs with T2 ,通过大佬做的镜像来重新实现 archlinuxmac 的双系统

我这里使用的镜像是 archlinux-t2-2024.02.04-t2-x86_64.iso ,目前还遗留了以下几个问题:

  • touchbar 能显示,能用 F1~F12,但是其他功能还用不了,还需要找方法调整
  • 屏幕亮度调整和键盘背光还没实现
  • 声音调整还没实现
  • 电源管理

配置无线网和分区

这个 t2 的镜像,不需要还原 wifi 驱动,直接按照我之前的博客来连接 wifi 和分区就可以了:macbook pro 2018 安装 arch linux 双系统

修改时区

设置为上海的时区

timedatectl set-timezone Asia/Shanghai

验证时区和时间

timedatectl

安装内核和驱动

参照 Installing Arch Linux on a Mac with the T2 Chip 这一块

使用 Arch Linux ISO for Macs with T2 这里面的镜像,可以直接执行下面的命令,也可以检查一下 /etc/pacman.conf 里面有没有 https://mirror.funami.tech/arch-mact2/os/x86_64 这个仓库,这个仓库里面有下面的包,不过是国外的服务器,速度会比较慢,这个步骤需要耐心(我花了差不多1小时),当然,也可以切换成国内源,后面有写

pacstrap /mnt base linux-t2 apple-t2-audio-config apple-bcm-firmware iwd grub efibootmgr tiny-dfr t2fanrd

自动生成 fstab 文件

archlinux 可以用 genfstab -U 来以 UUID 的格式来生成 fstab 文件

genfstab -U /mnt >> /mnt/etc/fstab

配置 pacman

把当前用的 pacman 的配置覆盖掉新系统里面的

cat /etc/pacman.conf > /mnt/etc/pacman.conf

切换到安装好的系统

arch-chroot /mnt

设置时区

ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

运行 hwclock 生成 /etc/adjtime

hwclock --systohc

配置 pacman 国内源

增加 archlinuxcn 源

cat << EOF >> /etc/pacman.conf
[archlinuxcn]
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/\$arch
EOF

配置国内源,这个看自己大家的情况了,国内的话,可以直接覆盖掉 /etc/pacman.d/mirrorlist 文件,这样能起到加速的作用,下面列举一些国内源

  • https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch #清华大学
  • https://mirrors.163.com/archlinux/$repo/os/$arch #网易
  • https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch #中科大
  • https://mirrors.zju.edu.cn/archlinux/$repo/os/$arch #浙江大学
  • https://mirrors.cqu.edu.cn/archlinux/$repo/os/$arch #重庆大学
  • https://mirrors.lzu.edu.cn/archlinux/$repo/os/$arch #兰州大学
  • https://mirrors.sjtug.sjtu.edu.cn/archlinux/$repo/os/$arch #上海交通大
  • https://mirrors.stuhome.net/archlinux/$repo/os/$arch #成都电子科大
  • https://mirrors.neusoft.edu.cn/archlinux/$repo/os/$arch #大连东软信息学院
echo 'Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch' >> /etc/pacman.d/mirrorlist

更新源

pacman -Syu

安装 gui

不同 gui 的区别,可以看我的另一篇博客:虚拟机内使用 archinstall 安装 arch linux 2024.01.01

我这里安装的是 i3+sddm

pacman -S i3-wm i3status i3blocks i3lock rxvt-unicode dmenu

安装登录界面

pacman -S sddm

配置开机自启

systemctl enable sddm

安装 GRUB 引导

编辑 /etc/default/grub 文件添加内核参数

内核参数的作用感兴趣的可以看 IOMMU (二)- 从配置说起 (我太菜了,看不懂,加就完事了)

在 GRUB_CMDLINE_LINUX="" 追加这三个参数 intel_iommu=on iommu=pt pcie_ports=compat

安装引导

grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB --removable

生成 GRUB 配置文件

grub-mkconfig -o /boot/grub/grub.cfg
建立引导

安装 rEFInd

pacman -S refind
refind-install

修改 /boot/refind_linux.conf,把最后一行的 Boot with standard options 放到第一行,再把 root=/dev/xxx 改成 root=UUID=xxx,UUID 可以从 fstab 文件里面找

增加内核模块

/etc/mkinitcpio.conf 文件里面确保有下面的内容

MODULES="apple-bce"

使配置生效

mkinitcpio -P

配置开机自启

systemctl enable t2fanrd

修改 root 用户密码

passwd

创建普通用户

用户名大家自己定义,我这边定义是 chen2ha,-m 参数是创建用户家目录(默认不会创建)

useradd -m chen2ha

创建密码,密码是 Password@123,用户模式 chen2ha

echo 'Password@123' | passwd --stdin chen2ha
配置 sudo
visudo

找到 root ALL=(ALL) ALL 这一行,复制一行,把 root 改成自己的普通用户的名字

重启进入新系统

exit 退出 chroot,然后 reboot 重启

配置 wlan 自动连接 wifi

启动 iwd

sudo systemctl enable iwd --now

增加下面的配置

cat << EOF >> /etc/iwd/main.conf
[General]
EnableNetworkConfiguration=true
EOF
sudo systemctl enable iwd.service

重启 iwd

sudo systemctl restart iwd

配置 dns

echo 'nameserver 119.29.29.29' | sudo tee -a /etc/resolv.conf

开启时钟自动同步

sudo timedatectl set-ntp true

安装服务

pacman -S vim wget curl git kitty sudo bash-completion

先到这里,后面慢慢找时间更新,慢慢磨合,至少,我现在的 arch linux 在 mac 上可以用触摸板和键盘了

这篇关于macbook pro 2018 T2 芯片安装 archlinux 双系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/865499

相关文章

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

Linux卸载自带jdk并安装新jdk版本的图文教程

《Linux卸载自带jdk并安装新jdk版本的图文教程》在Linux系统中,有时需要卸载预装的OpenJDK并安装特定版本的JDK,例如JDK1.8,所以本文给大家详细介绍了Linux卸载自带jdk并... 目录Ⅰ、卸载自带jdkⅡ、安装新版jdkⅠ、卸载自带jdk1、输入命令查看旧jdkrpm -qa

MySQL Workbench 安装教程(保姆级)

《MySQLWorkbench安装教程(保姆级)》MySQLWorkbench是一款强大的数据库设计和管理工具,本文主要介绍了MySQLWorkbench安装教程,文中通过图文介绍的非常详细,对大... 目录前言:详细步骤:一、检查安装的数据库版本二、在官网下载对应的mysql Workbench版本,要是

Linux安装MySQL的教程

《Linux安装MySQL的教程》:本文主要介绍Linux安装MySQL的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux安装mysql1.Mysql官网2.我的存放路径3.解压mysql文件到当前目录4.重命名一下5.创建mysql用户组和用户并修

pip无法安装osgeo失败的问题解决

《pip无法安装osgeo失败的问题解决》本文主要介绍了pip无法安装osgeo失败的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 进入官方提供的扩展包下载网站寻找版本适配的whl文件注意:要选择cp(python版本)和你py

Android App安装列表获取方法(实践方案)

《AndroidApp安装列表获取方法(实践方案)》文章介绍了Android11及以上版本获取应用列表的方案调整,包括权限配置、白名单配置和action配置三种方式,并提供了相应的Java和Kotl... 目录前言实现方案         方案概述一、 androidManifest 三种配置方式

Python解析器安装指南分享(Mac/Windows/Linux)

《Python解析器安装指南分享(Mac/Windows/Linux)》:本文主要介绍Python解析器安装指南(Mac/Windows/Linux),具有很好的参考价值,希望对大家有所帮助,如有... 目NMNkN录1js. 安装包下载1.1 python 下载官网2.核心安装方式3. MACOS 系统安

Pycharm安装报错:Cannot detect a launch configuration解决办法

《Pycharm安装报错:Cannotdetectalaunchconfiguration解决办法》本文主要介绍了Pycharm安装报错:Cannotdetectalaunchconfigur... 本文主要介绍了Pycharm安装报错:Cannot detect a launch configuratio

pytorch+torchvision+python版本对应及环境安装

《pytorch+torchvision+python版本对应及环境安装》本文主要介绍了pytorch+torchvision+python版本对应及环境安装,安装过程中需要注意Numpy版本的降级,... 目录一、版本对应二、安装命令(pip)1. 版本2. 安装全过程3. 命令相关解释参考文章一、版本对

Windows系统下如何查找JDK的安装路径

《Windows系统下如何查找JDK的安装路径》:本文主要介绍Windows系统下如何查找JDK的安装路径,文中介绍了三种方法,分别是通过命令行检查、使用verbose选项查找jre目录、以及查看... 目录一、确认是否安装了JDK二、查找路径三、另外一种方式如果很久之前安装了JDK,或者在别人的电脑上,想