Системный Администратор (Сисадмин)
13.9K subscribers
1.7K photos
1.55K videos
87 files
1.73K links
Настройка серверов Windows, Linux, сетевое оборудование Cisco Systems, D-Link, HP, Huawei, Juniper, MikroTik. Книги и мануалы для сисадминов.
По всем вопросам @evgenycarter

РКН clck.ru/3KoGJ3
Download Telegram
Полезные команды Powershell для Active Directory

Получить всех пользователей AD в домене
Get-aduser -properties * -filter *

Модуль импорта Active Directory
Import-module activedirectory

Получить все компьютеры из домена
Get-adcomputer -properties * -filter *

Отключить пользователя AD по имени учетной записи SAM
Disable-ADaccount -identity "Name"

Экспорт данных в формат CSV
Get-adcomputer -properties * -filter * |export-csv "give path"

Получить имя учетной записи AD Groups SAM
Get-ADgroup -identity "provide group name"

Выбрать конкретный атрибут пользователя
Get-aduser -properties * -filter *

Получить информацию о домене
Get-ADdomain

Установите роль Active Directory
Install-windowsfeature AD-Domain-Services

Получить список контроллеров домена
Get-ADDomainController

👉 @sysadminof
👍8👎2
Основные команды Linux, которые вы должны знать

👉 @i_odmin_book
👍8
Подробные инструкции. Создание ключей SSH для аутентификации на виртуальной машине Linux в Azure и управление этими ключами

С помощью пары ключей Secure Shell (SSH) можно создать виртуальную машину Linux, использующую ключи SSH для проверки подлинности. В этой статье показано, как создать и использовать пару файлов открытого и закрытого ключей SSH RSA для клиентских соединений по SSH.

https://learn.microsoft.com/ru-ru/azure/virtual-machines/linux/create-ssh-keys-detailed

👉 @sysadminof
👍2
Команда grep в Linux

Это эффективная утилита для поиска текста, встроенная в каждый из популярных дистрибутивов ОС семейства GNU / Linux.

Установка в Debian и Ubuntu
$ sudo apt install grep

Установка в RHEL, CentOS и Fedora
$ sudo yum install grep


Поиск файлов с помощью команды grep
# dpkg -l | grep -i python

Поиск всех файлов с расширением .mp3
# find . –name "*.mp3" | grep –i "ABC" | grep –vi "remix"

Подробнее https://telegra.ph/Komanda-grep-v-Linux-11-15

👉 @sysadminof
👍4
Полезные команды Linux. Корректные: выключение, перезагрузка, выход из системы.

# init 0
Выключить систему
# logout
Завершить текущую сессию
# reboot
Перезагрузка
# shutdown -h now
Еще один вариант корректного выключения
# shutdown -h 22:15 &
Запланировать выключение системы на 22 часа 15 минут
# shutdown -c
Отменить запланированное выключения системы
# shutdown -r now
Еще один вариант перезагрузки
# telinit 0
Тоже способ выключения системы

👉 @sysadminof
👍14
Полезные команды Linux. Получение различной информации о системе.

# arch
Вывести на экран архитектуру компьютера
# uname -m
Так-же выводит архитектуру компьютера
# cal 2010
Печатает календарь на 2010 год. Без аргументов выводит календарь на текущий месяц
# cat /proc/cpuinfo
Вывести подробную информацию о процессоре
# cat /proc/interrupts
Вывести информацию о прерываниях
# cat /proc/meminfo
Выводит статистику использования памяти
# cat /proc/swaps
Вывести информацию о swap файле(ах) ( файл подкачки )
# cat /proc/version
Вывести информацию о версии текущего ядра
# cat /proc/net/dev
Вывести информацию и статистику по сетевым устройствам
# cat /proc/mounts
Показать смонтированные файловые системы
# clock -w
Записать текущую системную дату в BIOS
# date
Вывести текущую системную дату и время
# date 041217002007.00
Установить дату и время в значение МесяцДеньЧасМинутаГод.Секунда
# dmidecode -q
Вывести в читабельном виде информацию по аппаратному оборудованию системы (SMBIOS / DMI)
# hdparm -i /dev/hda
Вывести характеристики жесткого диска
# hdparm -tT /dev/sda
Измерять скорость чтения данных с жесткого диска
# lspci -tv
Вывести список устройств на шине PCI
# lsusb -tv
Вывести список устройств на USB шине
# uname -r
Вывести версию используемого ядра

👉 @sysadminof
👍8
This media is not supported in your browser
VIEW IN TELEGRAM
Как новичок представляет linux 😀

Подписывайтесь на канал 👉@tipsysdmin
😁15🔥2
Долгое завершение rdp сессии

Очень часто, долго завершается терминальная сессия. Виноват какой то процесс, долго выполняющий свое закрытие. Чаще всего это – SplWOW64.exe

Для его принудительного, быстрого завершения, необходимо добавить ветку реестра

"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\SysProcs"
DWORD: SPLWOW64.EXE = 0


Таким же способом добавляется любая программа, которая долго выполняет закрытие.

👉 @sysadminof
👍9
Установка Windows 98

Подписывайтесь на канал 👉@tipsysdmin
👍9
Переносим философию Unix в 21 век

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

В статье же речь пойдет о том, чего ощутимо не хватает современным системам Linux с точки зрения этой философии, а также будет предложено решение связанных с этим проблем.

Rus https://habr.com/ru/companies/ruvds/articles/574778/

Eng https://blog.kellybrazil.com/2019/11/26/bringing-the-unix-philosophy-to-the-21st-century/

👉 @sysadminof
👍2
Отменяй дейлик или бери дей-офф на пятницу. Если тимлид против, просто зови его с собой – скажи, что на «Импульс Т1» будут топовые спикеры, мерч и фуршет

1 декабря в Москве прогремит конференция Холдинга Т1: огромная сходка разрабов, инженеров и айтишников любого грейда.

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

А еще – послушать про цифровизацию, архитектуру, чистый код и формирование эффективных продуктовых команд от тех, кто работает над передовыми российскими разработками прямо сейчас: с докладами придут Артем Кострюков, CEO TestIT, Михаил Степнов, Руководитель центра R&D МТС Big Data/ CDO МТС Travel, Мария Тихонова, главный инженер по разработке в SberDevices, и другие эксперты.

Кстати, на конфе будет весь топ-менеджмент Т1: отличный шанс зарекомендовать себя и круто бустануть карьеру. Может, в следующем году звездным спикером «Импульс Т1» будешь ты?

Скорее регистрируйся, чтобы не упустить шанс!
Участие бесплатное. 

ЕРИД: LdtCKBQST
18+ Реклама. ООО «Т1»
ОГРН 1197746617419
👍3🔥1💘1
Kubernetes: эффективные команды

Расшировать параметр секрета.
kubectl get secret/db -o yaml | grep DB_PASSWORD | sed 's/.*DB_PASSWORD:\s//' | base64 --decode
где db - имя секрета, DB_PASSWORD - один из параметров секрета.

Удалить все поды используя helm.
helm ls --all --short | xargs -L1 helm delete

Удалить все поды в состоянии Evicted.
kubectl get pods | grep Evicted | awk '{print $1}' | xargs kubectl delete pod

Скрипт для просмотра занятого пространства образами docker.
#!/usr/bin/env bash
for container in `kubectl get pods --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}'`
do
echo -e "$container\t\t $(docker image ls `kubectl get pod $container -o jsonpath='{.spec.containers[0].image}'` --format='{{println .Size}}')"
done


Скрипт для для установления соответствия между задеплоеными подами, нодами, где они находятся и зоной в которой располагаются.
#!/usr/bin/env bash

set -euo pipefail

PODZONES=()
for POD in $(kubectl get pods -o custom-columns=NAME:.metadata.name --no-headers)
do
NODE=$(kubectl get pod ${POD} -o=jsonpath='{.spec.nodeName}')
ZONE=$(kubectl get nodes -o json | jq -r --arg NODE "${NODE}" '.items[].metadata | {name, labels} | select(.name==$NODE) | .labels."topology.kubernetes.io/zone"')
PODZONES+=(${ZONE})
echo -e "${POD}\t${NODE}\t${ZONE}"
done

CPODS=$(kubectl get pods -o custom-columns=NAME:.metadata.name --no-headers | wc -l)
CNODES=$(kubectl get nodes -o custom-columns=NAME:.metadata.name --no-headers | wc -l)
CZONES=$(kubectl get nodes -o json | jq -r '.items[].metadata.labels."topology.kubernetes.io/zone"' | sort | uniq -c)
echo "----------ИТОГО:----------"
echo -e "Всего подов:\t${CPODS}"
echo -e "Всего нод:\t${CNODES}"
echo -e "Количество зон нод:\n${CZONES}"
echo "Количество подов в зонах:"
printf "%s\n" "${PODZONES[@]}" | sort | uniq -c


👉 @sysadminof
👍4
Полезные команды Linux. Дисковое пространство

# df -h
Вывод информации о свободном и занятом дисковом пространстве на смонтированных разделах, в формате, удобном для чтения
# dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n
Выводит объем используемого дискового пространства, занятого файлами deb-пакета, с сортировкой по размеру (ubuntu, debian т.п.)
# du -sh dir
Выводит объем дискового пространства, занимаемый директорией dir
# du -sk * | sort -rn
Выводит листинг файлов и директорий с размером, сортируя его по размеру
# ls -lSr | more
Выводит листинг файлов и директорий, сортируя по возрастанию размера и перенаправляет его в программу more для постраничного просмотра
# rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n
Выводит объем дискового пространства, занимаемого файлами rpm-пакета, с сортировкой по размеру ( fedora, redhat и т.п. )

👉 @sysadminof
👍12
Что такое FSMO роли, их назначение и можно ли без них жить

Многие системные администраторы, работая с Microsoft Active Directory Domain Services не знают или не до конца понимают, что такое FSMO роли и для чего они нужны. Те кто о них знает, не всегда понимает важность этих ролей, в каких случаях владелец ролей обязательно должен быть доступен, а в каких случаях их отсутствие практически никак не отразится на работе службы каталогов.

В статье ниже, будет в кратце рассказано про Flexible single-master operations «операции с одним исполнителем». А также можно ли без них жить.

https://telegra.ph/CHto-takoe-FSMO-roli-ih-naznachenie-i-mozhno-li-bez-nih-zhit-11-22

👉 @sysadminof
👍3
Полезные команды Linux. Работа с файлами и папками

# pwd
Вывести текущую директорию
# cd /home
Перейти в директорию /home
# cd ..
Перейти в родительский каталог, то есть подняться на уровень выше
# cd ../..
Подняться в дереве каталогов на два уровня
# cd
Перейти в домашний каталог
# cd ~user
Перейти в домашний каталог пользователя user
# cd -
Перейти в предыдущую директорию, из которой был сделан переход в текущую директорию
# cp -a test_1 test_2
Копировать директорию test_1 в директорию test_2
# cp file_1 file_2
Копировать файл file_1 в файл file_2
# cp -a /tmp/test .
Rопировать директорию test и все ее содержимое в текущую директорию
# cp test/* .
Копировать все файлы содержащиеся в директории test в текущую директорию
# iconv -l
Выводит список доступных для использования кодировок
# iconv -c -f windows-1251 -t utf-8 inputFile > outputFile
Конвертировать файл из кодировки windows-1251 в кодировку utf-8
# ln -s /path/to/filedir ./link
Создать в текущей директории символическую ссылку link на директорию или файл filedir
# ln /path/to/filedir ./link
Создать в текущей директории жесткую ссылку link на директорию или файл filedir
# ls
Вывести листинг содержимого текущей директории
# ls -F
Листинг текущей директории с добавлением к именам символов, обозначающих тип объекта
# ls -l
Листинг текущей директории с подробностями по каждому объекту ( права доступа, владелец, группа, дата, размер )
# ls -a
Кроме обычных объектов, вывести в листинге, скрытые файлы и директории, текущего каталога
# ls /tmp | pr -T5 -W$COLUMNS
Листинг директории /tmp в 5 колонок
# ls *[0-9]*
Вывести в листинг файлов и директорий текущего каталога, содержащие в имени цифровые символы
# lstree
Листинг иерархии директорий и файлов, начиная с корневого каталога (/)
# mkdir dir
Создать в текущем каталоге, директорию с именем dir
# mkdir dir_1 dir_2
Создать в текущем каталоге две директории, с именами dir_1 и dir_2
# mkdir -p /path/to/dir
Создать иерархию директорий. Кроме самой директории dir будут созданы все промежуточные директории
# mv filedir new_filedir
Переместить ( переименовать ) файл или директорию из filedir в new_filedir
# rm -rf /dir
Рекурсивно удалить директорию dir и всё её содержимое, без запроса подтверждения на удаление
# rm -f file
Удалить файл file, без запроса подтверждения
# rm -rf /dir_1 /dir_2
Удалить директории /dir_1 и /dir_2 вместе с содержимым, без запроса подтверждения
# rmdir /dir
Удалить директорию /dir
# tree
Вывести иерархию директорий и файлов, начиная с корневой (/)
# touch -t 0712250000 file1
Изменить дату и время создания файла, если указанный файл не существует, создать его с указанными датой и временем (YYMMDDhhmm)

👉 @sysadminof
👍94
This media is not supported in your browser
VIEW IN TELEGRAM
Старый добрый видос про техподдержку в средневековье 😂

Подписывайтесь на канал 👉@tipsysdmin
😁14🤣7
Полезные команды Linux. Поиск нужного файла

# find / -user vasya
Найти все директории и файлы принадлежащие пользователю vasya. Поиск будет производиться, начиная с корневой директории (/)
# find / -name filedir
Найти директории и файлы с именем filedir. Поиск будет производиться, начиная с корневой директории (/)
# find /usr/bin -type f -atime +20
Найти все файлы в директории /usr/bin, время последнего обращения к которым более 20 дней
# find /usr/bin -type f -mtime -10
Найти все файлы в директории /usr/bin, которые были созданы или модифицированы в течении последних 10 дней
# find / -xdev -name \*.rpm
Искать директории и файлы, имена которых оканчиваются на ".rpm", но игнорируя съёмные накопители, cdrom, usb и т.п.
# find . -maxdepth 1 -name *.jpg -print -exec convert
Найти в текущей директории все файлы с расширением jpg и выполнить для каждого команду convert ( Imagemagick )
# find /path/to/dir -name \*.c
Найти все директории и файлы, имена которых оканчиваются на ".с". Поиск будет производиться, начиная с директории /path/to/dir
# find / -name *.rpm -exec chmod 755 '{}' \;
Начиная с корня, найти все фалы и директории, имена которых оканчиваются на ".rpm", и для каждого изменить права доступа
# whereis ls
Вывод полных путей к бинарным файлам, файлом исходных кодов и руководств, имеющих отношение к файлу ls
# locate \*.ps
Поиск всех файлов, содержащих в имени ".ps" по специальной базе данных, предварительно сформированной командой updatedb
# which ls
Вывести полный путь до файла ls

👉 @sysadminof
👍7🆒1
Мониторинг в ОС Linux \ ps \ top \ gstat \ vmstat \ iostat \ netstat

apt-get install top
apt-get install ganglia-monitor
apt-get install sysstat
apt-get install sockstat



top

У утилиты top есть параметры, которые облегают жизнь, их мы набираем в top’e когда он запущен:
S — показать системные процессы, по умолчанию они не показываются
u — и имя пользователя, например u mysql покажет процессы запущенные от пользователя mysql
o — используем для сортировки, возможные параметры — pri, size, res, cpu, time, threads
m — переключение между режимами отображения нагрузки и ввода-вывода
k — завершить процесс, ввод pid процесса
r — изменить приоритет процесса, вводим pid процесса
n — отображать статистику по определённому процесс
a — показывает абсолютные запущенных процессов
top -n 3 — показывает самые ресурсоёмкие приложения в данный момент


gstat

gstat — показывает использование дисков.
gstat -a — используется для вывода только активных устройств


vmstat

vmstat — показывает состояние виртуальной памяти и буфера
vmstat 5 — отображает статистику раз в пять секунд
vmstat -z — показывает состояние буфера
vmstat -i — показывает состояние прерываний


iostat

iostat — выводит статистику по I/O устройств
iostat -d -w5 — показывать информацию по дискам, с периодичностью в пять секунд безостановочно
iostat -dx -w5 — показывает расширенную статистику
iostat -dx /dev/vda 5 — показывает расширенную статистику


netstat

netstat — показывает активные сетевые соединения.
netstat -w 1 — количество пакетов в настоящее время.
netstat -ibt — вывод сетевых интерфейсов с разбивкой по IP адресам, отображает объём трафика, количество ошибок, коллизий
netstat -rn — отображает таблицу маршрутизации

👉 @sysadminof
👍8