تغییر مالکیت فایل در گنولینوکس با استفاده از chown
اول از همه اینو باید بدونین که یوزر روت میتونه هرکاری که دلش بخواد رو انجام بده. یعنی سطح دسترسی ها فقط واسه سایر کاربر ها و گروه ها قابل استفاده است. نه واسه یوزر روت .
حتما راهنمای سطح دسترسی ها در گنولینوکس رو بخونین که متوجه بشین دارم چی میگم.
ماجرای مالکیت فایل با سطح دسترسی ها در ارتباطه . اینطور که اگه شما مالک فایل رو تغییر بدین و اون مالک سطح دسترسی رو جوری تنظیم کنه که فقط خودش بتونه فایلشو رو بخونه و ادیت کنه و بقیه فقط بتونن اجرا کنن یا کلا هیچکاری نتونن انجام بدن ، عملا شما یا بقیه سطح دسترسیتون محدود میشه.
اما اینو بدونین که یوزر روت با این حال میتونه هرکاری که دلش بخواد انجام بده.
من یه فایل ایجاد کردم که مالکش یوزر amir و کد سطح دسترسی اون هم 664 هست. یعنی مالک میتونه بخونه و بنویسه، گروه ها هم میتونن بخونن و بنویسن و باقی هم میتونن فایل رو بخونن.
حالا ما میخوایم سند این فایل رو بزنیم به اسم یوزر goosale
که مالکش goosale بشه و هرکاری که دلش بخواد انجام بده.
با استفاده از ابزار chown میریم که اینکار رو انجام بدیم.
سینتکس ابزار به شکل زیر هست.
$ chown user:group filename
کلمه اول یعنی user به معنی نام مالک جدید فایل هست .
کلمه دوم یعنی group به معنی نام گروه جدید مالک فایل هست.
و کلمه سوم یعنی filename اسم فایل هست که شما باید با اسم فایل خودتون عوضش کنید.
$ sudo chown goosale:amir bozghale
من با دستور بالا مالک فایل رو به goosale تغییر دادم، و حالا مالک فایل goosale هست .
حالا یوزر رو به goosale تغییر میدیم و میریم که سطح دسترسی فایل رو تغییر بدیم.
میخوام دسترسی رو جوری تنظیم کنم که فقط مالک فایل بتونه بخونه و بنویسه و بقیه هیچ کاری نتونن انجام بدن. کد این سطح دسترسی میشه 600
میریم که با chmod اعمالش کنیم.
$ sudo chmod 600 bozghale
حالا یوزر رو به amir تغییر میدیم که ببینیم میشه فایل رو بخونیم یا نه.
$ su - amir
$ cat bozghale
میبینید که به ما میگه شما دسترسی ندارید و ارور سطح دسترسی میده. حالا بریم که با یوزر روت تست کنیم که ببینید یوزر روت هرکاری دلش بخواد میتونه انجام بده.
$ sudo su
دیدید که فایل رو خوند و داخل فایل هم نوشته شده گوساله ؟ و گوساله هم جواب داده آقا ما؟؟