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