Почему Permission denied: как найти каталог, на котором ломаются права Иногда файл имеет правильные права, пользователь состоит в нужной группе, но Permission denied всё равно появляется. Причина может быть выше по пути: чтобы открыть /var/www/site/config.php , процесс должен иметь право x на каждый каталог в этом пути. Разберем, как быстро найти место, где ломается доступ. 1️⃣ namei показывает права на весь путь…
BashTex | Linux
Авторский канал для тех, кто хочет глубже погрузиться в мир Linux. Подойдет для разработчиков, системных администраторов и DevOps
Вашу рекламу в этом канале увидит до 360 человек
Заказать рекламу →Динамика подписчиков
с 20 июля 2026 по 28 сентября 2026 · минимум 2 500 · максимум 2 530
Кто рекламировался за полгода
Рекламных размещений с маркировкой не найдено.
Публикации
veth - как Linux соединяет два network namespace Network namespace изолирует сетевой стек процесса. У каждого namespace могут быть свои интерфейсы, маршруты и таблица соседей. Но как соединить два таких изолированных сетевых мира? Для этого в Linux есть veth pair - виртуальный Ethernet-кабель с двумя концами. ▪️ Создаём два namespace ip netns add ns1 ip netns add ns2 Теперь создаём пару: ip link add veth1 type veth…
nohup vs session vs terminal - что реально происходит после закрытия SSH Запустили процесс по SSH: ./backup.sh & Закрыли SSH-сессию - а потом обнаружили, что процесс исчез. Почему? Проблема не в самом SSH. Нужно понимать связь между терминалом, session, shell и сигналами . ▪️ Что происходит при SSH-подключении Условно: sshd ↓ shell ↓ terminal / PTY ↓ команды Shell создаёт процессы в своей session и process group, а…
Minor и major page fault: почему page fault не всегда означает проблему с диском Когда процесс обращается к виртуальной памяти, нужная страница не всегда уже находится в памяти именно в том состоянии, которое ожидает процесс. Тогда возникает page fault - обращение к ядру для обработки этого случая. Но сам факт page fault ещё не означает, что система полезла на диск. ▪️ Смотрим статистику процесса ps -o…
BashTex 📱 #мем
inotify vs polling: почему постоянный find может быть плохим мониторингом Иногда нужно отследить появление нового файла в каталоге. Самый простой вариант: while true; do find /var/incoming -type f sleep 1 done Работает. Но каждые несколько секунд мы заново обходим каталог, даже если за это время ничего не произошло. Для событийного мониторинга в Linux есть inotify. ▪️ Следим за изменениями без постоянного обхода…
Sparse files: почему файл на 100 ГБ может занимать несколько мегабайт Размер файла и реально занятое место на диске не всегда совпадают. Можно создать файл, который логически имеет размер 100 ГБ, но физически занимает всего несколько мегабайт. Для этого используются sparse files . ▪️ Создаём sparse-файл truncate -s 100G test.img Теперь: ls -lh test.img покажет: -rw-r--r-- 1 user user 100G test.img Но: du -h test.img…
du vs df: почему Linux показывает разный размер диска Иногда ситуация выглядит странно: df -h / показывает, что занято 80 GB. А: du -sh / находит только 55 GB. Кажется, что Linux «потерял» 25 GB. На самом деле du и df измеряют разные вещи. ▪️ Что считает df df смотрит на файловую систему и её блоки: df -h / Он показывает, сколько места файловая система считает занятым и свободным. ▪️ Что считает du du обходит дерево…
file vs расширение - как Linux определяет тип файла на самом деле В Linux расширение файла само по себе ничего не определяет. Для системы: backup.tar.gz backup.jpg backup.txt это просто имена файлов. Можно спокойно сделать: mv image.jpg image.txt и содержимое файла от этого никак не изменится. ▪️ Откуда тогда file знает тип Утилита file смотрит не на расширение, а на содержимое файла. file image.txt file archive.bin…