Linux: user management

Создание пользователя
sudo useradd -m -s /bin/bash weril
sudo passwd weril
sudo login weril - тестово логинемся
sudo passwd -e weril - делаем пароль протухшим (после авторизации пользователя заставят поменять пароль)
sudo vi /etc/ssh/sshd_config - добавляем в AllowUsers в sshd (AllowUsers <username>@*)
sudo /etc/init.d/sshd


Читать дальше

Linux: top

Командный режим
top -icbn1
 
Интерактивный режим

Заходим в top, нажимаем

“1” – показывает загрузку по ядрам.

“s” – изменяем интервал обновления/сбора статистики (напр.  уменьшаем c 3 секунд до 0.1).

“M” – сортировка процессов по утилизации RAM

“P” – сортировка процессов по утилизации CPU (processor)

“k” – возможность отправить KILL PID (kill -15 / SIGTERM) находясь в TOP

“t” – показываем в виде статус бара

%Cpu0 : 6.2/12.5 19[||||||||||||||||||| ]
%Cpu1 : 11.8/11.8 24[|||||||||||||||||||||||| ]
%Cpu2 : 13.3/20.0 33[||||||||||||||||||||||||||||||||| ]
%Cpu3 : 25.0/18.8 44[|||||||||||||||||||||||||||||||||||||||||||| ]
 
Поэкранный вывод

top –b – вывод каждые три секунды всего top’a.

Читать дальше

Linux: использование yum в CentOS (обновление, установка, удаление приложений)

  • Аналог статьи про Ubuntu, Gentoo
  • Поиск драйверов для ядра (напр. bnx2)
  • CentOS работает с .rpm пакетами (так же как и RHEL, Fedora, Suse, Mandriva).
  • Вот тут есть очень хорошая шапаргалка. Ниже только самое используемое, остальное проще взять оттуда.

Обновление всех приложений (сразу и обновляем данные из репозиториев о пакетах и ставим эти пакеты) и ядра системы

sudo yum update

Так же может понадобиться добавление репозитория epel (оффициальный репо fedora).

Читать дальше

Демонизация приложений, делаем демон приложения в CentOS (Debian), работа с сервисами systemctl

  • systemctl (system control) без запущенных аргументов выдает список сервисов/демонов, запущенных в системе
root@serv:~# systemctl
UNIT LOAD ACTIVE SUB DESCRIPTION 
proc-sys-fs-binfmt_misc.automount loaded active waiting Arbitrary Executable File Formats File System Automount Point 
sys-devices-pci0000:00-0000:00:07.1-ata2-host1-target1:0:0-1:0:0:0-block-sr0.device loaded active plugged VMware_Virtual_IDE_CDROM_Drive 
sys-devices-pci0000:00-0000:00:10.0-host2-target2:0:0-2:0:0:0-block-sda-sda1.device loaded active plugged Virtual_disk 1 
sys-devices-pci0000:00-0000:00:10.0-host2-target2:0:0-2:0:0:0-block-sda-sda2.device


Читать дальше

Скрипт на событие логина по SSH

Пришла идея создания скрипта для логгирования события подключения по SSH в таблицу SQL и уведомления о подключении определенных пользователей определенным пользователям:
  • писать всем пользователям о подключении их самих – сами пользователи знают, когда заходят и заход тогда, когда ты это делать не мог – есть повод обеспокоиться
  • админу писать о подключении всех пользователей, имеющих права на sudo
В целом логгирование в linux встроено по умолчанию – утилита last показывает полный лог авторизаций с момента создания файла /var/log/wtmp и продолжительность pts, а в lastlog есть информация о последнем подключении.


Читать дальше

Linux: ядро (kernel), процессы /proc в ОС и работа с ними (proc, ps, lsof, nice, kill, killall, top, lscpu, interrupts, smp irq affinity, isolcpus, taskset, cpuset/cset shield), утилизация процессора (user/system/idle/iowait/softirq)

  • kernel parameters /proc/cmdline (можно редактировать конфигом GRUB)
  • kernel parameters modification /etc/sysctl.confВ Linux все рассматривается как файлы, включая устройства (/dev) и процессы (/proc).
  • Про перевод процессов в background в Linux подробнее в hotkeys (jobs, fg, bg, ctrl+z)

Процессы запускаются самой системой для функционирования системы, такие процессы называют background/daemon process.

Читать дальше

Использование emerge в Gentoo

Аналог статьи про Ubuntu.

https://wiki.gentoo.org/wiki/Gentoo_Cheat_Sheet – список необходимых команд, все что ниже там есть.

Логи /var/log/emerge.log

Просмотр

Посмотреть все установленные пакеты.

qlist -I (qlist -Iv с версиями)

Смотрим какие версии приложения установлены и какие активны.

$ eselect postgresql list
Available PostgreSQL Slots
 10 * 10.1
Обновление пакетов и ОС

Очень хорошо и подробно описано тут.

Читать дальше

Linux/BSD: популярные дистрибутивы (general, network)

  • Популярные дистрибутивы могут выбирать не самую продолжительную (отличную от Long term support, LTS) по поддержке сборку Linux Kernel для своей работы (напр. Fedora, Ubuntu) – чтобы как можно раньше находить баги с новыми версиями. Негативный и позитивный примеры в этом контексте (требовался надежный сервер с заведомо рабочей сборкой ПО):
  • Команды чтобы получить информацию по дистрибутиву и выяснить, какой дистрибутив используется можно посмотреть тут.


Читать дальше