Skip to content

4) Troubleshooting

Tyler Nijmeh edited this page Sep 10, 2020 · 6 revisions

Missing Dependencies

Depending on your system, you may lack a few dependencies for ChArch. You can either manually install the missing package, or try installing BusyBox.

No Default Tarball URL

If you are not using an ARM based device, you need to specify a rootfs tarball URL with mkarch -u. See the FAQ to find some common places to find them.

Failed To Extract Tarball

Sometimes, your tarball download may become corrupted. Try deleting the tarball and redownloading it: rmarch -t.

No Container

You don't have a container in the default ~/chroot/ or /data/unencrypted/charch/ directory. If you specified a different one with mkarch -d, make sure to specify it to most of the other ChArch commands as well.

No Instance

You don't have a rootfs instance with the default rootfs name. If you specified a different one with mkarch, make sure to specify it to most of the other ChArch commands as well.

Container Contains Rootfs Instances

You need to remove each rootfs instance before you can remove the entire chroot container with rmarch -a. Use lsarch to list the rootfs instances and remove each one with rmarch -n.

Failed To Unmount

ChArch tries to kill all of the rootfs instance processes before unmounting it. Sometimes, some processes remain and prevent an unmount. You can either try to enter the rootfs instance and kill the processes manually, or reboot your device to automatically kill every process and unmount everything.

Internet Failing To Connect

Some Android kernels ship with a config called CONFIG_ANDROID_PARANOID_NETWORK that adds restrictions to network access.

Add these lines to the bottom of /etc/group:

inet:x:3003:
net_raw:x:3004:

Then, add your root user to the net groups: usermod -a -G inet,net_raw root. If you have another user that needs to be added to the net groups, replace root with the name of that user.

su: cannot open session: Error in service module

If you are using a RedHat Linux based distribution such as CentOS, Fedora, RHEL, openSUSE, etc., you may encounter this issue after your installation. This is due to a security measure in PAM disallowing you from logging in as superuser.

Run charch -c "/usr/bin/env su", assuming your rootfs instance is using the default name. If you are using a custom rootfs name, append it after the command (i.e. charch -c "/usr/bin/env su" suse)

Clone this wiki locally