Puncte:1

Delete files from root owned folders without sudo

drapel cn

There is an application that creates logs owned by root user (this cannot be changed, at least in my work environment) in the directory logs: enter image description here

This app is executed through a docker-compose and Makefile, and it will be stopped and resumed several times. So I want to execute the app, it will generate logs, stop the app and delete the logs and after a certain amount of time, execute the app again, which will generate new logs.

Deleting the logs (all the subfolders and files that are within the logs folder) has to be done with the command rm -rf logs, without sudo involved, because it is made by a Makefile that is also executed in Mac computers. In Mac, if you have a sudo command, it will ask for a password, and I don't want that.

I have added write permissions to the folder with sudo chmod a+rwx and sudo chmod 777 (have tried both because didn't make it work), which according to a few questions might be enough.

I have also added the ubuntu user to the root group as stated in for example https://unix.stackexchange.com/a/139284, with:

adduser ubuntu root

And

usermod -aG root sysadmin

Following this, https://askubuntu.com/a/213959/999435, I have restarted the server after that.

But still, I am unable to remove the files. How could I do this?

pLumo avatar
drapel in
Vă rugăm să ne spuneți care este problema dvs. inițială, de ce trebuie să ștergeți aceste fișiere fără a utiliza `sudo`? Vă rugăm să citiți și https://meta.stackexchange.com/questions/66377/what-is-the-xy-problem
drapel cn
Mulțumiri. Am implementat o aplicație atât în ​​localurile MAC, cât și în Ubuntu EC2 cu un Makefile care are o comandă care oprește un docker-compose și elimină jurnalele. Dacă adaug un sudo la rm, în mac-ul meu trebuie să introduc o parolă, ceea ce nu vreau să se întâmple. De aici nevoia de eliminare a non-sudo
bac0n avatar
drapel cn
Pentru a elimina conținutul jurnalelor, trebuie să faceți `rm -rf logs/*`, setând grupul la grupul de utilizatori `chown root.bac0n logs`, apoi `chmod 775 logs` este probabil mai bun decât 777.
drapel cn
„Acest lucru nu poate fi schimbat” 100% sigur că poate fi schimbat: fluxul de aer utilizează un flux de aer utilizator care face parte din grupul rădăcină. `sudo chmod 777` nu este niciodată răspunsul corect. @bac0n Aș pretinde chiar că mai mult de 750 este o problemă de securitate. "adduser ubuntu root" Ne pare rău? Doar nu.
bac0n avatar
drapel cn
@Rinzwind: Ar fi trebuit să fiu mai clar, sări peste asta cu adduser și usermod, trebuie doar să schimbi grupul de pe `jurnale` la utilizatorul care ar trebui să aibă dreptul de a elimina conținutul `jurnalelor/*` (în acest caz, pare a fi ubuntu) dacă există mai mulți utilizatori care au nevoie să elimine conținutul, există posibilitatea de a crea un grup comun, dar are nevoie totuși de cel puțin `770`.
muru avatar
drapel us
Nu ar trebui să fie atât de greu să adăugați o verificare la Makefile pentru a utiliza `sudo` numai dacă pe Linux.
Puncte:0
drapel by

Utilizare sudo chown -R utilizator: nume_director

drapel cn
Multumesc pentru raspunsul tau. Apoi, aplicația nu mai este disponibilă pentru a crea jurnale noi. Îmi pare rău că nu am explicat asta în descriere. Am actualizat intrebarea

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.