Как легко изменить права доступа к папкам и файлам в Linux
Разрешения для файлов позволяют вам разрешать или запрещать другим пользователям просматривать файлы на вашем компьютере под управлением Linux. Вот более простой способ настройки прав доступа к файлам из командной строки.
Права доступа к файлам являются важным аспектом операционной системы Linux с точки зрения безопасности и конфиденциальности. Видите ли, Linux — это многопользовательская операционная система, а это означает, что в систему одновременно могут войти более одного человека.
Скажем, например, у вас есть файл с именем private.txt в каталоге «Документы» вашего дома (так ~/Documents). По умолчанию в большинстве современных дистрибутивов Linux только владелец может просматривать и/или редактировать файл. Таким образом, если пользователь olivia войдет в систему, она не сможет видеть содержимое вашего домашнего каталога.
Но что, если вы создадите каталог вне дома, которым сможете пользоваться другие? Допустим, это каталог /user/share/data, который вы можете создать с помощью команды:
sudo mkdir /usr/share/data
После того, как вы создали каталог, единственный способ добавить в него что-либо — использовать sudo для получения прав администратора, что включает в себя предоставление любому пользователю в системе возможности читать и писать в этот каталог. , чтобы они могли просматривать и редактировать файлы. Это не совсем безопасный подход.
Итак, я собираюсь показать вам, как изменить права доступа к файлам таким образом, чтобы любой действительный пользователь мог читать/записывать в каталог /user/share/data. Затем я покажу вам, как настроить разрешения таким образом, чтобы файл можно было запускать как приложение, что пригодится при создании сценариев.
Готовый? Давай сделаем это.
Изменение прав доступа к файлам и папкам
Что вам понадобится: Для этой функции вам понадобится работающий экземпляр Linux, который может быть любым дистрибутивом, настольным компьютером или сервером. Вам также понадобится пользователь с привилегиями sudo. Вот и все.
1. Установите разрешения для нового каталога.
С помощью команды mkdir , которую мы использовали ранее, мы создали каталог /usr/share/data. Мы можем настроить этот каталог так, чтобы любая папка или файл, созданный в нем, имел разрешения на чтение/запись с помощью команды:
sudo chmod -R ugo+rw /usr/share/da
Позвольте мне объяснить приведенную выше команду:
- chmod — это команда, используемая для изменения разрешений.
- -R — сообщает chmod, что мы работаем рекурсивно, поэтому каждый файл и/или папка наследует одни и те же разрешения.
- ugo — означает пользователей, группы и других (то есть всех).
- rw — означает разрешения на чтение/запись.
Несколько вещей, которые следует иметь в виду. Во-первых, вам не обязательно давать разрешения всем трем типам. Вы можете предоставить разрешения только u (пользователю), g (группе) или o (другому). Вы также можете предоставить только разрешения r (чтение), w (запись) или x (исполняемый файл). Например, вы можете предоставить всем пользователям права на запись с помощью:
sudo chmod -R u+w /usr/share/data
Кроме того, если вы работаете с файлом, а не с папкой, просто удалите опцию -R из команды.
2. Убедитесь, что команда сработала
После того, как вы ввели команду, вы можете проверить ее работу, введя другую команду:
touch /usr/share/data/test
Приведенная выше команда создаст пустой файл с именем test в /usr/share/data. Если команда сработала, поздравляем, вы успешно изменили права доступа к папке.
3. Предоставьте разрешения на исполняемый файл.
Предположим, вы создали сценарий, который будет создавать резервную копию содержимого вашего каталога ~/Documents. Для запуска этого сценария у него должны быть разрешения на выполнение, что можно сделать с помощью команды chmod . Если ваш скрипт называется backup, команда для предоставления ему разрешений на выполнение будет такой:
chmod u+x backup
Обязательно запустите указанную выше команду в каталоге, в котором находится скрипт. Чтобы запустить скрипт, вы можете ввести команду:
./backup
4. Удаление разрешений
Вы также можете удалить разрешения с помощью команды chmod. Давайте остановимся на нашем предыдущем примере. Теперь вы хотите удалить разрешения на чтение/запись для каталога /usr/share/data. Для этого вы должны заменить + на -, и новая команда будет такой:
sudo chmod -R ugo-rw /usr/share/data
На этом этапе никто не сможет читать или записывать данные в каталог.
Это не лучший метод добавления или удаления разрешений в Linux, поскольку вы не захотите предоставлять каждому пользователю системы доступ для изменения каталога. Лучший способ справиться с этой задачей — использовать группы. Я объясню эту функцию в следующем уроке. А пока продолжайте практиковаться в этом простом методе изменения прав доступа к файлам и папкам в Linux.