-
Notifications
You must be signed in to change notification settings - Fork 14
4) Troubleshooting
Depending on your system, you may lack a few dependencies for ChArch. You can either manually install the missing package, or try installing BusyBox.
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.
Sometimes, your tarball download may become corrupted. Try deleting the tarball and redownloading it: rmarch -t
.
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.
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.
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
.
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.
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.
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
)