#!/bin/bash
# Colors for readability
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
RED='\033[0;31m'
NC='\033[0m' # No Color
echo -e "${GREEN}===== System Monitoring Script =====${NC}"
# 1. CPU Usage
echo -e "${YELLOW}\n>> CPU Usage: ${NC}"
mpstat | awk '/all/ {print "CPU Load: " $3 "% idle"}'
# 2. Memory Usage
echo -e "${YELLOW}\n>> Memory Usage: ${NC}"
free -h | awk '/Mem/ {print "Total Memory: " $2 "\nUsed: " $3 "\nFree: " $4}'
echo -e "Swap:\n"$(free -h | awk '/Swap/ {print "Total: " $2 ", Used: " $3 ", Free: " $4}')
# 3. Disk Usage
echo -e "${YELLOW}\n>> Disk Usage: ${NC}"
df -h | grep '^/dev' | awk '{print $1 ": " $5 " used, " $4 " available"}'
# 4. Network Traffic
echo -e "${YELLOW}\n>> Network Traffic: ${NC}"
ifstat -i eth0 1 1 | awk 'NR==3 {print "RX: " $1 " KB/s, TX: " $2 " KB/s"}'
# 5. Top 5 Memory Consuming Processes
echo -e "${YELLOW}\n>> Top 5 Memory Consuming Processes: ${NC}"
ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head -n 6
# 6. Top 5 CPU Consuming Processes
echo -e "${YELLOW}\n>> Top 5 CPU Consuming Processes: ${NC}"
ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head -n 6
# 7. System Logs Monitoring
echo -e "${YELLOW}\n>> Recent Errors in System Logs: ${NC}"
journalctl -p 3 -xb | tail -n 10
echo -e "${GREEN}===== Monitoring Completed =====${NC}"
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍23✍4🔥3😐3
Вебинар
Стекирование коммутаторов Eltex 24хх/34хх серии
🗓 19.12.2024
🕒 14:00 по МСК
План вебинара:
- Особенности реализации стекирования
- Какие имеются ограничения
- Демонстрация работы
👉Регистрация
👤 Ведущий вебинара:Алексей Листаров — инженер с многолетним опытом работы в крупном операторе связи. Сертифицированный преподаватель Академии Eltex.
#eltex #eltexcm #webinar #вебинар #mes
@eltexcm
Реклама. ООО "ЭЛТЕКС КОММУНИКАЦИИ". ИНН 7714966730.
Стекирование коммутаторов Eltex 24хх/34хх серии
🗓 19.12.2024
🕒 14:00 по МСК
План вебинара:
- Особенности реализации стекирования
- Какие имеются ограничения
- Демонстрация работы
👉Регистрация
👤 Ведущий вебинара:Алексей Листаров — инженер с многолетним опытом работы в крупном операторе связи. Сертифицированный преподаватель Академии Eltex.
#eltex #eltexcm #webinar #вебинар #mes
@eltexcm
Реклама. ООО "ЭЛТЕКС КОММУНИКАЦИИ". ИНН 7714966730.
🔥3😐2👍1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4✍3🔥3
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍10🔥4✍3
Please open Telegram to view this post
VIEW IN TELEGRAM
😐5👍1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8✍6🔥5
Forwarded from Linux Skill - Освой Linux c нуля до DevOps
Как копировать файлы и папки с исключениями: продвинутые трюки с cp
Иногда нужно скопировать содержимое папки, но исключить определённые файлы или папки. Классический
#### Пример 1: Копирование всего кроме определённых файлов
Если нужно скопировать всё, кроме файлов с расширением
-
- **
-
#### Пример 2: Исключение целой папки
Чтобы пропустить определённую папку, например
#### Пример 3: Использование простого скрипта
Вот пример простого скрипта, который копирует файлы и исключает определённые по шаблону:
- Заменяешь
- Вместо
- Указываешь
Запусти этот скрипт, и он разберётся со всеми исключениями.
#### Пример 4: Копирование файлов больше определённого размера
Чтобы выбрать только файлы больше 100 МБ:
На завтра у меня для тебя кое-что интересное: будем разбираться, как настроить KVM и QEMU для виртуализации. Но пока расскажи, что бы ты хотел автоматизировать или оптимизировать в своей работе? Может, я смогу помочь тебе с советом.
____________________
Дополнительный материал:
🧠 - Не трать время на логи! Вот как найти все медленные запросы за 1 минуту
🧠 - Как ускорить MySQL? Простые советы, чтобы твой сервер летал, как на стероидах
🧠 - Поднимем отказоустойчивое хранилище в Proxmox VE с Ceph
#Linux_Commands @LinuxSkill
Иногда нужно скопировать содержимое папки, но исключить определённые файлы или папки. Классический
cp
это напрямую не поддерживает, но есть несколько хитростей, которые помогут справиться.#### Пример 1: Копирование всего кроме определённых файлов
Если нужно скопировать всё, кроме файлов с расширением
.log
, воспользуйся этой командой:find source_dir -type f ! -name '*.log' -exec cp --parents {} destination_dir/ \;
-
find source_dir
– ищет файлы в указанной папке.- **
! -name '*.log'
** – исключает файлы с расширением .log
.-
--parents
– сохраняет оригинальную структуру папок.#### Пример 2: Исключение целой папки
Чтобы пропустить определённую папку, например
exclude_dir
, используй:find source_dir -path 'source_dir/exclude_dir' -prune -o -type f -exec cp --parents {} destination_dir/ \;
#### Пример 3: Использование простого скрипта
Вот пример простого скрипта, который копирует файлы и исключает определённые по шаблону:
#!/bin/bash
for file in $(find /путь/к/источнику -type f); do
if [[ "$file" != *исключение* ]]; then
cp --parents "$file" /путь/к/назначению
fi
done
- Заменяешь
/путь/к/источнику
на папку, откуда копируешь.- Вместо
*исключение*
указываешь шаблон для исключения.- Указываешь
/путь/к/назначению
, куда копировать.Запусти этот скрипт, и он разберётся со всеми исключениями.
#### Пример 4: Копирование файлов больше определённого размера
Чтобы выбрать только файлы больше 100 МБ:
find source_dir -type f -size +100M -exec cp --parents {} destination_dir/ \;
На завтра у меня для тебя кое-что интересное: будем разбираться, как настроить KVM и QEMU для виртуализации. Но пока расскажи, что бы ты хотел автоматизировать или оптимизировать в своей работе? Может, я смогу помочь тебе с советом.
____________________
Дополнительный материал:
🧠 - Не трать время на логи! Вот как найти все медленные запросы за 1 минуту
🧠 - Как ускорить MySQL? Простые советы, чтобы твой сервер летал, как на стероидах
🧠 - Поднимем отказоустойчивое хранилище в Proxmox VE с Ceph
#Linux_Commands @LinuxSkill
Telegram
Linux Skill - Освой Linux c нуля до DevOps
Не трать время на логи! Вот как найти все медленные запросы за 1 минуту! 🚀
Знаешь, что самое скучное в работе с базами? Листать логи в поисках медленных запросов! 😩 Но есть секретное оружие — Mytop. Это как htop, только для MySQL/MariaDB. Позволяет в реальном…
Знаешь, что самое скучное в работе с базами? Листать логи в поисках медленных запросов! 😩 Но есть секретное оружие — Mytop. Это как htop, только для MySQL/MariaDB. Позволяет в реальном…
👍23
До сих пор не знаешь как управлять командной строкой?
📱 BashTex - обучающий канал по Linux и Bash с использованием самых лучших и эффективных практик. В канале ты найдешь множество полезной информации:
➖ Быстрое создание пакетов файлов для тестирования
➖Настройка безопасного SSH-соединения
➖LDAP: зачем нужен и чем помогает
➖Мониторинг перебора паролей и блокировка учетных записей
➖Неочевидно полезные опции команды ls
➖Углубленное использование find
BashTex поможет прокачать твои скиллы!
Подписывайся - @bashtex
➖ Быстрое создание пакетов файлов для тестирования
➖Настройка безопасного SSH-соединения
➖LDAP: зачем нужен и чем помогает
➖Мониторинг перебора паролей и блокировка учетных записей
➖Неочевидно полезные опции команды ls
➖Углубленное использование find
BashTex поможет прокачать твои скиллы!
Подписывайся - @bashtex
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6✍1
nmap
, но он не всегда есть под рукой. Зато обычно под рукой есть командная оболочка bash
. И ей как раз можно воспользоваться, чтобы написать собственный сканер портов. Не такой быстрый, конечно, но вполне пригодный для использования.portscan.sh
:#!/bin/bash
if [ "$1" == "" ]
then
echo
echo This script scans TCP opened ports on IP or hostname
echo Usage : portscan.sh \ \[start-port\] \[end-port\]
echo start-port equals to 1 by default
echo end-port equals 1024 by default
echo
exit
fi
START_PORT=$2;[ -z "$START_PORT" ] && START_PORT=1
END_PORT=$3;[ -z "$END_PORT" ] && END_PORT=1024
echo Scanning $1 \(ports $START_PORT to $END_PORT\)
PORT_PROTOCOL="tcp"
scan_port(){
PORT_NUMBER=$1
PORT_SCAN_RESULT=`2>&1 echo "" > /dev/$PORT_PROTOCOL/$TARGET_NAME_OR_IP/$PORT_NUMBER | grep connect`
[ "$PORT_SCAN_RESULT" == "" ] && echo $PORT_NUMBER\/$PORT_PROTOCOL' 'open' '`grep $PORT_NUMBER/$PROTOCOL /etc/services | head -n1 | awk '{print $1}'`
}
TARGET_NAME_OR_IP=$1
echo 'PORT STATE SERVICE'
for PORT_NUMBER in `seq $START_PORT $END_PORT`
do
scan_port $PORT_NUMBER
done
$ ./portscan.sh 192.168.0.9
Scanning 192.168.0.9 (ports 1 to 1024)
PORT STATE SERVICE
21/tcp open ftp
25/tcp open smtp
53/tcp open domain
80/tcp open http
22/tcp open ssh
110/tcp open pop3
111/tcp open sunrpc
139/tcp open netbios-ssn
445/tcp open microsoft-ds
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍8✍4😐1
🚀 Приглашаем на бесплатный урок "Повторители, мосты, хабы, медиаконвертеры и коммутаторы. Кто из них выжил и почему? И принципы их работы" 18 декабря в 20:00 (мск). https://otus.pw/wBud/
📌 Этот вебинар — часть курса "Специализация Network Engineer". Хотим предоставить вам возможность разобрать важные аспекты работы с сетями от эксперта ТАС вендора!
🤔 Что вас ждет:
- Разбор принципов работы таких устройств: повторители, мосты, хабы, медиаконвертеры и коммутаторы.
- Как эти устройства использовались в прошлом и какие из них актуальны для современных сетей.
- Сравнение разных типов устройств и их применения в реальных сетевых проектах.
👨🏫 Урок проведет Николай Колесов, сертифицированный CISCO специалист с богатым опытом работы (>18 лет) с сетевыми решениями. Работает с ведущими проектами и компаниями и обучает специалистов в области сетевых технологий.
⏰ Регистрация ограничена! https://otus.pw/wBud/?erid=LjN8K91RF
#реклама
О рекламодателе
📌 Этот вебинар — часть курса "Специализация Network Engineer". Хотим предоставить вам возможность разобрать важные аспекты работы с сетями от эксперта ТАС вендора!
🤔 Что вас ждет:
- Разбор принципов работы таких устройств: повторители, мосты, хабы, медиаконвертеры и коммутаторы.
- Как эти устройства использовались в прошлом и какие из них актуальны для современных сетей.
- Сравнение разных типов устройств и их применения в реальных сетевых проектах.
👨🏫 Урок проведет Николай Колесов, сертифицированный CISCO специалист с богатым опытом работы (>18 лет) с сетевыми решениями. Работает с ведущими проектами и компаниями и обучает специалистов в области сетевых технологий.
⏰ Регистрация ограничена! https://otus.pw/wBud/?erid=LjN8K91RF
#реклама
О рекламодателе
👍1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥5✍4😐1
This media is not supported in your browser
VIEW IN TELEGRAM
⠀
🚀 Всё для сисадминов и директоров по ИТ – в одном месте!
✅ Полезное:
Книга: Linux на примерах
Топовые репозитории GitHub
Выходим из VIM - 86 способов
Бэкап-инструменты с открытым исходным кодом: часть 1
Бэкап-инструменты с открытым исходным кодом: часть 2
Docker — большая подборка
Курс по Kubernetes
Самоучитель по CI/CD в K8s
✅ Импортозамещение:
Облака на практике и в теории
Российская виртуализация: всё важное в одном посте
Тестирование 6 отечественных СЗИ
Что ждёт ИТ в 2024-2025 гг: софт, железо, инфобез
✅ Инфобез:
Критическая информационная инфраструктура: важное
Защита персданных: полный перечень документов
Проверки по защите ПДн: Роскомнадзор, ФСТЭК, ФСБ
Защита от DDoS. Что делать, если атакуют прямо сейчас?
Почему защита от DDoS на уровне приложения может не сработать?
➡️ Присоединяйтесь к каналу для ДИТов
⠀
Книга: Linux на примерах
Топовые репозитории GitHub
Выходим из VIM - 86 способов
Бэкап-инструменты с открытым исходным кодом: часть 1
Бэкап-инструменты с открытым исходным кодом: часть 2
Docker — большая подборка
Курс по Kubernetes
Самоучитель по CI/CD в K8s
Облака на практике и в теории
Российская виртуализация: всё важное в одном посте
Тестирование 6 отечественных СЗИ
Что ждёт ИТ в 2024-2025 гг: софт, железо, инфобез
Критическая информационная инфраструктура: важное
Защита персданных: полный перечень документов
Проверки по защите ПДн: Роскомнадзор, ФСТЭК, ФСБ
Защита от DDoS. Что делать, если атакуют прямо сейчас?
Почему защита от DDoS на уровне приложения может не сработать?
⠀
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥4✍3
SSH/SFTP/RDP/VNC-клиент МС22 — решение для удалённого управления и конфигурирования сетевого оборудования, сделанное с заботой об админах.
Отечественная замена популярных зарубежных программ (PuTTY, Xshell, KiTTY, SecureCRT, SmarTTY, MobaXterm и др.) и встроенных терминалов ОС.
Есть возможность работы в нескольких вкладках, подсветка синтаксиса, быстрые клавиши и готовые шаблоны, различные инструменты автоматизации и приятные мелочи (типа соблюдение стандарта FHS установочным пакетом).
Посмотреть и бесплатно потестировать можно тут - https://МС22.рф
В процессе обеспечим оперативную поддержку и гарантированно прислушаемся к обратной связи!
#реклама
О рекламодателе
Отечественная замена популярных зарубежных программ (PuTTY, Xshell, KiTTY, SecureCRT, SmarTTY, MobaXterm и др.) и встроенных терминалов ОС.
Есть возможность работы в нескольких вкладках, подсветка синтаксиса, быстрые клавиши и готовые шаблоны, различные инструменты автоматизации и приятные мелочи (типа соблюдение стандарта FHS установочным пакетом).
Посмотреть и бесплатно потестировать можно тут - https://МС22.рф
В процессе обеспечим оперативную поддержку и гарантированно прислушаемся к обратной связи!
#реклама
О рекламодателе
😐12👍8
Данная методика проверена на операционных системах Debian 11, Ubuntu 22.04. Также работает на Rocky 8.7 (а значит, и на AlmaLinux и RHEL).
cd /opt/ && git clone https://github.com/MyTheValentinus/ssh-login-alert-telegram
cd /opt
mkdir ssh-login-alert-telegram && cd ssh-login-alert-telegram/
touch alert.sh credentials.config deploy.sh
#!/usr/bin/env bash
. /opt/ssh-login-alert-telegram/credentials.config
for i in "${USERID[@]}"
do
URL="https://api.telegram.org/bot${KEY}/sendMessage"
DATE="$(date "+%d %b %Y %H:%M")"
if [ -n "$SSH_CLIENT" ]; then
CLIENT_IP=$(echo $SSH_CLIENT | awk '{print $1}')
SRV_HOSTNAME=$(hostname -f)
SRV_IP=$(hostname -I | awk '{print $1}')
IPINFO="https://ipinfo.io/${CLIENT_IP}"
TEXT="Connection from *${CLIENT_IP}* as ${USER} on *${SRV_HOSTNAME}* (*${SRV_IP}*)
Date: ${DATE}
More informations: [${IPINFO}](${IPINFO})"
curl -s -d "chat_id=$i&text=${TEXT}&disable_web_page_preview=true&parse_mode=markdown" $URL > /dev/null
fi
done
#!/usr/bin/env bash
add_profiled(){
cat <<EOF > /etc/profile.d/telegram-alert.sh
bash $ALERTSCRIPT_PATH
EOF
}
add_zsh () {
cat <<EOF >> /etc/zsh/zshrc
bash $ALERTSCRIPT_PATH
EOF
}
ALERTSCRIPT_PATH="/opt/ssh-login-alert-telegram/alert.sh"
echo "Deploying alerts..."
add_profiled
echo "Check if ZSH is installed.."
HAS_ZSH=$(grep -o -m 1 "zsh" /etc/shells)
if [ ! -z $HAS_ZSH ]; then
echo "ZSH is installed, deploy alerts to zshrc"
add_zsh
else
echo "No zsh detected"
fi
echo "Success!"
USERID=(-97160441299)
KEY="573414141899:AAFxoC51krUaLEInlPGJwEEQICUp8QvVs99"
chmod 700 deploy.sh && chmod 700 alert.sh
bash deploy.sh
./alert.sh
В Telegram должно появиться сообщение о входе.
Выходит, всё сделано правильно, теперь мы будем всегда предупреждены, если кто-то зашёл на сервер.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍24🔥7✍4😐4
Iperf
- это инструмент для измерения и настройки производительности сети. Это кроссплатформенный инструмент, который может производить стандартизированные измерения производительности для любой сети. Iperf
обладает клиентскими и серверными функциями и может создавать потоки данных для измерения пропускной способности между двумя концами в одном или обоих направлениях. Он был разработан командой поддержки распределенных приложений (DAST) Национальной лаборатории прикладных сетевых исследований (NLANR). Актуальная версия на сегодня - третья.Iperf
мультиплатформенная программа, работающая в режиме клиент-сервер. Вы можете запустить сервер на Linux, а тестировать скорость, подключаясь к нему с Windows или Android. И наоборот. Достаточно при запуске выбрать режим, в котором он будет работать: сервер или клиент.Iperf
- это программное обеспечение с открытым исходным кодом, написанное на C, и оно работает на различных платформах, включая Linux, Unix, Windows (либо изначально, либо внутри Cygwin), OpenBSD, NetBSD, Android, Solaris и другие дистрибутивы Linux.Доступность исходного кода позволяет пользователю тщательно изучить методологию измерения.
Iperf3
- это написанная с нуля программа, целью которой является создание меньшей и более простой базы кода и библиотечной версии функциональности, которую можно использовать в других программах. Он также включает в себя ряд функций, найденных в других инструментах, таких как nuttcp и netperf, но отсутствовавших в исходном iperf
. К ним относятся, например, режим нулевого копирования и необязательный вывод в формате JSON. Обратите внимание, что iperf3
не имеет обратной совместимости с оригинальным iperf
.Iperf
- это широко используемый инструмент тестирования сети, который может создавать потоки данных TCP и UDP и измерять пропускную способность сети, доступной между клиентом и сервером. Он поддерживает настройку различных параметров, связанных с синхронизацией, буферами и протоколами (TCP, UDP, SCTP с IPv4 и IPv6). Для каждого теста он сообщает о пропускной способности, потерях и других параметрах.Please open Telegram to view this post
VIEW IN TELEGRAM
👍12✍4🔥4
Устали от ограничений и долгой настройки серверов? HSVDS поможет в работе!
Мы предлагаем быстрые VDS для разработчиков с безлимитным интернетом и удобной панелью управления.
А чтобы вы могли начать максимально быстро, мы подготовили предустановленный образ GitLab:
✅ Управление репозиториями кода для Git
✅ Система отслеживания задач
✅ Удобная Wiki для документации
✅ Мощный CI/CD пайплайн
✅ И многое другое для продуктивной работы всей команды!
HSVDS — это стабильность, готовые решения и свобода для ваших идей 💻
Мы предлагаем быстрые VDS для разработчиков с безлимитным интернетом и удобной панелью управления.
А чтобы вы могли начать максимально быстро, мы подготовили предустановленный образ GitLab:
✅ Управление репозиториями кода для Git
✅ Система отслеживания задач
✅ Удобная Wiki для документации
✅ Мощный CI/CD пайплайн
✅ И многое другое для продуктивной работы всей команды!
HSVDS — это стабильность, готовые решения и свобода для ваших идей 💻
👍2✍1🔥1