Linux для чайника
19.6K subscribers
87 photos
4 files
80 links
Linux
- Разбор утилит / инструментов
- Новости / факты
- Опросы для проверки знаний, навыков
и многое другое.

Только по вопросам сотрудничества: @altmainf

Регистрация в перечне РКН https://clck.ru/3EpL9L
Download Telegram
Можно временно изменить время только для одного процесса.

LD_PRELOAD=/usr/lib/x86_64-linux-gnu/faketime/libfaketime.so.1 \
FAKETIME="2035-01-01 12:00:00" date


Или использовать утилиту faketime:
faketime "2035-01-01" ./program

Полезно для тестирования лицензий, сертификатов и логики работы с датами.
Смонтируем каталог в другом месте без копирования

mount --bind /home/user/projects /mnt/projects

После этого содержимое /home/user/projects будет доступно и через /mnt/projects.

Удобно для контейнеров, chroot, резервного копирования и нестандартных сценариев настройки.
Узнать, какие файлы открывает программа

Если интересно, что происходит «под капотом» при запуске приложения, воспользуйтесь strace.

strace -e openat firefox


Опция -e openat выводит только системные вызовы открытия файлов, отбрасывая тысячи других операций.

В выводе можно увидеть, какие библиотеки, шрифты, конфигурационные файлы и другие ресурсы пытается открыть программа.

Например:
openat(AT_FDCWD, "/etc/hosts", O_RDONLY) = 3
openat(AT_FDCWD, "/usr/lib/libgtk-3.so", O_RDONLY) = 4


Отличный инструмент для диагностики, если приложение не запускается или сообщает, что не может найти какой-либо файл.
Быстро создаем RAM-диск

sudo mount -t tmpfs -o size=2G tmpfs /mnt/ramdisk


Все файлы в /mnt/ramdisk будут храниться только в оперативной памяти, что обеспечивает очень высокую скорость работы. После перезагрузки содержимое исчезнет. Это удобно для временных файлов, сборки проектов и тестирования.
Следим за изменениями в папке в реальном времени

Установи inotify-tools и выполни:
inotifywait -m ~/Downloads

Теперь любое создание, удаление, переименование или изменение файлов будет сразу отображаться в терминале.
Отлично подходит для автоматизации и написания скриптов.
🔐 Средства защиты в ядре Linux — это фундамент безопасности всей системы.

Если вы хотите понимать:
как защищается ядро;
почему работают SELinux, AppArmor, KASLR и PTI
как проверить защищённость системы на практике, этот практикум для вас.

🗓 20 августа в 20:00 МСК приглашаем вас на открытый урок в преддверии старта курса «Разработка ядра Linux».

Разберём:
• модели DAC и MAC;
• механизмы защиты ядра;
• параметры сборки;
• подпись модулей и ядра;
• а также практические способы проверки настроек безопасности.

После занятия вы поймёте:
как работают современные механизмы защиты Linux;
научитесь анализировать конфигурацию ядра;
оценивать влияние защитных технологий на систему;
увереннее работать с безопасностью на уровне ядра.

Если вы развиваетесь в системном программировании, администрировании или разработке ядра Linux, зарегистрируйтесь на открытый урок, получите практические знания и сделайте следующий шаг к профессиональной работе с ядром Linux/

Регистрация: https://otus.pw/GzgT/


Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Копируем диск по сети одной командой

Без создания промежуточного образа

На принимающей машине: nc -l 9000 | dd of=disk.img

На отправляющей: dd if=/dev/sda | nc <IP_получателя> 9000

Так можно передавать целые диски или разделы напрямую по сети.
Внимательнее к dd: ошибка в имени устройства может привести к потере данных.
Открываем удалённую оболочку без SSH

Если на обоих компьютерах есть netcat (nc):

На первом компьютере: nc -lvnp 4444 -e /bin/bash

На втором: nc <IP> 4444

Ты получишь удалённую оболочку.
Используй это только в своей сети и на своих устройствах. На многих современных версиях nc опция -e отключена именно из соображений безопасности.
Узнать, что мешает ноутбуку экономить заряд

Если аккумулятор разряжается слишком быстро, стоит посмотреть, какие процессы постоянно нагружают процессор.
Для этого существует утилита: sudo powertop

powertop
анализирует активность системы и показывает:
• процессы, чаще всего пробуждающие процессор;
• устройства, потребляющие больше всего энергии;
• рекомендации по снижению энергопотребления.

Например, можно обнаружить, что какое-то приложение будит процессор сотни раз в секунду, из-за чего он не переходит в режим энергосбережения.

Кроме мониторинга, powertop умеет автоматически применять некоторые оптимизации: sudo powertop --auto-tune
Эта команда включает рекомендуемые энергосберегающие настройки до следующей перезагрузки.
Создать именованный канал между программами

В Linux существует специальный тип файлов — FIFO (именованный канал). Он позволяет двум независимым процессам обмениваться данными так, будто они читают и записывают обычный файл.

Создать такой канал можно одной командой: mkfifo mypipe

В одном терминале: cat mypipe
Во втором: echo "Привет!" > mypipe

Сообщение мгновенно появится в первом терминале.
В отличие от обычных файлов, данные не сохраняются на диске — они сразу передаются между процессами.
Посмотреть, какие процессы используют сеть

Если интернет работает медленно или вы хотите узнать, какая программа подключается к сети, используйте: ss -tulpn
Команда покажет открытые TCP и UDP-порты, а также процессы, которым они принадлежат.

Например:
Netid State Local Address:Port
tcp LISTEN 0.0.0.0:22 users:(("sshd",pid=742))
tcp LISTEN 127.0.0.1:5432 users:(("postgres",pid=931))


В отличие от устаревшей netstat, утилита ss работает быстрее и уже входит в большинство современных дистрибутивов.
Гринатом — ИТ-интегратор Росатома — ищет системного администратора виртуализации в Нижнем Новгороде!💼

Мы ищем специалиста с глубокими знаниями Linux и опытом администрирования высоконагруженных инфраструктур, систем виртуализации и распределённых хранилищ. Важно уверенно работать с LDAP, Kerberos, мониторингом, логами и системными метриками, а также владеть Bash и Python для автоматизации задач.

От нас — все возможности для комфортной работы: от ДМС со стоматологией до скидок от партнёров. А ещё в первые месяцы вас ждут обучение, внутренние аттестации и получение сертификатов по продуктам.
Посмотреть историю изменений файла через auditd

Linux умеет отслеживать, кто и когда изменял определённые файлы.
Установка: sudo apt install auditd

Добавить наблюдение: sudo auditctl -w /etc/passwd -p wa

Теперь система будет записывать изменения файла.
Посмотреть события: sudo ausearch -f /etc/passwd

Можно узнать: кто изменил файл, когда это произошло, каким процессом.
journalctl — просмотр всех системных логов

В современных Linux многие службы пишут логи через systemd.

Посмотреть последние события: journalctl -xe
Логи конкретного сервиса: journalctl -u nginx
Следить в реальном времени: journalctl -f
Посмотреть ошибки только за сегодня: journalctl --since today -p err