Категорії
Linux Misc, staff, other

kGraft – обновление ядра Linux без перезагрузки

Компания SUSE объявила о доступности kGraft — своей технологии для обновления ядра Linux без необходимости в последующей перезагрузке системы.

По предназначению kGraft схожа с продуктом Ksplice, созданным в Массачусетском технологическом институте (MIT) и купленным Oracle для Oracle Linux (и затем RHEL), однако разработчики из SUSE утверждают, что «kGraft, в отличие от других технологий, не требует остановки ядра даже на короткие периоды времени, что упрощает процесс установки без простоя системы критически важных обновлений в безопасности и других патчей». Как и другие подобные проекты, kGraft предназначена только для критических обновлений (простых изменений в коде).

Категорії
Misc, staff, other

Подключение к консоли виртуальной машины в VirtualBox

Классическая ситуация: есть сервер с *nix и на нём поднят VirtualBox. В один момент доступ к одной из виртуальных машин пропал. Нужно подключится к консоли, но как? Нигде нету GUI, что бы как на десктопе, взять и подключиться.

Выход есть: запустить заново виртуальную машину в режиме headless. Держать запущенным всё время виртуальную машину в этом режиме опасно, так как открывается консоль на порту на всех интерфейсах, тем более, если ваш сервер смотрит в мир.

Категорії
FreeBSD

Создание “зеркала” на системном диске с GPT на FreeBSD 9 после установки

Дело в том, что на GPT не просто сделать RAID1, в отличии от MBR, где просто создаёшь рейд и добавляешь туда весь диск. Обычно, рекомендуется создавать “зеркало” на этапе установки, так как после того, как ОС насетаплена это сделать не так просто. Но мы это сделали ))

Тестовый стенд: FreeBSD 9.2 amb64 Release, 2xHDD 500Gb (ada0, ada1)

Суть нашего метода:

1) Создаём точную разбивку второго диска
2) Делаем gmirror отдельно для каждого из разделов ВТОРОГО диска
3) dump/restore разделов с первого диска на gmirror’ы второго
4) Правка fstab’a на первом диске на разделы с mirror и загрузка уже с mirror’a
5) Добавление оставшихся разделов с первого диска в gmirror’ы.

Категорії
Misc, staff, other

Перекодировка текста из разных кодировок

iconv: очень хорошая утилита, но для её использования нужно знать исходную кодировку.

enca/enconv: аналогично iconv, но может угадать исходную кодировку (в том числе цепочку перекодировок) и перевести в читаемый вид

– http://2cyr.com/decode/?lang=ru : online перекодировщик, аналог enca

Категорії
Linux

Ограничиваем использование mem, cpu определённому приложению

Этот вопрос очень актуален, например, на десктопе: у меня opera время от времени начинает выедать всю доступную память и весь swap. Было принято решение ограничить её аппетиты.

Банальный ulimit не подходит, так как он ограничит для всех приложений, запускаемых от юзера. А мне нужно что бы только одно приложение и под конкретным пользователем. После недолгих гуглений, натолкнулся на cgroups.

Категорії
Linux

Лимиты в Linux

Каждый процесс имеет свои лимиты (потребление памяти, количество одновременно запущенных файлов и прочие).  При запуске процесс читает файл /etc/security/limits.conf на предмет ограничений (просматривается, пользователь/группа и ищется совпадение; если совпадений нет, то используются дефолтные параметры) и запускается с нужными лимитами.
Узнать лимиты у запущенного процесса можно так:

$ cat /proc/{PID}/limits

Категорії
Solaris

Device /scsi_vhci/disk@g5000c5007171e03f failed to power up

Вот такое сообщения я получаю, когда пробую установить Solaris. И так ругается на все 6 дисков, которые есть в сервере. Как итог: система не ставится, так как все диски в offline.

Мудрые коллеги подсказали, что это проблема контроллера Dell Perc H200, а точнее проблема энергосбережения, а так же подсказали решение , но оно уже годится для установленной системы.

Под FreeBSD под этот контроллер нету энергосбережения, поэтому там таких проблем нет и система на него ставится без проблем.

Категорії
Programming Solaris

Сборка tmux’a под Solaris

Тестовый стенд: tmux-1.8, libevent-2.0.21

Сборка tmux’a под Solaris ещё тот квест с правкой исходников. И так, качаем свежую версию tmux’a, а так же libevent (как зависимость). libevent ставится без проблем:

root@skeletor:/export/home/skeletor/libevent-2.0.21-stable# CFLAGS="-m64 -O2" CPPFLAGS="-m64 -O2" CCASFLAGS="-m64 -O2" CXXFLAGS="-m64 -O2" LDFLAGS="-m64 -O2" ./configure --prefix=/usr --libdir=/lib/64 && gmake && gmake install && gmake clean

А теперь соберём tmux:

Категорії
FreeBSD Linux Solaris WWW

Правильная ротация логов java/tomcat’a

Всё бы хорошо, но tomcat не понимает сигналs HUPSIGUSR1 (при их получении он просто завершается). Как быть, если надо ротировать логи. Есть 2 варианта: через системный log-ротатор и через встроенные механизмы самого tomcat’a. Я рассмотрю первый вариант, так как в нём больше возможностей в плане ротации файлов. Но тут есть нюанс: ротировать будем с помощью метода copytruncate, то есть нужный нам лог сначала копируется, а потом урезается до нулевой длинны, тем самым не нарушая последующей записи в исходный лог.

Категорії
Solaris

Добавление net в зону Solaris

Что делать, если зона запущена, а в ней нужно добавить ещё одну сеть? Можно добавить через zonecfg и ребутнуть зону. Но что делать, если ребут невозможен по каким-то причинам? Оказывается, выход есть.

Примечание.

Начиная с 11.2 появилась возможность сделать apply конфига при запущенной зоне. Делаем необходимые изменения через zonecfg и потом просто выполняем:

# zoneadm -z zonename apply

Домашняя страничка Andy
Записки молодого админа
Самостоятельная подготовка к Cisco CCNA
Самостоятельная подготовка к Cisco CCNP
Powered by Muff