Артицле Дирецтори
Приликом одржавања WordPress сајта у HestiaCP окружењу , можете наићи на поруку о грешци „Ажурирање није могуће извршити јер се неке датотеке не могу копирати“.
Ово упозорење може изгледати алармантно, али је заправо један од најчешћих проблема везаних за дозволе у WordPress-у.
Обично се јавља током аутоматских надоградњи додатака, тема или језгра WordPress-а.
На површини, то је само „неуспешно ажурирање“, али основни узрок скоро увек указује на исту ствар: недоследне дозволе за датотеке.
Добра вест је да када једном разумете кориснички модел HestiaCP-а, можете потпуно решити проблем са само неколико команди.
Основни узрок проблема: Зашто долази до неусклађености дозвола?
У HestiaCP окружењу, свака веб страница (Vhost) ради под засебним системским корисником.
У међувремену, процеси веб сервиса (PHP-FPM / Nginx) се такође извршавају под системским корисничким налогом који одговара веб локацији.
Стога, када власник неких додатака или датотека тема постане root или други корисник, корисници веб странице неће имати право да мењају или бришу ове датотеке.
Током надоградње, WordPress треба да копира и пребрише ове датотеке. Ако дозволе нису исправне, надоградња ће бити прекинута и приказаће се горњи упит.
Основни разлог се може сажети у једну реченицу: власник датотеке више није корисник система веб странице.
Решење: Поправите дозволе за датотеке у SSH терминалу.
Испод су верификовани кораци поправке; једноставно извршите команде секвенцијално у SSH терминалу.
Молимо вас да замените your_user у примеру са вашим HestiaCP корисничким именом, а yourdomain.com са вашим стварним именом домена.
Читав процес не захтева поновно покретање сервиса и неће утицати на постојеће податке сајта.
Читав процес траје око два минута, и чак и почетници га могу успешно покренути из првог покушаја једноставним копирањем и лепљењем.
Пре него што наставите, препоручује се да потврдите да се терминал може пријавити као администратор како би се избегло прекидање везе током процеса.
Корак 1: Дефинисање променљивих
Прво, подесите две променљиве, корисничко име и име домена, у терминалу тако да се наредне команде могу директно поново користити.
# 设置你的 Hestia 用户名和域名
HESTIA_USER="your_user"
HESTIA_DOMAIN="yourdomain.com"Када се променљиве дефинишу, све наредне команде могу директно да их референцирају, избегавајући потребу за ручним уносом сваки пут.
Корак 2: Вратите власништво над датотекама (поправка језгра)
Присилите власника система и корисничку групу свих датотека у директоријуму веб странице да буду враћене одговарајућем кориснику HestiaCP-а.
chown -R $HESTIA_USER:$HESTIA_USER /home/$HESTIA_USER/web/$HESTIA_DOMAIN/public_htmlОвај корак је срж целог процеса поправке; када се реши питање власништва, проблем је решен.

Ако chown пријави да путања не постоји, прво проверите да ли се правопис променљиве поклапа са стварним директоријумом.
Корак 3: Ресетујте стандардне дозволе за датотеке и директоријуме за HestiaCP
Затим, подесите дозволе за директоријум на 755 и дозволе за датотеке на 644.
# 修复所有目录权限为 755
find /home/$HESTIA_USER/web/$HESTIA_DOMAIN/public_html -type d -exec chmod 755 {} \;
# 修复所有文件权限为 644
find /home/$HESTIA_USER/web/$HESTIA_DOMAIN/public_html -type f -exec chmod 644 {} \;Ова два скупа дозвола су стандардне конфигурације за HestiaCP, које могу истовремено задовољити и безбедност и могућност писања.
Скрипта са једним кликом (препоручено)
Ако желите да завршите све горе наведене операције одједном, можете користити следећи скрипт са једним кликом.
Једноставно замените your_user и chenweiliang.com са вашим стварним вредностима, налепите цео пасус у терминал и притисните Ентер.
USER="your_user" DOMAIN="chenweiliang.com" && chown -R $USER:$USER /home/$USER/web/$DOMAIN/public_html && find /home/$USER/web/$DOMAIN/public_html -type d -exec chmod 755 {} \; && find /home/$USER/web/$DOMAIN/public_html -type f -exec chmod 644 {} \;Додатни савети: Да би поправка била темељитија
Поправљање дозвола решава само непосредни узрок проблема „ажурирање се заглавило“. Да бисте потпуно решили овај проблем, постоје још две ствари које вреди урадити.
Прво, очистите преостале датотеке које је оставила прекинута надоградња; друго, научите како да извршите поправке у позадини без ослањања на SSH.
Ова два корака нису тешка, али могу значајно смањити вероватноћу понављања сличних проблема.
Следеће операције су све засноване на претпоставци да су дозволе управо враћене. Њихово извршавање по реду ће дати најбоље резултате.
Ако имате више од једне веб локације на вашем серверу, овај процес можете организовати и у шаблон скрипте за вишекратну употребу.
Уклоните привремене остатке надоградње
Након враћања дозвола, препоручује се чишћење свих привремених датотека које су остале након прекида надоградње WordPress-а.
Ове преостале датотеке се налазе у директоријуму wp-content/upgrade. Ако их не уклоните, следеће ажурирање може поново да се заустави.
rm -rf /home/$USER/web/$DOMAIN/public_html/wp-content/upgrade/*Не желите да користите SSH? Ручно то поправите у бекенду HestiaCP-а.
Ако вам је незгодно да користите командну линију, можете се пријавити и на бекенд HestiaCP-а и ресетовати дозволе преко менаџера датотека.
Идите на Датотеке (менаџер датотека) и идите на /home/USER/web/DOMAIN/public_html/wp-content.
Кликните десним тастером миша на фасциклу са додацима или темама и изаберите Ресетуј дозволе.
Након ресетовања дозвола, вратите се на администраторски панел WordPress-а и поново кликните на ажурирање; обично би требало да ради глатко.
Ако се иста грешка и даље јавља након извршавања бекенд операције, једноставно се вратите на горе наведено SSH решење и поново потврдите власништво.
总结
Ако наиђете на поруку „Ажурирање није могуће јер се неке датотеке не могу копирати“, не журите са поновном инсталацијом. У већини случајева, у питању је проблем са дозволама.
Коришћењем једне команде `chown` и две команде `find` за враћање власништва и дозвола, ажурирања WordPress-а се могу глатко завршити.
Развијање навике провере власништва над датотекама пре надоградње може фундаментално спречити понављање оваквих грешака.
Надам се да ће вам чланак „Решавање проблема са WORDPRESS промптом: Ажурирање није могуће наставити јер се неке датотеке не могу копирати. Овај проблем је обично узрокован недоследним дозволама за датотеке“, објављен на блогу Чен Веилианг ( https://www.chenweiliang.com/ ), бити од помоћи.
Слободно поделите линк овог чланка: https://www.chenweiliang.com/cwl-34583.html
