Статьи

Миграция домена на сервер Unix

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

Почему миграция не так проста, как кажется

На первый взгляд, эта задача может показаться достаточно простой: просто загрузите файлы по FTP в вашу локальную систему, а затем снова загрузите их на новый сервер.

Однако такой подход имеет несколько серьезных недостатков:

  • права доступа к файлу не будут сохранены
  • владение файлом изменится
  • Файлы ASCII с неизвестным расширением могут рассматриваться как двоичные файлы
  • файлы будут загружены и загружены в несжатом виде, что приводит к потере времени, полосы пропускания и системных ресурсов.

Если вы продолжите в том же духе, вам понадобится много работы по настройке, чтобы все работало так, как раньше. Это особенно относится к сценариям CGI, где права доступа к каталогам и файлам имеют решающее значение для обеспечения функциональности.

Миграция стала проще

Вот метод, который упростит вашу миграцию и сократит ненужную работу в процессе.

  1. Войдите на свой старый сервер через Telnet (например, под именем пользователя «владелец домена»).

  2. Перейдите в каталог вашего домена (например, :cd /usr/www/htdocs/yourdomain

  3. Затем сожмите файлы в архив, введя следующее в командной строке:
    tar -cpz --same-owner -f yourdomain.tar.gz * .htaccess

    Команда «tar» требует следующий синтаксис:
    tar -function -option file
     function:   c create archive
     option:     p extract all protection information
       z compress data with gzip
       --same-owner create extracted files with the same ownership
       f use archive file

    В нашем примере выше будет создан файл « yourdomain.tar.gz Вы можете выбрать любое имя файла, которое вы предпочитаете, при условии, что вы используете расширение » .tar.gz Подстановочный знак « * Однако, поскольку это не будет включать файлы, начинающиеся с точки, вам придется перечислить эти файлы явно. В нашем примере это файл » .htaccess

  4. Теперь на новом сервере вам нужно будет настроить учетную запись пользователя « domainowner/usr/www/htdocs/yourdomain Обратите внимание, что если имена каталогов на вашем предыдущем сервере не совпадают с именами на вашем новом сервере, вам, возможно, придется изменить переменные пути в ваших CGI-скриптах. Следовательно, настоятельно рекомендуется просто клонировать имена каталогов.

  5. Теперь, чтобы загрузить файл архива » yourdomain.tar.gz Есть два возможных способа сделать это:
    • напрямую, войдя на новый сервер и загрузив оттуда файл, используя любой доступный FTP-клиент, например, WU-FTP. Обратитесь к документации программы, чтобы узнать, как это сделать, так как мы не можем это описать здесь.
      или

    • сначала загрузив файл в локальную систему, а затем загрузив его на новый сервер оттуда.

  6. В новой системе войдите через Telnet, например, как пользователь «владелец домена».

  7. Перейдите в каталог вашего домена, например, набрав: cd /usr/www/htdocs/yourdomain
  8. Далее вам нужно распаковать файл архива. Введите команду:

     tar -xz -f yourdomain.tar.gz 

       function:   x extract files from an archive
       option:     z uncompress data with gzip
                   f use archive file

Теперь вы успешно продублировали предыдущую знакомую среду в вашей новой системе!

Однако я рекомендую тщательно протестировать настройку нового домена, особенно сценарии CGI, до его официального запуска.

Синхронизируйте свои системы

Если некоторые файлы на вашем предыдущем сервере были изменены или добавлены до фактического запуска новой установки, вы можете синхронизировать две системы следующим образом:

  1. Войдите в систему через Telnet на вашем старом сервере, например, как пользователь «владелец домена».

  2. Перейдите в каталог вашего домена, например, введя:
    cd /usr/www/htdocs/yourdomain

  3. Перечислите все новые и измененные файлы, используя эту команду:
    /usr/bin/find -newer yourdomain.tar.gz > newerfiles.txt

    Эта команда сравнит файлы с архивным файлом, который вы создали в шаге 3 выше. Все новые и измененные файлы теперь будут перечислены в файле » newerfiles.txt

  4. Отредактируйте файл » newerfiles.txt../graphics Чтобы выполнить изменения локально, сначала загрузите файл и откройте текстовый редактор (только в формате ASCII!). Или, чтобы внести изменения онлайн, откройте ваш любимый онлайн-редактор.

    Затем новые и измененные файлы должны быть упакованы в архив с помощью этой команды:

     tar -cpz --same-owner -f yourdomain-new-files.tar.gz -T  
    newerfiles.txt
    option:   T get names to extract or create from file F
  5. Теперь загрузите только что созданный архивный файл « yourdomain-new-files.tar.gz

  6. Чтобы распаковать архив, введите следующую команду:

    tar -xz -f yourdomain-new-files.tar.gz

Поздравляем! Все файлы на вашей старой и новой системах были синхронизированы, и вы можете активировать перенесенный домен на его новом хост-сервере.