Есть вопрос по FreeBSD,Linux,Solaris,Unix?

Если у вас есть вопросы по этим системам - задавайте здесь в комментариях, я постараюсь ответить ;)

Понравилось? Подпишись на RSS!

Хочешь написать статью? Мы ищем авторов (и не только за красивые глаза, но и за дохлых президентов).

Ubuntu: TuxOnIce vs Suspend/Resume

Одна из болезненных тем в Unix вообще и в Linux  в частности — это suspend и hibernate.

Постепенно ситуация поправляется, все больше железа поддерживается и все такое.

Недавно перешел в родного Ubunt-овского суспенда на tuxonice.  На это есть 2 серьезные причины.

1. TuxOnIce, а точнее hibernate можно настроить так, чтоб он при suspend сохранял бы образ и на диск тоже - у меня иногда подвисает ноутбук при выходе из суспенда

2. TuxOnIce при hibernate ухитряется аккуратно скидывать всю память на диск и потом считывать ее обратно. Для родного hibernate ситауция немного другая - ему нужно как минимум половина озу свободная для заморозки образа памяти и сброса на диск. Поэтому он сперва выталкивает в swap процессы, чтоб освободить память, а потом только делает hibernate. Соответственно при восстановлении — он восстанавливает только то, что он сохранил на последнем шаге, а оставшиеся процессы подгружает из swap по мере работы.

Учитывая, что у меня постоянно включен firefox, который кушает минимум 1-1.5Gb памяти - он и становится первым кандидатом на выпихивание в swap.  А его загрузка обратно, после того, как машина проснулась - долгий и занудный процесс. С TuxOnIce существенно проще — весь образ память аккуратно восстановлен и все просто летает сразу после загрузки :)

Если интересно, как именно настраивать pm и tuxonice в Ubuntu - пишите, расскажу в блоге :)

Понравилось? Подпишись на RSS!

Хочешь написать статью? Мы ищем авторов (и не только за красивые глаза, но и за дохлых президентов).

Vim - удобное переключение между файлами

Я давно и безнадежно влюблен в Vim :) и с каждым релизом все больше ;)

Вот несколько строчек, которые стоит добавить в ваш конфиг-файл (.vimrc, если у вас уже есть Vim 7.3*)

включаем сохранение persistent undo - вы можете отматывать изменения в файлах, даже если вы его сохранили и закрыли. (оставшиеся редакторы нервно курят в стороне :):


set undofile
set undodir=~/.vimundo/

сохранение backup файлов для всех файлов, которые вы редактируете. Да, директория будет расти и ее надо периодически чистить ;)


set backupdir=~/.vimbackup
set writebackup
set backup

ну и не забудьте создать сами директории под вашей домашней директорией :)

Но поговорить я хотел не об этом :) Я хотел поговорить о глобальных букмарках :)

m[A-Z] - создает букмарк  позиции в файле, который вы редактируете в данный момент. (В командном режиме нажимаем mA)

`[A-Z] - переходит за заранее созданый букмарк. (В командном режиме vim нажимаем `A)

вроде-бы, а что с этого такого? Самое гениальное в том, что букмарки могут быть в разных файлах, поэтому чтоб переключиться на другой файл в заранее запомненную позицию - достаточно нажатия двух кнопок :)

m[a-z], `[a-z] – соответственно работает внутри одного файла и при переходе на другой файл уже не работают (локальные букмарки)

PS. Да, и самое важное насчет глобальных букмарков - при правильно настроеном .vimrc  — они сохраняются между рестартами редактора :))))

Понравилось? Подпишись на RSS!

Хочешь написать статью? Мы ищем авторов (и не только за красивые глаза, но и за дохлых президентов).

Как ускорить несколько ssh соединений к одному хосту

Очень часто, когда работаешь с каким-либо сервером, приходится открывать много терминалов и соединяться в каждом из них с этим сервером.

В одном окошке логи посмотреть, в другом конфигурацию подправить, в третьем - перезапускать какого-то демона ;)

И если сервер при этом запрашивает пароль - то все, беда. В каждом из окон придется его вводить.

Оказывается, ssh имеет возможность это оптимизировать ;)

Открываете ~/.ssh/config и добавляете строки

Host *
ControlMaster auto
ControlPath ~/.ssh/master-%r@%h:%p

И все :)

Эта настройка приводит к тому, что ssh клиент кроме соединения к удаленному хосту будет слушать так же и локальный сокет. Все последующие клиенты ssh будут сперва проверять наличие этого сокета и только потом пытаться соединиться по сети с удаленным хостом. Если же локальный сокет есть - то последующие соединения будут использовать его, а не устанавливать соединение сами. Таким образом несколько ssh сессий разделяют одно и тоже TCP соединение.

Все подробности в man ssh_config (5) и в man ssh по строке  Control :)

Если какой-то из хостов не поддерживает эту функцию протокола (а это ssh v4), то для него эту конфигурацию можно отключить

Host very-old-server.com
ControlMaster no

ssh -M user@host соединяется в режиме ‘мастера’ и спрашивает пароли и все что положено :)

Чуть подробней и на английском на linux.com

Понравилось? Подпишись на RSS!

Хочешь написать статью? Мы ищем авторов (и не только за красивые глаза, но и за дохлых президентов).

Ошибка запуска eAccelerator

Я столкнулся со следующей ошибкой в Linux, но, я думаю, она может появляться и в FreeBSD тоже.

Итак, если ты получили ошибку

eAccelerator: shmmax should be at least 2MB

это может обозначать две вещи -

Очевидная — Ему не хватает системной разделяемой памяти

Посмотреть текущее значение SHM памяти можно при помощи

cat /proc/sys/kernel/shmmax

Изменить -

echo “67108864″ > /proc/sys/kernel/shmmax

(значение в байтах)

Неочевидная — Изменилась версия API ядра

Если эта ошибка у вас возникает ПОСЛЕ обновления ядра на Linux системе, то, скорее всего, это именно оно :)

Лечится путем скачивания исходников eAccelerator и перекомпиляции

export PHP_PREFIX="/usr/local"
$PHP_PREFIX/bin/phpize
./configure --enable-eaccelerator=shared --with-php-config=$PHP_PREFIX/bin/php-config
make
strip ./module/eaccelerator.so
cp ./module/eaccelerator.so ${ВАША_ДИРЕКТОРИЯ_PHP_МОДУЛЕЙ}

Понравилось? Подпишись на RSS!

Хочешь написать статью? Мы ищем авторов (и не только за красивые глаза, но и за дохлых президентов).

Убунту: просыпаемся и засыпаем :)

All  credits to http://www.flickr.com/photos/alasam/
All credits go to Alasam, http://www.flickr.com/photos/alasam/

Итак, после долгого затишья решил поделится с вами потрясающей новостью. Если коротко - Я его победил!

Suspend/Resume на Убунту работает катастрофически нестабильно с коммерческим фрайвером для нвоый ATI плат - fglrx.

В частности, hibernate оно делать умеет и нормально выключается/включается, а вот засыпать нет.

Точнее компютер нормально засыпает, а при resume не только не может восстановить видео режим, но и намертво вешает систему.

Итак, магическая таблетка. Добытая много часовым мучением и отладкой

  • Устанавливаем пакет uswsusp
    aptitude install uswsusp
  • Проверяем, что работает выключение hibernate
    s2disk
  • Проверяем, что работает засыпание-suspend
    s2ram -f -a 3 -s
  • Переключаем pm-utils на использование uswsusp
    Надо создать файл
    /etc/pm/config.d/01hp_quirks
    С содержимым:
    SLEEP_MODULE=”uswsusp”
    SUSPEND_MODULES=”r8169″
    DROP_PARAMETERS=”–quirk-none”
    ADD_PARAMETERS=”–quirk-s3-bios –quirk-s3-mode –quirk-vbestate-restore”
    HOOK_BLACKLIST=”20-video-quirk-pm-hp.quirkdb 20-video-quirk-pm-misc.quirkd      99video 98video-quirk-db-handler”

    И все, все работает как миленькое, никаких больше изменений делать не надо :)

Да, машинка (как позывает s2ram -i)

sys_vendor   = “Hewlett-Packard”
sys_product  = “HP Pavilion dv7 Notebook PC”
sys_version  = “049D210000241210000020000″
bios_version = “F.10″

Видео плата - ATI Mobility Radeon 4500 — это важно :)

Понравилось? Подпишись на RSS!

Хочешь написать статью? Мы ищем авторов (и не только за красивые глаза, но и за дохлых президентов).

Пятничное: Самое правильное использование Unix

Правильное использование Ubuntu. Для настоящих админов :)

Понравилось? Подпишись на RSS!

Хочешь написать статью? Мы ищем авторов (и не только за красивые глаза, но и за дохлых президентов).

Backup: Требования к backup системе

Администраторы делятся на две группы: те которые не делают backup и те, которые УЖЕ делают.

Backup в распределенной офисной среде

Требования к backup системам существенно отличаются в зависимость от того, где это испольется - в какой-либо организации или дома.

Основные требования к backup системам в офисах/организациях

  • Максимальная автоматизация процесса
  • Сбор информации со многих компьютеров одновременно
  • Управление библиотекой носителей (сменные диски/ ленты и т.д.)

Конечно, там есть еще огромное количество деталей и они сильно влияют на архитектуру системы. У вас могут быть пользователи генериеующие гигантские файлы, но в небольшом количества (типичный пример - CAD/видеомонтаж/дизайн), простонебольшие файлы в среднем количестве (word processing и подобное), или же мелкие файлы, но тоже в огромных количествах (как пример - программирование).

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

Backup на домашнем компьютере

Для домашней системы требования должны быть совершенно другие.

  • Она должна напоминать, что пришло время делать backup
  • Она должна быть “легкой”
  • Не требовать технических навыков - т.е. просто поставил, настроил пути откуда, куда, с какой частотой - и забыл.

Мои личные требования к такой системе:

  • распознавание и исключение? дублирующихся файлов (с возможностью указать, какая из директорий - основная, тогда оригинал должен остаться в этой директории, а все дубли - ссылаться на него)
  • распознавание переноса файла в системе - поэтому не нужно делать новую копию, а просто указать, что файл переместился (ну и слинковать его в случае чего)
  • поддержка директорий с ручной сортировкой. Объясняю - у меня есть несколько директорий (музыка, видео, документация), которая существует в виде отдельной копии и которая вручную уже отсортирована и хранится на внешнем носителе. Поэтому - когда обнаруживается, что какой-либо файл УЖЕ есть в этой резервной копии - его не нужно копировать, достаточно поставить линк.
  • поддержка инкрементальных backup-ов
  • отсутствие своих _закрытых_ баз данных - т.е. с которыми сложно работать при помощи внешних инструментов (т.е. для восстановления из backup я хотел бы использовать file manager простой, а не хитроумную программу какую-то). Hint: можно использовать unionfs, чтоб накладывать инкрементальные backup друг на друга.
  • Находить изменение _части_ большого файла и сохранять только это изменение - НЕ требуется.
  • Поддежка внешних носителей - я хотел бы делать backup на внешний винчестер, который подключается только на время backup. В оставшееся время он лежит выключенный.
  • В идеале - создание CD/DVD с этой резервной копии - для архивации и более долговременного хранения.
  • Разные сроки хранения файлов и их ротации (т.е. я не хочу иметь классическую схему с - полный backup раз в неделю, инкрементальные - каждый день). Какие-то директории не нужно так часто сохранять, какие-то лучше делать полный backup ежедневно.
  • Напоминание о необходимости сделать backup :))))
  • Напоминание о его завершении.

Вот такие заметки. В следующих выпусках я напишу, какие успехи в плане нахождения такой системы. Следите за обновлениями.

Photo by jonord .

А какие требования к backup у ВАС? Напишите в комментариях.

Понравилось? Подпишись на RSS!

Хочешь написать статью? Мы ищем авторов (и не только за красивые глаза, но и за дохлых президентов).

Апгрейд до 2.8.4

Друзья, если у вас есть блог на WordPress - рекоменду его поднять до последней версии.

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

По крайней мере, так заявлено в официальном заявлении.

Если честно - я просмотрел код, ответственный за эту ошибку. Ну :) его достаточно сложно использовать.

Предупреждение - если у вас стоит тема K2 (как у меня) и используется ее родной sidebars - ни в коем случае не подымайте версию WordPress - а то у вас упадет все-все-все. Последние пару часов нестабильность работы моего блога этим и объяснялась - я пробовал скрестить старую версию темы и новый wordpress - пока это не получается.

Понравилось? Подпишись на RSS!

Хочешь написать статью? Мы ищем авторов (и не только за красивые глаза, но и за дохлых президентов).

FreeBSD: Как отключить ssh?

Очень просто.

  • Заходим в файл /etc/rc.conf
  • Добавляем или меняем существующую строчку на

sshd_enable="NO"

  • Перезапускаем сервер.
    Либо просто набираем /etc/rc.d/sshd stop

Понравилось? Подпишись на RSS!

Хочешь написать статью? Мы ищем авторов (и не только за красивые глаза, но и за дохлых президентов).

FreeBSD: Как проверить firewall ?

Иногда нужно бывает по-быстрому проверить работу firewall - какой трафик пропускается, а какой нет.

Самый быстрый, грубый и неточный способ - это просканировать порты :)

Сканер портов nmap

Ставим приложение nmap


cd /usr/ports/security/nmap
make install

После инсталяции запускаем его, эта команда просканирует порты занимаемые наиболее распространенными сервисами:

nmap -vv -n -F TARGET_IP

Если вам нужно просканировать конкретный порт или диапазон портов (скажем с 1 по 1024)

nmap -vv -n -p 1-1024 TARGET_IP

Понравилось? Подпишись на RSS!

Хочешь написать статью? Мы ищем авторов (и не только за красивые глаза, но и за дохлых президентов).