Skip to content

Latest commit

 

History

History
337 lines (242 loc) · 9.55 KB

TROUBLESHOOTING.md

File metadata and controls

337 lines (242 loc) · 9.55 KB

Troubleshooting

Archvault Type Errors

If Archvault fails to compile, it will usually be due to Arch Linux system upgrades rendering Archvault's types (Keymap, Locale, Timezone) out of date. This is fairly easy to fix manually:

Keymap type is out of date

Type check failed in assignment to @keymap; expected Archvault::Types::Keymap:D but got Str ("amiga-de")

The solution is to edit the %keymaps constant in lib/Archvault/Types.pm6 to include amiga-de.

Locale type is out of date

Type check failed in assignment to @locale; expected Archvault::Types::Locale:D but got Str ("aa_DJ")

The solution is to edit the %locales constant in lib/Archvault/Types.pm6 to include aa_DJ.

Timezone type is out of date

Type check failed in assignment to @timezones; expected Archvault::Types::Timezone:D but got Str ("Africa/Abidjan")

The solution is to edit the @timezones constant in lib/Archvault/Types.pm6 to include Africa/Abidjan.

Archvault Wireless Errors

Failure to Connect to Internet

See: Failure to Connect to Wireless Access Point

If Archvault fails to connect to the Internet, after having connected to a wireless access point, check /etc/resolv.conf. Its contents should resemble the following:

# Generated by resolvconf
nameserver 127.0.0.1
nameserver ::1
options edns0 single-request-reopen

If /etc/resolv.conf doesn't resemble the above, see to it that it does.

Check the status of dnscrypt-proxy with:

systemctl status dnscrypt-proxy.service

You may need to restart dnscrypt-proxy:

systemctl restart dnscrypt-proxy.service

Be sure dnscrypt-proxy.socket is not active, as it conflicts with dnscrypt-proxy.service at runtime.

If Archvault still fails to connect to the Internet after ensuring /etc/resolv.conf and dnscrypt-proxy are in working order, try disabling dnscrypt-proxy and resetting the contents of /etc/resolv to the following:

# OpenDNS nameservers
nameserver 208.67.222.222
nameserver 208.67.220.220
# Google nameservers
nameserver 8.8.8.8
nameserver 8.8.4.4

This step is often necessary when tethering mobile data.

Failure to Connect to Wireless Access Point

If Archvault fails to connect to a wireless access point, it could mean anything.

In some cases, the problem is your system's factory wireless card. The easiest way to find out if this is true is to buy a high gain USB adapter from SimpleWiFi, and see if it works. If it does, you know the built-in wireless card is at fault.

Before doing anything else, check to make sure your wireless card is not soft or hard blocked:

rfkill list

If the card is hard-blocked, use the hardware switch to unblock it. If the card is not hard-blocked but is soft-blocked, use the following command:

rfkill unblock wifi

Once you've confirmed your wireless card isn't blocked, if it still fails to connect, it may be a sign that you need to install the proper wireless drivers or firmware for it.

If the high-gain USB wireless adapter fails to connect to wifi, however, it often means something lower level has gone awry. First, try disabling the GPE.L6F function:

echo "disable" > /sys/firmware/acpi/interrupts/gpe6F

This seems to help with certain Intel Skylake and Kaby Lake processors, and does not require a reboot.

If disabling the GPE.L6F function fails to restore wireless connectivity, reboot with acpi=off or similar appended to your kernel command line:

# in vim, append acpi=off to GRUB_CMDLINE_LINUX
vim /etc/default/grub
# regenerate grub config
grub-mkconfig -o /boot/grub/grub.cfg

You may only have to boot with acpi=off once to get wifi working.

If after this, your wifi is still not working yet, try updating your machine's BIOS.

After trying everything else, if your wifi still fails to connect, it could indicate a problem with your dhcpcd config. Alternatively, there could be an issue with your wireless router.

Failure to Find Wireless Access Point

If your machine fails to find a wireless access point, you may need to strengthen your wireless signal with a wireless repeater or high gain adapter. See also: "Respecting the regulatory domain".

If after ensuring your wireless signal is of sufficient quality, your machine still fails to find a wireless access point using wpa_cli, run interface wlan0 within the wpa_cli cmd prompt where wlan0 is your wireless interface. Sometimes wpa_cli incorrectly sets the interface to p2p-wlan0 despite wpa_supplicant being passed -i wlan0.

Assorted Errors

Modern computers often have problems running Linux smoothly. Be sure to scour the web for resources like these:

Maybe try looking for BIOS updates.

Booting Archvault From GRUB Rescue Shell

If upon booting the Archvault system, you initially enter the wrong vault password, GRUB will drop you into a rescue shell. Here is how to recover the system from the GRUB rescue shell without rebooting:

Most systems

grub rescue> ls
(hd0) (hd0,gpt3) (hd0,gpt2) (hd0,gpt1) (proc)
grub rescue> cryptomount hd0,gpt3
Attempting to decrypt master key...
Enter passphrase for hd0,gpt3 (88caa067d343402aabd6b107ab08125a):
Slot 0 opened
grub rescue> insmod normal
grub rescue> normal

VirtualBox UEFI systems

grub rescue> ls
(proc) (hd0) (hd1) (hd1,gpt3) (hd1,gpt2) (hd1,gpt1)
grub rescue> cryptomount hd1,gpt3
Attempting to decrypt master key...
Enter passphrase for hd1,gpt3 (88caa067d343402aabd6b107ab08125a):
Slot 0 opened
grub rescue> insmod normal
grub rescue> normal

Booting Archvault Takes a Really Long Time

It takes a really long time for GRUB to decrypt the /boot partition.

Always Prompted for GRUB User and Password on Bootup

If you're always prompted for a GRUB username and password on bootup, it probably means a system upgrade has destroyed Archvault's changes to the config file at /etc/grub.d/10_linux.

Run this script to fix it:

use v6;
my Str:D $file = '/etc/grub.d/10_linux';
my Str:D @line = $file.IO.lines;
my Regex:D $regex = /'${CLASS}'\h/;
my UInt:D @index = @line.grep($regex, :k);
@index.race.map(-> UInt:D $index {
    @line[$index] .= subst($regex, '--unrestricted ${CLASS} ')
});
my Str:D $replace = @line.join("\n");
spurt($file, $replace ~ "\n");

Error While Booting: Kernel Panic

This might be due to an error completing the mkinitcpio -p linux command. Re-run mkinitcpio -p linux from a LiveCD after mounting the system:

cryptsetup luksOpen /dev/sda3 vault
./scripts/mount-system.sh
arch-chroot /mnt pacman -Syu
arch-chroot /mnt mkinitcpio -p linux
./scripts/umount-system.sh
cryptsetup luksClose vault

Error While Loading Shared Libraries

If during Archvault installation, the system complains about missing shared libraries, out of date packages are most likely to blame. For example:

/usr/bin/systemd-sysusers: error while loading shared libraries: libjson-c.so.4: cannot open shared object file: No such file or directory

The package that provides libjson-c.so.4 is out of date or missing. To fix this, update or install pkg json-c:

pacman -S json-c

Or if all else fails, run pacman -Syu.

If you're using an outdated Arch Linux installation medium, retry with the newest version. It's best practice to always use the newest version of the official Arch Linux installation medium.

Monitor Resolution Issues

One way to work around monitor resolution issues is to use Vim.

Open vim:

vim

Create a horizontal split:

:sp

Switch to the bottom split:

  • Ctrl-w j

Create a vertical split:

:vsp

Switch to the bottom right split, which we'll use as our main split:

  • Ctrl-w l

Create a vertical split within the main split:

:vsp

Open a terminal:

:terminal

Maximize the main split vertically and horizontally:

  • Ctrl-w _
  • Ctrl-w |

Center the main split:

  • Ctrl-w h
  • Ctrl-w l
  • Ctrl-w l

Navigate back to the main split:

  • Ctrl-w h

Use Ctrl-w <, Ctrl-w >, Ctrl-w +, Ctrl-w - to modify split borders to your liking.