Как читать вывод ls -ld и разбираться в rwx
На практике вывод выглядит так:
$ ls -ld /srv/app drwxr-xr-x 4 root www-data 4096 Oct 10 12:34 /srv/app
Все начинается с d — это указывает, что объект директория. Далее три буквы, три буквы, три буквы показывают права для владельца, группы и всех остальных.
- r (read) позволяет видеть список файлов.
- w (write) дает право создавать и удалять.
- x (execute) на папке означает возможность войти туда и пройти по вложенным файлам.
Если в блоке появляются дефисы, значит конкретное право отсутствует. Значение drwxr-xr-x расшифровывается как чтение/запись/вход для владельца, чтение/вход для группы и только чтение/вход для остальных.
Владелец, группа, маска и бит setuid/setgid
В выводе после rwx идет владелец (root) и группа (www-data). На практике важно убедиться, что сервис запускается от пользователя, который входит в группу или является владельцем.
Кроме rwx может появляться s или t. Например, меню ls -ld показывает drwxr-sr-x — это означает, что для этой папки включен бит setgid, и создаваемые внутри файлы наследуют группу.
Дополнительные инструменты диагностики
Часто простого ls не хватает. Обратите внимание на:
- stat /путь/к/папке — дает размер, время доступа, идентификаторы uid/gid и бит доступа в числовом виде (полезно при записи скриптов).
- getfacl /путь/к/папке — показывает расширенные ACL, которые часто используются в контейнерных кластерах и не видны в ls.
- namei -om /путь/к/папке — проверяет все компоненты пути: если у какого-то каталога нет права x, вы не попадете внутрь, даже если сама папка имеет rwx.
- find /путь -maxdepth 1 -perm /u=w — помогает найти папки с конкретными правами в обход визуального контроля.
Если вы не видите нужную папку, используйте sudo, иначе информация вернется по умолчанию для вашего пользователя. Также обращайте внимание на umask процесса: обычно 0022, но если он 0077, то новые файлы создаются с очень жесткими правами.
Когда права не совпадают с ожиданиями
Обычно проблемы возникают, когда сервис запускается от другого пользователя или когда исходные права выставлены для группы, которой нет в списке пользователей. На практике устраняют это командами
sudo chown deploy:www-data /srv/app sudo chmod 750 /srv/app
Команда chmod принимает и символьные записи, и числовые. Например, chmod 2750 устанавливает setgid и позволяет участвовать в группе наследования.
Профессия Linux-инженера: зарплата и чего ожидают работодатели
Средние зарплаты для Linux-инженеров в Москве и Санкт-Петербурге варьируются от 120 000 до 220 000 ₽, а в регионах можно рассчитывать на 95 000 — 160 000 ₽ в зависимости от опыта и обязанностей.
Типичные задачи:
- контроль прав доступа, автоматизация скриптов прав доступа и аудит безопасности;
- поддержка системных сервисов, настройка SELinux, AppArmor и ACL;
- управление пакетами, контейнерами и политиками доступа в облаке.
Важно строить работу на базе мониторинга: если приложение не может открыть папку, команда namei и getfacl часто разруливают причину быстрее, чем чтение логов.
Критерии выбора курса по системному администрированию
При выборе курса для прокачки навыков важно оценить:
- наличие лабораторных работ и симулятора командной строки, чтобы на практике видеть результат команд;
- темы, близкие к реальным архитектурам — например, настройка прав при работе с сервисами, создание пользователей, разбор ошибок доступа;
- практику, где идут задачи в стиле сервисных инцидентов, а не только теория;
- обратную связь от наставников, чтобы можно было обсуждать собственные конфигурации и ошибки;
- возможность получить подтверждение знаний в виде диплома или сертификата, особенно если планируете карьерный переход.
Чек-лист: как выбрать курс
- Проверьте программу на наличие модулей с практикой прав доступа и сопровождения системных юнитов.
- Уточните, можно ли работать с реальными примерами, а не только с терминами.
- Посмотрите, как устроена обратная связь: есть ли наставник, комментарии, разбор проектов.
- Оцените продолжительность и расписание, чтобы курс вписался в текущую загрузку и был завершен.
- Убедитесь, что по окончании доступны сертификат или диплом, если собираетесь показывать результаты работодателю.
Рекомендованные курсы на agregatorcursov.ru
Если хочется отработать управление командами и процессами в окружении, где права доступа играют критичную роль, обратите внимание на курс Системное управление процессами и командой от Нетологии. Он помогает выстроить процессы, где команды и инфраструктура работают синхронно, и включает практику управления инцидентами.
Чтобы освоить навыки наставничества и держать стандарты на одной волне с командой системных инженеров, пригодится курс Наставничество и управленческий коучинг от SkillBox. Он показывает, как сопровождать новичков и создавать практики, в которых разрешение проблем с доступом оформляется как часть обучения.
Тем, кто работает с симуляцией аппаратных систем, можно рассмотреть курс Управление в симуляторе от DRONTECH.PRO. Там тоже встречаются задачи по правам доступа к виртуальным площадкам и конфигурация ролей — а это хорошая тренировка внимательности к chmod/stat.
Сравнение курсов
| Курс | Фокус | Формат | Польза для системного администратора |
|---|
| Системное управление процессами и командой | Процессы, инциденты, Agile | Онлайн, управляемые кейсы | Привычка фиксировать права доступа как часть инцидента, практики согласования ролей |
| Наставничество и управленческий коучинг | Обучение команд, обратная связь | 5 месяцев, видео и кейсы | Построение систем сопровождения новых инженерных бригад, помощь в отладке прав доступа |
| Управление в симуляторе | Симуляция дронов, планирование операций | Симулятор дрона, практические сценарии | Проверка прав доступа к виртуальным объектам и взаимодействие в условия ограничений |
Чтобы узнать, как именно идут занятия по сценариям, посмотреть программу и выбрать подходящий формат, переходите к описаниям выбранного курса на agregatorcursov.ru.
Частые вопросы
Как быстро увидеть, кто владелец папки? На командах ls -ld и stat владелец и группа идут непосредственно после rwx. Если нужен только владелец, используйте stat -c '%U:%G'.
Можно ли понимать ACL через ls? Нет, ACL скрыты от обычного вывода, поэтому запускайте getfacl или setfacl, чтобы увидеть дополнительные записи.
Как проверить права всей иерархии? namei -om /путь/к/папке покажет права каждого уровня от корня до самой папки, что важно, когда одна из родительских директорий блокирует доступ.
Что делать, если никто не может войти в папку? Проверьте bits у родительских директорий, затем убедитесь, что chmod выставлен на 750 или аналогичный, позволяющий группе заходить внутрь.
Можно ли увидеть права на папку внутри скрипта? Да, используйте stat с форматом, отражающим необходимые поля, и анализируйте вывод вместе с find после регулярной проверки.