This media is not supported in your browser
VIEW IN TELEGRAM
SRE Roadmap
Дорожная карта, чтобы стать SRE (концепции > инструменты)
https://github.com/teivah/sre-roadmap
Дорожная карта, чтобы стать SRE (концепции > инструменты)
https://github.com/teivah/sre-roadmap
👍5❤1
Как увеличить размер каталога /tmp/
Иногда необходимо увеличить размер каталога, который в свою очередь находится в корневом каталоге системы.
Решить это можно перемонтированием каталога:
Теперь проверим, есть ли у нас каталог в фстабе:
Если нет, создаем, если существует то выполняем следующую команду:
Теперь готов каталог
Иногда необходимо увеличить размер каталога, который в свою очередь находится в корневом каталоге системы.
Решить это можно перемонтированием каталога:
# mount -t tmpfs tmpfs /tmp -o size=1024M,mode=1777,remount
Теперь проверим, есть ли у нас каталог в фстабе:
# cat/etc/fstab
Если нет, создаем, если существует то выполняем следующую команду:
# none /tmp tmpfs size=1024M,mode=1777,rw 0 0
Теперь готов каталог
/tmp/
с размером, указанным в операторе “size” размером 1024 mb.👍5❤1
Утилиты linux
rsync
Примеры:
ss
Примеры:
ps
mpstat
Показывает статистику загрузки процессора. Команды:
free
Показывает потребление ОЗУ на текущий момент:
top
Что-то наподобие диспетчера задач, только для линукс, показывает попроцессное потребление озу
dpkg
Пакетный менеджер для debian систем (не путать с системой управления пакетами — apt/apt-get)
netstat
rsync
-v
— выводит подробную информацию о процессе копирования;[-a]
— сохраняет все атрибуты оригинальных файлов;-u
— не перезаписывать более новые файлы;-l
— копирует символьные ссылки;-L
— копирует содержимое ссылок;-p
— сохраняет права для файлов;-t
— сохраняет время модификации;-e
— использовать другой транспорт, например, ssh;[-z]
— cжимает файлы перед передачей;—recursive
— перебирать директории рекурсивно;—exclude
— Исключить файлы по шаблону;Примеры:
rsync -avz skillproject/data/
. — из подкаталога в текущий каталогrsync -avz skillproject/data/ aaa/
— из подпапки в подпапку aaa/rsync -avz skillproject/data/ [email protected]:/home/d/digita6d/code-skills.ru/public_html/sources/skillproject/data/
— передача на удаленный серверrsync -avze ssh skillproject/data/ [email protected]:/home/d/digita6d/code-skills.ru/public_html/sources/skillproject/data/
— то же самое м явным указанием sshss
-l или —listening
— посмотреть только прослушиваемые порты;-p или —program
— показать имя программы и ее PID;-t или —tcp
— показать tcp порты;-u
или —udp
показать udp порты;-n
или —numeric
показывать ip адреса в числовом виде.Примеры:
ss -tlpn
— проверить все прослушивающие tcp-портыss -tulpn | grep :80
— показать все процессы, работающие на 80-м портуps
ps -e
— показать все процессыps -ef
— показать подробную информацию о каждом процессеps -ef | grep phantom
— найти все процессы с именем phantom
mpstat
Показывает статистику загрузки процессора. Команды:
mpstat
— показывает общую информациюmpstat -P ALL
— по каждому ядруfree
Показывает потребление ОЗУ на текущий момент:
free -h
— показывает информацию в гигабайтах (более человеко читаемо, чем в байтах)top
Что-то наподобие диспетчера задач, только для линукс, показывает попроцессное потребление озу
dpkg
Пакетный менеджер для debian систем (не путать с системой управления пакетами — apt/apt-get)
dpkg -s <packname>
— проверить, установлен ли пакетdpkg -l
— список всех пакетовdpkg -l | grep apache2
— проверить, установлен ли конкретный пакетdpkg -i <package.deb>
— установить пакетnetstat
netstat -pnltu
— посмотреть список используемых портов👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Как работают протоколы в модели TCP IP?
👍3❤1
Как проанализировать производительность DNS сервера с помощью WireShark?
На прошлой неделе я находился во Владивостоке и сервера DNS, который мне в отеле выдавались точкой доступа Wi-Fi, работали из рук вон плохо. Часть необходимых мне ресурсов были не доступны, другая часть открывалась медленно. Впервые ощутил насколько важный элемент сервер DNS и как с медленно и некорректно работающим сервером плохо жить и работать. Далее
https://telegra.ph/Kak-proanalizirovat-proizvoditelnost-DNS-servera-s-pomoshchyu-WireShark-01-23
На прошлой неделе я находился во Владивостоке и сервера DNS, который мне в отеле выдавались точкой доступа Wi-Fi, работали из рук вон плохо. Часть необходимых мне ресурсов были не доступны, другая часть открывалась медленно. Впервые ощутил насколько важный элемент сервер DNS и как с медленно и некорректно работающим сервером плохо жить и работать. Далее
https://telegra.ph/Kak-proanalizirovat-proizvoditelnost-DNS-servera-s-pomoshchyu-WireShark-01-23
🔥3
Скриптик переустановки пароля пользователя MikroTik
Скрипт интересен строкой преобразования кода символа из переменной
# Скрипт смены пароля пользователя
# только для исполнения в терминале ROS
# by Sertik 09/06/2020
{
:global EnterString do={
:local cont 0; :local string ""
:while ($cont!=13) do={
:local key ([:terminal inkey])
:if ($key!=13) do={
:local char [[:parse "(\"\\$[:pick "0123456789ABCDEF" (($key >> 4) & 0xF)]$[:pick "0123456789ABCDEF" ($key & 0xF)]\")"]]
:set string ("$string"."$char")}
:set cont $key
}
:return $string}
;
:put "Please, enter Username:"
:local RegUser [$EnterString];
:put "";
:if ([:len [/user find disabled=no name=$RegUser]]!=0) do={:put "Ok, a user with this name was found"; :put "";
:put "Please, enter new password for this user:"
:local newPass [$EnterString];
[/user remove $RegUser];
[/user add name=$RegUser password=$newPass group=full];
:put "";
:put "The user has been re-created, the password has been changed";
:put ("New user`s password: "."$newPass");
:put "Don't forget to set up access restrictions based on ip addresses";
} else={:put ("User "."$RegUser "."not found"); :put "";
}
}
Скрипт интересен строкой преобразования кода символа из переменной
$key
, сграбленного с клавиатуры терминала, в сам символ.:local char [[:parse "(\"\\$[:pick "0123456789ABCDEF" (($key >> 4) & 0xF)]$[:pick "0123456789ABCDEF" ($key & 0xF)]\")"]]
❤1
50 базовых команд Windows с примерами
Изучите основные команды windows, которые помогут вам в устранении неполадок, настройке и сборе информации о системе. 50 базовых команд Windows с примерами.
https://bookflow.ru/50-bazovyh-komand-windows-s-primerami/
Изучите основные команды windows, которые помогут вам в устранении неполадок, настройке и сборе информации о системе. 50 базовых команд Windows с примерами.
https://bookflow.ru/50-bazovyh-komand-windows-s-primerami/
❤2
Как активировать debug режим в bash?
1. Использование опции
Запустите скрипт с опцией
Или добавьте
2. Использование опции
Опция
Также можно добавить
3. Использование режима отладки
Для максимально подробной отладки можно использовать обе опции сразу —
4. Использование
Команда
Это полезно для сложных сценариев, где нужно понять, какая именно команда вызывает ошибку.
5. Отладка с помощью
Переменная
1. Использование опции
-x
Запустите скрипт с опцией
-x
, чтобы bash выводил каждую команду перед её выполнением.
bash -x script.sh
Или добавьте
set -x
в самом скрипте, чтобы начать отладку с этого места:
#!/bin/bash
set -x
# команды скрипта
set +x # остановка отладки
2. Использование опции
-v
Опция
-v
заставляет bash выводить команды, которые он читает, но ещё не исполнил. Это полезно для отладки синтаксиса.
bash -v script.sh
Также можно добавить
set -v
в скрипте для включения вывода на определённом участке:
#!/bin/bash
set -v
# команды скрипта
set +v # остановка вывода
3. Использование режима отладки
-xv
Для максимально подробной отладки можно использовать обе опции сразу —
-x
и -v
:
bash -xv script.sh
4. Использование
trap
для пошаговой отладкиКоманда
trap
позволяет запускать отладочные действия на определённых сигналах или ошибках. Например, чтобы пошагово отслеживать выполнение команд, можно использовать:
trap 'echo "Команда: $BASH_COMMAND"' DEBUG
Это полезно для сложных сценариев, где нужно понять, какая именно команда вызывает ошибку.
5. Отладка с помощью
PS4
Переменная
PS4
позволяет настроить префикс вывода отладки. Это полезно, если вы хотите видеть номер строки и другую информацию:
export PS4='+ $(basename $0):${LINENO}: '
bash -x script.sh
❤4
Совет по Linux 🔥
Если вы хотите определить, сколько времени займет выполнение определенной команды или скрипта, используйте команду time.
Вот синтаксис:
Пример:
Он также показывает использование системных ресурсов процесса, что делает его полезным инструментом для оценки эффективности конкретной команды.
Если вы хотите определить, сколько времени займет выполнение определенной команды или скрипта, используйте команду time.
Вот синтаксис:
$ time <команда>.
Пример:
$ time find / -perm -u=s -type f &>/dev/null
Он также показывает использование системных ресурсов процесса, что делает его полезным инструментом для оценки эффективности конкретной команды.
❤4
Производительность RDP в Windows Server и способы ее повышения
Эта статья актуальна для Windows Server 2019 в качестве сервера и Windows 10 в качестве клиента RDP. В статье мы рассмотрим шаги, которые следует предпринять для достижения максимальной производительности терминальных сессий RDP в Windows Server.
https://telegra.ph/Proizvoditelnost-RDP-v-Windows-Server-i-sposoby-ee-povysheniya-09-23
Эта статья актуальна для Windows Server 2019 в качестве сервера и Windows 10 в качестве клиента RDP. В статье мы рассмотрим шаги, которые следует предпринять для достижения максимальной производительности терминальных сессий RDP в Windows Server.
https://telegra.ph/Proizvoditelnost-RDP-v-Windows-Server-i-sposoby-ee-povysheniya-09-23
❤2👍2
Шпаргалка по ip
Утилита
🟢 Основные команды
1. Посмотреть информацию об интерфейсах:
Отображает информацию обо всех интерфейсах, включая IP-адреса.
2. Посмотреть информацию только об одном интерфейсе:
Показывает информацию только для интерфейса
3. Активировать интерфейс:
Включает интерфейс
4. Отключить интерфейс:
Отключает интерфейс
🟢 Конфигурация IP-адресов
5. Назначить IP-адрес интерфейсу:
Назначает IP-адрес
6. Удалить IP-адрес с интерфейса:
Удаляет IP-адрес
🟢 Маршруты и таблицы маршрутизации
7. Просмотр маршрутов:
Показывает текущие маршруты в системе.
8. Добавить маршрут:
Добавляет маршрут к сети
9. Удалить маршрут:
Удаляет маршрут к сети
🟢 Прочие функции
10. Посмотреть статистику интерфейсов:
Показывает статистику по интерфейсам (переданные и полученные пакеты, ошибки и т.д.).
11. Назначить MAC-адрес интерфейсу:
Устанавливает MAC-адрес для интерфейса
12. Показать состояние интерфейсов:
Отображает состояние всех интерфейсов, включая их статус (up/down).
13. Показать статистику маршрутизации:
Показывает статистику по маршрутам, включая количество использованных пакетов.
-
- Использование
Дополнительную информацию можно получить с помощью команды:
Утилита
ip
— это мощный инструмент для управления сетевыми интерфейсами и маршрутизацией в Linux, который заменяет старую команду ifconfig
. 1. Посмотреть информацию об интерфейсах:
ip addr
Отображает информацию обо всех интерфейсах, включая IP-адреса.
2. Посмотреть информацию только об одном интерфейсе:
ip addr show eth0
Показывает информацию только для интерфейса
eth0
.3. Активировать интерфейс:
ip link set eth0 up
Включает интерфейс
eth0
.4. Отключить интерфейс:
ip link set eth0 down
Отключает интерфейс
eth0
.5. Назначить IP-адрес интерфейсу:
ip addr add 192.168.1.10/24 dev eth0
Назначает IP-адрес
192.168.1.10
с маской 255.255.255.0
(или /24`) интерфейсу `eth0
.6. Удалить IP-адрес с интерфейса:
ip addr del 192.168.1.10/24 dev eth0
Удаляет IP-адрес
192.168.1.10
с интерфейса eth0
.7. Просмотр маршрутов:
ip route
Показывает текущие маршруты в системе.
8. Добавить маршрут:
ip route add 192.168.2.0/24 via 192.168.1.1
Добавляет маршрут к сети
192.168.2.0/24
через шлюз 192.168.1.1
.9. Удалить маршрут:
ip route del 192.168.2.0/24
Удаляет маршрут к сети
192.168.2.0/24
.10. Посмотреть статистику интерфейсов:
ip -s link
Показывает статистику по интерфейсам (переданные и полученные пакеты, ошибки и т.д.).
11. Назначить MAC-адрес интерфейсу:
ip link set dev eth0 address 00:11:22:33:44:55
Устанавливает MAC-адрес для интерфейса
eth0
.12. Показать состояние интерфейсов:
ip link show
Отображает состояние всех интерфейсов, включая их статус (up/down).
13. Показать статистику маршрутизации:
ip -s route
Показывает статистику по маршрутам, включая количество использованных пакетов.
-
ip
заменяет старые команды, такие как ifconfig
, route
, и netstat
, предоставляя более гибкий и мощный интерфейс для управления сетевыми настройками.- Использование
ip
вместо ifconfig
рекомендуется в большинстве современных Linux-дистрибутивов, так как это более современная и функциональная утилита.Дополнительную информацию можно получить с помощью команды:
man ip
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥3❤1
Программа проверки истечения срока действия SSL-сертификатов
ssl-cert-check - это скрипт оболочки Bourne, который можно использовать для оповещения об истечении срока действия SSL-сертификатов. Сценарий был разработан для запуска из cron и может рассылать уведомления по электронной почте или регистрировать предупреждения через nagios.
https://github.com/Matty9191/ssl-cert-check
ssl-cert-check - это скрипт оболочки Bourne, который можно использовать для оповещения об истечении срока действия SSL-сертификатов. Сценарий был разработан для запуска из cron и может рассылать уведомления по электронной почте или регистрировать предупреждения через nagios.
https://github.com/Matty9191/ssl-cert-check
❤1
Примеры типовых операций в bash-скриптах
1.Ввод-вывод, перенаправление
Не забываем, что для того, чтоб скрипт можно было запустить, надо изменить права доступа к нему, добавив возможность исполнения файла, например командой
chmod a+x script.sh
2.Арифметические действия, циклы по кол-ву раз
3.Разного рода проверки
4.Работа с FTP в скрипте.
5.Работа с telnet в скрипте.
Примечание: в этом случае root логинится без пароля, если нужен пароль, то надо добавить после echo "root" еще одно эхо с паролем.
Прочее полезное.
1.Ввод-вывод, перенаправление
#!/bin/bash
# Любой shell-скрипт всегда начинается со строчки #!/bin/bash (или #!/bin/sh)
# Комментарии всегда начинаются со знака #
# Для того, чтоб вывести на экран сообщение, используем команду ECHO
echo "hello, world"
# а это пример форматированного вывода... почти как в Си
printf "форматированный вывод десять=%d строка=%s float=%f шестнадцатиричное_число=0x%X\n" 10 "строка" 11.56 234
# пример чтения ввода с клавиатуры
read A
echo $A
printf "
вы только что ввели слово: %s\n" "$A"
#перенаправление, конвейеры, получение результата вывода другой программы
# пример генерации пароля из 10 букв
PASSWORD1=`cat /dev/urandom | tr -d -c 'a-zA-Z0-9' | fold -w 10 | head -1`
echo Password=$PASSWORD1
#кавычки вида `` дают результат вывода на экран того, что внутри них (т.е. выполняется
#программа или скрипт, написанные внутри таких кавычек и результат, выводимый ими на
#стандартный вывод является результатом операции "обратные кавычки"
#в данном случае результатом является вывод конвейера из нескольких программ.
#операция | обозначает конвейер. Т.е. в нашем примере:
#cat /dev/urandom выводит на стд.вывод содержимое файла /dev/urandom (спец.файл для генерации псевдослуч.чисел)
#tr осуществляет трансляцию,т.е. заменяет одни байты другими (это нужно, чтоб избежать появления в пароле непе-
#чатаемых символов)
#fold разбивает то, что ей пришло на стд.ввод на строки длиной 10 символов и выводит это на стд.вывод
#head -1 выводит первую строчку того, что ей пришло на стандартный ввод.
# или так:
PASSWORD2=`cat /dev/urandom | tr -dc _A-Z-a-z-0-9 | head -c10`
echo Password=$PASSWORD2
Не забываем, что для того, чтоб скрипт можно было запустить, надо изменить права доступа к нему, добавив возможность исполнения файла, например командой
chmod a+x script.sh
2.Арифметические действия, циклы по кол-ву раз
#!/bin/bash
A="10"
B="5"
C=`expr $A + $B`
printf "A=10 B=5 C=expr \$A + \$B C=%d \n" "$C"
# пример цикла по i
I=0
while [ $I -lt 15 ]
do
printf "0x%02x " "$I"
I=`expr $I + 1`
done
echo
3.Разного рода проверки
#!/bin/bash
# пример проверки существования файла
# создаем файл test1
touch test1
# проверяем существование файла test1
if [ -f test1 ] ; then
echo "файл test1 существует"
fi
# проверяем несуществование файла test2
if ! [ -f test2 ] ; then
echo "файл test2 не существует"
fi
# краткая справка по другим опциям команды [ ]
# -d filename директория существует
# -f filename файл существует
# -L filename символьная ссылка существует
# -r, -w, -x файл доступен для чтения, записи или выполнения
# -s filename файл существует и имеет ненулевую длину
# f1 -nt f2 f1 новее чем f2
# f1 -ot f2 f1 старше чем f2
4.Работа с FTP в скрипте.
#!/bin/bash
ADDRESS=192.168.1.150
USER=root
PASSWORD=root
ftp -n -p ADDRESS <<EoF
user USER PASSWORD
cd /usr/bin
put my_cool_program
quit
EoF
exit 0
5.Работа с telnet в скрипте.
#!/bin/bash
(
sleep 1
echo "root"
echo "cd /tmp"
echo "ls"
sleep 1
echo "quit"
) | telnet 192.168.1.150
Примечание: в этом случае root логинится без пароля, если нужен пароль, то надо добавить после echo "root" еще одно эхо с паролем.
Прочее полезное.
#!/bin/bash
# пример цикла по множеству значений
for A in раз два три четыре пять
do
echo "$A,"
done
echo "вышел заяц погулять"
echo
❤2
🚀 Открой для себя идеальный путь к лидерству с карьерным тестом от ОЭЗ «Алабуга»! 🌟
Мечтаете о карьере в крупной компании, где ваш потенциал раскроется на полную? Наш тест поможет вам определить вашу уникальную лидерскую роль. Может быть, именно вы станете тем лидером, который выведет команду на новый уровень?
После прохождения теста вы можете заполнить заявку и получить приглашение на эксклюзивную лидерскую программу. Участие в программе открывает реальные перспективы трудоустройства в ОЭЗ «Алабуга», предоставляя шанс начать путь к профессиональному признанию.
Сделайте первый шаг к своему будущему сегодня! Пройдите тест, подайте заявку и начните строить свою карьеру вместе с нами. 🎯
Мечтаете о карьере в крупной компании, где ваш потенциал раскроется на полную? Наш тест поможет вам определить вашу уникальную лидерскую роль. Может быть, именно вы станете тем лидером, который выведет команду на новый уровень?
После прохождения теста вы можете заполнить заявку и получить приглашение на эксклюзивную лидерскую программу. Участие в программе открывает реальные перспективы трудоустройства в ОЭЗ «Алабуга», предоставляя шанс начать путь к профессиональному признанию.
Сделайте первый шаг к своему будущему сегодня! Пройдите тест, подайте заявку и начните строить свою карьеру вместе с нами. 🎯
👍2🔥2❤1⚡1
Выводим список установленных пакетов в Linux по дате
Порой необходимо узнать когда тот или иной пакет был установлен в операционной системе (например, в целях аудита). В данной статье рассмотрим как вывести список установленных пакетов в Linux, отсортированный по дате установки - давайте разберемся!
https://telegra.ph/Vyvodim-spisok-ustanovlennyh-paketov-v-Linux-po-date-09-10
Порой необходимо узнать когда тот или иной пакет был установлен в операционной системе (например, в целях аудита). В данной статье рассмотрим как вывести список установленных пакетов в Linux, отсортированный по дате установки - давайте разберемся!
https://telegra.ph/Vyvodim-spisok-ustanovlennyh-paketov-v-Linux-po-date-09-10
👍2❤1
📌Совет по Linux
Если вы хотите определить, сколько времени займет выполнение определенной команды или скрипта, используйте команду time.
Вот синтаксис:
Пример:
Он также показывает использование системных ресурсов процесса, что делает его полезным инструментом для оценки эффективности конкретной команды.
Если вы хотите определить, сколько времени займет выполнение определенной команды или скрипта, используйте команду time.
Вот синтаксис:
$ time <команда>.
Пример:
$ time find / -perm -u=s -type f &>/dev/null
Он также показывает использование системных ресурсов процесса, что делает его полезным инструментом для оценки эффективности конкретной команды.
❤1
Как активировать debug режим в bash?
1. Использование опции
Запустите скрипт с опцией
Или добавьте
2. Использование опции
Опция
Также можно добавить
3. Использование режима отладки
Для максимально подробной отладки можно использовать обе опции сразу —
4. Использование
Команда
Это полезно для сложных сценариев, где нужно понять, какая именно команда вызывает ошибку.
5. Отладка с помощью
Переменная
1. Использование опции
-x
Запустите скрипт с опцией
-x
, чтобы bash выводил каждую команду перед её выполнением.
bash -x script.sh
Или добавьте
set -x
в самом скрипте, чтобы начать отладку с этого места:
#!/bin/bash
set -x
# команды скрипта
set +x # остановка отладки
2. Использование опции
-v
Опция
-v
заставляет bash выводить команды, которые он читает, но ещё не исполнил. Это полезно для отладки синтаксиса.
bash -v script.sh
Также можно добавить
set -v
в скрипте для включения вывода на определённом участке:
#!/bin/bash
set -v
# команды скрипта
set +v # остановка вывода
3. Использование режима отладки
-xv
Для максимально подробной отладки можно использовать обе опции сразу —
-x
и -v
:
bash -xv script.sh
4. Использование
trap
для пошаговой отладкиКоманда
trap
позволяет запускать отладочные действия на определённых сигналах или ошибках. Например, чтобы пошагово отслеживать выполнение команд, можно использовать:
trap 'echo "Команда: $BASH_COMMAND"' DEBUG
Это полезно для сложных сценариев, где нужно понять, какая именно команда вызывает ошибку.
5. Отладка с помощью
PS4
Переменная
PS4
позволяет настроить префикс вывода отладки. Это полезно, если вы хотите видеть номер строки и другую информацию:
export PS4='+ $(basename $0):${LINENO}: '
bash -x script.sh
👍4❤1