شاید تا به حال با CHROOT برخورد کرده باشید. مخصوصا هنگام نصب آرچ لینوکس
CHROOT مخفف کلمه ی change root به معنای تغییر ریشه هست.
سی اچ روت یک فراخوان سیستمی در سیستم عامل های شبه یونیکس هست که کارش تغییر دادن مسیر دایرکتوری ریشه(/) هست.با کمک این دستور میتونیم مسیر جاری پارتیشن روت رو تغییر بدیم.برای مثال:
$ chmod /mnt
طی این دستور مسیر دایرکتوری روت به /mnt
تغییر میکنه.
کاربرد این دستور موقعی هست که بخوایم در محیط یک توزیع, به پارتیشن روت یک توزیع دیگه وصل بشیم و از اون به عنوان پارتیشن روت اصلی استفاده کنیم.
وقتی مسیر دایرکتوری روت تغییر کنه, شما دیگه نمیتونید به فایل های خارج از اون دایرکتوری دسترسی داشته باشید.
چون شما حالا یک دایرکتوری روت جدید دارید. یک دایرکتوری روت شامل دایرکتوری های دیگه ای مثل home mnt etc var و ... هست که با اونها سرو کار داریم.برای مثال,اگر بعد از تغییر دادن مسیر دایرکتوری روت ,دستور زیر رو وارد کنید:
$ cd home
مسیر شما به دایکتوری home تغییر میکنه که درون دایرکتوری روت جدید هست. پس شما نمیتونید به دایرکتوری home که در خارج از دایرکتوری روت جدید هست دسترسی داشته باشید که اصطلاحا به اون زندانی شدن پروسه میگن.
برای درک بیشتر, عکس زیر رو با دقت ببینید.
chroot برای اولین بار در حین توسعه ورژن ۷ یونیکس به وجود اومد.
حاصل سر و کله زدن های من با لینوکس