Ответ
Для изменения прав доступа (permissions) в Linux используется команда chmod (от change mode).
Базовый синтаксис:
chmod [OPTIONS] MODE FILE...
Способы задания прав (MODE):
-
Символьный (буквенный) формат: Удобен для относительного изменения.
# Дать владельцу право на выполнение chmod u+x script.sh # Забрать право на запись у группы и остальных chmod go-w document.txt # Установить права: владелец (чтение/запись), группа (чтение), остальные (ничего) chmod u=rw,g=r,o= private_file.confu(user/owner),g(group),o(others),a(all).+(добавить),-(убрать),=(установить точно).r(read),w(write),x(execute).
-
Восьмеричный (цифровой) формат: Чаще используется в скриптах для точной установки.
# 755: владелец (rwx), группа (r-x), остальные (r-x) chmod 755 my_script.js # 640: владелец (rw-), группа (r--), остальные (---) chmod 640 config.env- Каждая цифра: сумма прав (4=r, 2=w, 1=x).
- Первая цифра — владелец, вторая — группа, третья — остальные.
Полезные опции в контексте разработки на Node.js:
-Rили--recursive: Рекурсивно изменить права для директории и всего её содержимого.chmod -R 755 ./dist # После сборки проекта даём права на выполнение-v(verbose): Выводить информацию о каждом изменённом файле.
Пример из практики: Перед запуском Node.js-приложения, особенно если в нём есть CLI-скрипты (указанные в bin файле package.json), нужно убедиться, что файл имеет право на выполнение (x).
# Делаем файл скрипта исполняемым
chmod +x ./bin/my-cli-tool
# Устанавливаем безопасные права для файла с секретами (только чтение для владельца)
chmod 600 .env.production