X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/2a49908006b177c4d6354309333d06b1b96e4887..8b8f49b713d64065775fe538232f8639083601bd:/lunaix-os/usr/init/init.c?ds=sidebyside diff --git a/lunaix-os/usr/init/init.c b/lunaix-os/usr/init/init.c index 7e1785a..7f7ca5e 100644 --- a/lunaix-os/usr/init/init.c +++ b/lunaix-os/usr/init/init.c @@ -19,8 +19,6 @@ main(int argc, const char** argv) return 0; } - printf("(%p) user space!\n", (void*)main); - if ((err = symlink("/usr", "/mnt/lunaix-os/usr"))) { syslog(2, "symlink /usr:/mnt/lunaix-os/usr (%d)\n", errno); return 0; @@ -28,12 +26,16 @@ main(int argc, const char** argv) pid_t pid; if (!(pid = fork())) { - err = execve("/usr/sh", NULL, NULL); + err = execve("/usr/bin/sh", NULL, NULL); printf("fail to execute (%d)\n", errno); _exit(err); } - waitpid(pid, NULL, 0); + waitpid(pid, &err, 0); + + if (WEXITSTATUS(err)) { + printf("shell exit abnormally (%d)", err); + } return 0; } \ No newline at end of file