ArchLinux 问题集锦

waydroid 無法上網

允许包转发

ufw default allow FORWARD

waydroid 啓動報錯

waydroid session start
RuntimeError: Command failed: % /usr/lib/waydroid/data/scripts/waydroid-net.sh start

解決:
修改/etc/dnsmasq.conf,打開#bind-interfaces
重啓 sudo systemctl restart dnsmasq.service

Runtime error while start waydroid session

MT7922 wifi 6E 解鎖

  1. 強制切美國(系統會馬上被 AP 打回 CN)
sudo iw reg set US
  1. 永久寫死(重開機還在)
sudo tee /etc/modprobe.d/mt7922.conf <<< 'options mt7921e disable_regd_check=1'
sudo tee /etc/conf.d/wireless-regdom <<< 'WIRELESS_REGDOM="US"'

可以安裝wireless-regdb,再修改/etc/conf.d/wireless-regdom文件

  1. 重載驅動
sudo modprobe -r mt7921e && sudo modprobe mt7921e

4.重啓

reboot

Firefox 设置

DNS over HTTPS 選擇Max Protection

HTTPS-Only Mode 選擇Enable HTTPS-Only Mode in all windows

Enhanced Tracking Protection選擇Strict

Certificates刪除

BEIJING CERTIFICATE AUTHORITY(BJCA **)
China Financial Certification Authority(CFCA
GUANG DONG CERTIFICATE AUTHORITY(CDCA
)
Certum Certification Authority
iTurstChina Co.,Ltd.(vTrust *)
TrustAsia Technologies, Inc.(TrustAsia *)
UniTrust (UCA *)

about:config設置
privacy.resistFingerprinting=true
webgl.disabled=true
media.peerconnection.enabled=false
geo.enabled=false
privacy.firstparty.isolate=true

Archlinux 安裝.deb文件

sudo pacman -S dpkg
sudo dpkg -i xx.deb

flutter 多版本管理 fvm

修改 ~/.bash_profile,修改下載地址

export PUB_HOSTED_URL="https://pub.flutter-io.cn"
export FLUTTER_STORAGE_BASE_URL="https://storage.flutter-io.cn"

修改 ~/.zshrc,增加 FVM解压的路径參數

FVM_HOME -> FVM解压的路径 [已弃用]

export FVM_CACHE_PATH=/data/work/Other/fvm/

1.查看fvm中支持的flutter版本

fvm releases

2.查看fvm中已安装的列表

fvm list

3.安装特定版本的Flutter

fvm install 3.24.0

4.使用特定版本

fvm use 3.24.0

5.设置全局版本

fvm global 3.24.0

VSCode設置
Setting中搜索fluttersdk,修改配置文件~/.config/Code/User/settings.json

"dart.flutterSdkPath": "/data/work/Other/fvm/default/bin"

FVM的安装与配置

[问题]KDE panel面板透明设置

System Settings > Window Management > Desktop Effects > Blur > Configure - Turn Blur Strength and Noise Strength. 可以关闭 Background Contrast.

[问题]无法hibernate休眠

nvidia-utils 560.35.03-6 更新后无法休眠,报错信息:

PreserveVideoMemoryAllocations module parameter is set. System Power Management attempted without driver procfs suspend interface. Please refer to the 'Configuring Power Management Support' section in the driver README.
pci_pm_freeze(): nv_pomps_freeze [nvidia] returns -5
dpm_run_callback(): pci_pm_freeze returns -5
failed to freeze async: error -5
Device reseting!

需要 enabling 一些 systemd modules.

sudo systemctl enable nvidia-suspend.service
sudo systemctl enable nvidia-hibernate.service
sudo systemctl enable nvidia-resume.service

ArchLinux Suspend/Hibernate not working correctly

[问题]yay安装应用时,引用的安装包失效

修改/home/df/.cache/yay/xx下的PKGBUILD文件,修改source文件路径
再在此目录xx下,执行makepkg -si安装

Arch Linux 软件包制作入门

[问题]电脑使用Android的网络

sudo pacman -S usb_modeswitch 

手机打开网络共享

[问题]Android使用usb连接电脑网络

yay -S gnirehte
gnirehtet run

[问题]Android 投屏到电脑

sudo pacman -S scrcpy
scrcpy

[问题]Plasma KDE Screen Locking Picture of the Day 每日一图的图片缓存位置

image

~/.cache/plasma_engine_potd

Where is Bing's Picture of the Day stored on my system?

[问题]Gwenview支持avif格式图片

sudo pacman -S kimageformats shared-mime-info  libavif

[问题]EXT4 分区修复

检查文件系统并在发现任何错误时进行修复

df -T # 查看文件系统格式
umount /dev/sdb3
e2fsck -p /dev/sdb3 # ext2、ext3或ext4格式
xfs_repair /dev/sda1 # xfs格式

[问题]NTFS硬盘无法打开

查看log
ntfs3(sdc1): volume is dirty and "force" flag is not set!
或者
wrong fs type, bad option, bad superblock on /dev/sdc1, missing codepage or helper program, or other error.

pacman -S  	ntfs-3g
fdisk -l # 查看硬盘名称
sudo mount -t ntfs3 /dev/sdc1 /mnt
journalctl -r
# 报错
mount: /mnt: wrong fs type, bad option, bad superblock on /dev/sdc1, missing codepage or helper program, or other error.
       dmesg(1) may have more information after failed mount system call.
或者
ntfs3(sdc1): volume is dirty and "force" flag is not set!

# 修复
sudo ntfsfix -d /dev/sdc1
sudo mount -t ntfs3 /dev/sdc1 /mnt  

[问题]配置DNS

创建修改配置文件

vim /etc/NetworkManager/conf.d/01-dns.conf 

加入以下两行,防止NetworkManager修改resolv.conf文件

[main]
dns=none  

修改隐藏权限,去掉只读

lsattr /etc/resolv.conf
chattr -i /etc/resolv.conf
vim /etc/resolv.conf 

加入以下两行

nameserver 223.5.5.5 # 阿里巴巴
nameserver 223.6.6.6 # 阿里巴巴
nameserver 8.8.8.8
nameserver 8.8.4.4
systemctl restart NetworkManager 

chattr +i /etc/resolv.conf # 加上只读隐藏权限
lsattr /etc/resolv.conf

[问题] 使用DOH 加密DNS

注意:我在arch linux 中使用时,不确定是什么原因,导致在hibernate后再开启时dns-over-https会报错,因此无法上网需要重启系统,因此我已改用dnscrypt-proxy+dnsmasq

pacman -S dns-over-https

修改hosts顺序

vim /etc/nsswitch.conf 
hosts: myhostname mymachines resolve [!UNAVAIL=return] files dns

配置DOH客户端

vim /etc/dns-over-https/doh-client.conf

修改

upstream_selector = "weighted_round_robin"

增加DOH地址

[[upstream.upstream_ietf]]
    url = "https://223.5.5.5/dns-query"
    weight = 50

修改 /etc/resolv.conf 文件

nameserver ::1
nameserver 127.0.0.1
options edns0 single-request-reopen

设置开机自启并立即启动

sudo systemctl start doh-client.service 
sudo systemctl enable --now doh-client.service
sudo systemctl status doh-client.service # 服务的状态
sudo systemctl restart doh-client.service
sudo systemctl is-enabled doh-client.service #是否开机时启动
sudo systemctl list-units --type=service #查看系统中所有正在运行的服务以及它们的状态

查看是否生效

pacman -S dnsutils
nslookup www.baidu.com # 显示是本地IP则已经生效
Server:         ::1
Address:        ::1#53

在 Arch Linux 使用 DOH 来加密你的 DNS

[问题]pacman -Syu时,error: could not open file /var/lib/pacman/local/cemu-2.0.439-2/files: No such file or directory

ls查看此目录显示cannot access 'desc': Structure needs cleaning。

用一下方法:

sudo rm -r /var/lib/pacman/local/cemu-2.0.439-2
sudo pacman -S --dbonly cemu

不行再尝试以下:

$df -h
/dev/sdb3        12G  2.0G  9.2G  18% /var
## 备份sdb3
dd if=/dev/sdb3 of=/path/to/backup.img bs=1M
# 重启系统,进入命令界面
$umount /dev/sdb3 # 卸载
$fsck.ext4 /dev/sdb3 -y # 修复
# 重启查看,若进入系统有问题,需要恢复备份
$dd if=/path/to/backup.img of=/dev/sdb3 bs=1M

Linux备份与恢复的命令和使用方式:保障数据安全和业务连续性

[问题] Wifi连接时间长,wifi连接时断时连

由于iwd和NetworkManager连接网络产生了冲突,进行以下操作并重启

systemctl list-unit-files # 查看iw是否开启
# 下面显示都开启,需要关闭iwd
iwd.service                                enable        disabled
NetworkManager.service                     enabled         disabled
# 确保iwd开机处于关闭状态
sudo systemctl disable iwd  
# 立即关闭iwd
sudo systemctl stop iwd   
# 启动NetworkManager
sudo systemctl enable --now NetworkManager                     

Arch配置安装使用

[问题] wine兼容 DirectX 9, 10, 11 and 12 over Vulkan

sudo pacman -S dxvk-bin vkd3d-proton-bin
WINEPREFIX=~/.wine setup_dxvk install
WINEPREFIX=~/.wine setup_vkd3d_proton install

WINEPREFIX=~/.wine setup_dxvk uninstall
WINEPREFIX=~/.wine setup_vkd3d_proton uninstall

[问题] wine启动某些应用,后台没报错,界面不显示

去WineHQ查看相关应用说明,查看是否需要安装组件或字体

$ winetricks mfc42
$ winetricks droid

[问题] wine报错winediag:ntlm_check_version ntlm_auth was not found. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.

pacman -S samba

[问题]service:scmdatabase_autostart_services Auto-start service L"WineBus" failed to start: 105

How to prevent Wine from launching native mono apps?

$ xdg-mime query default application/x-ms-dos-executable 

[问题]wine执行exe时报错误 [VGL] ERROR: Could not open display :8

使用以下命令执行

optirun bash -c "wine [your game] && wineserver -w"

[VGL] ERROR: Could not open display :8 if a program forks and exits optirun #42

[问题] ArchLinux下开启MagicSysRq组合键

用于系统完全死机时,重新启动计算机

Alt+SysRq+REISUB,简单记忆为「Reboot Even If System Utterly Broken」

开启方法:

以下代码写入文件:/etc/sysctl.d/99-sysctl.conf

kernel.sysrq = 1

然后重载系统所有配置或者仅重载 /etc/sysctl.d/99-sysctl.conf 配置文件:

sudo sysctl --system
sudo sysctl --load=/etc/sysctl.d/99-sysctl.conf

参考

[问题]pacman 设置代理

export http_proxy="..."
export https_proxy="..."

sudo -E pacman -Syu
# 或者修改 /etc/sudoers
Defaults env_keep += "ftp_proxy http_proxy https_proxy no_proxy"

参考

[问题]pacman 更新失败后,启动报错

大概率是连接服务器更新失败

1、 sudo pacman -Syu 更新时大量报错

==> ERROR: module not found: 'usbhid'
==> ERROR: module not found: xxxx
==> WARNING: No modules were added to the image. This is probably not what you want.

解决:不要重启,需要重新执行命令

sudo pacman -S linux #重装linux
sudo mkinitcpio -P linux  #重新生成镜像

2、重启后报错

mount: /new_root:unknown filesystem type 'ext4'.
dmesg(1) may have more information after failed mount system call.
You are new being dropped into an emergency shell.
sh: can`t access tty; job control turned off

查看pacman日志

...
creating zstd-compressed initcpio image: '/boot/initramfs-linux-faillback.img'
WARNING: No modules were added to the image.This is probably not what you want.
Running build hook:[fsck]
ERROR: module not found: 'ps2mult'
ERROR: module not found: 'ps2_gpio'
...

解决:

若已经进不去系统,则用Live CD启动linux

# 1.连接网络
iwctl                           #执行iwctl命令,进入交互式命令行
device list                     #列出设备名,比如无线网卡看到叫 wlan0
station wlan0 scan              #扫描网络
station wlan0 get-networks      #列出网络 比如想连接YOUR-WIRELESS-NAME这个无线
station wlan0 connect YOUR-WIRELESS-NAME #进行连接 输入密码即可
exit                            #成功后exit退出
# 2.根据系统情况挂在目录
mount /dev/sdb2  /mnt
mount /dev/sda1 /mnt/efi
mount /dev/sda3 /mnt/var
mount /dev/sda4 /mnt/home

# 3.重新安装linux
arch-chroot /mnt
pacman -S linux

若不行可以降级系统,去/var/cache/pacman/pkg 寻找旧的安装包,命令例如:

># pacman -U linux-3.5.6-1-x86_64.pkg.tar.xz linux-headers-3.5.6-1-x86_64.pkg.tar.xz virtualbox-host-modules-4.2.0-5-x86_64.pkg.tar.xz

[问题]系统报 Failed to create sink input: sink is suspended 错误

应该是由于PulseAudio的问题导致,建议直接用新一代PipeWire替换掉PulseAudio和Jack即可解决。

# 1.关掉,禁用pulseaudio的服务和socket
$ systemctl --user stop pulseaudio.{service,socket}
$ systemctl --user disable pulseaudio.{service,socket}
# 2.安装
$ pacman -S pipewire pipewire-pulse pipewire-jack #选装 pipewire-alsa
$ pacman -S wireplumber # 会话管理器
# 3.启动
$ systemctl --user start pipewire pipewire-pulse

使用PipeWire取代PulseAudio

[问题]密码忘记或误修改文件导致无法登录系统

1,GNU GRUB version中选中Arch Linux
2,按e键进入修改界面
3,在linux /boot/vmlinuz-linux 一行末尾加入 init =/bin/bash
4,按ctrl+x或F10,进入单用户模式
5,此时已经可以修改文件,去将误修改的文件还原即可
6,重新以读写的方式挂载根文件系统

# mount -n -o remount,rw /

7,修改root密码

# passwd
‘password updated successfully’.

8,最后,运行下面的命令来保存更改并启动ArchLinux。

# exec /sbin/init

原帖

[问题]系统hibernate后唤醒时画面卡死,有时需要等待几分钟后才能操作,或一直卡死

lsblk -f # 查看根目录/的UUID

配置GRUB_CMDLINE_LINUX_DEFAULT,加入

root=UUID=0a3407de-014b-458b-b5c1-848e92a327a3

/etc/default/grub完整如下:

GRUB_CMDLINE_LINUX_DEFAULT="loglevel=5 nowatchdog root=UUID=560a74f2-582b-45c8-99c7-5572e592e263 resume=UUID=560a74f2-582b-45c8-99c7-5572e592e263 resume_offset=745472"

Hibernate doesn't work after hibernate

Persistent block device naming

[问题]卸载optimus-manager后,无法进入kde

yay -Rns optimus-manager optimus-manager-qt # 卸载optimus-manager

将/etc/X11/xorg.conf删除

[问题] 睡眠后唤醒时卡死,显示以下信息

ata6.00: supports DRM functions and may not be fully accessible
ata1.00: ATA identify device log not supported

用lspci查看

04:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTL8411B PCI Express Card Reader (rev 01)
...
ModuleNotFoundError: No module named 'optimus_manager'
/usr/lib/systemd/system-sleep/optimus-manager.py failed with exit status 1.

最后发现是因为optimus-manager导致,卸载optimus-manager,安装bumblebee后恢复正常

ArchLinux安装

Trouble mounting microSD card
ArchLinux无法正常休眠或挂起
Realtech PCI Card Reader HOW TO
Card Reader RTL8411B
Startx - AddScreen/ScreenInit Faild - Asus N76V - GT 650M

[问题] 桌面崩溃,黑屏后重启

killall plasmashell # 杀死进程

kstart5 plasmashell # 开启进程
kquitapp5 plasmashell # 退出桌面

[问题] error while loading shared libraries: libpcap.so.0.8:cannot open shared object file: No such file or directory

issues/98

$ locate libpcap
/usr/lib64/libpcap.so <-- was one among many results for me
$ cd /usr/lib64/ # go to that directory
$ sudo ln -s libpcap.so libpcap.so.0.8 # create a symlink to libpcap.so.0.8 from libpcap.so (or whatever you actually have instead)
$ cd - # go back to your bettercap directory

[问题]系统hibernate后休眠时无法切断电源的问题

修改/etc/systemd/sleep.conf文件,打开HibernateMode的注释,值设为shutdown

[Sleep]
# A fix for unable to poweroff after hibernation
# HibernateMode= plantform shutdown
HibernateMode=shutdown

解决 systemd 休眠时无法切断电源的问题
Arch Wiki - System does not power off when hibernating

posted @ 2024-07-26 22:20  jokerpoker  阅读(220)  评论(0)    收藏  举报