В этом руководстве показано, как управлять группами с помощью команды gpasswd. Каждый файл и папка в Linux имеют права пользователя, группы и владельца. Контролируя, кто имеет доступ к группе, вы можете контролировать, что происходит с файлами и папками в вашей системе, без необходимости устанавливать разрешения для каждого пользователя.
Немного о разрешениях
Откройте терминал и в своей домашней папке создайте папку, называемую учетными записями, с помощью команды mkdir следующим образом:
учетные записи mkdir
Теперь запустите следующую команду ls, которая покажет вам разрешения для созданной вами папки.
ls -lt
Вы увидите что-то вроде этого:
drwxr-xr-x 2 имя вашего имени 4096 учетных записей
Интересующие нас биты - это разрешения, которые в приведенном выше примере являются «drwxr-xr-x». Мы также заинтересованы в значениях 2 "yourname".
Давайте сначала поговорим о разрешениях. «D» обозначает каталог и позволяет нам знать, что учетные записи являются каталогом.
Остальные разрешения разделены на 3 раздела: «rwx», «r-x», «r-x». Первый раздел из 3-х символов - это разрешения, которыми обладает владелец объекта. Второй раздел из 3-х символов - это разрешения, которые есть у любого, кто принадлежит к группе, и, наконец, последний раздел - это разрешения, которые все остальные имеют.
«R» означает «чтение», «w» означает «write», а «x» означает «выполнить».
Поэтому в приведенном выше примере владелец имеет права на чтение, запись и выполнение для папки учетных записей, тогда как группа и все остальные имеют только права на чтение и выполнение.
В этом примере первое «ваше имя» является владельцем элемента, а второе «ваше имя» является основной группой для папки учетных записей.
Чтобы сделать это руководство более полезным, добавьте еще несколько учетных записей в вашу систему, используя следующие команды adduser:
sudo adduser tim
sudo adduser tom
Вас попросят указать пароль для каждого из них и ввести другую информацию. Вы можете уйти с паролем и вернуться через остальные поля.
Теперь, когда у вас есть 3 аккаунта, выполните следующую команду, чтобы изменить владельца папки вашей учетной записи.
учетные записи sudo chown tom
Теперь запустите команду ls еще раз.
ls -lt
Теперь разрешения будут следующими:
drwxr-xr-x tom yourname
Вы сможете перейти в папку учетных записей с помощью команды cd следующим образом:
учетные записи cd
Теперь попробуйте создать файл, используя следующую команду:
сенсорный тест
Вы получите следующую ошибку:
touch: не может касаться «теста»: разрешение отклонено
Причина этого заключается в том, что Tom является владельцем и имеет права на чтение, запись и выполнение, но вы просто часть группы, и у вас есть только групповые разрешения.
Перейдите в домашнюю папку и измените разрешения для учетных записей, введя следующие команды:
CD ..
sudo chmod 750 аккаунтов
Теперь запустите команду ls еще раз:
ls -lt
Теперь разрешения для папки учетных записей будут следующими:
drwxr-х ---
Это означает, что у владельца есть полные разрешения, пользователи с группой «ваше имя» будут иметь права на чтение и выполнение, а все остальные не будут иметь никаких разрешений.
Попробуйте. Перейдите в папку учетных записей и снова запустите команду touch:
учетные записи cd
сенсорный тест
У вас все еще есть разрешения на переход к папке, но у вас нет прав на создание файлов. Если вы просто обычный пользователь, вы даже не можете попасть в папку учетных записей.
Чтобы попробовать это, переключитесь на пользователя Tim и перейдите в папку учетных записей следующим образом:
su - tim
cd / home / yourname / accounts
Вы получите отказ в разрешении.
Итак, зачем использовать групповые разрешения и не устанавливать индивидуальные разрешения для всех пользователей? Если у вас есть учетная запись, у которой все должны иметь доступ к определенным электронным таблицам и документам, но никто в компании не должен устанавливать разрешения для всех людей в учетных записях, вы можете установить разрешения для этой папки в группу, называемую учетными записями, а затем добавьте пользователей в группу.
Почему это лучше, чем установка индивидуальных прав пользователя? Если пользователь покидает отдел, вы можете просто удалить их из группы, а не выполнять свои права на несколько папок.
Как создать группу
Вы можете использовать следующую команду для создания группы:
Как добавить пользователя в группу
sudo gpasswd -a учетные записи пользователей
Вышеприведенная команда может использоваться для добавления отдельного пользователя в группу учетных записей.
Чтобы добавить список пользователей в качестве членов группы, выполните следующую команду:
sudo gpassword -M yourname, tom, tim accounts
Когда пользователь добавлен в учетную запись, пользователь может добавить группу в свой список вторичных групп, выполнив следующую команду:
Новые аккаунты
Любому пользователю, не принадлежащему к группе, будет предложено ввести пароль группы.
Как изменить основную группу для папки
Теперь, когда у нас есть группа с пользователем, вы можете назначить эту группу в папку учетных записей, используя следующую команду chgrp:
учетные записи sudo chgrp
Первые учетные записи - это имя группы, а вторая учетная запись - имя папки.
Как проверить, принадлежит ли пользователь группе
Вы можете проверить, принадлежит ли пользователь группе, выполнив следующую команду:
группы
Это вернет список групп, к которым принадлежит пользователь.
Как изменить пароль группы
Чтобы изменить групповой пароль, вы можете выполнить следующую команду:
sudo gpasswd
Вам будет предложено ввести пароль для группы и повторить ее.
Теперь вы можете добавить пользователей в группу указанным выше способом, или новый пользователь может присоединиться к группе, просто выполнив следующую команду и предоставив правильный пароль:
newgrp
Очевидно, что вы не хотите предоставлять групповой пароль кому-либо, поэтому лучше добавить пользователя в группу самостоятельно.
Как ограничить группы только указанными членами
Если вы не хотите, чтобы кто-либо, кто знает пароль для присоединения к группе, может выполнить следующую команду:
Установить пользователя в качестве администратора
Вы можете установить пользователей в качестве администраторов группы. Это позволяет пользователю добавлять и удалять пользователей из определенной группы, а также изменять пароль
Для этого выполните следующую команду:
Как удалить пароль группы
Вы можете удалить пароль из группы, используя следующую команду:
Как удалить пользователя из группы
Чтобы удалить пользователя из группы, выполните следующую команду:
sudo gpassword -d tom accounts
Как дать группе чтение, запись и выполнение разрешений на файл или папку
До сих пор пользователи из группы учетных записей имели доступ к папке учетных записей, но они действительно могут что-либо делать, потому что у них есть только права на чтение и выполнение.
Чтобы предоставить права на запись группе, вы можете запустить следующую команду:
учетные записи sudo chmod g + w
Резюме
В этом руководстве представлено несколько команд, которые помогут вам настроить разрешения для вашей системы Linux. Вы также можете использовать команду useradd для настройки пользователей и пользователей группы.