Update 28. Februar 2023 : Apple hat keinen Mechanismus zum Öffnen von Sockets aus Systemverlängerungen bereitgestellt (wenn Sie wissen, dass Sie es mir wissen lassen). Die Portierung dieses Initiators von Kernel -Erweiterungen wird durch 'iouserscsiparallelInterfaceController' in einer Systemerweiterung erleichtert, aber die Öffnung / Verwaltung von Sockets ist für die Kommunikation erforderlich. Ohne eine Möglichkeit, dies zu tun, ist eine Neuarchitektur des Projekts erforderlich (für die ich nicht die Bandbreite habe). Eine solche Architektur würde wahrscheinlich zu einer Leistungspenalität führen. Es ist nicht klar, was, wenn überhaupt, Ersatz -Apple -Pläne für die kpi_socket -Schnittstelle (in Userland / System -Erweiterungen) plant.
UPDATE 27. März 2021 : Die Weiterentwicklung ist in der Warteschleife, bis Driverkit 20.4 (Beta) veröffentlicht wird, mit Unterstützung für IOUserSCSIParallelInterfaceController . Diese Software wird letztendlich von den Kernel -Erweiterungen entfernt.
Der ISCSI -Initiator ist ein Software -Initiator für macOS. Es ermöglicht Maschinen, die MacOS ausführen, um eine Verbindung zu ISCSI -Zielen herzustellen. Es erkennt und montiert automatisch logische Einheiten, auf denen Benutzer Volumes erstellen und montieren können. Weitere Informationen zum ISCSI -Standard finden Sie in IETF RFC3720.
Builds der Kernel -Erweiterung werden nicht signiert, und infolgedessen wird macOS sie nicht geladen. Die Kext -Signierung muss daher deaktiviert sein, bevor versucht wird, die Kernel -Erweiterung zu installieren und zu laden. Darüber hinaus wurden nach El Capitan neue Sicherheitsmaßnahmen implementiert, die die Installation von Dateien in bestimmten geschützten Systemordnern verhindern (es sei denn, die Dateien werden dort von einem geeigneten Installationsprogramm platziert). Aus diesem Grund ist es wichtig, die Anweisungen zu befolgen, die auf die entsprechende Version von macOS vor der Installation des Initiators anwendbar sind.
Führen Sie den folgenden Befehl an einer Terminalaufforderung aus:
sudo nvram boot-args=kext-dev-mode=1
Der Kernel lädt den nicht signierten Kernelerweiterungen nach einem Neustart.
Führen Sie den folgenden Befehl im Fenster "AS -Terminal wiederherstellen" aus:
csrutil disable
Befolgen Sie die Anweisungen im Systemintegritätsschutzhandbuch, um auf das Fenster "AS -Terminal wiederherstellen" zuzugreifen. Während dieses Prozesses können zwei Neustarts erforderlich sein.
Laden Sie die gewünschte Release -Image -Datei (.dmg) herunter, montieren und führen Sie Installer.pkg aus, um den Initiator zu installieren. In ähnlicher Weise führen Sie Uninstall.pkg aus, um den Initiator aus Ihrem System zu entfernen. Stellen Sie sicher, dass beim Aktualisieren oder Entfernen der Initiatorsoftware keine ISCSI -Ziele angeschlossen sind, oder Sie können während der Installation einen Fehler aufweisen.
Wenn Sie eine vorhandene Installation haben, melden Sie alle Ziele vor dem Start des Installationsprogramms an. Der Installationsprogramm versucht, die Erweiterung des ISCSI -Initiators Kernel zu entladen, falls vorhanden und neue Dateien installiert werden. Die ISCSI -Konfiguration wird nicht geändert (vorhandene Einstellungen bleiben erhalten).