انجمنهای فارسی اوبونتو
کمک و پشتیبانی => انجمن عمومی => نویسنده: nino در 01 مهر 1398، 12:54 بظ
-
من یک فایل متنی دارم. می خوام این فایل به گونه ای باشه که با کاربر کنونی قابل حذف شدن نباشه و در عین حال بشه با همین کاربر تغییراتی رو در اون اعمال کرد (یعنی قابلیت write داشته باشه).
چند گزینه رو هم تا حالا تست کردم:
- immutable کردن فایل با chattr -i. اما این باعث میشه که فایل دیگه قابلیت write نداشته باشه.
- تغییر مالکیت به روت (root:root) با chown. اما فایل همچنان حتی بدون sudo قابل حذف شدنه (حتی وقتی که دسترسی فایل rw-r--r-- - یعنی ۶۴۴ - باشه).
-
با این دستورات میتونید کار مورد نظرو انجام بدید.
کاربر دسترسی تغییر دارد، اجازه حذف ندارد
mkdir ~/fld
echo salam > test
sudo chattr -R +a .
نمیشه پاکش کرد
rm test
rm: cannot remove 'test': Operation not permitted
اما میشه تغییر داد
echo aleik >> test
منبع (https://unix.stackexchange.com/a/222751/235261)
برای حذف این ویژگی
sudo chattr -R -a .
اون فولدر fld پاک نمیشه باید دستور بالا رو بزنید تا بشه پاکش کرد
-
ممنون از شما.
البته تغییرات کوچیکی دادم تا بدون ساختن فولدر این کار انجام بشه:
touch testfile
sudo chattr +a testfile
rm testfile
rm: cannot remove 'testfile': Operation not permitted
sudo rm testfile
rm: cannot remove 'testfile': Operation not permitted
echo mytext >> tesfile