Skip to content

Latest commit

 

History

History
23 lines (18 loc) · 1.11 KB

readme.md

File metadata and controls

23 lines (18 loc) · 1.11 KB

first of all type these command for install packages: sudo apt-get update && sudo apt-get install -yqq daemonize dbus-user-session fontconfig

after that with nano or vi or any editor create a file on this path: /etc/profile.d/00-wsl2-systemd.sh and paste this lines:

SYSTEMD_PID=$(ps -ef | grep '/lib/systemd/systemd --system-unit=basic.target$' | grep -v unshare | awk '{print $2}')

if [ -z "$SYSTEMD_PID" ]; then
   sudo /usr/bin/daemonize /usr/bin/unshare --fork --pid --mount-proc /lib/systemd/systemd --system-unit=basic.target
   SYSTEMD_PID=$(ps -ef | grep '/lib/systemd/systemd --system-unit=basic.target$' | grep -v unshare | awk '{print $2}')
fi

if [ -n "$SYSTEMD_PID" ] && [ "$SYSTEMD_PID" != "1" ]; then
    exec sudo /usr/bin/nsenter -t $SYSTEMD_PID -a su - $LOGNAME
fi

type $ sudo visudo and paste this line on bottom of file:

%sudo ALL=(ALL) NOPASSWD: /usr/bin/daemonize /usr/bin/unshare --fork --pid --mount-proc /lib/systemd/systemd --system-unit=basic.target
%sudo ALL=(ALL) NOPASSWD: /usr/bin/nsenter -t [0-9]* -a su - [a-zA-Z0-9]*

now restart wsl2 and after this, systemd runs on wsl2.