Я делаю веб-сайт на joomla.
Довольно часто мне приходится переносить веб-сайт с тестового сервера на главный сервер.
Сначала я скопировал файлы на новый сервер, затем мне снова пришлось изменить права доступа к каталогам для папок, и это заняло много времени. Затем кто-то сказал использовать
tar -P
чтобы сохранить разрешения, и это облегчило мне жизнь, сохранив все разрешения.
Теперь я столкнулся с другой проблемой. Есть несколько скриптов, которые создают свои собственные файлы и папки. теперь они читают и пишут для владельца.
Но когда я меняю сервер, эти скрипты не сохраняют свою собственность на те файлы, которые они создали, поэтому я снова меняю 100 файлов разрешений.
Есть ли какое-либо решение, чтобы сохранить право собственности на эти скрипты на новом сервере?
Если эти сценарии создаются для пользователя с идентификатором (или более известным как имя входа) foo и uid (который является внутренним представлением номера имени входа) равен 8080, например. и вы используете tar -p, тогда как в новой системе пользователь должен иметь тот же uid в новой системе, что и в тестовой системе.
Проверьте сопоставление uid с идентификатором и измените его в соответствии с вашей системой тестирования, тогда все вещи одинаковы на обоих серверах.
Вы также можете создать отдельную группу и предоставить ей права на чтение и запись. Затем поместите всех своих пользователей, которым требуется доступ для чтения / записи к этим файлам, в эту группу.
Теперь вы можете рекурсивно изменять группы на веб-сервере. Используйте chown -R: thegroup / path / to / webserver. Если обе группы одинаковы на обеих машинах, проверьте также сопоставление uid и id и измените их так, чтобы они соответствовали обоим серверам. Тогда вам не нужно делать чавку каждый раз.
Чтобы справиться с этим, вы должны знать, в чем именно разница между id foo и uid 8080.
У вас есть ssh-доступ к обоим серверам? В таком случае вы можете попробовать rsync с параметром '-a'. Не уверен, что это решит проблему, но попробовать стоит.