Собственно, счасте нашлось в статье педевикии про tar, под заголовком "Tar over SSH". Идея в том, что одной шайтан-командой можно зазиповать, упаковать в tar и сразу же отправить на новый сервер нужные директории. На старом сервере у меня места оставалось впритык, и архив со всеми данными тупо не уместился бы. А так - не пришлось возиться с расчисткой.
Как я уже писал, один клиент должен был отправиться на свой отдельный сервер, так что тащить его на мой новый смысла не было. Для этого мы его исключили опцией --exclude.
На новом сервере внутри директории, где будут лежать сайты, заводим директорию import, куда может писать юзер, от имени которого мы потом будем править файлы (в примере называется webmaster). Итак, шайтан-команда:
tar -C /var/www/sites --exclude=site1.ru --exclude=site2.ru -czpvf - . | ssh webmaster@111.222.33.44 "cat > /var/www/sites/import/import.tgz"
Нас спрашивают пароль юзера webmaster на удаленном сервере, мы его вводим и терпеливо ждем. В конце концов нам сообщают, что счастье наступило.
Когда это случается, подключаемся путти к новому серверу юзером webmaster и делаем следующее:
cd /var/sites/import
gunzip < import.tgz | tar xvf -
То есть распаковываем архив в текущую директорию. Ломимся при помощи WinSCP на новый сервер и смотрим, чего получилось. Должно получиться следующее: в директории import лежат себе спокойненько все наши сайты как живые. По идее еще и права должны сохраняться, но мне видимо не повезло, и пришлось потом ходить расставлять их вручную.
Далее при помощи того же WinSCP выбираем из полученной груды мусора то, что хотим оставить, и перетаскиваем это мышкой на уровень выше в удобном windows-интерфейсе :)
В результате остается только добавить хосты в конфиг апача. Я для этого копировал конфиг со старого сайта, далее правил его в jEdit - сначала удалил все лишнее, затем автозаменой поправил пути к корням сайтов и к логам.
Вроде все. Прописываем в файл C:\Windows\System32\drivers\etc\hosts новый айпишник для наших сайтов и начинаем смотреть, чо как работает. Я попутно наводил некоторый порядок, приводя хозяйство к единообразному формату (например, чтоб название БД и корневой папки соответствовало основному домену и т.д.). На все ушло пол дня.
Когда все проверено - переписываем DNS-ы. Это с виду просто, но опять без секса не обошлось. Об этом в следующих выпусках :)