Normalerweise installiere ich Cyberduck, indem ich das .appBundle in den Anwendungsordner im Stammverzeichnis meiner Festplatte ziehe ( /Applications). Unter MacOS 10.7 Lion und neueren Versionen erstellt Finder jedoch aliasstandardmäßig eine Datei, wenn ich Cyberduck später auf meinen Desktop verschieben möchte , anstatt das .appBundle tatsächlich zu verschieben .
Wenn ich dagegen Cyberduck in den Ordner " Benutzeranwendungen " ( ~/Applications) installiere und später versuche, Cyberduck auf meinen Desktop zu ziehen, wird das .appBundle wie jede andere Datei verschoben.
Was macht die /ApplicationsMappe so besonders? Ist es möglich, dasselbe Verhalten einem anderen Ordner hinzuzufügen oder - falls SIP deaktiviert ist - so zu ändern /Applications, dass es sich wie ein normaler Ordner verhält?
Ein paar Dinge, die ich bereits ausprobiert habe:
/Applicationsgehörtroot:admin. Hatsudo chown root:admin ~/Applicationsjedoch keine Auswirkung auf das Verhalten beim Ziehen.- Innerhalb einer Test VM, umbenannt ich
/Applicationszu/Applications2. Der umbenannte Ordner "Applications2" behielt das gleiche Ziehverhalten wie zuvor bei, was darauf hindeutet, dass die Funktionalität nicht fest auf einen bestimmten Pfad programmiert ist.
/ApplicationsOrdner selbst, der dieses Verhalten per se steuert, sondern die Berechtigungen, erweiterten Attribute, ACL-Eigenschaften usw. Beispielsweise haben Apple-Apps das com.apple.rootlesserweiterte Attribut und die 0: group:everyone deny deleteACL-Eigenschaften, während Nicht-Apples normalerweise nur das com.apple.quarantineerweiterte Attribut haben. Apps, die nicht von Apple stammen, können verschoben werden, während Sie beim Ziehen die Taste ⌘ gedrückt halten.
/Applicationsist die owner:groupist im root:adminVergleich zu dem typischen root:wheelund hat das sunlnk Flag gesetzt. Ich würde annehmen, dass dies auch zu den Unterschieden zwischen einem vom Benutzer erstellten Ordner beiträgt. Verwenden Sie den folgenden Befehl im Terminal nach cd /, ls -lOe@und die Ausgabe der verschiedenen Bewertung /(root) Verzeichnissen. Auch für Apple Apps in / Application ist das restricted Flag gesetzt. Sie können verwenden chowndie sich ändern owner:groupund chflagszu / ungesetzt setzen die flags.