[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"page-ru-/guides/linux/chmod-command":3,"mdc-poexoi-key":1094,"mdc--d8qeqb-key":1105,"mdc-tg238a-key":1122,"mdc-sp8zfg-key":1161,"mdc--jwwxwc-key":1185,"mdc--cs7g3t-key":1202,"mdc--3uzrbc-key":1225,"mdc-dlqud0-key":1256,"related-/guides/linux/chown-command,/guides/linux/linux-permissions,/errors/linux/permission-denied":1272},{"id":4,"title":5,"appliesTo":6,"author":11,"body":12,"canonical":1031,"code":1031,"createdAt":1032,"description":1033,"difficulty":1034,"draft":1035,"estimatedTime":1036,"extension":1037,"faq":1038,"howToSteps":1051,"howToTotalTime":1064,"image":1031,"keywords":1065,"locale":1075,"meta":1076,"navigation":303,"path":1077,"platform":1078,"related":1079,"section":1083,"seo":1084,"severity":1031,"stem":1085,"summary":1086,"tags":1087,"twitterCreator":1031,"twitterSite":1031,"type":1092,"updatedAt":1032,"__hash__":1093},"content_ru/guides/linux/chmod-command.md","Команда chmod в Linux: полное руководство по правам доступа",[7,8,9,10],"Ubuntu 22.04+","Debian 11+","CentOS 7+","Any Linux distribution","FixPedia Team",{"type":13,"value":14,"toc":1018},"minimark",[15,20,32,59,66,70,73,99,103,108,111,137,140,160,165,195,199,204,214,262,267,344,348,354,374,377,381,416,421,451,456,501,504,508,518,535,581,598,602,611,725,729,852,856,862,879,884,901,911,915,1014],[16,17,19],"h2",{"id":18},"введение-зачем-это-нужно","Введение / Зачем это нужно",[21,22,23,24,28,29,31],"p",{},"Команда ",[25,26,27],"code",{},"chmod"," (change mode) — это фундаментальный инструмент управления безопасностью в Linux. Она определяет, кто может читать, изменять или запускать файлы и каталоги. Понимание ",[25,30,27],{}," критически важно для:",[33,34,35,43,53],"ul",{},[36,37,38,42],"li",{},[39,40,41],"strong",{},"Безопасности системы:"," Предотвращение несанкционированного доступа к конфигурационным файлам, паролям или скриптам.",[36,44,45,48,49,52],{},[39,46,47],{},"Корректной работы программ:"," Многие сервисы и скрипты требуют определенных прав для выполнения (например, ",[25,50,51],{},"+x",").",[36,54,55,58],{},[39,56,57],{},"Совместной работы:"," Настройка доступа для разных групп пользователей в многопользовательской среде.",[21,60,61,62,65],{},"Это руководство превратит вас из новичка, который пишет ",[25,63,64],{},"chmod 777"," наобум, в уверенного пользователя, понимающего систему прав.",[16,67,69],{"id":68},"требования-подготовка","Требования / Подготовка",[21,71,72],{},"Перед началом убедитесь, что:",[74,75,76,79,82,89],"ol",{},[36,77,78],{},"У вас есть доступ к терминалу Linux (локально или через SSH).",[36,80,81],{},"Вы знаете абсолютный или относительный путь к целевому файлу или каталогу.",[36,83,84,85,88],{},"У вас есть права на ",[39,86,87],{},"изменение"," атрибутов этого файла. Обычно это требует, чтобы вы были владельцем файла или пользователем с повышенными привилегиями (root/sudo).",[36,90,91,92,95,96,52],{},"Вы понимаете базовую структуру вывода команды ",[25,93,94],{},"ls -l"," (например, ",[25,97,98],{},"-rwxr-xr--",[16,100,102],{"id":101},"пошаговая-инструкция","Пошаговая инструкция",[104,105,107],"h3",{"id":106},"шаг-1-понимание-системы-прав-rwx","Шаг 1: Понимание системы прав (rwx)",[21,109,110],{},"Права доступа в Linux делятся на три категории пользователей:",[33,112,113,119,125,131],{},[36,114,115,118],{},[39,116,117],{},"u"," (user/owner) — владелец файла.",[36,120,121,124],{},[39,122,123],{},"g"," (group) — группа, которой принадлежит файл.",[36,126,127,130],{},[39,128,129],{},"o"," (others) — все остальные пользователи системы.",[36,132,133,136],{},[39,134,135],{},"a"," (all) — все три категории (все пользователи).",[21,138,139],{},"Для каждой категории есть три типа прав:",[33,141,142,148,154],{},[36,143,144,147],{},[39,145,146],{},"r"," (read) — чтение содержимого файла или списка файлов в каталоге.",[36,149,150,153],{},[39,151,152],{},"w"," (write) — изменение содержимого файла или создание/удаление файлов в каталоге.",[36,155,156,159],{},[39,157,158],{},"x"," (execute) — запуск файла как программы или переход в каталог.",[21,161,162,163],{},"Пример: ",[25,164,98],{},[33,166,167,177,186],{},[36,168,169,170,172,173,176],{},"Владелец (",[25,171,117],{},"): ",[25,174,175],{},"rwx"," (все права)",[36,178,179,180,172,182,185],{},"Группа (",[25,181,123],{},[25,183,184],{},"r-x"," (чтение и выполнение, без записи)",[36,187,188,189,172,191,194],{},"Остальные (",[25,190,129],{},[25,192,193],{},"r--"," (только чтение)",[104,196,198],{"id":197},"шаг-2-два-основных-способа-задания-прав","Шаг 2: Два основных способа задания прав",[200,201,203],"h4",{"id":202},"способ-a-символьный-буквенный-режим","Способ A: Символьный (буквенный) режим",[21,205,206,207,210,211],{},"Удобен для добавления/снятия конкретных прав без перезаписи всех.\n",[39,208,209],{},"Синтаксис:"," ",[25,212,213],{},"chmod [категория][оператор][права] файл",[33,215,216,233,250],{},[36,217,218,210,221,223,224,223,226,223,228,230,231,52],{},[39,219,220],{},"Категория:",[25,222,117],{},", ",[25,225,123],{},[25,227,129],{},[25,229,135],{}," (необязательно, по умолчанию ",[25,232,135],{},[36,234,235,210,238,241,242,245,246,249],{},[39,236,237],{},"Оператор:",[25,239,240],{},"+"," (добавить), ",[25,243,244],{},"-"," (убрать), ",[25,247,248],{},"="," (установить точно).",[36,251,252,210,255,223,257,223,259,261],{},[39,253,254],{},"Права:",[25,256,146],{},[25,258,152],{},[25,260,158],{},".",[21,263,264],{},[39,265,266],{},"Примеры:",[268,269,274],"pre",{"className":270,"code":271,"language":272,"meta":273,"style":273},"language-bash shiki shiki-themes github-light github-dark","# Дать право на выполнение ВСЕМ (u, g, o)\nchmod +x script.sh\n\n# Владельцу дать право на запись, группе и остальным убрать\nchmod u+w,g-w,o-w important.conf\n\n# Установить права ТОЛЬКО для владельца: rw, для группы и остальных: r\nchmod u=rw,g=r,o=r document.txt\n","bash","",[25,275,276,285,298,305,311,322,327,333],{"__ignoreMap":273},[277,278,281],"span",{"class":279,"line":280},"line",1,[277,282,284],{"class":283},"sJ8bj","# Дать право на выполнение ВСЕМ (u, g, o)\n",[277,286,288,291,295],{"class":279,"line":287},2,[277,289,27],{"class":290},"sScJk",[277,292,294],{"class":293},"sZZnC"," +x",[277,296,297],{"class":293}," script.sh\n",[277,299,301],{"class":279,"line":300},3,[277,302,304],{"emptyLinePlaceholder":303},true,"\n",[277,306,308],{"class":279,"line":307},4,[277,309,310],{"class":283},"# Владельцу дать право на запись, группе и остальным убрать\n",[277,312,314,316,319],{"class":279,"line":313},5,[277,315,27],{"class":290},[277,317,318],{"class":293}," u+w,g-w,o-w",[277,320,321],{"class":293}," important.conf\n",[277,323,325],{"class":279,"line":324},6,[277,326,304],{"emptyLinePlaceholder":303},[277,328,330],{"class":279,"line":329},7,[277,331,332],{"class":283},"# Установить права ТОЛЬКО для владельца: rw, для группы и остальных: r\n",[277,334,336,338,341],{"class":279,"line":335},8,[277,337,27],{"class":290},[277,339,340],{"class":293}," u=rw,g=r,o=r",[277,342,343],{"class":293}," document.txt\n",[200,345,347],{"id":346},"способ-b-числовой-октальный-режим","Способ B: Числовой (октальный) режим",[21,349,350,351,353],{},"Более компактный, используется для установки полного набора прав за раз. Каждому типу прав (",[25,352,175],{},") соответствует цифра:",[33,355,356,361,366,371],{},[36,357,358,360],{},[25,359,146],{}," = 4",[36,362,363,365],{},[25,364,152],{}," = 2",[36,367,368,370],{},[25,369,158],{}," = 1",[36,372,373],{},"Нет права = 0",[21,375,376],{},"Сумма этих цифр для каждой категории (u, g, o) дает итоговый трехзначный код.",[21,378,379],{},[39,380,266],{},[33,382,383,391,400,408],{},[36,384,385,387,388],{},[25,386,175],{}," = 4+2+1 = ",[39,389,390],{},"7",[36,392,393,396,397],{},[25,394,395],{},"rw-"," = 4+2+0 = ",[39,398,399],{},"6",[36,401,402,404,405],{},[25,403,184],{}," = 4+0+1 = ",[39,406,407],{},"5",[36,409,410,412,413],{},[25,411,193],{}," = 4+0+0 = ",[39,414,415],{},"4",[21,417,418],{},[39,419,420],{},"Распространенные коды:",[33,422,423,429,435,441],{},[36,424,425,428],{},[25,426,427],{},"755"," — Владелец: полные права (rwx). Группа и остальные: чтение и выполнение (r-x). Стандарт для исполняемых файлов и публичных каталогов.",[36,430,431,434],{},[25,432,433],{},"644"," — Владелец: чтение/запись (rw-). Группа и остальные: только чтение (r--). Стандарт для обычных текстовых файлов (конфиги, HTML).",[36,436,437,440],{},[25,438,439],{},"700"," — Только владелец имеет полные права. Максимальная изоляция.",[36,442,443,446,447,450],{},[25,444,445],{},"777"," — Полные права для ВСЕХ. ",[39,448,449],{},"Опасно!"," Используйте только в крайних случаях (например, общий временный каталог).",[21,452,453],{},[39,454,455],{},"Как использовать:",[268,457,459],{"className":270,"code":458,"language":272,"meta":273,"style":273},"chmod 755 script.sh     # Установить права rwxr-xr-x\nchmod 644 config.ini    # Установить права rw-r--r--\nchmod 700 .ssh/         # Закрыть доступ к папке .ssh для всех, кроме владельца\n",[25,460,461,475,488],{"__ignoreMap":273},[277,462,463,465,469,472],{"class":279,"line":280},[277,464,27],{"class":290},[277,466,468],{"class":467},"sj4cs"," 755",[277,470,471],{"class":293}," script.sh",[277,473,474],{"class":283},"     # Установить права rwxr-xr-x\n",[277,476,477,479,482,485],{"class":279,"line":287},[277,478,27],{"class":290},[277,480,481],{"class":467}," 644",[277,483,484],{"class":293}," config.ini",[277,486,487],{"class":283},"    # Установить права rw-r--r--\n",[277,489,490,492,495,498],{"class":279,"line":300},[277,491,27],{"class":290},[277,493,494],{"class":467}," 700",[277,496,497],{"class":293}," .ssh/",[277,499,500],{"class":283},"         # Закрыть доступ к папке .ssh для всех, кроме владельца\n",[502,503],"in-article-ad",{},[104,505,507],{"id":506},"шаг-3-работа-с-каталогами-и-рекурсия","Шаг 3: Работа с каталогами и рекурсия",[21,509,510,511,513,514,517],{},"По умолчанию ",[25,512,27],{}," меняет права только на указанный файл. Для каталогов и вложенных файлов используйте флаг ",[25,515,516],{},"-R"," (рекурсивно).",[21,519,520,523,524,526,527,530,531,534],{},[39,521,522],{},"Важно:"," Рекурсивное применение ",[25,525,27],{}," к сложным структурам (например, ",[25,528,529],{},"/var/www"," или ",[25,532,533],{},"/home",") может сломать систему, если вы установите слишком строгие или слишком открытые права. Всегда проверяйте путь.",[268,536,538],{"className":270,"code":537,"language":272,"meta":273,"style":273},"# Рекурсивно дать права на чтение и выполнение для всех в каталоге /opt/app\nchmod -R 755 /opt/app\n\n# Рекурсивно убрать право на выполнение у всех файлов .txt в текущей папке\nchmod -R a-x *.txt\n",[25,539,540,545,557,561,566],{"__ignoreMap":273},[277,541,542],{"class":279,"line":280},[277,543,544],{"class":283},"# Рекурсивно дать права на чтение и выполнение для всех в каталоге /opt/app\n",[277,546,547,549,552,554],{"class":279,"line":287},[277,548,27],{"class":290},[277,550,551],{"class":467}," -R",[277,553,468],{"class":467},[277,555,556],{"class":293}," /opt/app\n",[277,558,559],{"class":279,"line":300},[277,560,304],{"emptyLinePlaceholder":303},[277,562,563],{"class":279,"line":307},[277,564,565],{"class":283},"# Рекурсивно убрать право на выполнение у всех файлов .txt в текущей папке\n",[277,567,568,570,572,575,578],{"class":279,"line":313},[277,569,27],{"class":290},[277,571,551],{"class":467},[277,573,574],{"class":293}," a-x",[277,576,577],{"class":467}," *",[277,579,580],{"class":293},".txt\n",[21,582,583,586,587,589,590,593,594,597],{},[39,584,585],{},"Совет:"," Для каталогов право ",[25,588,158],{}," необходимо для доступа к их содержимому. Часто нужно комбинировать: ",[25,591,592],{},"find /path -type d -exec chmod 755 {} \\;"," (для каталогов) и ",[25,595,596],{},"find /path -type f -exec chmod 644 {} \\;"," (для файлов).",[104,599,601],{"id":600},"шаг-4-специальные-биты-suid-sgid-sticky","Шаг 4: Специальные биты (SUID, SGID, Sticky)",[21,603,604,605,223,608,52],{},"Эти редко используемые, но мощные биты задаются четвертой цифрой в числовом режиме или через символы (",[25,606,607],{},"s",[25,609,610],{},"t",[33,612,613,654,685],{},[36,614,615,618,619,95,622,625,626,629,630,633,634],{},[39,616,617],{},"SUID (Set User ID)"," — ",[25,620,621],{},"4xxx",[25,623,624],{},"4755","). Когда исполняемый файл с SUID запускается, он работает с правами своего ",[39,627,628],{},"владельца",", а не того, кто его запустил. Пример: ",[25,631,632],{},"/usr/bin/passwd",".\n",[268,635,637],{"className":270,"code":636,"language":272,"meta":273,"style":273},"chmod 4755 /usr/bin/some_suid_binary\n# Или символьный: chmod u+s /usr/bin/some_suid_binary\n",[25,638,639,649],{"__ignoreMap":273},[277,640,641,643,646],{"class":279,"line":280},[277,642,27],{"class":290},[277,644,645],{"class":467}," 4755",[277,647,648],{"class":293}," /usr/bin/some_suid_binary\n",[277,650,651],{"class":279,"line":287},[277,652,653],{"class":283},"# Или символьный: chmod u+s /usr/bin/some_suid_binary\n",[36,655,656,618,659,95,662,665,666,669,670],{},[39,657,658],{},"SGID (Set Group ID)",[25,660,661],{},"2xxx",[25,663,664],{},"2775","). Для файлов: работает как SUID, но для группы. Для каталогов: новые файлы, созданные в этом каталоге, наследуют ",[39,667,668],{},"группу каталога",", а не группу пользователя-создателя. Полезно для общих папок.\n",[268,671,673],{"className":270,"code":672,"language":272,"meta":273,"style":273},"chmod 2775 /shared/project_folder\n",[25,674,675],{"__ignoreMap":273},[277,676,677,679,682],{"class":279,"line":280},[277,678,27],{"class":290},[277,680,681],{"class":467}," 2775",[277,683,684],{"class":293}," /shared/project_folder\n",[36,686,687,618,690,95,693,696,697,700,701,704,705],{},[39,688,689],{},"Sticky Bit",[25,691,692],{},"1xxx",[25,694,695],{},"1777","). В каталоге с sticky bit (",[25,698,699],{},"/tmp"," — классический пример) пользователь может удалять или переименовывать ",[39,702,703],{},"только свои файлы",", даже если имеет право на запись в каталог.\n",[268,706,708],{"className":270,"code":707,"language":272,"meta":273,"style":273},"chmod 1777 /tmp\n# Или символьный: chmod o+t /tmp\n",[25,709,710,720],{"__ignoreMap":273},[277,711,712,714,717],{"class":279,"line":280},[277,713,27],{"class":290},[277,715,716],{"class":467}," 1777",[277,718,719],{"class":293}," /tmp\n",[277,721,722],{"class":279,"line":287},[277,723,724],{"class":283},"# Или символьный: chmod o+t /tmp\n",[104,726,728],{"id":727},"шаг-5-практические-примеры-и-сценарии","Шаг 5: Практические примеры и сценарии",[74,730,731,750,770,799,826],{},[36,732,733,736],{},[39,734,735],{},"Сделать скрипт исполняемым:",[268,737,739],{"className":270,"code":738,"language":272,"meta":273,"style":273},"chmod +x deploy.sh\n",[25,740,741],{"__ignoreMap":273},[277,742,743,745,747],{"class":279,"line":280},[277,744,27],{"class":290},[277,746,294],{"class":293},[277,748,749],{"class":293}," deploy.sh\n",[36,751,752,755],{},[39,753,754],{},"Запретить другим пользователям читать приватный файл:",[268,756,758],{"className":270,"code":757,"language":272,"meta":273,"style":273},"chmod 600 ~/.ssh/id_rsa\n",[25,759,760],{"__ignoreMap":273},[277,761,762,764,767],{"class":279,"line":280},[277,763,27],{"class":290},[277,765,766],{"class":467}," 600",[277,768,769],{"class":293}," ~/.ssh/id_rsa\n",[36,771,772,779],{},[39,773,774,775,778],{},"Разрешить группе ",[25,776,777],{},"developers"," запись в общий каталог проекта:",[268,780,782],{"className":270,"code":781,"language":272,"meta":273,"style":273},"chmod 775 /var/projects/myapp\n# Убедитесь, что группа каталога — developers: chgrp developers /var/projects/myapp\n",[25,783,784,794],{"__ignoreMap":273},[277,785,786,788,791],{"class":279,"line":280},[277,787,27],{"class":290},[277,789,790],{"class":467}," 775",[277,792,793],{"class":293}," /var/projects/myapp\n",[277,795,796],{"class":279,"line":287},[277,797,798],{"class":283},"# Убедитесь, что группа каталога — developers: chgrp developers /var/projects/myapp\n",[36,800,801,804],{},[39,802,803],{},"Быстро открыть доступ на чтение и выполнение для всех (например, для публичного веб-контента):",[268,805,807],{"className":270,"code":806,"language":272,"meta":273,"style":273},"chmod -R a+rX /var/www/html\n# Флаг `X` (заглавная) устанавливает `x` только на каталоги и на файлы, у которых уже есть хотя бы один `x`.\n",[25,808,809,821],{"__ignoreMap":273},[277,810,811,813,815,818],{"class":279,"line":280},[277,812,27],{"class":290},[277,814,551],{"class":467},[277,816,817],{"class":293}," a+rX",[277,819,820],{"class":293}," /var/www/html\n",[277,822,823],{"class":279,"line":287},[277,824,825],{"class":283},"# Флаг `X` (заглавная) устанавливает `x` только на каталоги и на файлы, у которых уже есть хотя бы один `x`.\n",[36,827,828,835],{},[39,829,830,831,834],{},"Удалить право на выполнение у всех исполняемых файлов в папке ",[25,832,833],{},"bin",":",[268,836,838],{"className":270,"code":837,"language":272,"meta":273,"style":273},"chmod a-x /home/user/bin/*\n",[25,839,840],{"__ignoreMap":273},[277,841,842,844,846,849],{"class":279,"line":280},[277,843,27],{"class":290},[277,845,574],{"class":293},[277,847,848],{"class":293}," /home/user/bin/",[277,850,851],{"class":467},"*\n",[16,853,855],{"id":854},"проверка-результата","Проверка результата",[21,857,858,859,861],{},"После применения ",[25,860,27],{}," всегда проверяйте результат:",[268,863,865],{"className":270,"code":864,"language":272,"meta":273,"style":273},"ls -l [файл_или_каталог]\n",[25,866,867],{"__ignoreMap":273},[277,868,869,872,875],{"class":279,"line":280},[277,870,871],{"class":290},"ls",[277,873,874],{"class":467}," -l",[277,876,878],{"class":877},"sVt8B"," [файл_или_каталог]\n",[21,880,881],{},[39,882,883],{},"Что смотреть:",[74,885,886,891,894],{},[36,887,888,889,52],{},"Строка прав (например, ",[25,890,98],{},[36,892,893],{},"Количество ссылок (второй столбец) для каталогов — при рекурсивном изменении оно не должно измениться кардинально, если вы не меняли sticky/SGID.",[36,895,896,897,900],{},"Убедитесь, что владелец (",[25,898,899],{},"chown",") и группа не изменились случайно.",[21,902,903,906,907,910],{},[39,904,905],{},"Тест на функциональность:"," Попробуйте выполнить действие, для которого вы давали право (например, запустить скрипт ",[25,908,909],{},"./script.sh"," или записать данные в файл из-под другого пользователя, если это было целью).",[16,912,914],{"id":913},"возможные-проблемы","Возможные проблемы",[33,916,917,935,949,980,995],{},[36,918,919,927,928,931,932,52],{},[39,920,921,530,924,834],{},[25,922,923],{},"Operation not permitted",[25,925,926],{},"Permission denied"," Вы не являетесь владельцем файла и не работаете от root (sudo). Используйте ",[25,929,930],{},"sudo chmod ..."," или смените владельца (",[25,933,934],{},"sudo chown",[36,936,937,940,941,944,945,948],{},[39,938,939],{},"Файл не становится исполняемым:"," Вы использовали ",[25,942,943],{},"chmod +x"," на файл, который не является корректным исполняемым (например, это просто текстовый файл без shebang ",[25,946,947],{},"#!/bin/bash"," или двоичный файл). Проверьте содержимое.",[36,950,951,958,959,961,962,223,965,223,968,971,972,975,976,979],{},[39,952,953,954,957],{},"После ",[25,955,956],{},"chmod -R"," система стала недоступной:"," Вы случайно сняли права ",[25,960,158],{}," с критических системных каталогов (",[25,963,964],{},"/bin",[25,966,967],{},"/usr",[25,969,970],{},"/etc","). Это может привести к невозможности выполнения команд. ",[39,973,974],{},"Восстановление:"," Загрузитесь в режиме восстановления (recovery mode) или с LiveCD и исправьте права вручную. Для Debian/Ubuntu стандартные права можно восстановить через ",[25,977,978],{},"dpkg --get-selections | grep -E '^[^ ]+[[:space:]]+install$' | awk '{print $1}' | xargs dpkg -L | xargs chmod -c a+rX"," (это сложная операция, лучше искать конкретные пакеты).",[36,981,982,987,988,991,992,261],{},[39,983,984,834],{},[25,985,986],{},"chmod: changing permissions of ‘...’: Read-only file system"," Файловая система смонтирована в режиме «только чтение» (например, из-за ошибок). Необходимо проверить и смонтировать ее заново с правами на запись (",[25,989,990],{},"mount -o remount,rw /","), возможно, потребуется ",[25,993,994],{},"fsck",[36,996,997,1003,1004,1006,1007,1010,1011,261],{},[39,998,999,1000,1002],{},"Не работает рекурсия (",[25,1001,516],{},") на символьные ссылки:"," По умолчанию ",[25,1005,956],{}," не следует по символьным ссылкам. Чтобы менять права у файлов, на которые ведут ссылки, а не у самих ссылок, используйте ",[25,1008,1009],{},"chmod -R -h"," (не во всех реализациях) или обрабатывайте ссылки отдельно с помощью ",[25,1012,1013],{},"find",[1015,1016,1017],"style",{},"html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}",{"title":273,"searchDepth":287,"depth":287,"links":1019},[1020,1021,1022,1029,1030],{"id":18,"depth":287,"text":19},{"id":68,"depth":287,"text":69},{"id":101,"depth":287,"text":102,"children":1023},[1024,1025,1026,1027,1028],{"id":106,"depth":300,"text":107},{"id":197,"depth":300,"text":198},{"id":506,"depth":300,"text":507},{"id":600,"depth":300,"text":601},{"id":727,"depth":300,"text":728},{"id":854,"depth":287,"text":855},{"id":913,"depth":287,"text":914},null,"2026-02-16 19:12:56","Изучите команду chmod с нуля. Пошаговая инструкция по изменению прав доступа к файлам и папкам в Linux с примерами. Решайте задачи за 10 минут.","easy",false,"10-15 мин","md",[1039,1042,1045,1048],{"question":1040,"answer":1041},"Что такое chmod 777 и почему это опасно?","chmod 777 дает полные права (чтение, запись, выполнение) всем пользователям. Это опасно, так как любой пользователь системы может изменить или удалить файл. Используйте только для общих временных ресурсов.",{"question":1043,"answer":1044},"Как дать права на выполнение скрипта?","Используйте `chmod +x script.sh`. Это добавит право выполнения для владельца, группы и остальных (в зависимости от текущих прав).",{"question":1046,"answer":1047},"Чем chmod отличается от chown?","`chmod` изменяет **права доступа** (кто что может делать с файлом). `chown` изменяет **владельца** и **группу** файла.",{"question":1049,"answer":1050},"Как рекурсивно изменить права на все файлы в папке?","Добавьте флаг `-R`: `chmod -R 755 /путь/к/папке`. Будьте осторожны, это применит права ко всем вложенным файлам и каталогам.",[1052,1055,1058,1061],{"name":1053,"text":1054},"Проверьте текущие права доступа","Узнайте текущие права файла или папки с помощью команды `ls -l \u003Cпуть/к/файлу>`. Вывод покажет права для владельца, группы и остальных.",{"name":1056,"text":1057},"Выберите способ задания прав","Решите, использовать ли **символьный** (ugo+rwx) или **числовой** (755) формат. Символьный удобен для точечных изменений, числовой — для быстрой установки полного набора.",{"name":1059,"text":1060},"Примените команду chmod","Выполните команду, например, `chmod 755 script.sh` (числовой) или `chmod u+x script.sh` (символьный). Для папок часто нужен флаг `-R`.",{"name":1062,"text":1063},"Верифицируйте результат","Повторно запустите `ls -l`, чтобы убедиться, что права изменились корректно. Проверьте работу файла (если это исполняемый скрипт).","PT15M",[1066,1067,1068,1069,1070,1071,1072,1073,1074],"chmod команда linux","как изменить права на файл в linux","chmod 777 что это","установить права на папку linux","права доступа linux rwx","chmod +x пример","рекурсивно изменить права chmod","chmod setuid","ошибка permission denied linux","ru_RU",{},"/guides/linux/chmod-command","linux",[1080,1081,1082],"/guides/linux/chown-command","/guides/linux/linux-permissions","/errors/linux/permission-denied","Гайды Linux",{"title":5,"description":1033},"guides/linux/chmod-command","Это руководство объясняет, как управлять правами доступа к файлам и каталогам в Linux с помощью команды chmod. Вы научитесь использовать как числовой, так и символьный синтаксис для настройки прав для владельца, группы и остальных пользователей.",[1088,1089,27,1090,1091],"права доступа","file permissions","linux commands","безопасность","guide","1o5xBNKDBZ1cHbscxq8HJvwYbXpS-zk7hNd_qKYSuhI",{"data":1095,"body":1096},{},{"type":1097,"children":1098},"root",[1099],{"type":1100,"tag":21,"props":1101,"children":1102},"element",{},[1103],{"type":1104,"value":1041},"text",{"data":1106,"body":1107},{},{"type":1097,"children":1108},[1109],{"type":1100,"tag":21,"props":1110,"children":1111},{},[1112,1114,1120],{"type":1104,"value":1113},"Используйте ",{"type":1100,"tag":25,"props":1115,"children":1117},{"className":1116},[],[1118],{"type":1104,"value":1119},"chmod +x script.sh",{"type":1104,"value":1121},". Это добавит право выполнения для владельца, группы и остальных (в зависимости от текущих прав).",{"data":1123,"body":1124},{},{"type":1097,"children":1125},[1126],{"type":1100,"tag":21,"props":1127,"children":1128},{},[1129,1134,1136,1140,1142,1147,1148,1152,1154,1159],{"type":1100,"tag":25,"props":1130,"children":1132},{"className":1131},[],[1133],{"type":1104,"value":27},{"type":1104,"value":1135}," изменяет ",{"type":1100,"tag":39,"props":1137,"children":1138},{},[1139],{"type":1104,"value":1088},{"type":1104,"value":1141}," (кто что может делать с файлом). ",{"type":1100,"tag":25,"props":1143,"children":1145},{"className":1144},[],[1146],{"type":1104,"value":899},{"type":1104,"value":1135},{"type":1100,"tag":39,"props":1149,"children":1150},{},[1151],{"type":1104,"value":628},{"type":1104,"value":1153}," и ",{"type":1100,"tag":39,"props":1155,"children":1156},{},[1157],{"type":1104,"value":1158},"группу",{"type":1104,"value":1160}," файла.",{"data":1162,"body":1163},{},{"type":1097,"children":1164},[1165],{"type":1100,"tag":21,"props":1166,"children":1167},{},[1168,1170,1175,1177,1183],{"type":1104,"value":1169},"Добавьте флаг ",{"type":1100,"tag":25,"props":1171,"children":1173},{"className":1172},[],[1174],{"type":1104,"value":516},{"type":1104,"value":1176},": ",{"type":1100,"tag":25,"props":1178,"children":1180},{"className":1179},[],[1181],{"type":1104,"value":1182},"chmod -R 755 /путь/к/папке",{"type":1104,"value":1184},". Будьте осторожны, это применит права ко всем вложенным файлам и каталогам.",{"data":1186,"body":1187},{},{"type":1097,"children":1188},[1189],{"type":1100,"tag":21,"props":1190,"children":1191},{},[1192,1194,1200],{"type":1104,"value":1193},"Узнайте текущие права файла или папки с помощью команды ",{"type":1100,"tag":25,"props":1195,"children":1197},{"className":1196},[],[1198],{"type":1104,"value":1199},"ls -l \u003Cпуть/к/файлу>",{"type":1104,"value":1201},". Вывод покажет права для владельца, группы и остальных.",{"data":1203,"body":1204},{},{"type":1097,"children":1205},[1206],{"type":1100,"tag":21,"props":1207,"children":1208},{},[1209,1211,1216,1218,1223],{"type":1104,"value":1210},"Решите, использовать ли ",{"type":1100,"tag":39,"props":1212,"children":1213},{},[1214],{"type":1104,"value":1215},"символьный",{"type":1104,"value":1217}," (ugo+rwx) или ",{"type":1100,"tag":39,"props":1219,"children":1220},{},[1221],{"type":1104,"value":1222},"числовой",{"type":1104,"value":1224}," (755) формат. Символьный удобен для точечных изменений, числовой — для быстрой установки полного набора.",{"data":1226,"body":1227},{},{"type":1097,"children":1228},[1229],{"type":1100,"tag":21,"props":1230,"children":1231},{},[1232,1234,1240,1242,1248,1250,1255],{"type":1104,"value":1233},"Выполните команду, например, ",{"type":1100,"tag":25,"props":1235,"children":1237},{"className":1236},[],[1238],{"type":1104,"value":1239},"chmod 755 script.sh",{"type":1104,"value":1241}," (числовой) или ",{"type":1100,"tag":25,"props":1243,"children":1245},{"className":1244},[],[1246],{"type":1104,"value":1247},"chmod u+x script.sh",{"type":1104,"value":1249}," (символьный). Для папок часто нужен флаг ",{"type":1100,"tag":25,"props":1251,"children":1253},{"className":1252},[],[1254],{"type":1104,"value":516},{"type":1104,"value":261},{"data":1257,"body":1258},{},{"type":1097,"children":1259},[1260],{"type":1100,"tag":21,"props":1261,"children":1262},{},[1263,1265,1270],{"type":1104,"value":1264},"Повторно запустите ",{"type":1100,"tag":25,"props":1266,"children":1268},{"className":1267},[],[1269],{"type":1104,"value":94},{"type":1104,"value":1271},", чтобы убедиться, что права изменились корректно. Проверьте работу файла (если это исполняемый скрипт).",[1273,2574],{"id":1274,"title":1275,"appliesTo":1276,"author":1031,"body":1277,"canonical":1031,"code":1031,"createdAt":1031,"description":2525,"difficulty":2526,"draft":1035,"estimatedTime":1031,"extension":1037,"faq":2527,"howToSteps":2537,"howToTotalTime":1064,"image":1031,"keywords":2553,"locale":1031,"meta":2563,"navigation":303,"path":1081,"platform":1078,"related":2564,"section":1083,"seo":2566,"severity":1031,"stem":2567,"summary":2568,"tags":2569,"twitterCreator":1031,"twitterSite":1031,"type":1092,"updatedAt":1031,"__hash__":2573},"content_ru/guides/linux/linux-permissions.md","Права доступа Linux: полное руководство по chmod, ACL и атрибутам",[],{"type":13,"value":1278,"toc":2509},[1279,1281,1301,1303,1401,1403,1407,1413,1430,1435,1442,1447,1496,1500,1503,1508,1543,1547,1604,1626,1630,1633,1640,1680,1684,1770,1774,1785,1790,1862,1867,1884,1891,1897,1911,1916,1948,1952,1962,1967,1990,1994,2063,2071,2075,2082,2211,2215,2221,2296,2298,2301,2337,2339,2423,2426,2428,2441,2445,2503,2506],[16,1280,19],{"id":18},[21,1282,1283,1284,1287,1288,1291,1292,223,1294,1296,1297,1300],{},"Права доступа в Linux — это фундаментальный механизм безопасности, который определяет, ",[39,1285,1286],{},"кто"," (какой пользователь или группа) может ",[39,1289,1290],{},"что делать"," с файлами и каталогами. Неправильная настройка прав — одна из частых причин уязвимостей, сбоев в работе сервисов и ошибок \"Permission denied\". Этот гайд поможет вам уверенно управлять правами, использовать как базовые (",[25,1293,27],{},[25,1295,899],{},"), так и расширенные инструменты (ACL, ",[25,1298,1299],{},"chattr","), и понимать логику системы Linux. После его выполнения вы сможете грамотно настраивать доступ для веб-серверов, shared-каталогов, скриптов и системных файлов.",[16,1302,69],{"id":68},[33,1304,1305,1311,1319,1330,1391],{},[36,1306,1307,1310],{},[39,1308,1309],{},"Доступ к терминалу Linux"," (Ubuntu, CentOS, Debian, Arch или любая другая дистрибутив).",[36,1312,1313,1316,1317,261],{},[39,1314,1315],{},"Права суперпользователя (sudo)"," для изменения прав системных файлов и использования ",[25,1318,1299],{},[36,1320,1321,1322,223,1324,223,1327,261],{},"Базовое понимание командной строки: ",[25,1323,871],{},[25,1325,1326],{},"cd",[25,1328,1329],{},"cat",[36,1331,1332,1333,1336,1337],{},"Установленный пакет ",[25,1334,1335],{},"acl"," (для работы с расширенными ACL) в дистрибутивах на базе RPM/Deb:\n",[268,1338,1340],{"className":270,"code":1339,"language":272,"meta":273,"style":273},"# Для Debian/Ubuntu\nsudo apt update && sudo apt install acl\n\n# Для RHEL/CentOS/Fedora\nsudo yum install acl\n",[25,1341,1342,1347,1371,1375,1380],{"__ignoreMap":273},[277,1343,1344],{"class":279,"line":280},[277,1345,1346],{"class":283},"# Для Debian/Ubuntu\n",[277,1348,1349,1352,1355,1358,1361,1363,1365,1368],{"class":279,"line":287},[277,1350,1351],{"class":290},"sudo",[277,1353,1354],{"class":293}," apt",[277,1356,1357],{"class":293}," update",[277,1359,1360],{"class":877}," && ",[277,1362,1351],{"class":290},[277,1364,1354],{"class":293},[277,1366,1367],{"class":293}," install",[277,1369,1370],{"class":293}," acl\n",[277,1372,1373],{"class":279,"line":300},[277,1374,304],{"emptyLinePlaceholder":303},[277,1376,1377],{"class":279,"line":307},[277,1378,1379],{"class":283},"# Для RHEL/CentOS/Fedora\n",[277,1381,1382,1384,1387,1389],{"class":279,"line":313},[277,1383,1351],{"class":290},[277,1385,1386],{"class":293}," yum",[277,1388,1367],{"class":293},[277,1390,1370],{"class":293},[36,1392,1393,1394,223,1396,223,1398,1400],{},"Знание, что вы делаете. Изменение прав на системные файлы (",[25,1395,970],{},[25,1397,964],{},[25,1399,967],{},") может привести к неработоспособности системы.",[16,1402,102],{"id":101},[104,1404,1406],{"id":1405},"шаг-1-изучите-текущие-права-файла","Шаг 1: Изучите текущие права файла",[21,1408,1409,1410,1412],{},"Перед любым изменением всегда проверяйте текущие права. Команда ",[25,1411,94],{}," — ваш основной инструмент.",[268,1414,1416],{"className":270,"code":1415,"language":272,"meta":273,"style":273},"ls -l /etc/passwd /home/user/documents\n",[25,1417,1418],{"__ignoreMap":273},[277,1419,1420,1422,1424,1427],{"class":279,"line":280},[277,1421,871],{"class":290},[277,1423,874],{"class":467},[277,1425,1426],{"class":293}," /etc/passwd",[277,1428,1429],{"class":293}," /home/user/documents\n",[21,1431,1432],{},[39,1433,1434],{},"Пример вывода:",[268,1436,1440],{"className":1437,"code":1439,"language":1104},[1438],"language-text","-rw-r--r-- 1 root root  1234 Feb 17 10:00 /etc/passwd\ndrwxr-xr-x 2 user user  4096 Feb 17 10:05 /home/user/documents\n",[25,1441,1439],{"__ignoreMap":273},[21,1443,1444],{},[39,1445,1446],{},"Как читать:",[33,1448,1449,1463,1487],{},[36,1450,1451,1452,1454,1455,1458,1459,1462],{},"Первый символ: ",[25,1453,244],{}," — обычный файл, ",[25,1456,1457],{},"d"," — каталог, ",[25,1460,1461],{},"l"," — символьная ссылка.",[36,1464,1465,1466],{},"Следующие 9 символов: три группы по три.\n",[33,1467,1468,1477,1482],{},[36,1469,1470,1472,1473,1476],{},[25,1471,395],{}," (владелец): чтение (r), запись (w), ",[39,1474,1475],{},"нет"," исполнения (x).",[36,1478,1479,1481],{},[25,1480,193],{}," (группа): только чтение.",[36,1483,1484,1486],{},[25,1485,193],{}," (остальные): только чтение.",[36,1488,1489,1490,1492,1493,1495],{},"Владелец: ",[25,1491,1097],{},", Группа: ",[25,1494,1097],{}," (для первого файла).",[104,1497,1499],{"id":1498},"шаг-2-измените-права-числовым-методом-chmod","Шаг 2: Измените права числовым методом (chmod)",[21,1501,1502],{},"Это самый быстрый и распространённый способ. Каждому типу доступа (владелец, группа, другие) соответствует своя цифра в восьмеричной системе.",[21,1504,1505],{},[39,1506,1507],{},"Логика:",[33,1509,1510,1515,1521,1527],{},[36,1511,1512,1514],{},[25,1513,415],{}," = чтение (read)",[36,1516,1517,1520],{},[25,1518,1519],{},"2"," = запись (write)",[36,1522,1523,1526],{},[25,1524,1525],{},"1"," = исполнение (execute)",[36,1528,1529,1530,1532,1533,1535,1536,1538,1539,1542],{},"Сумма: ",[25,1531,390],{}," = 4+2+1 (rwx), ",[25,1534,399],{}," = 4+2 (rw-), ",[25,1537,407],{}," = 4+1 (r-x), ",[25,1540,1541],{},"0"," = ---",[21,1544,1545],{},[39,1546,266],{},[268,1548,1550],{"className":270,"code":1549,"language":272,"meta":273,"style":273},"# Дать владельцу все права (rwx), группе и другим только чтение и исполнение (r-x)\nchmod 755 script.sh\n\n# Разрешить владельцу чтение/запись, группе — только чтение, другим — никаких прав\nchmod 640 config.conf\n\n# Рекурсивно (включая все вложенные файлы и каталоги) установить права 755 для каталога project/\nchmod -R 755 project/\n",[25,1551,1552,1557,1565,1569,1574,1584,1588,1593],{"__ignoreMap":273},[277,1553,1554],{"class":279,"line":280},[277,1555,1556],{"class":283},"# Дать владельцу все права (rwx), группе и другим только чтение и исполнение (r-x)\n",[277,1558,1559,1561,1563],{"class":279,"line":287},[277,1560,27],{"class":290},[277,1562,468],{"class":467},[277,1564,297],{"class":293},[277,1566,1567],{"class":279,"line":300},[277,1568,304],{"emptyLinePlaceholder":303},[277,1570,1571],{"class":279,"line":307},[277,1572,1573],{"class":283},"# Разрешить владельцу чтение/запись, группе — только чтение, другим — никаких прав\n",[277,1575,1576,1578,1581],{"class":279,"line":313},[277,1577,27],{"class":290},[277,1579,1580],{"class":467}," 640",[277,1582,1583],{"class":293}," config.conf\n",[277,1585,1586],{"class":279,"line":324},[277,1587,304],{"emptyLinePlaceholder":303},[277,1589,1590],{"class":279,"line":329},[277,1591,1592],{"class":283},"# Рекурсивно (включая все вложенные файлы и каталоги) установить права 755 для каталога project/\n",[277,1594,1595,1597,1599,1601],{"class":279,"line":335},[277,1596,27],{"class":290},[277,1598,551],{"class":467},[277,1600,468],{"class":467},[277,1602,1603],{"class":293}," project/\n",[1605,1606,1607],"blockquote",{},[21,1608,1609,1610,1612,1613,1615,1616,1618,1619,1622,1623,1625],{},"⚠️ ",[39,1611,522],{}," Использование ",[25,1614,956],{}," требует осторожности. Для каталогов обычно нужен ",[25,1617,158],{}," (доступ к содержимому), а для файлов он не всегда требуется. Команда ",[25,1620,1621],{},"chmod -R 755 /some/path"," установит ",[25,1624,158],{}," для всех файлов, что может быть небезопасно.",[104,1627,1629],{"id":1628},"шаг-3-измените-права-символьным-методом-chmod","Шаг 3: Измените права символьным методом (chmod)",[21,1631,1632],{},"Более гибкий и читаемый способ, особенно когда нужно изменить только одну часть прав.",[21,1634,1635,210,1637],{},[39,1636,209],{},[25,1638,1639],{},"chmod [ugoa][+-=][rwx] \u003Cфайл>",[33,1641,1642,1659,1670],{},[36,1643,1644,210,1647,1649,1650,1652,1653,1655,1656,1658],{},[39,1645,1646],{},"Кто:",[25,1648,117],{}," (user/владелец), ",[25,1651,123],{}," (group/группа), ",[25,1654,129],{}," (others/остальные), ",[25,1657,135],{}," (all/все, по умолчанию).",[36,1660,1661,210,1663,241,1665,1667,1668,249],{},[39,1662,237],{},[25,1664,240],{},[25,1666,244],{}," (удалить), ",[25,1669,248],{},[36,1671,1672,210,1674,223,1676,223,1678,261],{},[39,1673,254],{},[25,1675,146],{},[25,1677,152],{},[25,1679,158],{},[21,1681,1682],{},[39,1683,266],{},[268,1685,1687],{"className":270,"code":1686,"language":272,"meta":273,"style":273},"# Добавить право на выполнение (x) для владельца файла\nchmod u+x /usr/local/bin/myscript\n\n# Удалить право на запись (w) для группы и остальных\nchmod go-w sensitive_data.txt\n\n# Владелец: rwx, Группа: rwx, Остальные: --- (полная изоляция)\nchmod 770 private_folder/\n# Или символьно: chmod u=rwx,g=rwx,o= private_folder/\n\n# Дать группе те же права, что и владельцу (часто используется для совместной работы)\nchmod g=u shared_file.log\n",[25,1688,1689,1694,1704,1708,1713,1723,1727,1732,1742,1748,1753,1759],{"__ignoreMap":273},[277,1690,1691],{"class":279,"line":280},[277,1692,1693],{"class":283},"# Добавить право на выполнение (x) для владельца файла\n",[277,1695,1696,1698,1701],{"class":279,"line":287},[277,1697,27],{"class":290},[277,1699,1700],{"class":293}," u+x",[277,1702,1703],{"class":293}," /usr/local/bin/myscript\n",[277,1705,1706],{"class":279,"line":300},[277,1707,304],{"emptyLinePlaceholder":303},[277,1709,1710],{"class":279,"line":307},[277,1711,1712],{"class":283},"# Удалить право на запись (w) для группы и остальных\n",[277,1714,1715,1717,1720],{"class":279,"line":313},[277,1716,27],{"class":290},[277,1718,1719],{"class":293}," go-w",[277,1721,1722],{"class":293}," sensitive_data.txt\n",[277,1724,1725],{"class":279,"line":324},[277,1726,304],{"emptyLinePlaceholder":303},[277,1728,1729],{"class":279,"line":329},[277,1730,1731],{"class":283},"# Владелец: rwx, Группа: rwx, Остальные: --- (полная изоляция)\n",[277,1733,1734,1736,1739],{"class":279,"line":335},[277,1735,27],{"class":290},[277,1737,1738],{"class":467}," 770",[277,1740,1741],{"class":293}," private_folder/\n",[277,1743,1745],{"class":279,"line":1744},9,[277,1746,1747],{"class":283},"# Или символьно: chmod u=rwx,g=rwx,o= private_folder/\n",[277,1749,1751],{"class":279,"line":1750},10,[277,1752,304],{"emptyLinePlaceholder":303},[277,1754,1756],{"class":279,"line":1755},11,[277,1757,1758],{"class":283},"# Дать группе те же права, что и владельцу (часто используется для совместной работы)\n",[277,1760,1762,1764,1767],{"class":279,"line":1761},12,[277,1763,27],{"class":290},[277,1765,1766],{"class":293}," g=u",[277,1768,1769],{"class":293}," shared_file.log\n",[104,1771,1773],{"id":1772},"шаг-4-настройте-расширенные-acl-setfacl","Шаг 4: Настройте расширенные ACL (setfacl)",[21,1775,1776,1777,1780,1781,1784],{},"Стандартная модель (владелец/группа/остальные) часто недостаточна. ",[39,1778,1779],{},"ACL (Access Control Lists)"," позволяют задавать права для ",[39,1782,1783],{},"конкретного пользователя или группы",", не меняя владельца или основную группу файла.",[21,1786,1787],{},[39,1788,1789],{},"Установка прав:",[268,1791,1793],{"className":270,"code":1792,"language":272,"meta":273,"style":273},"# Дать пользователю ivan полный доступ (rwx) к файлу report.pdf\nsudo setfacl -m u:ivan:rwx report.pdf\n\n# Дать группе developers права на чтение и запись (rw-) к каталогу src/\nsudo setfacl -m g:developers:rw- src/\n\n# Удалить ACL-запись для пользователя ivan\nsudo setfacl -x u:ivan report.pdf\n",[25,1794,1795,1800,1816,1820,1825,1839,1843,1848],{"__ignoreMap":273},[277,1796,1797],{"class":279,"line":280},[277,1798,1799],{"class":283},"# Дать пользователю ivan полный доступ (rwx) к файлу report.pdf\n",[277,1801,1802,1804,1807,1810,1813],{"class":279,"line":287},[277,1803,1351],{"class":290},[277,1805,1806],{"class":293}," setfacl",[277,1808,1809],{"class":467}," -m",[277,1811,1812],{"class":293}," u:ivan:rwx",[277,1814,1815],{"class":293}," report.pdf\n",[277,1817,1818],{"class":279,"line":300},[277,1819,304],{"emptyLinePlaceholder":303},[277,1821,1822],{"class":279,"line":307},[277,1823,1824],{"class":283},"# Дать группе developers права на чтение и запись (rw-) к каталогу src/\n",[277,1826,1827,1829,1831,1833,1836],{"class":279,"line":313},[277,1828,1351],{"class":290},[277,1830,1806],{"class":293},[277,1832,1809],{"class":467},[277,1834,1835],{"class":293}," g:developers:rw-",[277,1837,1838],{"class":293}," src/\n",[277,1840,1841],{"class":279,"line":324},[277,1842,304],{"emptyLinePlaceholder":303},[277,1844,1845],{"class":279,"line":329},[277,1846,1847],{"class":283},"# Удалить ACL-запись для пользователя ivan\n",[277,1849,1850,1852,1854,1857,1860],{"class":279,"line":335},[277,1851,1351],{"class":290},[277,1853,1806],{"class":293},[277,1855,1856],{"class":467}," -x",[277,1858,1859],{"class":293}," u:ivan",[277,1861,1815],{"class":293},[21,1863,1864],{},[39,1865,1866],{},"Просмотр ACL:",[268,1868,1870],{"className":270,"code":1869,"language":272,"meta":273,"style":273},"# Показать стандартные и расширенные права\ngetfacl report.pdf\n",[25,1871,1872,1877],{"__ignoreMap":273},[277,1873,1874],{"class":279,"line":280},[277,1875,1876],{"class":283},"# Показать стандартные и расширенные права\n",[277,1878,1879,1882],{"class":279,"line":287},[277,1880,1881],{"class":290},"getfacl",[277,1883,1815],{"class":293},[21,1885,1886],{},[39,1887,1888,1889,834],{},"Пример вывода ",[25,1890,1881],{},[268,1892,1895],{"className":1893,"code":1894,"language":1104},[1438],"# file: report.pdf\n# owner: user\n# group: staff\nuser::rw-\ngroup::r--\nmask::rwx\nother::r--\nuser:ivan:rwx        # \u003C- наша ACL-запись\ngroup:developers:rw- # \u003C- ещё одна ACL-запись\n",[25,1896,1894],{"__ignoreMap":273},[1605,1898,1899],{},[21,1900,1901,210,1904,1907,1908,261],{},[39,1902,1903],{},"Примечание:",[25,1905,1906],{},"mask"," — это маска для ACL-записей. Обычно она совпадает с максимальными правами из всех ACL-записей для группы/остальных. Устанавливается автоматически, но может быть изменена через ",[25,1909,1910],{},"setfacl -m m::rwx",[21,1912,1913],{},[39,1914,1915],{},"Рекурсивная настройка ACL для каталога:",[268,1917,1919],{"className":270,"code":1918,"language":272,"meta":273,"style":273},"# Установить ACL по умолчанию для новых файлов в каталоге (важно для shared-папок)\nsudo setfacl -d -m g:developers:rwx /projects/shared/\n# Теперь все новые файлы, созданные в /projects/shared/, унаследуют эти права.\n",[25,1920,1921,1926,1943],{"__ignoreMap":273},[277,1922,1923],{"class":279,"line":280},[277,1924,1925],{"class":283},"# Установить ACL по умолчанию для новых файлов в каталоге (важно для shared-папок)\n",[277,1927,1928,1930,1932,1935,1937,1940],{"class":279,"line":287},[277,1929,1351],{"class":290},[277,1931,1806],{"class":293},[277,1933,1934],{"class":467}," -d",[277,1936,1809],{"class":467},[277,1938,1939],{"class":293}," g:developers:rwx",[277,1941,1942],{"class":293}," /projects/shared/\n",[277,1944,1945],{"class":279,"line":300},[277,1946,1947],{"class":283},"# Теперь все новые файлы, созданные в /projects/shared/, унаследуют эти права.\n",[104,1949,1951],{"id":1950},"шаг-5-установите-специальные-атрибуты-chattr","Шаг 5: Установите специальные атрибуты (chattr)",[21,1953,1954,1955,1957,1958,1961],{},"Атрибуты, управляемые командой ",[25,1956,1299],{},", работают на уровне файловой системы (ext3/ext4, XFS) и ",[39,1959,1960],{},"не могут быть изменены обычными средствами",", даже root'ом, пока установлены. Это мощный инструмент для защиты критичных файлов.",[21,1963,1964],{},[39,1965,1966],{},"Основные флаги:",[33,1968,1969,1975,1980,1985],{},[36,1970,1971,1974],{},[25,1972,1973],{},"i"," (immutable) — файл нельзя изменять, удалять, переименовывать, создавать на его месте ссылки.",[36,1976,1977,1979],{},[25,1978,135],{}," (append-only) — файл можно только дописывать в конец (например, для логов).",[36,1981,1982,1984],{},[25,1983,607],{}," (secure deletion) — при удалении файла блоки диска обнуляются (медленно).",[36,1986,1987,1989],{},[25,1988,117],{}," (undelete) — при удалении сохраняется возможность восстановления.",[21,1991,1992],{},[39,1993,266],{},[268,1995,1997],{"className":270,"code":1996,"language":272,"meta":273,"style":273},"# Сделать файл неизменяемым (защита от случайного удаления/изменения)\nsudo chattr +i /etc/nginx/nginx.conf\n# Проверить атрибуты: lsattr /etc/nginx/nginx.conf\n\n# Разрешить изменения (снять защиту)\nsudo chattr -i /etc/nginx/nginx.conf\n\n# Установить режим \"дозапись\" для лог-файла (защита от подмены)\nsudo chattr +a /var/log/application.log\n",[25,1998,1999,2004,2017,2022,2026,2031,2042,2046,2051],{"__ignoreMap":273},[277,2000,2001],{"class":279,"line":280},[277,2002,2003],{"class":283},"# Сделать файл неизменяемым (защита от случайного удаления/изменения)\n",[277,2005,2006,2008,2011,2014],{"class":279,"line":287},[277,2007,1351],{"class":290},[277,2009,2010],{"class":293}," chattr",[277,2012,2013],{"class":293}," +i",[277,2015,2016],{"class":293}," /etc/nginx/nginx.conf\n",[277,2018,2019],{"class":279,"line":300},[277,2020,2021],{"class":283},"# Проверить атрибуты: lsattr /etc/nginx/nginx.conf\n",[277,2023,2024],{"class":279,"line":307},[277,2025,304],{"emptyLinePlaceholder":303},[277,2027,2028],{"class":279,"line":313},[277,2029,2030],{"class":283},"# Разрешить изменения (снять защиту)\n",[277,2032,2033,2035,2037,2040],{"class":279,"line":324},[277,2034,1351],{"class":290},[277,2036,2010],{"class":293},[277,2038,2039],{"class":467}," -i",[277,2041,2016],{"class":293},[277,2043,2044],{"class":279,"line":329},[277,2045,304],{"emptyLinePlaceholder":303},[277,2047,2048],{"class":279,"line":335},[277,2049,2050],{"class":283},"# Установить режим \"дозапись\" для лог-файла (защита от подмены)\n",[277,2052,2053,2055,2057,2060],{"class":279,"line":1744},[277,2054,1351],{"class":290},[277,2056,2010],{"class":293},[277,2058,2059],{"class":293}," +a",[277,2061,2062],{"class":293}," /var/log/application.log\n",[21,2064,2065,2067,2068,2070],{},[39,2066,522],{}," Для каталогов флаг ",[25,2069,1973],{}," блокирует создание/удаление файлов внутри него.",[104,2072,2074],{"id":2073},"шаг-6-работа-с-setuid-setgid-и-sticky-bit","Шаг 6: Работа с setuid, setgid и sticky bit",[21,2076,2077,2078,2081],{},"Это специальные ",[39,2079,2080],{},"биты прав доступа",", которые меняют поведение при выполнении или создании файлов.",[33,2083,2084,2130,2175],{},[36,2085,2086,2089,2090,2093,2094,2097,2098,2122],{},[39,2087,2088],{},"setuid (4000 / s для владельца):"," Когда исполняемый файл имеет этот бит, он запускается с правами ",[39,2091,2092],{},"владельца файла",", а не того, кто его запустил. Классический пример — ",[25,2095,2096],{},"passwd"," (владелец root).",[268,2099,2101],{"className":270,"code":2100,"language":272,"meta":273,"style":273},"ls -l /usr/bin/passwd\n# -rwsr-xr-x 1 root root ... /usr/bin/passwd\n# Обратите внимание на 's' вместо 'x' у владельца.\n",[25,2102,2103,2112,2117],{"__ignoreMap":273},[277,2104,2105,2107,2109],{"class":279,"line":280},[277,2106,871],{"class":290},[277,2108,874],{"class":467},[277,2110,2111],{"class":293}," /usr/bin/passwd\n",[277,2113,2114],{"class":279,"line":287},[277,2115,2116],{"class":283},"# -rwsr-xr-x 1 root root ... /usr/bin/passwd\n",[277,2118,2119],{"class":279,"line":300},[277,2120,2121],{"class":283},"# Обратите внимание на 's' вместо 'x' у владельца.\n",[1605,2123,2124],{},[21,2125,1609,2126,2129],{},[39,2127,2128],{},"Осторожно!"," Не устанавливайте setuid на скрипты (обходка через интерпретатор) или ненадёжные программы.",[36,2131,2132,2135,2136,2151],{},[39,2133,2134],{},"setgid (2000 / s для группы):"," Два эффекта:",[74,2137,2138,2144],{},[36,2139,2140,2141,261],{},"Для исполняемого файла: запускается с правами ",[39,2142,2143],{},"группы-владельца",[36,2145,2146,2147,2150],{},"Для каталога: ",[39,2148,2149],{},"все новые файлы, созданные внутри, наследуют группу-владельца каталога",", а не основную группу пользователя, их создавшего. Незаменимо для общих каталогов.",[268,2152,2154],{"className":270,"code":2153,"language":272,"meta":273,"style":273},"# Установить setgid для каталога shared (чтобы новые файлы принадлежали группе 'devs')\nchmod 2775 /shared/\n# Или символьно: chmod g+s /shared/\n",[25,2155,2156,2161,2170],{"__ignoreMap":273},[277,2157,2158],{"class":279,"line":280},[277,2159,2160],{"class":283},"# Установить setgid для каталога shared (чтобы новые файлы принадлежали группе 'devs')\n",[277,2162,2163,2165,2167],{"class":279,"line":287},[277,2164,27],{"class":290},[277,2166,681],{"class":467},[277,2168,2169],{"class":293}," /shared/\n",[277,2171,2172],{"class":279,"line":300},[277,2173,2174],{"class":283},"# Или символьно: chmod g+s /shared/\n",[36,2176,2177,2180,2181,2184,2185,261,2187],{},[39,2178,2179],{},"sticky bit (1000 / t для остальных):"," В каталоге с sticky bit пользователь может ",[39,2182,2183],{},"удалять/переименовывать только свои файлы",", даже если имеет право на запись в каталог. Классический пример — ",[25,2186,699],{},[268,2188,2190],{"className":270,"code":2189,"language":272,"meta":273,"style":273},"ls -ld /tmp\n# drwxrwxrwt 10 root root ... /tmp\n# Обратите внимание на 't' вместо 'x' у остальных.\n",[25,2191,2192,2201,2206],{"__ignoreMap":273},[277,2193,2194,2196,2199],{"class":279,"line":280},[277,2195,871],{"class":290},[277,2197,2198],{"class":467}," -ld",[277,2200,719],{"class":293},[277,2202,2203],{"class":279,"line":287},[277,2204,2205],{"class":283},"# drwxrwxrwt 10 root root ... /tmp\n",[277,2207,2208],{"class":279,"line":300},[277,2209,2210],{"class":283},"# Обратите внимание на 't' вместо 'x' у остальных.\n",[104,2212,2214],{"id":2213},"шаг-7-управление-владельцем-и-группой-chown-chgrp","Шаг 7: Управление владельцем и группой (chown, chgrp)",[21,2216,2217,2218,1160],{},"Иногда нужно сменить не права, а ",[39,2219,2220],{},"собственника",[268,2222,2224],{"className":270,"code":2223,"language":272,"meta":273,"style":273},"# Изменить владельца файла\nsudo chown alice:developers config.yml\n# Эквивалентно: sudo chown alice config.yml && sudo chgrp developers config.yml\n\n# Рекурсивно сменить владельца всего каталога project и его содержимого\nsudo chown -R www-data:www-data /var/www/project/\n\n# Изменить только группу (chgrp)\nsudo chgrp -R staff /opt/scripts/\n",[25,2225,2226,2231,2244,2249,2253,2258,2272,2276,2281],{"__ignoreMap":273},[277,2227,2228],{"class":279,"line":280},[277,2229,2230],{"class":283},"# Изменить владельца файла\n",[277,2232,2233,2235,2238,2241],{"class":279,"line":287},[277,2234,1351],{"class":290},[277,2236,2237],{"class":293}," chown",[277,2239,2240],{"class":293}," alice:developers",[277,2242,2243],{"class":293}," config.yml\n",[277,2245,2246],{"class":279,"line":300},[277,2247,2248],{"class":283},"# Эквивалентно: sudo chown alice config.yml && sudo chgrp developers config.yml\n",[277,2250,2251],{"class":279,"line":307},[277,2252,304],{"emptyLinePlaceholder":303},[277,2254,2255],{"class":279,"line":313},[277,2256,2257],{"class":283},"# Рекурсивно сменить владельца всего каталога project и его содержимого\n",[277,2259,2260,2262,2264,2266,2269],{"class":279,"line":324},[277,2261,1351],{"class":290},[277,2263,2237],{"class":293},[277,2265,551],{"class":467},[277,2267,2268],{"class":293}," www-data:www-data",[277,2270,2271],{"class":293}," /var/www/project/\n",[277,2273,2274],{"class":279,"line":329},[277,2275,304],{"emptyLinePlaceholder":303},[277,2277,2278],{"class":279,"line":335},[277,2279,2280],{"class":283},"# Изменить только группу (chgrp)\n",[277,2282,2283,2285,2288,2290,2293],{"class":279,"line":1744},[277,2284,1351],{"class":290},[277,2286,2287],{"class":293}," chgrp",[277,2289,551],{"class":467},[277,2291,2292],{"class":293}," staff",[277,2294,2295],{"class":293}," /opt/scripts/\n",[16,2297,855],{"id":854},[21,2299,2300],{},"После внесения изменений обязательно проверьте их:",[74,2302,2303,2311,2319,2327],{},[36,2304,2305,210,2308],{},[39,2306,2307],{},"Для стандартных прав:",[25,2309,2310],{},"ls -l \u003Cфайл/каталог>",[36,2312,2313,210,2316],{},[39,2314,2315],{},"Для ACL:",[25,2317,2318],{},"getfacl \u003Cфайл/каталог>",[36,2320,2321,210,2324],{},[39,2322,2323],{},"Для атрибутов chattr:",[25,2325,2326],{},"lsattr \u003Cфайл/каталог>",[36,2328,2329,2332,2333,2336],{},[39,2330,2331],{},"Практический тест:"," Попробуйте выполнить действие от имени другого пользователя (с помощью ",[25,2334,2335],{},"sudo -u \u003Cuser> \u003Ccommand>"," или переключившись в его сессию), чтобы убедиться, что доступ работает так, как задумано.",[16,2338,914],{"id":913},[33,2340,2341,2361,2376,2393,2410],{},[36,2342,2343,2346,2347,1153,2349,2352,2353,2355,2356,2358,2359,261],{},[39,2344,2345],{},"\"Permission denied\" при выполнении скрипта:"," Проверьте, есть ли у ",[39,2348,2092],{},[39,2350,2351],{},"текущего пользователя"," право на выполнение (",[25,2354,158],{},"). Также проверьте, не установлен ли атрибут ",[25,2357,1973],{}," через ",[25,2360,1299],{},[36,2362,2363,2371,2372,2375],{},[39,2364,2365,2366,530,2368,834],{},"Потеря доступа после ",[25,2367,64],{},[25,2369,2370],{},"chmod 000"," Если вы случайно установили слишком строгие или слишком общие права, верните нужные значения через ",[25,2373,2374],{},"sudo chmod"," (если у вас ещё есть права sudo) или загрузитесь в режиме восстановления (recovery mode).",[36,2377,2378,2381,2382,2384,2385,2388,2389,2392],{},[39,2379,2380],{},"ACL не работают:"," Убедитесь, что файловая система смонтирована с опцией ",[25,2383,1335],{}," (обычно в современных дистрибутивах это по умолчанию). Проверьте ",[25,2386,2387],{},"/etc/fstab",". Для применения изменений в ",[25,2390,2391],{},"fstab","可能需要 перемонтировать раздел.",[36,2394,2395,2398,2399,2402,2403,2405,2406,2409],{},[39,2396,2397],{},"Setuid на скрипте не работает:"," Это особенность ядра Linux. Setuid работает только с ",[39,2400,2401],{},"бинарными исполняемыми файлами",". Для скриптов используйте ",[25,2404,1351],{}," с настройкой в ",[25,2407,2408],{},"/etc/sudoers"," или setgid на каталоге с wrapper-скриптом.",[36,2411,2412,2415,2416,2418,2419,2422],{},[39,2413,2414],{},"Не удаётся удалить файл в каталоге с setgid:"," Убедитесь, что у вас есть право на запись (",[25,2417,152],{},") в ",[39,2420,2421],{},"сам каталог",", а не только на файл. Удаление файла — это изменение содержимого каталога.",[2424,2425],"hr",{},[502,2427],{},[21,2429,2430,2433,2434,2437,2438],{},[39,2431,2432],{},"Хотите углубиться в управление привилегиями?"," Ознакомьтесь с нашим подробным гайдом по настройке ",[39,2435,2436],{},"sudoers"," для безопасного делегирования прав: ",[135,2439,2440],{"href":2440},"/guides/linux/linux-sudoers-config",[16,2442,2444],{"id":2443},"заключение-и-лучшие-практики","Заключение и лучшие практики",[74,2446,2447,2458,2475,2481,2491,2497],{},[36,2448,2449,2452,2453,1153,2455,261],{},[39,2450,2451],{},"Принцип наименьших привилегий:"," Давайте только те права, которые необходимы для работы. Избегайте ",[25,2454,445],{},[25,2456,2457],{},"666",[36,2459,2460,2463,2464,2467,2468,2471,2472,52],{},[39,2461,2462],{},"Используйте группы для совместного доступа:"," Создавайте группы (",[25,2465,2466],{},"groupadd devs","), добавляйте пользователей (",[25,2469,2470],{},"usermod -aG devs alice",") и давайте права группе (",[25,2473,2474],{},"chmod 770 /project",[36,2476,2477,2480],{},[39,2478,2479],{},"Для сложных сценариев — ACL:"," Если модели \"владелец/группа/остальные\" недостаточно, сразу переходите на ACL.",[36,2482,2483,2486,2487,2490],{},[39,2484,2485],{},"Защищайте критические файлы:"," Используйте ",[25,2488,2489],{},"chattr +i"," для конфигурационных файлов ядра, системных утилит или важных скриптов.",[36,2492,2493,2496],{},[39,2494,2495],{},"Setuid/setgid — с умом:"," Устанавливайте только на проверенные, доверенные бинарные файлы. Никогда — на скрипты.",[36,2498,2499,2502],{},[39,2500,2501],{},"Всегда проверяйте:"," После настройки прав протестируйте доступ от имени нужных пользователей.",[21,2504,2505],{},"Права доступа — это мощный, но требующий аккуратности инструмент. Освойте его, и ваша Linux-система станет значительно надёжнее и безопаснее.",[1015,2507,2508],{},"html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}",{"title":273,"searchDepth":287,"depth":287,"links":2510},[2511,2512,2513,2522,2523,2524],{"id":18,"depth":287,"text":19},{"id":68,"depth":287,"text":69},{"id":101,"depth":287,"text":102,"children":2514},[2515,2516,2517,2518,2519,2520,2521],{"id":1405,"depth":300,"text":1406},{"id":1498,"depth":300,"text":1499},{"id":1628,"depth":300,"text":1629},{"id":1772,"depth":300,"text":1773},{"id":1950,"depth":300,"text":1951},{"id":2073,"depth":300,"text":2074},{"id":2213,"depth":300,"text":2214},{"id":854,"depth":287,"text":855},{"id":913,"depth":287,"text":914},{"id":2443,"depth":287,"text":2444},"Пошаговое руководство по управлению правами доступа в Linux. Изучите chmod, ACL, setuid/setgid и immutable-флаги за 15 минут. Практические примеры и типичные ошибки.","medium",[2528,2531,2534],{"question":2529,"answer":2530},"Что такое umask и как он влияет на права новых файлов?","Umask — это маска, которая вычитается из стандартных прав (666 для файлов, 777 для каталогов). Например, umask 022 даст права 644 (файл) и 755 (каталог). Проверьте текущее значение командой `umask`.",{"question":2532,"answer":2533},"Чем опасен chmod 777 и когда его можно использовать?","Chmod 777 даёт полный доступ (чтение, запись, исполнение) всем пользователям. Это серьёзная уязвимость. Используйте только для временных общих каталогов (например, /tmp) и никогда для системных файлов или исполняемых скриптов.",{"question":2535,"answer":2536},"Как отличить chown от chmod?","Chown меняет владельца (owner) и/или группу (group) файла. Chmod меняет права доступа (read/write/execute) для владельца, группы и остальных. Это разные уровни управления: кто может работать с файлом (chown) и что они могут с ним делать (chmod).",[2538,2541,2544,2547,2550],{"name":2539,"text":2540},"Изучите текущие права файла","Используйте `ls -l \u003Cфайл>` для просмотра прав доступа. Вы увидите строку вида `-rwxr-xr--`, где первый символ — тип, а следующие три группы — права владельца, группы и остальных.",{"name":2542,"text":2543},"Измените права числовым методом (chmod)","Используйте `chmod \u003Coctal> \u003Cфайл>`, где octal — трёхзначное число (например, 755). Каждая цифра: 4=read, 2=write, 1=execute. 7=4+2+1 (rwx), 5=4+1 (r-x). Для рекурсивного изменения добавьте `-R`.",{"name":2545,"text":2546},"Измените права символьным методом (chmod)","Синтаксис: `chmod [кто][оператор][права]`. Кто: u (владелец), g (группа), o (others), a (all). Оператор: + (добавить), - (удалить), = (установить). Пример: `chmod g+w file` — добавить запись группе.",{"name":2548,"text":2549},"Настройте расширенные ACL (setfacl)","Для гибкого управления (права для конкретного пользователя/группы) используйте `setfacl`. Пример: `setfacl -m u:ivan:rwx file` — дать пользователю ivan полный доступ. Просмотр: `getfacl file`.",{"name":2551,"text":2552},"Установите специальные атрибуты (chattr)","Используйте `chattr +i \u003Cфайл>` для immutable-флага (запрет на любые изменения, даже root). Снимите флаг `-i`. Для setuid/setgid на исполняемых файлах используйте `chmod u+s` или `chmod g+s`.",[2554,2555,2556,2557,2558,2559,2560,2561,2562,1074],"права доступа linux","chmod что делает","как дать права на файл в linux","setfacl пример","linux permissions guide","chmod 777 опасность","изменить владельца файла linux","setuid setgid sticky bit","атрибут immutable linux",{},[2565,1082,2440],"/guides/linux/linux-chown-chgrp",{"title":1275,"description":2525},"guides/linux/linux-permissions","В этом гайде вы узнаете, как правильно настраивать права доступа к файлам и каталогам в Linux с помощью chmod, ACL и специальных атрибутов, чтобы обеспечить безопасность и стабильность системы.",[1088,1091,27,2570,2571,1078,2572],"ACL","sysadmin","команды","ErEjKyOD2DSBHCTKoxauM3wZtmASG6bgA_wV7p8EOXk",{"id":2575,"title":2576,"appliesTo":2577,"author":11,"body":2582,"canonical":1031,"code":2592,"createdAt":2795,"description":2796,"difficulty":2526,"draft":1035,"estimatedTime":2797,"extension":1037,"faq":1031,"howToSteps":1031,"howToTotalTime":1031,"image":1031,"keywords":1031,"locale":1031,"meta":2798,"navigation":303,"path":1082,"platform":1078,"related":2799,"section":1031,"seo":2803,"severity":2526,"stem":2804,"summary":2805,"tags":2806,"twitterCreator":1031,"twitterSite":1031,"type":2810,"updatedAt":2795,"__hash__":2811},"content_ru/errors/linux/permission-denied.md","Permission denied в Linux: отказано в доступе",[2578,2579,2580,2581],"Ubuntu","Debian","Fedora","Arch Linux",{"type":13,"value":2583,"toc":2787},[2584,2594,2596,2600,2616,2618,2622,2625,2637,2640,2654,2656,2660,2663,2681,2683,2687,2690,2704,2707,2723,2725,2729,2732,2746,2749,2765,2767,2771,2784],[21,2585,2586,2587,2589,2590,2593],{},"Ошибка ",[39,2588,926],{}," (код ",[25,2591,2592],{},"EACCES",") в Linux означает, что текущий пользователь не имеет необходимых прав для выполнения операции. Она может возникать при запуске скриптов, открытии файлов или попытке изменить системные каталоги.",[2424,2595],{},[16,2597,2599],{"id":2598},"основные-причины","Основные причины",[33,2601,2602,2605,2608,2613],{},[36,2603,2604],{},"Недостаточные права на файл или папку",[36,2606,2607],{},"Отсутствует бит выполнения у скрипта",[36,2609,2610,2611],{},"Попытка доступа к системным каталогам без ",[25,2612,1351],{},[36,2614,2615],{},"Неверный владелец файла",[2424,2617],{},[16,2619,2621],{"id":2620},"способ-1-запуск-с-sudo","Способ 1: Запуск с sudo",[21,2623,2624],{},"Если операция требует прав администратора:",[268,2626,2628],{"className":270,"code":2627,"language":272,"meta":273,"style":273},"sudo команда\n",[25,2629,2630],{"__ignoreMap":273},[277,2631,2632,2634],{"class":279,"line":280},[277,2633,1351],{"class":290},[277,2635,2636],{"class":293}," команда\n",[21,2638,2639],{},"Пример:",[268,2641,2643],{"className":270,"code":2642,"language":272,"meta":273,"style":273},"sudo apt update\n",[25,2644,2645],{"__ignoreMap":273},[277,2646,2647,2649,2651],{"class":279,"line":280},[277,2648,1351],{"class":290},[277,2650,1354],{"class":293},[277,2652,2653],{"class":293}," update\n",[2424,2655],{},[16,2657,2659],{"id":2658},"способ-2-добавление-права-на-выполнение","Способ 2: Добавление права на выполнение",[21,2661,2662],{},"Если ошибка возникает при запуске скрипта:",[268,2664,2666],{"className":270,"code":2665,"language":272,"meta":273,"style":273},"chmod +x script.sh\n./script.sh\n",[25,2667,2668,2676],{"__ignoreMap":273},[277,2669,2670,2672,2674],{"class":279,"line":280},[277,2671,27],{"class":290},[277,2673,294],{"class":293},[277,2675,297],{"class":293},[277,2677,2678],{"class":279,"line":287},[277,2679,2680],{"class":290},"./script.sh\n",[2424,2682],{},[16,2684,2686],{"id":2685},"способ-3-проверка-прав-доступа","Способ 3: Проверка прав доступа",[21,2688,2689],{},"Посмотрите текущие права:",[268,2691,2693],{"className":270,"code":2692,"language":272,"meta":273,"style":273},"ls -l filename\n",[25,2694,2695],{"__ignoreMap":273},[277,2696,2697,2699,2701],{"class":279,"line":280},[277,2698,871],{"class":290},[277,2700,874],{"class":467},[277,2702,2703],{"class":293}," filename\n",[21,2705,2706],{},"Если нужно изменить владельца:",[268,2708,2710],{"className":270,"code":2709,"language":272,"meta":273,"style":273},"sudo chown user:user filename\n",[25,2711,2712],{"__ignoreMap":273},[277,2713,2714,2716,2718,2721],{"class":279,"line":280},[277,2715,1351],{"class":290},[277,2717,2237],{"class":293},[277,2719,2720],{"class":293}," user:user",[277,2722,2703],{"class":293},[2424,2724],{},[16,2726,2728],{"id":2727},"способ-4-проверка-прав-на-каталог","Способ 4: Проверка прав на каталог",[21,2730,2731],{},"Даже если файл доступен, родительский каталог может быть закрыт:",[268,2733,2735],{"className":270,"code":2734,"language":272,"meta":273,"style":273},"ls -ld directory\n",[25,2736,2737],{"__ignoreMap":273},[277,2738,2739,2741,2743],{"class":279,"line":280},[277,2740,871],{"class":290},[277,2742,2198],{"class":467},[277,2744,2745],{"class":293}," directory\n",[21,2747,2748],{},"При необходимости измените права:",[268,2750,2752],{"className":270,"code":2751,"language":272,"meta":273,"style":273},"sudo chmod 755 directory\n",[25,2753,2754],{"__ignoreMap":273},[277,2755,2756,2758,2761,2763],{"class":279,"line":280},[277,2757,1351],{"class":290},[277,2759,2760],{"class":293}," chmod",[277,2762,468],{"class":467},[277,2764,2745],{"class":293},[2424,2766],{},[16,2768,2770],{"id":2769},"итог","Итог",[21,2772,2586,2773,2775,2776,2778,2779,1153,2781,2783],{},[25,2774,2592],{}," в Linux почти всегда связана с правами доступа. Использование ",[25,2777,1351],{},", корректная настройка ",[25,2780,27],{},[25,2782,899],{}," обычно полностью решают проблему.",[1015,2785,2786],{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}",{"title":273,"searchDepth":287,"depth":287,"links":2788},[2789,2790,2791,2792,2793,2794],{"id":2598,"depth":287,"text":2599},{"id":2620,"depth":287,"text":2621},{"id":2658,"depth":287,"text":2659},{"id":2685,"depth":287,"text":2686},{"id":2727,"depth":287,"text":2728},{"id":2769,"depth":287,"text":2770},"2026-02-12","Как исправить ошибку Permission denied в Linux. Пошаговые решения для файлов, папок и исполняемых скриптов.","5-15 мин",{},[2800,2801,2802],"/errors/linux/command-not-found","/errors/linux/no-space-left-on-device","/errors/linux/read-only-file-system",{"title":2576,"description":2796},"errors/linux/permission-denied","Ошибка EACCES (Permission denied) возникает, когда у пользователя недостаточно прав для доступа к файлу, папке или выполнению команды.",[2807,2808,2809,27,1351],"Linux","Ошибка","Права доступа","error","xmflm-_Ps3Z40r-nDeiWmpOlPxv6BSr1lHoU-O5QjO4"]