tips
Определение размера swap использованого процессом
Опубликовано vladimir в Вс, 01/10/2010 - 01:20Стандартные консольные утилиты linux не показывают количество памяти процесса выгруженой в подкачку (swapped out).
Однако есть достаточно простой способ узнать это. Все что для нужно - взять идентефикатор процесса (PID) и просмотреть файл smaps относящийся к этому процессу:
cat /proc/<pid процесса>/smaps | grep Swap
Эта команда выдаст кучу строк, отосящихся к разным сегментам памяти. Чтобы просуммировать все можно воспользоваться awk:
cat /proc/<pid процесса>/smaps | grep Swap | awk '{ SUM += $2 } END { print SUM }'
Приведение RHEL/CentOS к привычному виду
Опубликовано vladimir в Чт, 03/26/2009 - 15:21RHEL/CentOS - весьма неплохая серверная ОС, однако мне, привыкшему к Gentoo весьма неудобно с ней работать. Поэтому я написал для себя инструкцию, которую я применяю к отдельно стоящим серверам, которые попадают ко мне.
Итак, вот она:
Кто я и где я:
# cpu: cat /proc/cpuinfo # disks: df -h sudo /sbin/fdisk -l /usr/sbin/vgdisplay /usr/sbin/lvdisplay sudo /sbin/hdparm -tT /dev/sda # devices: sudo /sbin/lsusb sudo /sbin/lspci # memory vmstat
Создание пользователя
Негоже пользоваться root'ом.
Зайти root'ом:
Denyhosts - блокировка перебора паролей ssh
Опубликовано vladimir в Вс, 03/08/2009 - 01:58Denyhosts - весьма полезная утилита для пресечения попыток подобрать пароль к ssh.
Устанавливается без каких-либо проблем: emerge denyhosts в Gentoo, для других дистрибутивов пакеты также существуют и как правило находятся в основном репозитории.
Denyhosts работает следующим образом: он проверяет логи и добавляет в /etc/hosts.deny ip адреса, с которых наблюдается много попыток неудачного входа. Для того чтобы это работало, ssh должен быть собран с tcpwrappers (что всегда разумно и делается по умолчанию).
Как изменить настройки сетевой карты в linux
Опубликовано vladimir в Чт, 12/11/2008 - 16:50Вопрос: Как отключить авто-определение сетевых настроек (auto-negotiation) моего серевого интерфейса и установить полу/полно-дуплексный режим из коммандной строки? Как просмотреть текущие настроки?
Используйте ethtool:
ethtool eth0 # показывает текущие настройкиПример вывода:
Settings for eth0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supports auto-negotiation: Yesvi: как вставить в текущий документ вывод любой команды
Опубликовано vladimir в Вс, 12/07/2008 - 23:35Очень просто.
Достаточно набрать ":r!<команда>" в командном режиме vi. Это особенно удобно при написании каких-либо отчетов.
© UNIX HOT TIP 2795 - August 28, 2007, http://www.ugu.com/sui/ugu/show?tip.today
GNU Screen: как "промотать" окно вверх
Опубликовано vladimir в Вс, 12/07/2008 - 23:01Screen - очень полезная и удобная утилита. Но при ее использовании часто возникает вопрос: как просмотреть что-то что произошло раньше и не влезает в экран. Стандартные Ctrl+PageUp не работают.
Для того чтобы решить эту проблему, нужно перевести screen в режим копирования сочетанием клавиш Ctrl + a, [ или Ctrl + a, Esc.
После этого можно перемещаться стандартными стрелочками или следующим способом:
h - Передвинуть курсор влево
j - Передвинуть курсор на строку вниз
k - Передвинуть курсор на строку вверх
l - Перевинуть курсор вправо
[злоба] PATH в RHEL
Опубликовано vladimir в Пт, 11/07/2008 - 23:17Не знаю, специално это или нет, но то что в rhel после sudo в PATH не попадают /sbin и /usr/sbin жутко бесит.
Пожалуй стоит завести списочек того, что нужно сделать в свежей rhel-системе, чтобы ей можно было относительно нормально пользоваться.
- Завести себе пользователя с publickey аутентификацией
- Установть screen и lsof из epel.
- Установить denyhosts
- Добавить в PATH /sbin и /usr/sbin
- alias ls=ls --color=auto
Смена регистра имен файлов
Опубликовано vladimir в Втр, 11/04/2008 - 17:39Для того чтобы быстро сменить регистр файлов из верхнего регистра в нижний, можно воспользоваться следующим скриптом:
############################## for file in * do mv $file `echo $file | tr [:upper:] [:lower:]` 2>/dev/null done ##############################
Выполнение команд на нескольких машинах (ssh)
Опубликовано vladimir в Чт, 10/23/2008 - 19:34Если вы являетесь администратором достаточно большого количества unix-машин, то наверняка вам приходилось сталкиваться с необходимостью выполнить пару команд на всех ваших машинах. Для упрощения этого есть несколько методов.
Первый - самый простой и примитивный. Он использует только bash, и не требует установки дополнительного софта.
Предположим, что у нас есть машины gmos-1, gmos-2, gmos-3 и т.д. и мы хотим выполнить emerge --info на них всех. Вот что мы можем сделать:
for i in `seq 10`; do ssh gmos-$i "emerge --info"; done
Как заставить пользователя сменить пароль при следующем логине
Опубликовано vladimir в Ср, 10/01/2008 - 10:24-
Сначала, заблокируйте аккаунт для того, чтобы предотвратить его использование, пока не будут внесены изменения.
usermod -L username -
Измените дату окончания действия пароля в 0, для того чтобы заставить пользователя сменить его при следующем логине:
chage -d 0 username -
Разблокируйте аккаунт.
usermod -U username
