Gibt es eine geeignete Methode, um einen Benutzer am Booten in die Shell oder die GUI zu hindern, wenn keine Lizenzdatei (einfach irgendeine auf der Festplatte vorhandene Datei) vorhanden ist? Wenn keine Lizenzdatei gefunden wird, wird der Benutzer zur Eingabe eines Aktivierungsschlüssels aufgefordert. Wenn er diesen nicht eingibt, führt dies zu einem Neustart des Systems.
ich habe versucht, Init-Skripte zu schreiben, die jedoch nicht in der Lage waren, in die Standardausgabe zu schreiben, und ich bin auch nicht sicher, ob ich an diesem Punkt eine Eingabe vom Benutzer erhalten konnte.
Antwort1
Auf einem systemd
System sollten Sie wahrscheinlich einen systemd
Dienst verwenden, kein Init-Skript. Beispielcode finden Sie in verschiedenen RedHat- initial-setup*
Paketen (oder hier Centos):
$ rpm -qa | grep initial-setup
initial-setup-gui-0.3.9.40-1.el7.centos.x86_64
initial-setup-0.3.9.40-1.el7.centos.x86_64
$ rpm -qi initial-setup | tail -2
The initial-setup utility runs after installation. It guides the user through
a series of steps that allows for easier configuration of the machine.
$
Sie müssen den Code durchforsten, um zu sehen, was sie tun, aber diese Pakete unterbrechen den normalen Startvorgang, um dem Benutzer Dinge zu fragen.