Compare commits

...

16 Commits

Author SHA1 Message Date
Pi-Farm
ebf39ae30d ignore 2026-06-08 17:57:18 +02:00
Pi-Farm
bac0d25653 delete old files 2026-06-08 17:57:18 +02:00
Pi-Farm
b719c42ef4 Rename root/etc/.DS_Store to 6 2026-06-08 17:57:18 +02:00
Pi-Farm
bbc1c8c1d2 Rename root/etc/s6-overlay/.DS_Store to 5 2026-06-08 17:57:18 +02:00
Pi-Farm
49af85b06f Rename root/etc/s6-overlay/s6-rc.d/init-pxe-boot-config/run to 4 2026-06-08 17:57:18 +02:00
Pi-Farm
320f6723ae Rename root/etc/s6-overlay/s6-rc.d/init-pxe-boot-config/type to 3 2026-06-08 17:57:18 +02:00
Pi-Farm
5f544860db Rename root/etc/s6-overlay/s6-rc.d/init-pxe-boot-config/up to 2 2026-06-08 17:57:18 +02:00
Pi-Farm
ce6c6487b3 Rename root/etc/s6-overlay/s6-rc.d/user/contents.d/init-pxe-boot-config to 1 2026-06-08 17:57:18 +02:00
Pi-Farm
ea6ec8d74c Update and rename root/etc/s6-overlay/s6-rc.d/cont-init.d/99-start-pxe-services.sh to 0 2026-06-08 17:57:18 +02:00
Pi-Farm
7ffa27396d Fix rpcbind by creating missing directory
Create missing directory for rpcbind service.
2026-06-08 17:57:18 +02:00
Pi-Farm
732f32327b Rename root/cont-init.d/99-start-pxe-services.sh to root/etc/cont-init.d/99-start-pxe-services.sh 2026-06-08 17:57:18 +02:00
Pi-Farm
089e8f206f Rename root/etc/cont-init.d/99-start-pxe-services.sh to root/cont-init.d/99-start-pxe-services.sh 2026-06-08 17:57:18 +02:00
Pi-Farm
71710e8507 Add script to start PXE services on initialization
This script starts essential PXE services using systemctl.
2026-06-08 17:57:18 +02:00
Pi-Farm
aefcb41cdc Add script to start PXE-related services 2026-06-08 17:57:18 +02:00
Pi-Farm
43bf3a1db8 Add permissions and symlink for systemctl
Added executable permissions to systemctl and created a symlink.
2026-06-08 17:57:18 +02:00
Pi-Farm
c8f19df99c Create a shim for systemctl in container
Implement a shim for systemctl to handle service actions in a container environment, with a critical fix to ignore 'samba-ad-dc' to prevent RPC conflicts.
2026-06-08 17:57:18 +02:00
10 changed files with 47 additions and 8 deletions

1
.gitignore vendored
View File

@@ -2,3 +2,4 @@ srv/
RPi-PXE-Server
notes
samba/
.DS_Store

View File

@@ -4,6 +4,7 @@ ADD https://github.com/just-containers/s6-overlay/releases/download/v3.1.6.0/s6-
ADD https://github.com/just-containers/s6-overlay/releases/download/v3.1.6.0/s6-overlay-aarch64.tar.xz /tmp
RUN tar -C / -Jxpf /tmp/s6-overlay-aarch64.tar.xz && tar -C / -Jxpf /tmp/s6-overlay-noarch.tar.xz && mkdir /app && mkdir /app/RPi-PXE-Server
COPY root/ /
RUN chmod +x /usr/local/bin/systemctl && ln -sf /usr/local/bin/systemctl /usr/bin/systemctl
VOLUME /app/RPi-PXE-Server
VOLUME /srv
VOLUME /etc/samba

BIN
root/etc/.DS_Store vendored

Binary file not shown.

View File

@@ -0,0 +1,13 @@
#!/command/with-contenv bash
echo "Starte PXE-relevante Dienste via systemctl-shim..."
# Fix für rpcbind: Fehlendes Verzeichnis erstellen
mkdir -p /run/sendsigs.omit.d
systemctl start rpcbind
systemctl start nfs-kernel-server
systemctl start dnsmasq
systemctl start lighttpd
systemctl start smbd
systemctl start nmbd

Binary file not shown.

View File

@@ -1,6 +0,0 @@
#!/bin/bash
systemctl start chrony dnsmasq lighttpd nfs-mountd nfs-server nfs-kernel-server nmbd rsync samba-ad-dc smbd
systemctl stop rpcbind
systemctl status chrony dnsmasq lighttpd nfs-mountd nfs-server nfs-kernel-server nmbd rsync samba-ad-dc smbd

View File

@@ -1 +0,0 @@
oneshot

View File

@@ -1 +0,0 @@
/etc/s6-overlay/s6-rc.d/init-pxe-boot-config/run

View File

@@ -0,0 +1,32 @@
#!/bin/bash
# Gefälschtes systemctl für den Container
ACTION=$1
SERVICE=$2
# .service Endung entfernen, falls vorhanden
SERVICE=${SERVICE%.service}
# CRITICAL FIX: samba-ad-dc komplett ignorieren, um den RPC-Konflikt zu verhindern!
if [[ "$SERVICE" == "samba-ad-dc" ]]; then
echo "Shim: Blocked samba-ad-dc to prevent RPC collision."
exit 0
fi
case "$ACTION" in
start|stop|restart|status)
if [ -x "/etc/init.d/$SERVICE" ]; then
/etc/init.d/$SERVICE "$ACTION"
else
service "$SERVICE" "$ACTION" 2>/dev/null || echo "Shim: Service $SERVICE not found"
fi
;;
enable|disable|daemon-reload|unmask|mask)
# Diese Befehle sind im Container irrelevant, wir melden einfach Erfolg
exit 0
;;
*)
echo "Shim: Unknown command $ACTION for $SERVICE - ignoring."
exit 0
;;
esac