Ich habe diesen alten PHP-Code, den ich geerbt habe. Es gibt Hardcode-Verweise auf / home / project überall dort, wo ich sie nicht ändern kann.
Ich bin auf MacOS / Sierra und kann keinen Ordner in / home erstellen
sudo mkdir / home / myproj
mkdir: / home / myproj: Operation wird nicht unterstützt
Ich bin nicht neu in Linux, sondern neu in MacOS
Ich habe auch sudo ausprobiert und werde es trotzdem nicht zulassen.
Ich dachte auch, vielleicht ein Symlink, aber immer noch nicht erlaubt.
Ich habe versucht, SIP zu deaktivieren
$ csrutil status
System Integrity Protection status: disabled.
Ich bekomme immer noch den gleichen Fehler
mkdir: /home/foo: Operation not supported
sudo mkdir -p /home/foo
einmal, nachdem Sie die SIP-Schäkel gelöst haben.Antworten:
IIRC / home und / net können von Verzeichnisdiensten wie AD oder OD verwendet werden. Sie sind Einhängepunkte, die von der Datei auto_master erstellt wurden. Normalerweise werden sie für nichts verwendet - besonders auf Macs, die nicht für Unternehmen bestimmt sind.
Kommentieren Sie die Zeile / home auto_home -nobrowse aus, verstecken Sie sich in der Datei / etc / auto_master und geben Sie ein
sudo automount -vc
oder starten Sie das Programm neu.Dann solltest du in der Lage sein, / home und jedes weitere Unterverzeichnis mit zu erstellen
sudo mkdir -p /home/subdir
.Wenn Sie mit Ihrem PHP-Legacy-Code fertig sind, entfernen Sie den Ordner / home und dessen Inhalt und stellen Sie die alte Datei auto_master wieder her, indem Sie die Zeile / home auskommentieren.
quelle