Работаю с pop3-сервером через imap-функции PHP. В теории UID сообщения не должен меняться при удалении писем. Удаляю сообщение. UID оставшихся меняется и всегда равен порядковому номеру сообщения. Что это может значить?
P.S. Вот так определяю UID: $uid = imap_uid($mbox, $i), где $mbox - stream, $i - порядковый номер сообщения
Хочу разобраться, как правильно прописывать опции ./configure для компиляции нового PHP.
Правильно ли в качестве основы брать опции из phpinfo() работающего на данный момент интерпретатора?
Насколько я понимаю, все опции делятся на 2 типа:
1)Пути к чему-либо нужному
--exec-prefix=/usr
--bindir=/usr/bin
--sbindir=/usr/sbin
2)Использовать ли определенные модули/опции
--without-mysql
--without-gd
--with-imap
С опциями 2 типа все понятно. А как устанавливать опции 1 типа? Я могу указать какие угодно каталоги и make install скопирует все необходимое в них? Или я могу свободно выбирать каталоги для компилируемых файлов, а пути к другим пакетам CentOS менять нельзя? Как в этом разобраться? Может ссылки какие-нибудь посоветуете?
Требуется установить (скомпилировать из исходников) второй интерпретатор PHP на CentOS,чтобы его установка никак не повлияла на первый (основной) интерпретатор. Как я делал:
- скачал исходники PHP
- взял опции старого интерпретатора из phpinfo()
- добавил нужные мне опции
- запустил ./configure с этими суммарными опциями
- make
- вместо make install просто скопировал sapi/cli/php в /bin/phpimap/php (не стал запускать make install, так как файлы скопируются поверх старого интерпретатора и будет только новый, а мне нужно сохранить старый)
пытаюсь запустить скрипт из shell /bin/phpimap/php /path/testscript.php, а он мне говорит, что не может инициализировать модули:
PHP Warning: PHP Startup: dbase: Unable to initialize module
Module compiled with module API=20050922, debug=0, thread-safety=0
PHP compiled with module API=20060613, debug=0, thread-safety=0
These options need to match
in Unknown on line 0
Требуется скопировать содержимое раздела ext3 с одного диска на другой. Сделал dump исходного диска в файл. А теперь не соображу, как использовать restore, чтобы он залил дамп на другой диск, а не обратно на исходный.
Заранее благодарен
Ситуация: есть 2 идентичных HDD (/dev/hda и /dev/hdb), на каждом разделы RAID Autodetect, которые объединены в Software RAID1.
Вопрос как правильнее забэкапить весь диск целиком и как его потом восстановить?
Мои варианты:
1)бэкап: dd if:/dev/hda of:/path/hda.dump
восстановление: dd if:/path/hda.dump of:/dev/hda
потом объявление разделов raid /dev/hdb битыми и их синхронизация по разделам /dev/hda
2)отдельно по разделам
бэкап:
dd if:/dev/mdo of:/path/md0.dump
dd if:/dev/md1 of:/path/md1.dump
Ситуация: на разделе ext3 с корневой ФС CentOs 5.4 появился бэд. SELINUX ругался про перевод разделов в режим read-only.Был вычислен точный LBA , бэда и по нему с помощью debugfs определен inode = 8. Но при проверке ncheck 8 был получен ответ: inode not found, хотя по testb 30221 (номер блока в разделе) Block 30221 marked in use. Поскольку я планировал определить имя файла и заменить его (таким образом восстановив ФС), то теперь зашел в тупик.
Вопросы:
1)Я так понимаю, что на inode 8 есть файл, но ему не присвоено имя? Может ли SELINUX иметь отношение к такому «безыменному файлу»? Что это может быть за файл без имени в начале раздела (это примерно 123Мб от начала раздела)? Может это часть суперблока или каталог inodes?
2)Может, такой inode и не используется ничем и ОС будет работать и без него?
2)Можно ли восстановить ФС, если inode 8 ей используется?
Ситуация: ОС CentOS 5.1, есть 2 HDD, на них симметричные Software RAID разделы, из них были собраны /dev/md0, /dev/md1, /dev/md2. При загрузке с Live CD да данной машине raid - устройства были инициализированы как /dev/md125, /dev/md126, /dev/md127. После этого ОС CentOS 5.1 (расположенная на дисках с SRAID) перестала загружаться из-за того, что /dev/md1 стал /dev/md126.
Отсюда вопросы:
1)Где вообще хранится информация о том, какое должно быть имя raid - устройства и почему они так легко сбиваются? Было бы логично, чтобы /dev/md1 был /dev/md1 при загрузке с любой ОС, если конечно в ней /dev/md1 не занято.
2)Как восстановить имя /dev/md1 в родной ОС (в консоли восстановления) без риска повреждения данных? В консоли восстановления мне доступна mdadm и можно удалить raid устройство и создать его заново под новым именем, но не повредятся ли данные на нем?
Ситуация: ОС CentOS 5.4, есть 2 HDD. На первом HDD располагаются разделы /boot и / и разделы Software RAID. На втором HDD - парные первому диску Software RAID. Накрывается первый диск (бэды), поэтому требуется его клонировать на исправный диск той же модели.
Отсюда вопросы:
1)Какими средствами лучше перенести разделы с данными, чтобы минимизировать риски повреждения последних?
2)Какие способы копирования разделов правильно применять в разных ситуациях?
Ситуации:
-перенос раздела без бэдов на другой диск
-перенос раздела с бэдами на другой диск
-бэкап раздела на другой диск
-полного клонирование HDD, включая MBR
Способы (которые я знаю):
-cp
-dd
-копирование разделов дисковыми утилитами вроде Norton Ghost, Paragon Partition Manager, ...
Ситуация такая: накрылся HDD, на копии RAID1 остались файлы (вроде .MYD и другие) БД MySQL (не все БД дампились - речь именно о таких). Как грамотно перенести эти файлы на новую ОС? Просто скопировать их в тот же каталог или нужно сделать что-то еще? Возможно ли вообще полное восстановление БД?
Ситуация: стоял CentOS 5.4 на 2 HDD WD4000AAKS. Корневая ФС находится на единственном разделе ext3 1 диска, остальные разделы находятся на программном RAID1 (зеркало) на 1 и 2 HDD.
При загрузке ОС пишет примерно следующее (скопировал из чужой темы, но суть та же):
/:UNEXPECTED INCONSYSTENCY; RUN fsck MANUALLY.
(i.e., without -a or -p options)
***An error occurred during the file system check.
***Dropping you to a shell; the system will reboot
***When you leave the shell.
Give root password for maintenance
(or type Control-D for normal startup):
(Repair filesystem) 1 # //а
Запускаю fsck.
Pass 1:Checking inodes, blocks, and sizes
Error reading block 3408065 (Attempt to read block from filesystem resulted in short >read) while doing inode scan Ignore error?
Судя по всему, накрылся 1 HDD.
Вопросы:
1)Как скопировать содержимое SRAID с HDD2?
2)Как хотя бы частично восстановить корневую ФС для переноса сохранившихся файлов на новый CentOS?
3)Имеет ли смысл пробовать восстановить корневую ФС полностью и какую диагностику провести, чтобы это понять?