انجمن‌های فارسی اوبونتو

کمک و پشتیبانی => انجمن عمومی => نویسنده: saman.TF در 09 اردیبهشت 1393، 02:38 ب‌ظ

عنوان: سطح دسترسی به محتویات پوشه
ارسال شده توسط: saman.TF در 09 اردیبهشت 1393، 02:38 ب‌ظ
سلام 
یه پوشه دارم بنام new حالا میخوام کاری کنم هرچی فایل که تو این پوشه کپی میشه فقط بشه اونو دید وبشه بازش کرد ونشه روی اون فایلها تغیراتی

اعمال کرد مثلا یه فایل فشرده را بشه باز کرد ولی نشه ازش چیزی حذف کرد یا چیزی جایگزین کرد یا چیزی بهش (به فایل زیپ) اضافه کرد.

 ;)

عنوان: پاسخ : سطح دسترسی به محتویات پوشه
ارسال شده توسط: ali.abry در 09 اردیبهشت 1393، 04:17 ب‌ظ
پرمیشن write رو از اون فایلا بگیرین :
http://30li.org/bash/commands/chmod
عنوان: پاسخ : سطح دسترسی به محتویات پوشه
ارسال شده توسط: saman.TF در 09 اردیبهشت 1393، 07:35 ب‌ظ
از دستور زیر استفاده کردم ولی جواب نداد چرا

xubuntu@xubuntu:/media/xubuntu/20gig$ chmod ug-w new

بدون هیچ اخطاری میره خط بعدی به این صورت:

xubuntu@xubuntu:/media/xubuntu/20gig$

حتی با sudoهم امتحان نکرم نشد
عنوان: پاسخ : سطح دسترسی به محتویات پوشه
ارسال شده توسط: elyas74 در 09 اردیبهشت 1393، 09:06 ب‌ظ
شما دارین مجوز فولدر رو عوض میکنید که فقط برای خود فولدر است ،برای این که کاربرها نتونن فایل های داخل اون رو تغییر بدن (حتی کاربر خودتون) از کد زیر استفاده کنید :
chmod -w new/*و اگه میخواید خودتون اجازه دست رسی داشته باشید :
chmod 644 new/*
عنوان: پاسخ : سطح دسترسی به محتویات پوشه
ارسال شده توسط: saman.TF در 09 اردیبهشت 1393، 09:28 ب‌ظ
شما دارین مجوز فولدر رو عوض میکنید که فقط برای خود فولدر است ،برای این که کاربرها نتونن فایل های داخل اون رو تغییر بدن (حتی کاربر خودتون) از کد زیر استفاده کنید :
chmod -w new/*و اگه میخواید خودتون اجازه دست رسی داشته باشید :
chmod 644 new/*

بازم فرقی نکرد خیلی راحت میشه هر کاری کرد اینم بگم که از لایو استفاده میکنم
عنوان: پاسخ : سطح دسترسی به محتویات پوشه
ارسال شده توسط: Yaser-16 در 09 اردیبهشت 1393، 09:40 ب‌ظ
دستورتون یه -R کم داره :)
شما باید پرمیشن r و x رو بدید و w رو حذف کنید،یعنی مثلا می شه یه همچین چیزی:
chmod -R 500 new
عنوان: پاسخ : سطح دسترسی به محتویات پوشه
ارسال شده توسط: saman.TF در 09 اردیبهشت 1393، 09:55 ب‌ظ
چرا جواب نمیده  ](*,)
عنوان: پاسخ : سطح دسترسی به محتویات پوشه
ارسال شده توسط: elyas74 در 09 اردیبهشت 1393، 10:15 ب‌ظ
 ??? بعد از این که تغییرات رو انجام میدید خروجی دستور ls -l رو بزارین.
عنوان: پاسخ : سطح دسترسی به محتویات پوشه
ارسال شده توسط: saman.TF در 09 اردیبهشت 1393، 10:49 ب‌ظ

drwx------ 1 xubuntu xubuntu       144 Apr 29 18:15 new
عنوان: پاسخ : سطح دسترسی به محتویات پوشه
ارسال شده توسط: elyas74 در 09 اردیبهشت 1393، 11:36 ب‌ظ
اینی که گذاشتین برای خود فایل هست، شما باید مجوز های فایل های داخلش رو تغییر بدید(کدی که قبل گذاشتم با استفاده از *) نه خود فولدر رو، این کار رو تست کردید؟
عنوان: پاسخ : سطح دسترسی به محتویات پوشه
ارسال شده توسط: saman.TF در 10 اردیبهشت 1393، 03:00 ب‌ظ
یعنی  با cdبرم داخل پوشه  new و این کد را اجرا کنم?     */chmod -w new


 این خطارو گرفت   ](*,)

chmod: cannot access ‘new/*’: No such file or directory


عنوان: پاسخ : سطح دسترسی به محتویات پوشه
ارسال شده توسط: elyas74 در 10 اردیبهشت 1393، 03:40 ب‌ظ
 - علامت * به معنی "همه" است ،یعنی شما یا برو داخل پوشه مورد نظرت با دستور cd و این دستور رو بزن :
chmod -w *و یا در شاخه ای که خود فایل هست همون قبلی رو بزن :
chmod -w now/*
 - در اولی بهش میگیم هر چیزی که توی همین ادرسی که هستم هست رو مجوز تغییرش رو از بین ببر.
 - و در دومی داریم بهش میگیم برو داخل پوشه ی new که در همین ادرسی که الان هستیم وجود داره و مجوز همه ی فایل های داخل اون رو تغییر بده.  ;)
عنوان: پاسخ : سطح دسترسی به محتویات پوشه
ارسال شده توسط: saman.TF در 10 اردیبهشت 1393، 08:34 ب‌ظ
درست شد  مشکل از فرمت پارتیشن بود. ;)

ولی اون چیزی که اول پرسیده بودم  اینکه یه پوشه داشته باشیم که دسترسی اون پوشه طوری باشه که هر فایلی که درونش کپی

کنیم (به فایلهایی که درونش از اول بوده کاری ندارم )نشه تغییرات روش اعمال کرد فکر کنم عملی نیست درسته ?

 همچین چیزی فکر کنم نمیشه اصلا فایلی کپی نمیشه که حالا بخوایم به بقیش فکر کنیم درسته دیگه ؟   ;)

عنوان: پاسخ : سطح دسترسی به محتویات پوشه
ارسال شده توسط: elyas74 در 10 اردیبهشت 1393، 08:56 ب‌ظ
 - لینوکس نشد نداره  ;)

 - حالت های زیادی ممکنه پیش بیاد که میشه با یک اسکریپت درستش کرد.
عنوان: پاسخ : سطح دسترسی به محتویات پوشه
ارسال شده توسط: saman.TF در 03 خرداد 1393، 07:50 ب‌ظ
- لینوکس نشد نداره  ;)

 - حالت های زیادی ممکنه پیش بیاد که میشه با یک اسکریپت درستش کرد.

خوب چجوری میشه ؟ [-o< ;)
عنوان: پاسخ : سطح دسترسی به محتویات پوشه
ارسال شده توسط: elyas74 در 26 خرداد 1393، 01:00 ق‌ظ
 - یک اسکریپت کوچیک نوشتم که کارش اینه که در زمان هایی که در حال اجرا هست (اسکریپت) بررسی میکنه اگر فایل یا فولدر جدیدی در اون پوشه اضافه بشه اون رو chmod -w میکنه ،شیوه ی استفاده ازش اینجوریه که متنش رو در فایلی در همون پوشه مورد نظر میریزی و با bash اجراش میکنی یا خودت قابل اجراش میکنی یا توی cron یا توی bashrc میزاری
#!/bin/bash

while [[ true ]]
do
    ls > temp1
    sleep 1m
    ls > temp2
    diff temp1 temp2 | grep ">" | cut -c 3- > temp3
    if [[ -s temp3 ]]
    then
cat temp3 | xargs chmod -w
chmod +w temp*
    fi
done

 - مشکلی که هست اینه که باز هم میشه فایل های داخل پوشه رو که اجازه write نداریم رو پاک کنیم یا تغییر نام بدیم ،از دوستان ممنون میشم اگه اطلاعاتی دارن در این موضوع توضیح بدن چرا اینجوریه.
عنوان: پاسخ : سطح دسترسی به محتویات پوشه
ارسال شده توسط: elyas74 در 26 خرداد 1393، 11:27 ب‌ظ
 - مشکل یکی قبلی حل شد و همون جور که گفتی میتونه فایل های اضافه شده رو بخونه و کپی کنه ولی نمیتونه جاشون رو تغییر بده و یا پاکشون کنه ،و نکته دیگه هم این که باید این اسکریپت با کاربر روت اجرا بشه یا با دستور sudo قبل از اجراش.
#!/bin/bash
# this script should run with root user

if [[ `whoami` != "root" ]]
then
    echo "run with root"
    exit
fi

while [[ true ]]
do
    ls > temp1
    sleep 3s
    ls > temp2
    diff temp1 temp2 | grep ">" | cut -c 3- > temp3
    if [[ -s temp3 ]]
    then
cat temp3 | xargs chmod -w -R
cat temp3 | xargs chattr +i -R
chattr -i temp*
chmod +w temp*
    fi
done