Ändern Sie die Dateibesitzer-Gruppe unter Linux mit java.nio.Files

Ich habe einen Linux-Server und führe in Java einen Job zur Größenänderung von Bildern für mehrere Websites auf meinem Server aus. Die Website-Dateien gehören verschiedenen Betriebssystembenutzern / -gruppen. Neu erstellte Miniaturansichten / Vorschauen gehören dem Benutzer, der den Größenänderungsjob ausführt. Jetzt habe ich mich mit dem Ändern des Dateieigentümers von neu erstellten Vorschauen / Miniaturansichten in meinem Größenänderungsprogramm befasst und bin auf Folgendes gestoßen:

java.nio.file.Files.setOwner(Path path, UserPrincipal owner);

Dies würde mein Problem wirklich lösen, wenn es Windows wäre, aber da eine Linux-Datei einen Benutzer und eine Gruppe als Eigentümer hat, bin ich ein bisschen in Schwierigkeiten. Leider scheint die angegebene Methode nur die Benutzerrechte an der Datei zu ändern. Der Gruppeneigentum bleibt bei der Gruppe des Benutzers, der meinen Java-Größenänderungsjob ausführt.

Die Websites gehören verschiedenen Gruppen, sodass es nicht möglich ist, meinen Jobbenutzer zur Größenänderung einer Gruppe hinzuzufügen. Ich möchte auch Systemaufrufe mit vermeidenProcessBuilder und führe achown in meinen Akten.

Ich muss darauf hinweisen, dass auf die erstellten Dateien (Vorschau / Miniaturansicht) über die Website zugegriffen werden kann und es nicht unbedingt erforderlich ist, die Gruppenzugehörigkeit zu ändern, aber ich wollte, dass sie so sauber wie möglich ist.

Irgendwelche Vorschläge, wie ich den Gruppeneigentum einer Datei unter Linux nur mit Java ändern kann?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage