Я розумію , що команди chownі chgrpтим не менш , не розумію , чому ви хотіли б використовувати їх окремо від присвоєння власності або іншого користувача або групи? Це з безпеки чи з якоїсь іншої причини?
Я розумію , що команди chownі chgrpтим не менш , не розумію , чому ви хотіли б використовувати їх окремо від присвоєння власності або іншого користувача або групи? Це з безпеки чи з якоїсь іншої причини?
Відповіді:
Linux або інші системи у стилі Unix побудовані як багатокористувацькі системи.
Ви повинні розуміти, що в цій концепції не тільки фізичні особи вважаються користувачами, демони або інші програми, які можуть працювати як власний користувач.
Наприклад: Є сенс створити спеціального користувача для сервісу apache, якщо ви хочете запустити веб-сервер. Таким чином, apache не може пошкоджувати файли, на які він не має дозволу, здебільшого через те, що вони не є власниками файлів безпосередньо, а також не є жодною з груп, в яких знаходиться користувач.
В основному ви розділяєте доступ до файлів, призначаючи користувачам кілька груп, ви можете конкретно визначити, хто і як може отримати доступ до певних файлів.
Btw chown :group /path/fileробить те саме chgrp, що відзначається двокрапка перед іменем групи, використовуючи chown user:group /path/fileви можете зробити і те, і інше.
Додам, що дозволи на встановлення файлів мають бути встановлені відповідно. Використовуючи chmodви можете встановити прапори дозволів (читання, запис, виконання) на файли для користувачів, груп та світу.
chownяк chown :groupname filename. Я думав, що я повинен включати ім’я користувача. За винятком імені користувача, я вважаю, що ви вже згадали, це матиме такий самий результат, як і chgrp groupname. Це так?
chownнасправді відсутня функціональність, яка chgrpможе мати. Для мене це працює :)
Ви точно зрозуміли: ви використовуєте chownдля зміни власності або групи файлів, щоб передати право власності комусь іншому. Ви використовуєте chmodдля зміни дозволів, пов’язаних з одним із власників.
Немає глибшої потреби, яку ви пропустили, просто загальний набір дрібних потреб, виражений цими операціями. Мільйони причин, чому якийсь інший користувач повинен володіти файлом, але жодна з них не є глибшою, ніж "тому що ми робимо це таким чином".
Якщо у вас на купі файлів, збережених на флеш-накопичувачі USB, створених на одній ОС, вам потрібно використовувати деякі з цих файлів або їх усі в іншій (Linux) ОС, можливо, вам доведеться запустити команду find і в одному екземплярі пройти вниз дерево каталогів, щоб придушити всі файли, а потім у іншій команді знайти, виконайте команду chgrp, використовуючи функцію -exec команди find, щоб використовувати файли (імовірно, з різними ідентифікаторами користувачів та груп), щоб файли могли використовувати на обох різних ОС Linux.
Це пов'язано з однією простою річчю, що називається філософією Unix .
Пишіть програми, які роблять одне і роблять це добре . Напишіть програми для спільної роботи. Напишіть програми для обробки текстових потоків, оскільки це універсальний інтерфейс.
Принаймні, це я припускаю :)