GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Erstellen und steuern Sie Startskripts in BusyBox

Für buildroot müssen alle Ihre Skripte in $path_to_buildroot/output/target/etc/init.d platziert werden vor dem Build-Image. In meinem Fall enthält dieses Verzeichnis rcS und einige Skripte namens S[0-99]script_name. Sie können also Ihr eigenes Start-/Stopp-Skript erstellen.

rcS:

#!/bin/sh

# Start all init scripts in /etc/init.d
# executing them in numerical order.
#
for i in /etc/init.d/S??* ;do

     # Ignore dangling symlinks (if any).
     [ ! -f "$i" ] && continue

     case "$i" in
    *.sh)
        # Source shell script for speed.
        (
        trap - INT QUIT TSTP
        set start
        . $i
        )
        ;;
    *)
        # No sh extension, so fork subprocess.
        $i start
        ;;
    esac
done

und zum Beispiel S40network:

#!/bin/sh
#
# Start the network....
#

case "$1" in
  start)
    echo "Starting network..."
    /sbin/ifup -a
    ;;
  stop)
    echo -n "Stopping network..."
    /sbin/ifdown -a
    ;;
  restart|reload)
    "$0" stop
    "$0" start
    ;;
  *)
    echo $"Usage: $0 {start|stop|restart}"
    exit 1
esac

exit $?

Es ist keine gute Idee, Ihre fs im "Ziel"-Ordner zu ändern. Dies liegt an Änderungen in output/target/ überleben die make clean nicht Befehl.

Im Buildroot-Handbuch ist beschrieben, wie man es richtig macht

Sie sollten irgendwo ein Verzeichnis erstellen, das das Dateisystem teilweise überlagert. Zum Beispiel können Sie das Verzeichnis "your-overlay" im buildroot-Verzeichnis erstellen, wo Sie diese Struktur erstellen

your-overlay/etc/init.d/<any_file>

Dann sollten Sie den Pfad zu diesem Overlay in defconfig

setzen

System configuration > Root filesystem overlay directories

(oder suchen Sie nach BR2_ROOTFS_OVERLAY)

Außerdem ist der empfohlene Pfad für dieses Overlay board/<company>/<boardname>/rootfs-overlay


Linux
  1. So erstellen Sie Bash-Skripte mit externen Variablen und eingebetteten Skripten

  2. So erstellen und löschen Sie Benutzergruppen in Linux

  3. Erstellen Sie eine neue Datenbank und verwenden Sie sie in MySQL/MariaDB

  4. Erstellen Sie eine Datei als ein anderer Benutzer und eine andere Gruppe?

  5. Erstellen und löschen Sie Rollen in PostgreSQL

So erstellen und wiederherstellen Sie VM-Snapshots in VirtualBox

So erstellen und verwenden Sie eine Auslagerungsdatei unter Linux

Hochfahren und Herunterfahren

Erstellen und verwalten Sie eine Subdomain

Cron-Job erstellen und löschen

Erstellen und konfigurieren Sie einen Benutzer in MSSQL