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

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


توزیع گنو/لینوکس اوبونتو ۲۰ ساله شد 🎉

نویسنده موضوع: درست کردن اجازه های تغییر کرده [حل شد]  (دفعات بازدید: 700 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین majidkamali1370

  • Hero Member
  • *
  • ارسال: 928
  • جنسیت : پسر
سلام.
من یه مشکلی واسم پیش اومده. :(
اشتباهی دستور زیر رو زدم و تقریبا همه فایلهای توی هوم سطح دسترسیشون عوض شده. حالا فایل متنی رو هم میخوام باز کنم میگه میخوای اجراش کنی؟ :'(
~$ chmod -R 777 .۱. میشه یه جوری اون رو به حالت قبل برگردوند؟
۲. اگه نمیشه، میشه یه اسکریپت برام بنویسید که با استفاده از ls -l بفهمه که فایلی که توی این خط هست فایله یا فولدر و بعد اگه فولدر بود اجازه دیفالت فولدر (rwxrwxr-x) و اگه فایل بود اجازه دیفالت فایل (--rw-rw-r) رو بهش اختصاص بده؟ (فکر کنم سه چهار تا | احتمالا داره)
« آخرین ویرایش: 09 بهمن 1391، 11:02 ق‌ظ توسط majidkamali1370 »
Ubuntu 14.04 LTS 64-bit - unity

آفلاین alieblice

  • High Hero Member
  • *
  • ارسال: 1275
پاسخ : درست کردن اجازه های تغییر کرده
« پاسخ #1 : 08 بهمن 1391، 09:41 ب‌ظ »
این دستور برایه فایلایه غیر دایرکتوری. هر نوع فایلی رو به غیر از دایرکتوری پیدا میکنه.
وارد home دایرکتوریتون بشین بعد اجراش کنین. جایه 777 هم پرمیشنی که گفتین رو بزارین
find . -type f -maxdepth 1 -print -exec /bin/chmod 777 {} \;
برایه نوع هایه دیگه فایل هم این و نگاه :

       -type c
              File is of type c:

              b      block (buffered) special

              c      character (unbuffered) special

              d      directory

              p      named pipe (FIFO)

              f      regular file

              l      symbolic  link; this is never true if the -L option or the -follow
                     option is in effect, unless the symbolic link is broken.   If  you
                     want  to  search  for  symbolic  links  when  -L is in effect, use
                     -xtype.

              s      socket

              D      door (Solaris)
« آخرین ویرایش: 08 بهمن 1391، 09:46 ب‌ظ توسط alieblice »

آفلاین majidkamali1370

  • Hero Member
  • *
  • ارسال: 928
  • جنسیت : پسر
پاسخ : درست کردن اجازه های تغییر کرده
« پاسخ #2 : 08 بهمن 1391، 10:00 ب‌ظ »
دستتون درد نکنه.
الان تستش میکنم.
Ubuntu 14.04 LTS 64-bit - unity

آفلاین majidkamali1370

  • Hero Member
  • *
  • ارسال: 928
  • جنسیت : پسر
پاسخ : درست کردن اجازه های تغییر کرده
« پاسخ #3 : 08 بهمن 1391، 10:14 ب‌ظ »
این دستور فقط تا یک مرحله وارد هر فولدر میشه؟
Ubuntu 14.04 LTS 64-bit - unity

آفلاین doomhammer65ir

  • High Hero Member
  • *
  • ارسال: 1572
  • جنسیت : پسر
    • IRAN Backup
پاسخ : درست کردن اجازه های تغییر کرده
« پاسخ #4 : 09 بهمن 1391، 12:41 ق‌ظ »
دسترسی 644 و 755 دسترسی بدی نیست . به پوشه ها 755 بدهید و به پرونده ها 644
درون پوشه ای که گندزده اید بروید سپس :find ./* -type d -exec chmod 755 {} \;
find ./* -type f -exec chmod 644 {} \;

آفلاین aref3d

  • Full Member
  • *
  • ارسال: 239
  • جنسیت : پسر
پاسخ : درست کردن اجازه های تغییر کرده
« پاسخ #5 : 09 بهمن 1391، 01:43 ق‌ظ »
از این اسکریپت هم برای راحتی کار میتونید استفاده کنید.
#!/bin/bash
if [ $@ ] ; then
location=$@
else
location=`pwd`
fi

echo "This script changes folder permissions to 755 and file permissions to 644"
echo "Are you sure you want to change permissions of \"\033[44m$location\033[0m\""
echo "Type \"\033[1myes\033[0m\" to continue or \"no\" to abort."
read answer

if [ "$answer" = "yes" ] ; then
echo "Script is running. Please wait ..."
find $location -type d -exec chmod 755 '{}' \;
find $location -type f -exec chmod 644 '{}' \;
elif [ "$answer" = "no" ] ; then
echo "Script was terminated"
exit 0
else
echo "Sorry, \"$answer\" not recogonized. Enter yes or no"
exit 0
fi

echo "The script is now completed!"
exit 0

آفلاین alieblice

  • High Hero Member
  • *
  • ارسال: 1275
پاسخ : درست کردن اجازه های تغییر کرده
« پاسخ #6 : 09 بهمن 1391، 10:36 ق‌ظ »
هواسم نبود میخاین وارد دایرکتوری ها هم بشه. از دستور جناب doomhammer65ir استفاده کنین

آفلاین majidkamali1370

  • Hero Member
  • *
  • ارسال: 928
  • جنسیت : پسر
پاسخ : درست کردن اجازه های تغییر کرده
« پاسخ #7 : 09 بهمن 1391، 11:01 ق‌ظ »
با تشکر از همه دوستان.
حل شد
Ubuntu 14.04 LTS 64-bit - unity