بایگانی دسته: لینوکس

پیدا کردن یک عبارت در فایل در لینوکس

فرض کنید صدها و یا هزاران فایل داریم (مثلا به زبان php یا هر زبان دیگری) و می خواهیم بدانیم فلان عبارت در کدام فایل استفاده شده است. مشابه عملکرد search in file که در ادیتورهایی همچون sublime موجود است. برای اینکار از دستور grep در لینوکس استفاده می کنیم که به صورت زیر است؛

grep -ril "Media_Model_Library" .

اگر عبارت شما به صورت یک خط کد باشد نیز به اینصورت عمل می کنیم؛

grep -ril '$(\'.push_datetimepicker\'\).datetimepicker\({' .

تغییر مالکیت فایل در لینوکس

ساختار سیستم عامل لینوکس بسیار یکپارچه و نظم گراست. از آنجا که تمام فایل ها و دایرکتوری ها دارای permission ، owner-user ، owner-group می باشد. در مورد تغییر permission قبلا مطلبی منتشر شد اما در این مطلب در مورد owner-user و owner-group توضیح داده می شود. برای کار با این موارد از دستور chown استفاده می شود که usage کلی آن به شرح زیر می باشد:

chown owner-user file

chown owner-user:owner-group file

chown owner-user:owner-group directory

chown options owner-user:owner-group file

همه چیز واضح است، حال به ذکر چند نکته بسنده می کنم:

chown root /foo

در کد بالا مالک (owner) دایرکتوری foo به root تغییر داده شد.

chown root:httpd /foo

در کد بالا owner-user دایرکتوری foo به root و owner-group این دایرکتوری به httpd تغییر داده شد.

chown -R root /foo

در اینجا هم مالکیت دایرکتوری foo تمام زیر مجموعه هایش به root تغییر داده می شود.

تغییر سطح دسترسی در لینوکس

برای تغییر سطح دسترسی (permission) یک فایل از دستور chmod استفاده می کنیم، به مثال زیر توجه کنید:

chmod 644 /home/banana.php

در اینجا سطح دسترسی فایل banana.php را روی ۶۴۴ قرار دادیم. حالا بر فرض می خواهیم سطح دسترسی یک دایرکتوری و تمام فایل ها و دایرکتوری های موجود در آنرا تغییر دهیم، به صورت زیر عمل می کنیم:

chmod -R 755 /home/user

که در اینجا سطح دسترسی دایرکتوری user و تمام محتویات درونش به ۷۵۵ تغییر داده شد. (پارامتر R به معنای Recursively می باشد)

یک نکته کلی هم اینکه بهتر است برای فایل ها از سطح دسترسی ۶۴۴ و برای دایرکتوری ها از ۷۵۵ استفاده شود، البته طبیعتا این موضوع همیشه صادق نمی باشد اما یک توصیه کلی است.