Điểm:1

Delete files from root owned folders without sudo

lá cờ 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
lá cờ in
Vui lòng cho chúng tôi biết vấn đề ban đầu của bạn là gì, tại sao bạn cần xóa các tệp này mà không sử dụng `sudo`? Vui lòng đọc thêm https://meta.stackexchange.com/questions/66377/what-is-the-xy-problem
lá cờ cn
Cảm ơn. Tôi triển khai một ứng dụng cả trong MAC cục bộ và Ubuntu EC2 với Makefile có lệnh dừng docker-compose và xóa nhật ký. Nếu tôi thêm sudo vào rm, trong máy mac của tôi, tôi cần nhập mật khẩu, điều mà tôi không muốn xảy ra. Do đó, nhu cầu loại bỏ không sudo
bac0n avatar
lá cờ cn
Để xóa nội dung của nhật ký, bạn phải thực hiện `rm -rf logs/*`, đặt nhóm thành nhóm người dùng `chown root.bac0n logs`, sau đó `chmod 775 logs` có lẽ tốt hơn 777.
lá cờ cn
"điều này không thể thay đổi" Chắc chắn 100% nó có thể được thay đổi: luồng không khí sử dụng luồng người dùng là một phần của nhóm gốc. `Sudo chmod 777` không bao giờ là câu trả lời đúng. @bac0n Tôi thậm chí còn khẳng định hơn 750 là vấn đề bảo mật. "root adduser ubuntu root" Xin lỗi? Không, nhất quyết không.
bac0n avatar
lá cờ cn
@Rinzwind: Lẽ ra tôi phải rõ ràng hơn, bỏ qua phần này với adduser và usermod, bạn chỉ cần thay đổi nhóm trên `logs` thành người dùng sẽ có quyền xóa nội dung của `logs/*` (trong trường hợp này, nó có vẻ là ubuntu) nếu có nhiều người dùng cần xóa nội dung, có khả năng tạo một nhóm chung, nhưng vẫn cần ít nhất `770`.
muru avatar
lá cờ us
Không khó để thêm một dấu kiểm vào Makefile của bạn để chỉ sử dụng `sudo` nếu trên Linux.
Điểm:0
lá cờ by

Sử dụng sudo chown -R người dùng: tên_thư mục

lá cờ cn
Cảm ơn câu trả lời của bạn. Sau đó, ứng dụng không còn khả dụng để tạo nhật ký mới. Xin lỗi tôi đã không giải thích điều đó trong phần mô tả. Tôi đã cập nhật câu hỏi

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.