Отладка дедлока FUSE в ядре Linux
Автор подробно объясняет инструменты и методы диагностики таких проблем, сложности, которые могут возникнуть с FUSE, и пошагово показывает, как анализировать и решать подобные ситуации в рабочих средах
🔜 Читать статью
👉 DevOps Portal | #cтатья
Автор подробно объясняет инструменты и методы диагностики таких проблем, сложности, которые могут возникнуть с FUSE, и пошагово показывает, как анализировать и решать подобные ситуации в рабочих средах
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Порой опытные админы используют команды в консоли следующим образом:
ssh root@linuxzone.ru --
Что означает это двойное тире? Зачем оно? Давайте разбираться.
Двойное тире означает «флаги командной строки». Оно указывает ssh или другой команде не пытаться анализировать то, что следует после параметров. На словах выглядит не очень, давайте посмотрим на практике!
У меня есть такая команда:
ssh root@linuzone.ru -- command1 --arg1 --arg2
Приведенный выше синтаксис указывает ssh не пытаться анализировать параметры arg1 и arg2 после символа «--». Это гарантирует, что команда command1 примет arg1 и arg2 в качестве аргументов командной строки и выполнится на удаленном сервере.
Короче говоря мы сообщаем ssh - все то, что идет после двойного тире, это не твои параметры и аргументы, анализировать это НЕ НАДО! СТОП! Дальше дело за command1 и его параметрами и аргументами.
Двойное тире обрабатывается не обрабатывается оболочками bash/zsh/csh/sh/fish и т.п. Оно обрабатывается средствами самих программ, но НЕ всех. Например ssh это умеет делать, как и множество других команд и утилит. Рассмотрим другие примеры.
Например, вы не сможете просмотреть файл с именем --file или -f используя команду cat. Проверяем:
cat --file
cat -f
Опа. Ошибка! cat: unrecognized option --file/f. Давайте теперь передадим двойное тире:
cat -- --file
cat -- -f
Ошибка пропала и файл успешно вывелся на экран, ну либо выскочило сообщение cat: --file/f: No such file or directory. Это нормально.
Закрепим:
rm --file = получим ошибку
rm -- '--file' = а вот это сработает
Ну а что бы передать параметры в rm, делаем так:
rm -v -i -- '--file'
rm -f -v -i -- '-f'
Просто, логично, мелодично. Но как я и сказал выше, не все команды умеют работать с двойным тире. Например, команда echo, на все попытки подружить её с двойным тире, просто-напросто провалятся:
/usr/bin/echo -- -n
echo -- --test
выведется это:
-- -n
-- --test
Если материал оказался полезным и интересным, то поставьте лайк
Please open Telegram to view this post
VIEW IN TELEGRAM
👍61❤10
Раньше в интернете была популярна фраза "я тебя по IP вычислю", но сегодня давайте разберемся, насколько это возможно на самом деле, используя терминал Linux.
Определение местоположения человека по IP-адресу – это интересная тема, и оно основано на технологии геолокации. Отмечу сразу, что точность определения зависит от множества факторов, и это не так просто, как кажется.
Linux предоставляет утилиту
geoiplookup, которая может выдать информацию о стране, городе и провайдере по IP-адресу. Вы можете воспользоваться этой командой в терминале следующим образом:
geoiplookup <IP-адрес>
Замените
<IP-адрес> на конкретный IP, который хотите проверить. Но помните, что эта информация может быть неточной, особенно если пользователь использует VPN или прокси.Существуют веб-сервисы и API, которые предоставляют более точную информацию о местоположении по IP-адресу. Вы можете использовать такие сервисы, отправляя запросы через терминал с помощью утилиты
curl. Например, сервис "ipinfo.io" предоставляет информацию о городе, регионе, стране, координатах и другие данные:
curl ipinfo.io/<IP-адрес>
Однако, даже с использованием более точных методов, стоит помнить, что IP-адрес не является надежным способом идентификации местоположения пользователя. В современном интернете многие используют VPN, прокси или другие методы для скрытия своего настоящего местоположения.
Так что давайте воспользуемся этими способами в терминале Linux и посмотрим, что они скажут. Но помните, что это просто увлекательная возможность и не стоит полагаться на неё как на надежный метод определения местоположения.
Спасибо за вашу активность! Ваше участие делает наше сообщество интереснее и полезнее
Please open Telegram to view this post
VIEW IN TELEGRAM
❤23👍17😁3
Bash и кибербезопасность: атака, защита и анализ из командной строки Linux
Авторы: Пол Тронкон, Карл Олбинг
Год: 2020
📂 Скачать книгу
👉 DevOps Portal | #книги
Авторы: Пол Тронкон, Карл Олбинг
Год: 2020
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15
CLI инструменты, которые облегчат времяпровождение в терминале и сделают его приятнее
Многие из вас каждый день работают в терминале. Этот процесс можно улучшить. Существует множество полезных инструментов CLI, которые могут сделать вашу жизнь в командной строке проще, быстрее и в целом веселее.
🔜 Читать подробнее
👉 DevOps Portal | #cтатья
Многие из вас каждый день работают в терминале. Этот процесс можно улучшить. Существует множество полезных инструментов CLI, которые могут сделать вашу жизнь в командной строке проще, быстрее и в целом веселее.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🤯1
Сегодня расскажу вам, как отправить электронное письмо прямо из терминала Linux! ✉️
1️⃣ Вам понадобится установленный пакет "mailutils", чтобы воспользоваться утилитой "mail". Если его у вас нет, установите с помощью команды:
2️⃣ Теперь, для отправки письма, воспользуйтесь следующей командой:
Замените "Текст вашего письма" на текст сообщения, "Тема письма" на тему письма и "адрес_получателя@example.com" на адрес электронной почты получателя.
3️⃣ Если нужно отправить письмо с вложением, воспользуйтесь командой "mutt":
Замените "/путь/к/вашему_файлу.txt" на путь к вашему вложению и "/путь/к/текстовому_файлу.txt" на путь к текстовому файлу с телом письма.
Теперь вы можете отправлять письма из терминала Linux! Хорошего дня🤝
👉 DevOps Portal
sudo apt-get install mailutils
echo "Текст вашего письма" | mail -s "Тема письма" адрес_получателя@example.com
Замените "Текст вашего письма" на текст сообщения, "Тема письма" на тему письма и "адрес_получателя@example.com" на адрес электронной почты получателя.
mutt -s "Тема письма" -a /путь/к/вашему_файлу.txt адрес_получателя@example.com < /путь/к/текстовому_файлу.txt
Замените "/путь/к/вашему_файлу.txt" на путь к вашему вложению и "/путь/к/текстовому_файлу.txt" на путь к текстовому файлу с телом письма.
Теперь вы можете отправлять письма из терминала Linux! Хорошего дня
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32😁8❤5🤝2🤔1
Быстрый совет для Linux 👩💻
Вы можете включить временные метки в истории команд bash, чтобы видеть, когда вы выполняли предыдущие команды. Это может быть полезно для отслеживания того, над чем вы работали и когда
Чтобы добавить временные метки в историю, просто установите переменную окружения HISTTIMEFORMAT следующим образом:
Теперь, когда вы просматриваете свою историю или ищете в ней с помощью grep, вы будете видеть временную метку рядом с каждой командой, указывающую, когда она была выполнена:
Или, чтобы сэкономить несколько нажатий клавиш:
Формат "%F %T" отображает дату и время, но вы можете настроить его под свои предпочтения.
Примечание: Это не добавляет временные метки к командам, которые вы выполняли до установки HISTTIMEFORMAT, и работает только в bash.
👉 DevOps Portal
Вы можете включить временные метки в истории команд bash, чтобы видеть, когда вы выполняли предыдущие команды. Это может быть полезно для отслеживания того, над чем вы работали и когда
Чтобы добавить временные метки в историю, просто установите переменную окружения HISTTIMEFORMAT следующим образом:
$ export HISTTIMEFORMAT="%F %T "
Теперь, когда вы просматриваете свою историю или ищете в ней с помощью grep, вы будете видеть временную метку рядом с каждой командой, указывающую, когда она была выполнена:
$ history | tail -n 5
Или, чтобы сэкономить несколько нажатий клавиш:
$ history 5
Формат "%F %T" отображает дату и время, но вы можете настроить его под свои предпочтения.
Примечание: Это не добавляет временные метки к командам, которые вы выполняли до установки HISTTIMEFORMAT, и работает только в bash.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍27🔥4❤1
Эта схема показывает структуру файловой системы Linux и объясняет предназначение различных директорий, находящихся в корневом каталоге /
/bin - Бинарные файлы основных команд/boot - Файлы загрузчика системы/dev - Файлы устройств/etc - Системные конфигурационные файлы, специфичные для хоста/home - Домашний каталог пользователя/lib - Модули общих библиотек/media - Файлы мультимедиа, такие как CD-ROM/mnt - Временно смонтированные файловые системы/opt - Дополнительные пакеты программного обеспечения/proc - Интерфейс к структурам данных ядра/root - Домашний каталог пользователя root/run - Данные времени выполнения/sbin - Системные бинарные файлы/srv - Служебные данные, обслуживаемые этой системой/sys - Виртуальный каталог для информации о системе/tmp - Временные файлы/usr - Ресурсы Unix-системы/var - Файлы, которые постоянно изменяютсяPlease open Telegram to view this post
VIEW IN TELEGRAM
👍31🔥18
free в терминале, чтобы увидеть общее использование и доступную память, а также использование подкачки.top для мониторинга активных процессов и их потребления памяти в реальном времени.ps aux для просмотра списка активных процессов и их потребления ресурсов, включая память.htop или atop, чтобы получить более подробную информацию о загрузке ЦП и памяти./proc есть файлы и директории, которые предоставляют информацию о текущем состоянии процессов и ресурсах, включая память.Выберите удобный для вас метод и отслеживайте использование памяти в вашей Linux-системе. Это поможет вам оптимизировать ресурсы и улучшить производительность
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17
Администрирование системы защиты SELinux
Авторы: Вермейлен Свен
Год: 2020
📂 Скачать книгу
👉 DevOps Portal | #книги
Авторы: Вермейлен Свен
Год: 2020
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
Если вас интересует, какой процесс открыл определенный ресурс, будь то файл или сетевой порт, у вас есть полезная команда -
fuser. Вот как это работает:1. Чтобы узнать, какой процесс открыл сетевой порт 23 (например, TCP), выполните следующую команду:
fuser -va 23/tcp
Вы получите идентификатор процесса, который открыл этот порт.
2. Если вам нужно узнать, какой процесс открыл определенный файл, используйте команду:
fuser -va /путь/к/файлу
Например, для файла
/chroot/etc/resolv.conf команда будет выглядеть так:fuser -va /chroot/etc/resolv.conf
Вы узнаете идентификатор процесса, который открыл этот файл.
После того как вы узнали идентификатор процесса, дальние шаги зависят от вас. Например, вы можете завершить этот процесс с помощью команды
kill.Помните, что работа с процессами и ресурсами требует осторожности, так как неправильные действия могут повлиять на стабильность и безопасность системы. Всегда будьте внимательны при использовании подобных команд.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍26🔥4
Cегодня расскажу вам о простом способе шифровки файлов и сообщений при помощи терминала Linux. Это отличный способ обеспечить конфиденциальность ваших данных
Команда для шифровки файлов:
Для шифрования файлов мы будем использовать утилиту GPG (GNU Privacy Guard). Она позволит нам создать зашифрованный файл из обычного. Процедура проста и состоит из нескольких шагов:
Если вы еще не установили GPG, выполните в терминале команду:
sudo apt-get install gnupg
Теперь, когда GPG установлен, вы можете зашифровать файл с помощью команды:
gpg -c имя_файла
После выполнения этой команды, вы будете попрошены ввести пароль для шифрования файла.
Для расшифровки файла выполните команду:
gpg имя_файла.gpg
GPG запросит вас ввести пароль, который вы использовали при шифровании файла.
Вы также можете зашифровать текстовые сообщения при помощи GPG. Для этого выполните следующую команду:
echo "Ваше сообщение" | gpg -e -r имя_получателя > зашифрованное_сообщение.gpg
Здесь "имя_получателя" - это публичный ключ получателя сообщения. Он должен иметь публичный ключ GPG, чтобы расшифровать сообщение.
Таким простым способом вы можете обезопасить свои файлы и сообщения от несанкционированного доступа. Не забывайте хранить ваши пароли и ключи в надежном месте.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17
How To Secure A Linux Server
В репозитории содержится развивающееся руководство по обеспечению безопасности сервера GNU/Linux.
Руководство освещает такие темы, как:
⏩ SSH Server
⏩ The Network
⏩ The Auditing
⏩ The Danger Zone
⏩ The Miscellaneous
https://github.com/imthenachoman/How-To-Secure-A-Linux-Server
👉 DevOps Portal | #ресурсы
В репозитории содержится развивающееся руководство по обеспечению безопасности сервера GNU/Linux.
Руководство освещает такие темы, как:
https://github.com/imthenachoman/How-To-Secure-A-Linux-Server
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10👀4
Сегодня хочу поделиться полезной информацией о том, как запускать процессы в фоновом режиме через терминал Linux. Это удобный способ выполнить задачу и продолжить работу, не прерывая своего текущего сеанса. 🐧
Для запуска процесса в фоне используется специальный символ "&". Давайте посмотрим на примере команды "command":
1️⃣ Простая команда:
Таким образом, "command" будет запущен в фоне, и вы сможете продолжать работать в терминале.
2️⃣ Запуск команды в фоновом режиме с выводом в файл:
В данном случае вывод команды "command" будет перенаправлен в файл "output.txt", а сам процесс будет запущен в фоне.
3️⃣ Запуск команды в фоновом режиме без вывода:
В этом примере команда "command" будет выполнена в фоне, а вывод будет направлен в специальное устройство "/dev/null", которое игнорирует вывод.
4️⃣ Запуск процесса в фоне с возможностью отключиться от терминала:
Команда "nohup" позволяет запустить процесс в фоне и отключиться от терминала, не прерывая его выполнение. Вывод будет сохранен в файле "nohup.out".
Теперь вы знаете, как запускать процессы в фоне через терминал Linux! Этот метод очень удобен для выполнения долгих задач и автоматических скриптов.
👉 DevOps Portal
Для запуска процесса в фоне используется специальный символ "&". Давайте посмотрим на примере команды "command":
$ command &
Таким образом, "command" будет запущен в фоне, и вы сможете продолжать работать в терминале.
$ command > output.txt &
В данном случае вывод команды "command" будет перенаправлен в файл "output.txt", а сам процесс будет запущен в фоне.
$ command > /dev/null &
В этом примере команда "command" будет выполнена в фоне, а вывод будет направлен в специальное устройство "/dev/null", которое игнорирует вывод.
$ nohup command &
Команда "nohup" позволяет запустить процесс в фоне и отключиться от терминала, не прерывая его выполнение. Вывод будет сохранен в файле "nohup.out".
Теперь вы знаете, как запускать процессы в фоне через терминал Linux! Этот метод очень удобен для выполнения долгих задач и автоматических скриптов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20🔥8😁1🤔1
Python для сетевых инженеров. Автоматизация сети, программирование и DevOps
Автор: Чоу Э.
Год: 2023
📂 Скачать книгу
👉 DevOps Portal | #книги
Автор: Чоу Э.
Год: 2023
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥6
Самая красивая и лаконичная шпаргалка bash
В твиттерской опубликовали ладно скроенную инфографику от sysexplore.com, которая поможет не только ознакомиться с базовой терминологией скриптинга, но и с вычиткой параметров из файла, хэндлинг сигналов (SIGTERM) и проч.
👉 DevOps Portal
В твиттерской опубликовали ладно скроенную инфографику от sysexplore.com, которая поможет не только ознакомиться с базовой терминологией скриптинга, но и с вычиткой параметров из файла, хэндлинг сигналов (SIGTERM) и проч.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍33🔥8
Команда updatedb: быстрый поиск файлов на Linux!
Хочу рассказать вам о полезной команде updatedb для операционной системы Linux.
Updatedb используется для обновления индекса файловой системы, который пригодится вам, когда нужно быстро найти файлы
Как это работает?
Когда вы запускаете команду updatedb, она просматривает все файлы на вашем компьютере и создает специальный файл индекса по пути /var/lib/mlocate/mlocate.db. Этот файл содержит информацию о каждом файле в системе.
Что это дает вам? Теперь вы можете мгновенно искать файлы по всей системе, не тратя время на перебор всех каталогов! Удобно, правда?
Как запустить updatedb? Просто откройте терминал и введите команду:
После того, как индекс будет обновлен, используйте команду locate, чтобы быстро найти нужные файлы. Например, чтобы найти файл с именем myfile.txt, введите:
И волшебство произойдет) Вам будут показаны все файлы с таким именем на вашей системе.
Так что не тратьте время на долгий поиск файлов вручную. Используйте команду updatedb и находите все, что вам нужно мгновенно😎
👉 DevOps Portal
Хочу рассказать вам о полезной команде updatedb для операционной системы Linux.
Updatedb используется для обновления индекса файловой системы, который пригодится вам, когда нужно быстро найти файлы
Как это работает?
Когда вы запускаете команду updatedb, она просматривает все файлы на вашем компьютере и создает специальный файл индекса по пути /var/lib/mlocate/mlocate.db. Этот файл содержит информацию о каждом файле в системе.
Что это дает вам? Теперь вы можете мгновенно искать файлы по всей системе, не тратя время на перебор всех каталогов! Удобно, правда?
Как запустить updatedb? Просто откройте терминал и введите команду:
sudo updatedb
После того, как индекс будет обновлен, используйте команду locate, чтобы быстро найти нужные файлы. Например, чтобы найти файл с именем myfile.txt, введите:
locate myfile.txt
И волшебство произойдет) Вам будут показаны все файлы с таким именем на вашей системе.
Так что не тратьте время на долгий поиск файлов вручную. Используйте команду updatedb и находите все, что вам нужно мгновенно
Please open Telegram to view this post
VIEW IN TELEGRAM
👍28
Python для DevOps: Полное руководство от новичка до продвинутого уровня
Python получил широкое распространение в экосистеме DevOps благодаря своей простоте, обширным библиотекам и адаптивности для различных платформ и задач. Независимо от того, автоматизируете ли вы рутинные задачи, управляете инфраструктурой или разрабатываете CI/CD конвейеры, Python предлагает мощный и надежный набор инструментов.
🔜 Читать статью
👉 DevOps Portal | #cтатья
Python получил широкое распространение в экосистеме DevOps благодаря своей простоте, обширным библиотекам и адаптивности для различных платформ и задач. Независимо от того, автоматизируете ли вы рутинные задачи, управляете инфраструктурой или разрабатываете CI/CD конвейеры, Python предлагает мощный и надежный набор инструментов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16
Пользуйтесь этими командами, чтобы с легкостью создавать и организовывать свои папки в терминале Linux
Please open Telegram to view this post
VIEW IN TELEGRAM
👍27🔥5😁2🌚1
This media is not supported in your browser
VIEW IN TELEGRAM
Открываем файлы и папки в приложении по-умолчанию через терминал
При необходимости вы можете напрямую из терминала открывать нужные вам файлы или папки в приложении по-умолчанию. Чтобы сделать это, введите следующую команду:
Дальше следуете тому, что показано на прикрепленной анимации и будет вам счастье👍
👉 DevOps Portal
При необходимости вы можете напрямую из терминала открывать нужные вам файлы или папки в приложении по-умолчанию. Чтобы сделать это, введите следующую команду:
ls -1 --hyperlink=always
Дальше следуете тому, что показано на прикрепленной анимации и будет вам счастье
Please open Telegram to view this post
VIEW IN TELEGRAM
👍27