forked from kiss-community/repo
busybox: Fix su, login, crontab, ping, etc
This commit is contained in:
parent
135f36d654
commit
e1bfa7afcd
@ -1,24 +1,35 @@
|
||||
#!/bin/sh -e
|
||||
|
||||
# Build and install regular busybox.
|
||||
# This excludes utilities which require 'suid' to function.
|
||||
make
|
||||
make CONFIG_PREFIX="$1" install
|
||||
make CONFIG_PREFIX="$1/usr" install
|
||||
|
||||
# Fix package filesystem.
|
||||
mv "$1/bin/"* "$1/usr/bin"
|
||||
mv "$1/sbin/"* "$1/usr/bin"
|
||||
mv "$1/usr/sbin/"* "$1/usr/bin"
|
||||
rmdir "$1/bin" "$1/usr/sbin" "$1/sbin"
|
||||
# Rename the binary temporarily.
|
||||
mv "$1/usr/bin/busybox" "$1/usr/bin/busybox-nosuid"
|
||||
|
||||
# Install runit services.
|
||||
install -Dm755 acpid.run "$1/etc/sv/acpid/run"
|
||||
install -Dm755 crond.run "$1/etc/sv/crond/run"
|
||||
install -Dm755 syslogd.run "$1/etc/sv/syslogd/run"
|
||||
ln -s /run/runit/supervise.acpid "$1/etc/sv/acpid/supervise"
|
||||
ln -s /run/runit/supervise.crond "$1/etc/sv/crond/supervise"
|
||||
ln -s /run/runit/supervise.syslogd "$1/etc/sv/syslogd/supervise"
|
||||
# Build and install suid busybox.
|
||||
# This _only_ includes utlities which require 'suid' to function.
|
||||
cp -f .config-suid .config
|
||||
make
|
||||
make CONFIG_PREFIX="$1/usr" install
|
||||
|
||||
# Install busybox config.
|
||||
install -Dm644 busybox.conf "$1/etc/busybox.conf"
|
||||
# Aptly name the busybox binaries.
|
||||
mv "$1/usr/bin/busybox" "$1/usr/bin/busybox-suid"
|
||||
mv "$1/usr/bin/busybox-nosuid" "$1/usr/bin/busybox"
|
||||
|
||||
# Install the non-suid symlinks.
|
||||
"$1/usr/bin/busybox" --list | while read -r bin; do
|
||||
ln -s busybox "$1/usr/bin/$bin"
|
||||
done
|
||||
|
||||
# Install the suid symlinks.
|
||||
"$1/usr/bin/busybox-suid" --list | while read -r bin; do
|
||||
ln -s busybox-suid "$1/usr/bin/$bin"
|
||||
done
|
||||
|
||||
# Set suid on busybox suid.
|
||||
chmod +s "$1/usr/bin/busybox-suid"
|
||||
|
||||
# Build and install a statically compiled busybox.
|
||||
# This is useful for instances where the system is broken
|
||||
@ -31,3 +42,11 @@ sleep 1
|
||||
sed -i'' "s/.*CONFIG_STATIC.*/CONFIG_STATIC=y/" .config
|
||||
make
|
||||
install -Dm755 busybox "$1/usr/lib/busybox"
|
||||
|
||||
# Install runit services.
|
||||
install -Dm755 acpid.run "$1/etc/sv/acpid/run"
|
||||
install -Dm755 crond.run "$1/etc/sv/crond/run"
|
||||
install -Dm755 syslogd.run "$1/etc/sv/syslogd/run"
|
||||
ln -s /run/runit/supervise.acpid "$1/etc/sv/acpid/supervise"
|
||||
ln -s /run/runit/supervise.crond "$1/etc/sv/crond/supervise"
|
||||
ln -s /run/runit/supervise.syslogd "$1/etc/sv/syslogd/supervise"
|
||||
|
@ -1,6 +1,6 @@
|
||||
0e4925392fd9f3743cc517e031b68b012b24a63b0cf6c1ff03cce7bb3846cc99 busybox-1.31.0.tar.bz2
|
||||
e942bc7e2274e15136a964bb3628b21fab3460327f3c7eb097e02f5faaaee93b .config
|
||||
3b53ef4e04527a511f84342620f5689bb5ce890acab710f0f00b44772589fd29 .config
|
||||
70503f9a0ab3d6be4bd2383ef92a28329140926ecdd83b9d8b3a2e09100cc083 .config-suid
|
||||
6c3eb5cf839c7a31c337df0cd8388b397e1415ffa7a63e9678552c9c63dd869f acpid.run
|
||||
814dea14ac612125e97dcc1d619219b2c9dfc14850bf48d858421fb2c98eca12 crond.run
|
||||
4a5981f4b0d791fe9b84b0b2e01ae905f6565c8245b3cd603e6decf34ddad71a syslogd.run
|
||||
f222991a00d8b30f1aaee5991bb9a8b624023e4a38cef46a1eddf2c8a55cfd3d busybox.conf
|
||||
|
@ -1,7 +1,7 @@
|
||||
#
|
||||
# Automatically generated make config: don't edit
|
||||
# Busybox version: 1.31.0
|
||||
# Tue Aug 13 15:59:30 2019
|
||||
# Sun Aug 25 16:57:58 2019
|
||||
#
|
||||
CONFIG_HAVE_DOT_CONFIG=y
|
||||
|
||||
@ -27,9 +27,9 @@ CONFIG_BUSYBOX=y
|
||||
CONFIG_FEATURE_SHOW_SCRIPT=y
|
||||
CONFIG_FEATURE_INSTALLER=y
|
||||
# CONFIG_INSTALL_NO_USR is not set
|
||||
CONFIG_FEATURE_SUID=y
|
||||
CONFIG_FEATURE_SUID_CONFIG=y
|
||||
CONFIG_FEATURE_SUID_CONFIG_QUIET=y
|
||||
# CONFIG_FEATURE_SUID is not set
|
||||
# CONFIG_FEATURE_SUID_CONFIG is not set
|
||||
# CONFIG_FEATURE_SUID_CONFIG_QUIET is not set
|
||||
# CONFIG_FEATURE_PREFER_APPLETS is not set
|
||||
CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe"
|
||||
# CONFIG_SELINUX is not set
|
||||
@ -59,10 +59,10 @@ CONFIG_STACK_OPTIMIZATION_386=y
|
||||
#
|
||||
# Installation Options ("make install" behavior)
|
||||
#
|
||||
CONFIG_INSTALL_APPLET_SYMLINKS=y
|
||||
# CONFIG_INSTALL_APPLET_SYMLINKS is not set
|
||||
# CONFIG_INSTALL_APPLET_HARDLINKS is not set
|
||||
# CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS is not set
|
||||
# CONFIG_INSTALL_APPLET_DONT is not set
|
||||
CONFIG_INSTALL_APPLET_DONT=y
|
||||
# CONFIG_INSTALL_SH_APPLET_SYMLINK is not set
|
||||
# CONFIG_INSTALL_SH_APPLET_HARDLINK is not set
|
||||
# CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set
|
||||
@ -528,19 +528,19 @@ CONFIG_DELUSER=y
|
||||
CONFIG_DELGROUP=y
|
||||
CONFIG_FEATURE_DEL_USER_FROM_GROUP=y
|
||||
CONFIG_GETTY=y
|
||||
CONFIG_LOGIN=y
|
||||
# CONFIG_LOGIN is not set
|
||||
# CONFIG_LOGIN_SESSION_AS_CHILD is not set
|
||||
CONFIG_LOGIN_SCRIPTS=y
|
||||
CONFIG_FEATURE_NOLOGIN=y
|
||||
CONFIG_FEATURE_SECURETTY=y
|
||||
CONFIG_PASSWD=y
|
||||
CONFIG_FEATURE_PASSWD_WEAK_CHECK=y
|
||||
CONFIG_SU=y
|
||||
CONFIG_FEATURE_SU_SYSLOG=y
|
||||
CONFIG_FEATURE_SU_CHECKS_SHELLS=y
|
||||
# CONFIG_LOGIN_SCRIPTS is not set
|
||||
# CONFIG_FEATURE_NOLOGIN is not set
|
||||
# CONFIG_FEATURE_SECURETTY is not set
|
||||
# CONFIG_PASSWD is not set
|
||||
# CONFIG_FEATURE_PASSWD_WEAK_CHECK is not set
|
||||
# CONFIG_SU is not set
|
||||
# CONFIG_FEATURE_SU_SYSLOG is not set
|
||||
# CONFIG_FEATURE_SU_CHECKS_SHELLS is not set
|
||||
# CONFIG_FEATURE_SU_BLANK_PW_NEEDS_SECURE_TTY is not set
|
||||
CONFIG_SULOGIN=y
|
||||
CONFIG_VLOCK=y
|
||||
# CONFIG_VLOCK is not set
|
||||
|
||||
#
|
||||
# Linux Ext2 FS Progs
|
||||
@ -756,7 +756,7 @@ CONFIG_FEATURE_CROND_D=y
|
||||
CONFIG_FEATURE_CROND_CALL_SENDMAIL=y
|
||||
CONFIG_FEATURE_CROND_SPECIAL_TIMES=y
|
||||
CONFIG_FEATURE_CROND_DIR="/var/spool/cron"
|
||||
CONFIG_CRONTAB=y
|
||||
# CONFIG_CRONTAB is not set
|
||||
# CONFIG_DEVFSD is not set
|
||||
# CONFIG_DEVFSD_MODLOAD is not set
|
||||
# CONFIG_DEVFSD_FG_NP is not set
|
||||
@ -922,9 +922,9 @@ CONFIG_NTPD=y
|
||||
CONFIG_FEATURE_NTPD_SERVER=y
|
||||
CONFIG_FEATURE_NTPD_CONF=y
|
||||
CONFIG_FEATURE_NTP_AUTH=y
|
||||
CONFIG_PING=y
|
||||
CONFIG_PING6=y
|
||||
CONFIG_FEATURE_FANCY_PING=y
|
||||
# CONFIG_PING is not set
|
||||
# CONFIG_PING6 is not set
|
||||
# CONFIG_FEATURE_FANCY_PING is not set
|
||||
CONFIG_PSCAN=y
|
||||
CONFIG_ROUTE=y
|
||||
CONFIG_SLATTACH=y
|
||||
|
1159
core/busybox/files/.config-suid
Normal file
1159
core/busybox/files/.config-suid
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,4 +0,0 @@
|
||||
[SUID]
|
||||
su = ssx
|
||||
reboot = ssx
|
||||
poweroff = ssx
|
@ -1,6 +1,6 @@
|
||||
https://busybox.net/downloads/busybox-1.31.0.tar.bz2
|
||||
files/.config
|
||||
files/.config-suid
|
||||
files/acpid.run
|
||||
files/crond.run
|
||||
files/syslogd.run
|
||||
files/busybox.conf
|
||||
|
@ -1 +1 @@
|
||||
1.31.0 2
|
||||
1.31.0 3
|
||||
|
Loading…
Reference in New Issue
Block a user