Ошибки синхронизации
1. При синхронизации базы данных между Unix-Windows серверами появляется ошибка, связаная с gzip.
Когда запускается команда синхронизации БД с рабочего сайта на локальный
drush sql-sync @blog.hos @blog.loc
все работает нормально, пока sql-sync не начнет копировать файл дампа с удаленного компьютера. Вот ошибка.
Copying dump file from Source to Destination.
Starting to import dump file onto Destination database.
Failed to gunzip input file. [error]
Query failed. [error]
Выяснилось, что это связано с файлом lib/Drush/Sql/SqlBase.php
Источником этой ошибки является команда «gunzip», которая не может быть выполнена в ОС Windows.
Нужно отказаться от gunzip и использовать вместо него gzip -d
Fix drush можно взять из этого источника.
2. Еще одна ошибка при попытке синхронизировать БД с удаленного сервера на локальный
ERROR 1050 (42S01) at line 1: Table 'actions' already exists
хотя БД на локальном сервере была пустая, но бывшая в употреблении.
Пришлось удалить эту пустую БД и создать новую - ошибка исчезла.
3. $ drush @blog.hos status
env: drush: No such file or directory
Утилита не может найти директорию, где установлена drush.
Нужно откорректировать файл ~/.bashrc, ввести в него следующие строки:
export PATH="$HOME/.composer/vendor/bin:$PATH"
alias composer="~/bin/composer.phar"
alias drush="~/.composer/vendor/bin/drush"
4. При синхронизации файлов с помощью команд
drush rsync или drush core-rsync
может потребоваться корректировка прав доступа на папки и файлы.
Для этого надо перейти в корневую папку сайта и выполнить команды:
find -type d -exec chmod 755 {} \; - Права доступа на папки,
find -type f -exec chmod 644 {} \; - Права доступа на файлы,
chmod 777 sites/default/files
chmod 444 sites/default/settings.php