准备工作
- 进行全面系统更新
sudo pacman -Syyu,
要保持系统处于最新状态,如果你长时间没有进行全面系统更新,mhwd
会因为过时而发生错误1(见最下方) - 如果长时间没有进行全面系统更新,
pacman
会因为过时而出现错误3和错误4,请参考下方网址内的解决方法
安装独显驱动
- 删除video-linux(free)驱动,也就是系统原本的free驱动
sudo mhwd -r pci video-linux
- 安装独显驱动(nonfree)
sudo mhwd -a pci nonfree 0300
mhwd全称Manjaro Hardware Detection,上述命令可以自动检测、安装、配置适合本机系统的独显驱动和配套软件。
我的电脑有集显(intel)和独显(nvidia),在我的电脑上该命令会安装
video-hybrid-intel-nvidia-440xx-prime
,
这个驱动配置包含独显驱动(版本号440xx)、双显卡切换程序prime(以前都用bumblebeed这个程序,但貌似有性能问题,系统全面更新后发现现在主流的切换程序是prime):
bumblebee is no longer used so prime mhwd setup will suit us well,
besides bumblebee setup is currently lacking the newest drivers
anyway
mhwd介绍:https://wiki.manjaro.org/index.php/Manjaro_Hardware_Detection
配置驱动
配置方法参考:
https://archived.forum.manjaro.org/t/guide-install-and-configure-optimus-manager-for-hybrid-gpu-setups-intel-nvidia/92196
此教程是针对video-hybrid-intel-nvidia-440xx-prime的完整配置,讲解的特别清楚,一定要看完,个人最喜欢的就是这种教程-v-,强烈推荐!!
注意:
Please, make ALL CHANGES BEFORE REBOOT. If you reboot system before everything is in order, your graphical session may not boot successfully.
翻译:在配置过程要一步到位,中途重启电脑或中途离开导致电脑休眠,可能无法正常启动系统。如果桌面无法打开,也可以Ctrl+Alter+F4
进入tty中进行相关配置。如果tty出现中文乱码,参见解决方案:https://blog.csdn.net/qq_34762586/article/details/104447986
另外,所有删除文件的操作替换为mv操作,以便以后可以恢复。
配置方法一:
参考:https://forum.manjaro.org/t/howto-set-up-prime-with-nvidia-proprietary-driver/40225
配置一貌似不是针对video-hybrid-intel-nvidia-440xx-prime的配置,而是整合单独的nvidia驱动和prime的配置,以后找到理想的配置教程会注意将上述操作全部恢复
说实话感觉在manjaro上装驱动还是蛮简单的,就是自己长时间不更新导致中间麻烦了一点。。
安装过程产生的错误
- 运行
sudo mhwd -a pci nonfree 0300
时出现:
error:target not found:linux419-nvidia
解决方法:
sudo pacman -Syyu
- 删除video-linux驱动时报错
error: failed to init transaction (unable to lock database)error: could not lock database: File exists
解决方法:
rm /var/lib/pacman/db.lck
解释:
When pacman is about to alter the package database, for example
installing a package, it creates a lock file at
/var/lib/pacman/db.lck. This prevents another instance of pacman from
trying to alter the package database at the same time.If pacman is interrupted while changing the database, this stale lock
file can remain. If you are certain that no instances of pacman are
running then delete the lock file:
参考:https://wiki.archlinux.org/index.php/Pacman#.22Failed_to_init_transaction_.28unable_to_lock_database.29.22_error
- 运行
sudo pacman -Syyu
时,执行hook
子函数大量报错:
invalid value Path
注意:如果出现该错误,请别重启,直接进入下方链接进行修复,可以免去制作u盘启动盘等操作。
- 在完成包含错误3的全面系统更新后,重启报错:
/boot/vmlinuz-linux not found
3,4的解决方法和出现该问题的解释,参考:
https://archived.forum.manjaro.org/t/howto-rescue-your-system-error-hook-invalid-value-path/123226
在参考上述网站步骤中需要注意的点:
-
因为系统进不去,需要制作manjaro的u盘启动盘
教程:https://www.jianshu.com/p/7c2db0b00ec0
注意要用dd,否则会报grup错误,u盘无法启动为何要关闭安全启动:https://github.com/pbatard/rufus/wiki/FAQ#Why_do_I_need_to_disable_Secure_Boot_to_use_UEFINTFS
-
在u盘系统中打开终端,输入manjaro-chroot -a 自动挂载硬盘中的linux系统,进行恢复按照教程进行恢复操作
教训
关于manjaro的任何问题,请一定参考官方论坛,官方wiki,国内关于manjaro的博客都有点过时且不完整,一不小心就容易搞崩系统。。。。。,开机提醒出现的这个窗口不是闹着玩的。。。