Системный Администратор
2.08K subscribers
165 photos
446 videos
8 files
168 links
Канал для системных администраторов. Полезный контент по Windows, Linux и т.д.

По всем вопросам @evgenycarter
Download Telegram
🎯 Зарезервированные переменные в Bash
Полезно знать каждому, кто пишет скрипты на Bash или часто работает в терминале 🧠


$DIRSTACK — вершина стека каталогов (dirs).
$EDITOR — редактор по умолчанию.
$EUID — эффективный UID (например, после su).
$UID — реальный UID пользователя.
$FUNCNAME — имя текущей функции в скрипте.
$GROUPS — массив групп текущего пользователя.
$HOME — домашний каталог.
$HOSTNAME — имя хоста.
$HOSTTYPE — архитектура машины.
$LC_CTYPE — кодировка символов.
$OLDPWD — предыдущий рабочий каталог.
$OSTYPE — тип операционной системы.
$PATH — список директорий для поиска команд.
$PPID — PID родительского процесса.
$SECONDS — время работы скрипта (в секундах).

💡 Аргументы и процессы:
$# — количество переданных параметров.
$* — все параметры в одну строку.
$@ — все параметры построчно.
$! — PID последнего фонового процесса.
$$ — PID текущего скрипта.
$? — код завершения последней команды.


🔧 Эти переменные помогают контролировать среду выполнения, отслеживать процессы и писать гибкие скрипты.

👉 @sys_adminos
1👍1
Знакомство с SSH

Как гласит википедия, «SSH — сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений (например, для передачи файлов). Схож по функциональности с протоколами Telnet и rlogin, но, в отличие от них, шифрует весь трафик, включая и передаваемые пароли. SSH допускает выбор различных алгоритмов шифрования. SSH-клиенты и SSH-серверы доступны для большинства сетевых операционных систем». Когда в первый раз знакомишься с ним, то, скорее всего, он представляется как средство для доступа к удалённому серверу. В первую очередь, так оно и есть. Однако его возможности намного шире.

Что может протокол SSH:

заменить telnet — обеспечить доступ к терминалу удалённой машины по шифрованному каналу;

заменить ftp — обеспечить обмен файлами с удалённой машиной по шифрованному каналу и без необходимости обходить ограничения, которые присущи ftp при работе через NAT и прокси;

обеспечить проброс портов — обеспечить доступ к портам с локальной машины или её сети на порты, которые доступы удалённой машине;

socks-прокси — обеспечить локальное устройство или целую сеть socks-прокси через удалённую машину;

выполнение команд на удалённой машине из скриптов локальной машины.

https://habr.com/ru/articles/802179/

👉 @sys_adminos
1👍1
Владимирский админ,ветер в серверной.
Пингуют из Твери, пинг немеренный.

👉 @sys_adminos
😁6
10 полезных функций Far Manager

1. Режимы отображения
Меняйте ширину и количество столбцов на активной панели интерфейса, в которых отображаются файлы и папки.

Ctrl + 1 — установить краткий режим просмотра (три узких столбца).
Ctrl + 2 — установить стандартный режим просмотра (два средних столбца).
Ctrl + 3 — установить полный режим просмотра (один широкий и три узких столбца со служебной информацией).
Ctrl + 4 — установить широкий режим просмотра (один широкий и один узкий столбец со служебной информацией).
Ctrl + 5 — установить детальный режим просмотра (один максимально широкий и ещё несколько дополнительных стоблцов со служебной информацией — занимают всё окно программы).

2. Сортировка элементов
Сортируйте файлы и папки на активной панели интерфейса.

Ctrl + F3 — сортировать по имени элемента.
Ctrl + F4 — сортировать по типу расширения.
Ctrl + F5 — сортировать по дате изменения.
Ctrl + F6 — сортировать по размеру.
Ctrl + F8 — сортировать по дате создания.
Ctrl + F12 — вывести меню элементов сортировки.

3. Просмотр размера файлов и папок
Просматривайте размер выделенного файла или папки с помощью клавиши F3. Значение отображается в столбце Size или в нижней части активной панели — в зависимости от выбранного вида.
Чтобы выделить один элемент, нажмите Shift и стрелку вниз или вверх на клавиатуре. Для массового выделения используйте Shift со стрелками вправо и влево.

4. Одновременная работа с элементами, которые находятся в разных папках
Добавляйте файлы и папки из разных каталогов на «Временную панель», если вам нужно работать со всеми ними одновременно. Это позволит вам выполнять с элементами групповые операции так, будто они находятся в одном каталоге. При этом их реальное местоположение не изменится.
Чтобы открыть «Временную панель», нажмите F11 и выберите Temporary Panel. Для добавления файлов и папок просто перетащите их на неё с помощью курсора мыши. Вы также можете найти нужные файлы через комбинацию Alt + F7 и добавить результаты поиска на «Временную панель», кликнув Panel в поисковом окне.

5. Фильтрация файлов по типу
Фильтруйте список файлов по расширению, чтобы временно скрывать с панели лишние элементы. Чтобы включить фильтр, воспользуйтесь комбинацией CTRL + I, в появившемся списке выделите нужное расширение и нажмите пробел. Возле выбранного типа файлов появится плюс. Когда нажмёте Enter, файлы с другими расширениями исчезнут с текущей панели. Чтобы отменить фильтрацию, снова нажмите CTRL + I и уберите плюс с помощью пробела.

6. Просмотр списка процессов
Просматривайте список активных процессов прямо в окне Far Manager. Чтобы просмотреть его, откройте окно выбора диска (ALT + F1/F2) и нажмите 0. В этом списке можно отсортировать процессы по размеру, нажав CTRL + F6. Чтобы удалить процесс, выделите его и нажмите F8. Чтобы просмотреть детальную информацию о процессе, используйте клавишу F3.

7. Навигация по папкам
Вы можете быстро открывать корневую папку локального диска с помощью комбинации CTRL + \. Клавиши ALT + F12 — отображают папки, которые вы открывали ранее

8. Сравнение идентичности папок
Если захотите проверить две папки на предмет их идентичности, откройте одну из них на левой панели, а вторую на правой. Затем нажмите F11 и выберите Advanced Compare. В открывшемся окне укажите параметры сравнения и нажмите ОК. Программа отобразит размеры обеих папок и подсветит их файлы, которые не совпадают.

9. Запись макросов
Используйте макросы, чтобы автоматизировать рутинные операции с программой.
Чтобы создать макрос, нажмите Shift + Ctrl + «.» (точка) и совершите несколько действий в Far. Затем снова воспользуйтесь этой комбинацией и в открывшемся окне выберите удобную клавишу. Теперь по её нажатию программа будет выполнять эти действия автоматически.
К примеру, во время создания макроса можно кликнуть правой кнопкой по файлу и выбрать в контекстном меню «Свойства», а после назначить эти действия на клавишу J. После этого вы сможете быстро вызывать свойства файлов с помощью J.

👉 @sys_adminos
👍2
Media is too big
VIEW IN TELEGRAM
5 советов начинающему сисадмину

Круг задач и функций системного администратора определяется многими факторами: сфера деятельности и масштаб компании, особенности ее IT-инфраструктуры. Но ключевое значение имеют навыки, знания и опыт самого сисадмина.
Только начинаешь свой путь? Готовы помочь!

Андрей Лютый, Team Lead Sysadmins Boosta, c 20 летним опытом работы, рассказал, почему нужно определиться: Windows or Linux, какие существуют инструменты автоматизации и что такое бэкап бэкапов?

Развивайтесь, не избегайте интересных и сложных задач — и вы сами не заметите, как станете настоящим востребованным и высокооплачиваемым профессионалом!

источник

👉 @sys_adminos
👍3
Шпаргалка по командам Curl

👉 @sys_adminos
👍1
Lexicon - утилита для управление записями DNS на различных DNS-провайдерах.

Используя её, вы можете организовать централизованное управление записями на неймсерверах провайдеров, используя их API, без необходимости ручных правок в панелях.

Поддерживает большой список популярных сервисов Cloudflare, Cloudns, Yandexcloud и т.д.

https://github.com/AnalogJ/lexicon

👉 @sys_adminos
👍1
Stress – это инструмент командной строки Linux, который позволяет нагружать процессор, память, систему ввода-вывода и диск

Установим stress на CentOS, RHEL, Fedora
sudo dnf install stress

Установим stress на Ubuntu и Debian
sudo apt install stress

Синтаксис stress
stress [OPTION [ARG]]

Увеличить нагрузку на процессор
Опция -c или –cpu использует заданное количество воркеров на функции sqrt(), чтобы увеличить нагрузку на процессор и заставить его работать интенсивнее.
stress -c N или stress --cpu N

Следующая команда будет непрерывно загружать 4 ядра процессора
stress --cpu 4

Задаем тайм-аут для стресса
Чтобы задать работу на определенное время, вы можете использовать опцию -t или –timeout.
Следующие команды будут нагружать четыре ядра процессора только в течение 10 с.
stress -c 4 -t 10 или stress --cpu 4 --timeout 10

Увеличение нагрузки на память
Опция -v или --vm позволяет вам нагрузить виртуальную память.
[simterm] $ stress -v N

Увеличение нагрузки ввода-вывода на диск
Вы можете увеличить нагрузку ввода-вывода с помощью опции -i или –io.
stress -i N или stress --io N

Создаем нагрузка на систему с помощью двух процессов, связанных с вводом-выводом.
# stress --io 100

Мы проверим загрузку IO диска с помощью команды iostat.
У меня на сервере доступны диски /dev/vda и /dev/vdb, вы можете проверить активный диск с помощью lsblk или fdisk или любой другой команды.
Если вы выполните эту команду без каких-либо аргументов, то она покажет дисковые IO для всех доступных дисков.
iostat -d /dev/vda -d /dev/vdb 1

Увеличение нагрузки на диск
Опция -d или –hdd используется для создания нагрузки на диск.
stress -d N или stress --hdd N

Для увеличения нагрузки на диск мы используем следующую команду
stress --hdd 100

Посмотрим пропускную способность диска с помощью команды vmstat
vmstat 1 100

Увеличение нагрузки на несколько системных ресурсов (ЦП, память, ввод/вывод)
Команде stress можно задать несколько нагрузок.
В следующем примере используется 4 ядра ЦП, 2 виртуальных памяти и 1 процесс ввода-вывода для нагрузки на систему в течение 20 секунд.
stress --cpu 4 --vm 2 --io 1 -t 20

👉 @sys_adminos
👍1
Таблицы звуковых сигналов BIOS 🔊

👉 @sys_adminos
👍2
Системные утилиты для безопасного удаления файлов с HDD

Windows
В данном примере мы форматируем том D в файловую систему NTFS, при этом даем операционной системе команду предварительно перезаписать весь раздел нулями 10 раз, используя параметр /p («passes»), задающий количество проходов.
format d: /fs:NTFS /p:10

Linux
Быстро и надежно удаляет один или несколько файлов.
shred -u -n 40 /private/file.txt

В этом примере мы перезаписали файл file.txt случайными данными 40 раз подряд (параметр -n, по умолчанию же shred совершает 25 проходов) и затем удалили его (параметр -u, поскольку по умолчанию shred не удаляет файлы, а сразу перезаписывает).
shred -u -n 40 /private/file.txt /private/file2.txt

Если нам внужно дополнительно скрыть и сам факт «зачистки», то можете воспользоваться параметром -z:
shred -u -z -n 40 /private/file.txt

Единственный недостаток shred — данная утилита не умеет работать с директориями. Поэтому если вам требуется уничтожить содержимое целого каталога с вложенными папками, стоит воспользоваться wipe. В данном примере мы отдали команду рекурсивно (-r) удалить все, что находится в папке private, а также отключили запрос подтверждения удаления папок и файлов (-f), которое wipe выводит по умолчанию. Среди интересных дополнительных опций, поддерживаемых утилитой, стоит выделить принудительное выполнение chmod для каталогов и файлов, защищенных от перезаписи (-c), работу в тихом режиме (-s) и возможность заставить wipe следовать символическим ссылкам (-D, конфликтует с -r).
wipe -rf /private/*

Mac OS
В версиях операционной системы с 10.4 по 10.10 вы могли инициировать перезапись файлов, переместив их в корзину, а затем выбрав в Finder опцию «Очистить корзину необратимо», однако впоследствии Apple от нее отказалась. Вплоть до версии 10.11 для безопасного удаления данных можно было воспользоваться консольной командой srm. В данном примере мы рекурсивно удаляем содержимое папки private (-r), перезаписывая каждый файл случайными данными 7 раз подряд (-m). Также можно выбрать однократную перезапись файлов (-s) или же не указывать этот параметр вовсе — в этом случае утилита выполнит 35 проходов.
srm -rm /private/

В актуальных версиях Mac OS инициировать безопасное удаление файлов с жесткого диска можно с помощью Дисковой утилиты (для этого необходимо нажать на кнопку «Параметры безопасности» и задать количество циклов перезаписи), либо через терминал, используя конструкцию вида. Параметр -P является специфичным для Mac OS и сообщает утилите, что удаляемые файлы необходимо трижды перезаписать.
rm -P /private/file.txt

👉 @sys_adminos
👍2
find в Linux как инструмент для администрирования

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

Базовый синтаксис ключей

-name — искать по имени файла, при использовании подстановочных образцов параметр заключается в кавычки. Опция `-name' различает прописные и строчные буквы; чтобы использовать поиск без этих различий, воспользуйтесь опцией `-iname';
-type — тип искомого: f=файл, d=каталог, l=ссылка (link), p=канал (pipe), s=сокет;
-user — владелец: имя пользователя или UID;
-group — владелец: группа пользователя или GID;
-perm — указываются права доступа;
-size — размер: указывается в 512-байтных блоках или байтах (признак байтов — символ «c» за числом);
-atime — время последнего обращения к файлу (в днях);
-amin — время последнего обращения к файлу (в минутах);
-ctime — время последнего изменения владельца или прав доступа к файлу (в днях);
-cmin — время последнего изменения владельца или прав доступа к файлу (в минутах);
-mtime — время последнего изменения файла (в днях);
-mmin — время последнего изменения файла (в минутах);
-newer другой_файл — искать файлы созданные позже, чем другой_файл;
-delete — удалять найденные файлы;
-ls — генерирует вывод как команда ls -dgils;
-print — показывает на экране найденные файлы;
-print0 — выводит путь к текущему файлу на стандартный вывод, за которым следует символ ASCII NULL (код символа 0);
-exec command {} \; — выполняет над найденным файлом указанную команду; обратите внимание на синтаксис;
-ok — перед выполнением команды указанной в -exec, выдаёт запрос;
-depth или -d — начинать поиск с самых глубоких уровней вложенности, а не с корня каталога;
-maxdepth — максимальный уровень вложенности для поиска. «-maxdepth 0» ограничивает поиск текущим каталогом;
-prune — используется, когда вы хотите исключить из поиска определённые каталоги;
-mount или -xdev — не переходить на другие файловые системы;
-regex — искать по имени файла используя регулярные выражения;
-regextype тип — указание типа используемых регулярных выражений;
-P — не разворачивать символические ссылки (поведение по умолчанию);
-L — разворачивать символические ссылки;
-empty — только пустые каталоги.

Примеры использования

Ищем все файлы, начиная с текущей директории, название которых начинается на iodmin:
find . -name 'iodmin*'

Найти все файлы, начиная с корневой директории, название которых начинается на iodmin:
find / -name 'iodmin*'

Поиск в директориях /usr/local/man и /opt/local/man файлов, название которых начинается на iodmin:
find /usr/local/man /opt/local/man -name 'iodmin*'

Ищем графические файлы, начиная с текущего каталога (см.на кавычки):
find . -type f -regex ".*\.\(jpg\|jpeg\|gif\|png\|JPG\|JPEG\|GIF\|PNG\)"

Вывести список файлов (см. на / ) во всей файловой системе, чей размер больше 100 Мб:
find / -size +100M -print

Ищем файлы в указанных каталогах:
find /var/spool/postfix/{deferred,active,maildrop,incoming}/ -type f


👉 @sys_adminos
👍3
Bash-скрипт для выполнения дампа всех баз данных MySQL, используемых на сервере.

1- Для запуска скрипта необходимо дать права на исполнение скрипту командой chmod +x dump_all_databases.sh.
2- Запустить скрипт выполнив одну из следующих команд:
./dump_all_databases.sh
sh dump_all_databases.sh
bash dump_all_databases.sh


3- Дождататься, когда выполниться процесс. Дампы будут сохранены в формате YYYYMMDD.name_db.sql.


#!/usr/bin/env bash

databases=`mysql -e "SHOW DATABASES;" | tr -d "| " | grep -v Database`

for db in $databases; do
if [[ "$db" != "information_schema" ]] && [[ "$db" != "performance_schema" ]] && [[ "$db" != "mysql" ]] && [[ "$db" != _* ]] ; then
echo "Dumping database: $db"
mysqldump --databases $db > `date +%Y%m%d`.$db.sql
# gzip $OUTPUT/`date +%Y%m%d`.$db.sql
fi
done


👉 @sys_adminos
👍2
RAID-массивы - восстановление данных

Технологии Raid массивов. Что делать, если из raid массива выпал диск?
Сетевое хранилище Synology - восстановление данных
RAID 5 - особенности и восстановление данных
Почему наличие Raid массивов любого уровня не освобождает вас от создания резервного копирования
Сбои Raid - контроллеров
Raid-массивы: ошибки пересборки
Можно ли использовать в raid-массиве диски разного размера?
Можно ли использовать в raid-массивах диски разных производителей?
Не определяется raid массив. Полуаппаратные программные raid

источник

👉 @sys_adminos
👍3