„sudo“ fehlt im Wiederherstellungsterminal

Auf meinem MacBook habe ich das RECOVERY TERMINAL gebootet.

Ich erhalte diesen Fehler „sudo-Befehl nicht gefunden“

kritische Befehle wie sudo, brew, su und andere fehlen in /bin /usr/bin /usr/sbin

Ich habe mit ls -la /usr/bin | gesucht grep sudo

Kann ein Angreifer mit physischem Zugriff auf meine Maschine diese von der Maschine löschen? (Kein Firmware-Passwort festgelegt)

wie installiere ich sie wieder?

Wenn ich mein MacBook mit meinem normalen Benutzernamen starte, funktionieren sudo und alles andere.

Wie stelle ich sicher, dass die Systemwiederherstellungssoftware, der Bootloader und seine Komponenten aktualisiert werden?

PS: Ich habe auf MacOS BigSur aktualisiert

Was versuchen Sie zu erreichen, während Sie in die Wiederherstellung gebootet werden? Was gibt der idBefehl zurück?
Ich habe einen Artikel gefunden, um die Wiederherstellungspartition von Macos zu rekonstruieren. Vielleicht kannst du es überprüfen. osxdaily.com/2016/07/03/recreate-recovery-partition-mac . Bitte antworten Sie, wenn es für Sie funktioniert, dann werde ich die Anleitung hier als Anleitung umschreiben, damit jemand, der auf das gleiche Problem stößt, diesen Thread auf seine Lösung überprüfen kann.
Wenn Sie in die Wiederherstellung booten, werden Sie bereits als Root ausgeführt, was sudostrittig ist.
Ich werde (hoffentlich auf freundliche Weise) erklären, warum Sie nichts davon tun sollten. Ich würde eine Folgefrage anregen, wenn Sie eine einzelne praktische Aufgabe haben, die Sie in der Genesung erledigen möchten, aber die Wiederherstellung in keiner Weise für Ihren vorgeschlagenen Zweck geeignet ist.
Sie haben unten bereits Antworten auf das eigentliche Problem erhalten. Um einige Details hinzuzufügen: Um das Verzeichnis zu finden, wird es nach einem normalen Start sudoausgeführt . type sudoAußerdem lsist keine Verrohrung erforderlich, sondern nur ausgeführt ls /path/to/dir/sudo.

Antworten (3)

Die moderne mac os-Wiederherstellungsumgebung meldet sich automatisch als root an. Der Befehl su oder sudo ist also nicht erforderlich, da Sie bereits Superuser-Privilegien verwenden. Probieren Sie den Befehl aus ls -lah, um Ihre Berechtigungen für das aktuelle Verzeichnis anzuzeigen. Oder ls -lah whoamium Ihre Benutzerberechtigungen anzuzeigen.

lszeigt Zugriffsrechte auf Dateien, nicht Benutzerrechte, id -adafür verwenden. Und ls whoamiwird höchstwahrscheinlich dazu führen file not found.

Dies ist ein sehr häufiges Missverständnis und eine verständlicherweise verwirrende Situation.

  1. Sie sind bereits Root-Benutzer im Wiederherstellungsterminal
  2. Das Wiederherstellungsterminal ändert die gemounteten Dateisystempfade dramatisch (stellen Sie sicher, dass / das ist, was Sie denken, bevor Sie Änderungen vornehmen)
  3. Das Wiederherstellungsterminal ist eine stark eingeschränkte Shell, viele Befehle sind absichtlich nicht verfügbar

Wenn Sie Anweisungen nehmen, die für eine vollständige Shell ( suund sudo) geschrieben wurden, werden sie brechen. Dies ist gut, da Sie keinen der Schutzmaßnahmen (Leitplanken) einer normalen Shell haben, sodass das System so konzipiert ist, dass es nur mit vollständig qualifizierten Pfaden zu genau der begrenzten Teilmenge der verfügbaren Tools funktioniert. Brew ist so konzipiert, dass sudo nicht einmal verwendet wird, außer für bestimmte begrenzte Einrichtungs- und Wartungsaufgaben, sodass es die normale Shell verwendet, so wie die normale Shell die Wiederherstellungs-Shell verwendet. Sie überqueren zwei absichtlich entworfene Abstraktionsbarrieren, um breweine Wiederherstellung zu ermöglichen.

Stellen Sie sich das Bergungsterminal als Ersatzreifen vor. Es wurde entwickelt, um Sie mit niedriger Geschwindigkeit zu einer Tankstelle zu bringen, und nicht, um Ihr Rennen oder Ihre Reise fortzusetzen. Wenn Sie einen Fehler bei der Wiederherstellung erhalten, weist dieser Fehler darauf hin, dass Sie bessere Anweisungen benötigen oder mit einem Mechaniker zusammen sein müssen, der Ihnen bei der Reparatur helfen kann. Die Fähigkeit, in einer eingeschränkten Shell zu arbeiten, ist ein spezialisiertes Gebiet, und die meisten Menschen müssen keine Zeit damit verbringen, es zu lernen. Derselbe Rat gilt ziemlich gleichmäßig für cronund andere eingeschränkte Tools oder Umgebungen wie Container.

Um Ihre Frage zu beantworten, erstellen Sie also nicht Ihre gesamte Toolkette in der Wiederherstellung neu, sondern können diese verwenden, um Ihre Daten einzuschränken und zu verschlüsseln, sodass jemand mit physischem Zugriff Ihre Daten nur zerstören und nicht ändern kann.

  • Datentresor
  • Firmware-Passwörter
  • Aktivierungssperre

Die macOS-Wiederherstellungsumgebung befindet sich auf einer separaten, kleinen Partition Ihres Startvolumes, daher sind /bin, /usr/bin, usw. nicht die gleichen Ordner wie bei Ihrer vollständigen Installation von macOS. Viele Befehle, einschließlich sudo, sind in der Wiederherstellungsumgebung* nicht vorhanden, und ich bin mir ziemlich sicher, dass auch keine manuell hinzugefügt werden können.

*Wie andere bereits betont haben, werden Sie automatisch als rootin der Wiederherstellungsumgebung angemeldet sudound susind somit unnötig.

Da ich den sudo-Befehl nicht verwenden kann (Fehlermeldung: Befehl nicht gefunden), wie behebe ich ihn oder repariere die Startdiskette? sudo hat vorher funktioniert
@PersistentCache das hast du in der Frage nicht gefragt. Ich würde mit einem neuen Thread beginnen, sagen Sie einfach, was Sie versuchen zu tun - Sie haben eine XY-Problemfrage gestellt - gut gemacht, aber die Antworten hier sind alle richtig, werden aber nicht helfen, da Sie möglicherweise immer noch auf dem falschen Weg sind Schiene