30 Мар

Установка PHP-5.2.17 в Debian Lenny/Squeeze

1. Добавляем в /etc/apt/sources.list следующие репозитории:

Squeeze :

    deb http://packages.dotdeb.org stable all
    deb-src http://packages.dotdeb.org stable all

Lenny :

    deb http://packages.dotdeb.org oldstable all
    deb-src http://packages.dotdeb.org oldstable all

2. Добавляем ключи:

wget http://www.dotdeb.org/dotdeb.gpg
cat dotdeb.gpg | apt-key add -

И далее по учебнику:

apt-get update
apt-get install php5

Тем, кому необходима версия 5.3, можно добавить в /etc/apt/sources.list :

deb http://php53.dotdeb.org oldstable all
deb-src http://php53.dotdeb.org oldstable all

Конечно же, для пользователей Debian Squeeze это совершенно не нужно, поскольку php-5.3 входит по умолчанию в официальные репозитории.

28 Фев

Проблемы с debian-sys-maint в MySQL

Скажу честно — я понятия не имею, что это за mysql-пользователь debian-sys-maint в Debian’е, и я даже не пытался это выяснить.Но лично многим моим клиентам он жизнь портит, соответственно — мне тоже.
Из-за него же нормально не получается скриптом /etc/init.d/mysql даже остановить MySQL.
Просто вылазит вот такая ошибка:

Stopping MySQL database server: mysqld.
Starting MySQL database server: mysqld.
Checking for corrupt, not cleanly closed and upgrade needing tables..
/usr/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)'
debatest:~# /usr/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)'

Ясно дело, что проблема с паролем этого юзера в БД mysql, но из-за чего случилась эта проблема — это неизвестная переменная, которая нам ничего не говорит о том, зачем вообще нужен этот юзер.
Ладно, как сменить пароль на его «собственный»?
Узнать такой пароль не проблема, он лежит в /etc/mysql/debian.cnf, а в нем строчка с паролем.
Копируем пароль (или задаем новый), заходим под root’ом в mysql и далее:

mysql> use mysql;
mysql> GRANT RELOAD, SHUTDOWN, PROCESS, SHOW DATABASES, SUPER, LOCK TABLES ON *.* TO 'debian-sys-maint'@'localhost' IDENTIFIED BY 'тут тот самый пароль';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'debian-sys-maint'@'localhost' IDENTIFIED BY 'оп/ть тот самый пароль' WITH GRANT OPTION;
# /etc/init.d/mysql restart

Проблема решена, ждем следующую.

17 Фев

Обзор возможностей BTRFS

Сегодня обнаружил интересный факт, что очень много людей попадают на мой блог через поисковики после запроса «btrfs». Не знаю, почему так происходит, учитывая, что у меня в блоге btrfs пока встречается только в кратком обзоре Debian Squeeze. Но факт есть факт.
Да и многие пока очень мало знают что-либо про btrfs. А знать стоило бы, файловая система, действительно, очень интересная и содержит просто огромную кучу функционала.

По этим причинам я решил написать небольшую статью, чтобы познакомить интересующихся с этой Файловой Системой.

В 2006 году летом в Сан-Хосе состоялся саммит разработчиков файловых систем. Сразу после этого саммита Крис Мэсон начал работу над созданием новой файловой системой BTRFS. И очень усердно.
Уже в начале 2007 года в списках рассылок разработчиков ядра Linux он сообщил, что первые результаты уже готовы. На тот момент он успел написать «10 547 строк слабо комментированного кода» и приглашал народ к тестированию.

В ноябре 2007 года происходит встреча разработчиков файловых систем, посвящённая вопросу создания файловой системы нового поколения для Linux (next generation filesystem, NGFS). На встрече присутствуют инженеры компаний Oracle, IBM, Intel, HP и Red Hat, принимающие участие в разработке файловых систем ext2, ext4, OCFS2, lustre, btrfs, AdvFS, Reiser4 и XFS.
В результате было решено, что:

  • Linux файловая система нового поколения необходима;
  • Файловая система Криса Масона, называемая btrfs, наиболее хорошо подходит на роль такой файловой системы;
  • Разработка файловой системы нового поколения и переход на неё будут осуществляться продолжительное время, и на этом этапе в качестве основной файловой системы стоит использовать ext4.

В начале 2009 года файловую систему btrfs включили в ядро Linux. Разработка btrfs далека от завершения. Предполагается, что промышленная эксплуатация btrfs будет возможна не ранее 2010 года.

Чем так интересна btrfs? Она включает в себя функционал различных файловых систем.
Многие называют btrfs свободным клоном ZFS — это совершенно неверно. ZFS отличная файловая система, но она не была включена я ядро linux по причине лицензионных конфликтов linux и zfs. В btrfs есть две особенности, идеи которых били позаимствованы у ZFS:

  • Как и ZFS, btrfs интегрирует в свой состав программный RAID
  • btrfs позволяет делать снимки данных ФС (snapshots)

Основные возможности btrfs:

  • Проверка целостности без размонтирования;
  • Записываемые снимки (writeable snapshots);
  • Динамическое выделение индексных дескрипторов (динамические иноды, dynamic inodes);
  • Контрольные суммы данных и метаданных;
  • Интеграция с device-mapper;
  • Поддержка RAID-массивов (одна файловая система на нескольких томах);
  • Сжатие;
  • Подтома (subvolumes);
  • Эффективное клонирование файловой системы и создание инкрементальных архивов;
  • Дефрагментация смонтированной файловой системы.
  • Поддержка сложных многодисковых конфигураций — RAID уровней 0, 1, 5, 6 и 10, а также реализация различных политик избыточности на уровне объектов ФС — то есть возможно назначить, к примеру, зеркалирование для какого-либо каталога или файла.
  • Copy-on-write (CoW) журналирование.
  • Контроль целостности блоков данных и метаданных с помощью контрольных сумм.
  • Зеркалирование метаданных даже в однодисковой конфигурации.
  • Полностью распределенное блокирование.
  • Поддержка ACL.
  • Защита от потери данных.
  • Выбор хэш-алгоритма.
  • Поддержка NFS.
  • Флаги совместимости, необходимые для изменения дискового формата в новых версиях btrfs с сохранением совместимости со старыми.
  • Резервные копии суперблока, по крайней мере — по одной на устройство.
  • Скоростные приоритеты для дисков.
  • Гибридные пулы. btrfs старается перемещать наиболее используемые данные на самое быстрое устройство, вытесняя с него «залежавшиеся» блоки. Эта политика хорошо согласуется с появившейся недавно моделью использования SSD (Solid State Drive).
  • Балансировка данных между устройствами в btrfs возможна сразу после добавления диска к пулу, отдельной командой — а не только постепенно, в процессе использования (как это реализовано в ZFS).
  • Диски для горячей замены, поддержка которых появилась и в ZFS.

Более того, метаданные файлов можно хранить на отдельных разделах. Насколько мне известно, на сегодня btrfs является единственной файловой системой, в котрой есть опция монтирования ssd, которой вы сообщаете, что монтируете ssd-диск. Благодаря этому, на ssd-диске, например, при обращении к какому-либо файлу, его временные метаданные не обновляются. Этим значительно сокращается изменение каких-либо данных на диске, что увеличивает его срок жизни на порядок. Плюс многие данные кешируются в память, чтобы исключить повторное обращение к диску.

Разработчики Ubuntu не так давно обещали сделать btrfs файловой системой по умолчанию в ubuntu-10.10, но недавно перенесли свои планы на версию 11.04. Посмотрим, как будет в этот раз. Хотя выбирать btrfs при установке отдельно уже можно. Как, кстати, и в Debian Squeeze.

На сегодняшний день GRUB не умеет загружать ядро и скрипты из btrfs-разделов. Поэтому, в любом случае, /boot/-раздел необходимо держать на какой-либо другой ФС.

При помощи btrfs-convert можно сконвертировать, например, ext3 в btrfs, получив функционал btrfs без потери данных. Причем потом можно обращаться к этому разделу и как к ext3 и как к btrfs. Можно без проблем удалить образ btrfs, лишившись его же функционала или наоборот, удалить образ ext3, оставшись навсегда в btrfs.

07 Фев

Небольшой обзор Debian Squeeze

Раз уж вышел новый релиз Debian, что бывает, как известно, редко, я решил немного его осмотреть со всех сторон.
Для этого пришлось его скачать и поставить, для начала, на виртуалку.
Вообще, обозревать я его сперва собирался исключительно с точки зрения серверного применения. Но раз уж существует столько поклонников Дебиана на своих десктопах, будем это учитывать и осмотрим и с этой стороны.
image hosting blogs journals
Изменения в интерфейсе видны спервых секунд.
Для установки на сервер это, конечно, мелочи, но своих поклонников это найдет.
Не могу сказать на 100%, но в Lenny я что-то не помню возможности выбора btrfs при установке. Неплохо, учитывая огромные перспективы этой ФС. С другой стороны, даже странно, что ее поддержку включили, учитывая, что она до сих пор в процессе разработки и ни о какоц стабильности пока речи нет. Но мы — люди рискованные, так что ставим btrfs прямо на корневой раздел! Позже поставлю еще пару дисков под btrfs, дабы побаловаться с ее возможностями рейдирования и разделения meta с основной ФС.
И, кстати, не советую даже энтузиастам держать /boot/ на btrfs, поскольку grub не умеем с него загружать ядро.
Ставить Squeezze я решил в минималке, дабы остальное устанвоить потом. Так интересней.
Кстати, поддержки ext4 тоже не было в Lenny, но в Squeeze все это есть. К тому же управление установки на LVM или RAID стало куда удобней.

По умолчанию, по неизвестной причине, для x86-систем, теперь устанавливается grub2. Хорошо это или плохо — решать вам.
Мне до сих куда удобней и проще работать со старым добрым grub1.

image hosting blogs journals

В данный релиз решили добавить php-5.3, что не евляется пока плюсом для тех, кому необходим Zend Optimizer. То же и с MySQL версии 5.1 — советую перед обновлением с 5.0 сперва сделать резервные копии всех ваших Баз Данных, иначе можете потерять важные данные.

Версия nginx в репозитории не порадовала — 0.7.67-3. Я, конечно, понимаю, что все стабильное. Но вот до выхода nginx-1.0 он стабильным не является (хоть и не падал пока у меня нигде ниразу), а 0.9.4 не менее стабилен, а то и более. Но вот хотя бы до 0.8.53 могли бы обновить, там много есть чего полезного. Или просто мейнтейнеры вот так решили подумать о любителях старых ядер < 2.6.22.*, где данная версия nginx будет таки работать. WEB-разработчикам, как всегда, достаточно набрать

 # apt-get install mysql-server php5 apache2 libapache2-mod-php5

И через пару минут приступать к своему творчеству.

Debian Squeeze Iceweasel
Iceweasel в данном релизе я бы древним точно не назвал — установлена версия 3.5.16. Четверка пока в релиз не вышла, но, уверен, в следующем релизе Debian порадует любителей 4.x

По поводу KDE — для его установки вам придется тянуть из интернета 632Мб пакетов! Не спорю — это жесть.
Про работу кед могу сказать только одно — они работают. Без проблем. Тормозов тоже не обнаружил.

Ядро стоит тоже не самое новое, но зато, действительно, очень стабильное — 2.6.32-5. Кстати, XEN на нем работает безупречно, как dom0 так и domU.
Хотя до сих пор многие хостеры предпочитают, почему-то, 2.6.18 и 2.6.28.

Gnome установлен 2.30.2 — удивительно, но не старый. Не уверен, что в следующем релизе будет Gnome3, но я вот его не жду, поскольку не верю в него, как не верил и в KDE-4.

Теперь в Дебиане можно без проблем установить вместо привычного linux-ядра ядро FreeBSD (kfreebsd). Не представляю, правда, как после этого Debianможно называть Linux’ом, но факт есть факт. Как ведет себя Debianс ядром FreeBSD я сказать не могу, поскольку не пробовали не горю желанием. Хотя… как-нибудь надо бы попробовать…

Теперь Debian можно скачать как torrent.

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

06 Фев

Релиз Debian Squeeze

Debian squeeze
Поздравляю всез дебианщиков!
В соответствии с новым оформлением Дебиана, изменили и дизайн официального сайта.
Как всегда, поддержка кучи архитекур. Вот только архитектура ARM исключена, но поклонникам можн сильно не волноваться, поскольку обещется быть неофициальная его поддержка.
Очень нехило обновлены многие программные пакеты, среди которых:

  • KDE 4.4.5
  • GNOME 2.30
  • Xfce 4.6
  • Linux 2.6.32
  • GRUB2 1.98
  • OpenOffice.org 3.2.1
  • GIMP 2.6.11
  • Iceweasel 3.5.16
  • PostgreSQL 8.4.6
  • MySQL 5.1.49
  • GCC 4.4.5
  • Apache 2.2.16
  • Samba 3.5.6
  • Python 2.6.6, 2.5.5 и 3.1.3
  • Perl 5.10.1
  • PHP 5.3.3
  • Asterisk 1.6.2.9
  • Nagios 3.2.3
  • Xen 4.0.1

Кстати, при переходе на MySQL-5.1 будьте крайне осторожны, чтобы не поубивать все ваши таблицы данных. Но и плюшек там, да, хватает…
Но и, конечно, для любителей фишек Zend’а — до PHP-5.3, само собой, не стоит обновляться :)

А я пока пойду скачаю образ и поиграюсь на виртуалке…