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

РКН clck.ru/3KoGJ3
Download Telegram
Долгое завершение 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
Полезные команды Linux. Монтирование файловых систем

# mount /dev/hda1 /mnt/disk
Монтировать устройство /dev/hda1 в папку с именем /mnt/disk. точка монтирования, папка /mnt/disk, должна существовать
# fuser -km /mnt/hda1
Размонтировать устройство hda1 если оно заблокировано каким либо процессом
# mount -o loop file.iso /mnt/cdrom
Смонтировать фаил или образ ISO в директорию /mnt/cdrom
# mount /dev/hdb /mnt/cdrecorder
Монтировать cdrw или dvdrom
# mount -t vfat /dev/hda5 /mnt/hda5
Смонтировать раздел с файловой системой FAT32
# mount /dev/cdrom /mnt/cdrom
Монтировать cdrom или dvdrom
# mount /dev/fd0 /mnt/floppy
Монтировать floppy disk ( дисковод мягких дисков )
# mount /dev/hdc /mnt/cdrecorder
Монтировать cdrw или dvdrom
# mount /dev/sda1 /mnt/usbdisk
Монтировать USB устройство
# mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share
Монтировать сетевую файловую систему Windows (SMB/CIFS)
# umount -n /mnt/hda2
Размонтировать без записи в файл /etc/mtab, используется в ситуациях, когда файл находится в режиме только чтение или жесткий диск переполнен
# umount /dev/hda2
Размонтировать диск hda2, предварительно неоходимо выйти из точки монтирования /mnt/hda2

👉 @sysadminof
👍6🆒1
Forwarded from Официальный канал TrueConf
🗣 Совместный вебинар компаний CTI и Труконф

30 ноября в 11:00 по московскому времени мы совместно с нашим партнёром, компанией CTI, проведем обучающий вебинар, посвященный технологиям совместной работы CTI Paas и SaaS на базе решений TrueConf.

Объединение возможностей TrueConf и PaaS/SaaS-технологий позволяет построить многофункциональное ВКС-облако, которое сохраняет преимущества серверных ВКС-решений, оставаясь гибким и легко масштабируемым. Такой формат не требует наличия собственной ИТ-инфраструктуры.

👥 Ведущие — директор по развитию TrueConf Дмитрий Одинцов, директор департамента коммуникационных сервисов CTI Альберт Исламов и руководитель отдела объединенных коммуникаций CTI Никита Монахов.

Эксперты уделят отдельное внимание услугам SaaS/PaaS, поделятся полезными рекомендациями и опытом развёртывания таких моделей для заказчиков, выявленными плюсами и минусами, сценариями использования, а также расскажут о последних изменениях в продуктах TrueConf.

🗓 Дата: 30 ноября 2023
🕒 Время: 11:00 по МСК
➡️ Участие по предварительной регистрации

#вебинар #CTI #Труконф

@trueconf
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Полезные команды Linux. Пользователи и группы

# useradd -c "User Vasya" -g admin -d /home/vasya -s /bin/bash vasya
Создать пользователя vasya, домашним каталогом будет создана директория /home/vasya, в качестве системной оболочки будет назначен /bin/bash, пользователь будет включен в группу admin, кроме того для учетной записи будет создан комментарий "User Vasya"
# useradd vasya
Создать пользователя vasya
# usermod -c "User FTP" -g system -d /ftp/ftpuser -s /bin/nologin ftpuser
Изменение пользователя
# userdel -r vasya
Удалить пользователя с именем vasya и его домашнюю директорию
# groupadd [ group_name ]
Создать группу с именем group_name
# chage -E 2005-12-31 vasya
Установить дату окончания действия учётной записи пользователя vasya
# groupdel [ group_name ]
Удалить группу group_name
# groupmod -n test new_test
Переименовать группу test в new_test
# newgrp - [group]
Изменяет основную группу текущего пользователя. При указании "-", ситуация будет идентичной той, в которой пользователь вышил из системы и снова вошёл. Если не указывать группу, основная группа будет назначена из файла /etc/passwd
# grpck
Проверка корректности системных файлов учётных записей. Проверяется файл/etc/group
# pwck
Проверка корректности системных файлов учётных записей. Проверяются файлы /etc/passwd и /etc/shadow
# passwd
Изменить пароль текущего пользователя
# passwd vasya
Изменить пароль пользователя vasya ( может выполнять только root )

👉 @sysadminof
👍8🆒2
Измерение скорости чтения-записи носителей с помощью утилиты dd

Недавно, я вновь побывал в роли технического эксперта, когда занимался переводом книги «Understanding Software Dynamics» от Richard L. Sites. В ходе работы над главой — про скорость работы с жёстким диском, мне поступил вопрос от коллеги: каким образом можно просто и быстро измерить скорость чтения и записи твердотельных носителей информации, в разрабатываемых в компании устройствах? При этом стояла задача реализовать всё это наиболее простыми способами, чтобы они были переносимы между совершенно разными платформами и архитектурами. Носители же информации могут быть любыми: USB Flash, eMMC, SD, NAND и прочее, прочее. Единственное, что их объединяет — это Linux.

https://habr.com/ru/companies/timeweb/articles/775230/

👉 @sysadminof
👍31
Linux в + - 1999 году

Подписывайтесь на канал 👉@tipsysdmin
4👍1🔥1