Saga stofnunar heimaskýs. Hluti 5. Uppfærsla 2019 – PHP 7.2, MariaDB 10.4 og Nextcloud 17

Fyrir tveimur árum birti ég greinaröð um efnið að búa til vefþjón byggðan á Debian 8 og ræsa Nextcloud 11 þjónustuna á henni. Nokkrum mánuðum síðar birtist viðbót sem innihélt „mismunandi“ upplýsingar um uppsetningu Nextcloud 13 á Debian 9. Í lok árs 2018 uppfærði ég rétt í þessu Debian og Nextcloud og rakst ekki á nein óvenjuleg eða áhugaverð vandamál. Uppfærslan í lok árs 2019 var áhugaverðari og þess virði að skrifa um hana.

Saga stofnunar heimaskýs. Hluti 5. Uppfærsla 2019 – PHP 7.2, MariaDB 10.4 og Nextcloud 17

Þessi grein mun fyrst og fremst nýtast þeim sem, samkvæmt leiðbeiningunum í fyrri fjórum greinum, „settu saman“ Nextcloud 13 fyrir sig. Debian 9 (Ég sendi kveðjur til tíu áskrifenda minna varðandi Nextcloud, sérstaklega þeirra sem þetta var fyrsta reynslan í heiminum) LinuxFyrir þá sem hyggjast byggja þjónustuna upp frá grunni mæli ég með að nota fyrstu fjórar greinarnar í þessari greinaröð sem grunn, með aðlögunum fyrir núverandi útgáfur. Debian 10 og Nextcloud 17. Fyrir lengra komna notendur Linux Greinin gæti fallið einhvers staðar á milli „ómerkileg og gagnslaus“ og „ekki slæm, allt í einu svindlblað“.

efnisyfirlit

1. hluti. Uppsetning umhverfisins Debian til daglegrar notkunar
2. hluti. Að búa til netþjón - að stilla LAMP í Debian
Part 3. Að búa til persónulegt ský - setja upp og stilla Nextcloud
4. hluti. Uppfærsla 2018 – Debian 9 og Nextcloud 13
Hluti 5. Uppfærsla 2019 – PHP 7.2, MariaDB 10.4 og Nextcloud 17

Fljótleg kaflaleiðsögn

Formáli
Uppfæra Debian
Uppfærir PHP í útgáfu 7.2
Uppfærsla MariaDB í útgáfu 10.4
Uppfærir Nextcloud í útgáfu 17
Eftirsögn

Formáli

Upphaflega vildi ég Debian 10, setja upp og stilla Nginx, sem hefði auðveldlega stutt nýjustu Nextcloud 17. Hins vegar hafði ég ekki tíma fyrir allt þetta, svo þessi grein er safn leiðbeininga um að uppfæra Nextcloud úr 13 í nýjustu útgáfu 17, með undirbúningi vefþjónsins.

Fyrst þurfum við að útskýra hvers vegna róttækar breytingar voru nauðsynlegar á vefþjóninum. Þjónninn okkar byggir á núverandi og studdu ... Debian 9. Þú getur einfaldlega uppfært stýrikerfið og allir íhlutir vefþjónsins munu fá að minnsta kosti öryggisuppfærslur. Allt væri í lagi ef við höldum áfram að nota Nextcloud 13 eða uppfærum aðeins í útgáfu 14. Hins vegar er Nextcloud 13 ekki lengur stutt og stuðningur við útgáfu 14 er að minnka. Frá og með útgáfu 15 mun Nextcloud bjóða upp á að breyta gagnagrunninum í big int til að styðja fjögurra bæta kóðun og með MariaDB 10.1 verður þetta mjög vandasamt. Nextcloud 17 krefst PHP 7.1-7.3, en Debian Útgáfa 9 inniheldur aðeins útgáfu 7.0 í upprunalegu geymslunum sínum. Rétta lausnin, hvað varðar áreiðanleika og fyrirsjáanleika, væri að uppfæra í næstsíðustu útgáfuna af Nextcloud, en á síðustu tveimur árum hef ég orðið svo öruggur með áreiðanleika þjónustunnar að ég vildi uppfæra í nýjustu útgáfuna og uppfæra vefþjóninn fyrir framtíðina. Þess vegna, til að uppfæra í Nextcloud 17, er best að uppfæra MariaDB í núverandi stöðugu útgáfu 10.4 og PHP í 7.2. Nánar tiltekið 7.2, ekki núverandi 7.4. Staðreyndin er sú að Nextcloud 13 krefst PHP 5.6, 7.0 krefst 7.2 og Nextcloud 17 krefst PHP 7.1-7.3. Að nota PHP 7.2 er þægilegt til að lágmarka uppfærsluna. Þú þarft ekki að uppfæra Apache þjóninn - það er nóg að setja upp öryggisuppfærslurnar sem þjónustuteymið dreifir. DebianHins vegar, fyrir MariaDB og PHP uppfærslur, þarftu að tengja ytri geymslur.

Þegar ég var að kynnast Nextcloud, uppfærði ég það „handvirkt“: með sérstakri skipun frá stjórnborðinu var síðan skipt yfir í viðhaldsham, skjalasafnið með nýju útgáfunni af síðunni var hlaðið niður og pakkað niður handvirkt, skrárnar voru uppfærðar og uppfærsluferlið var hafið. Slík uppfærsla leiddi yfirleitt til væntanlegs árangurs, þó ég hafi ekki verið latur við að taka öryggisafrit af síðunni, gagnagrunninum og notendagögnum. En sjálfvirkar uppfærslur leiddu stundum til alls kyns óvart. En það var fyrir löngu síðan, stöðugleiki vélarinnar hefur aukist mikið síðan þá og í þetta skiptið gerði ég uppfærslur eingöngu í gegnum vefviðmótið. Að vísu gat ég samt ekki komist í burtu frá skipanalínunni. Meðan á endurtekinni uppfærslu á hverri nýrri útgáfu stendur munu ýmsar viðvaranir og tilkynningar birtast á stjórnborðinu, sem þarf að „fjarlægja“ með því að framkvæma skipanir á skipanalínunni á marktækan hátt. Þú þarft ekki að gera þetta - þjónustan mun samt virka. Þó að þessi nálgun sé í grundvallaratriðum röng, þá virkaði Nextcloud fyrir mig í þessum ham í 3 mánuði áður en ég tók markvisst á vandamálunum sem upp komu.

Debain uppfærsla

Stöðva vefþjóninn:

# service apache2 stop


Og við uppfærum:

# apt-get update
# apt-get dist-upgrade


Eftir uppfærsluna geturðu athugað stýrikerfisútgáfuna og prófað endurræsingu til að ganga úr skugga um að allt hefjist eðlilega eftir uppfærsluna:

# cat /etc/debian_version
# reboot


Uppfærir PHP í útgáfu 7.2

Stöðva vefþjóninn:

# service apache2 stop


Bættu við vottorði og PPA lyklum, PHP geymslu:

# apt install ca-certificates apt-transport-https
# wget -q https://packages.sury.org/php/apt.gpg -O- | apt-key add -
# echo "deb https://packages.sury.org/php/ stretch main" | tee /etc/apt/sources.list.d/php.list


Þegar gömlu útgáfunni af PHP 7.0 er eytt, verður phpmyadmin einnig eytt, þar sem við munum hreinsa „sporin“ úr eyddum pökkum með því að nota sjálfvirkt fjarlægja. Þetta mun ekki valda neinum sérstökum erfiðleikum, þar sem engar sérstakar stillingar voru gerðar fyrir phpmyadmin og það verður engin vandamál að setja það upp aftur.

# apt-get purge php7*
# apt-get --purge autoremove
# apt-get update
# apt-get install php7.2 phpmyadmin


Að setja upp einingar sem þarf fyrir Nextcloud 17:

# apt-get install php7.2-mysql php7.2-curl php7.2-xml php7.2-gd php7.2-json php7.2-mbstring php7.2-zip php7.2-intl
# apt-get install php-memcached php-apcu php-redis php-imagick


[ Þessi texti skrifað sérstaklega fyrir síðuna www.habr.com höfundur AlexanderS.
Tengill á upprunann er valfrjáls, en það er mjög mælt með því að nefna það! ]

Við athugum PHP útgáfuna, ræsum vefþjóninn og athugum virkni Nextcloud:

# php -v
# service apache2 start


Uppfærsla MariaDB í útgáfu 10.4

Á heimasíðu verkefnisins er áhugaverð síða, þar sem þú þarft að tilgreina stýrikerfið þitt, útgáfu þess og velja gagnagrunnsútgáfuna. Þegar valið hefur verið verður kóðinn til að bæta við geymslunni myndaður.

Stöðva vefþjóninn:

# service apache2 stop


Bættu við geymslu og uppfærðu pakka:

# apt-get install software-properties-common dirmngr
# apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8
# add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://mariadb.mirror.iweb.com/repo/10.4/debian stretch main'
# apt-get update


Þegar MariaDB er sett upp mun pakkastjórinn fjarlægja fyrri útgáfuna rétt og setja upp nýja, á meðan allir gagnagrunnar verða varðveittir. Hins vegar er auðvitað mælt með því að taka öryggisafrit af Nextcloud gagnagrunninum.

Settu upp MariaDB og byrjaðu uppfærsluferlið:

# apt-get install mariadb-server
# mysql_upgrade u root -p


Eftir að lykilorðið hefur verið slegið inn mun MariaDB uppfæra og þú getur stillt það með því að fylgja leiðbeiningar úr öðrum hluta:

# mysql_secure_installation


Við ræsum vefþjóninn og athugum virkni Nextcloud:

# service apache2 start


Uppfærir Nextcloud í útgáfu 17

Til að hefja uppfærsluna þarftu að skrá þig inn á þjónustuna undir stjórnunarreikningi, fara í stillingar og opna „Almennar stillingar“ í stjórnunarhlutanum. Nextcloud sýnir uppsettu útgáfuna og útgáfuna sem er tiltæk fyrir uppfærslu, sem hægt er að ræsa með því að smella á hnappinn „Opna uppfærsluglugga“. Þegar það er hafið tekur Nextcloud afrit, halar niður og sannreynir heilleika uppfærsluskránna, kveikir á viðhaldsstillingu og uppfærir skrárnar. Næst kemur spurningin „Halda viðhaldsstillingu virkum“? Þú þarft að fara varlega hér. Jákvætt svar mun yfirgefa síðuna í viðhaldsham - það er gert ráð fyrir að stjórnandinn viti hvað á að gera næst og geri það handvirkt. Annars mun Nextcloud gera allt sjálft, svo smelltu á „Nei“ hnappinn til að halda áfram.

Uppfærslur eru gerðar ítrekað. Í fyrsta lagi verður Nextcloud 13.x uppfærð í nýjustu útgáfuna af 14.x útibúinu. Eftir þetta þarftu að fara aftur í stjórnunarmiðstöðina og hefja uppfærsluna, núna frá 14.x til 15.x. Og svo framvegis þar til síðustu mögulegu núverandi útgáfu er náð. Eftir hverja uppfærslu, á síðunni „Almennar stillingar“ í stjórnunarhlutanum, birtist listi yfir tillögur og vandamál sem upp hafa komið ásamt ráðleggingum til að leysa þau. Hér að neðan munum við tala um hvað þarf að gera eftir hverja uppfærslu.

Fram að uppfærslunni

Í nýjustu útgáfum af Nextcloud er mælt með því að virkja PHP OPcache til að bæta árangur. Það er skrítið að ég hafi einhvern veginn misst af þessu fyrir nokkrum árum síðan, þar sem OPcache birtist í PHP 5. Í /etc/php/7.2/apache2/php.ini þarftu að afskrifa athugasemdir og breyta eftirfarandi breytum:

opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
pcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1


Uppfærsla 13.x -> 14.x

Endurheimtir töfluvísitölur:

# sudo -u www-data php /var/www/nextcloud/occ db:add-missing-indices


Uppfærsla 14.x -> 15.x

Við undirbúum nextcloud gagnagrunninn til að virkja fjögurra bæta kóðun:

# mysql -u root -p
MariaDB [(none)]> ALTER DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
MariaDB [(none)]> quit


Virkjaðu stuðning fyrir fjögurra bæta kóðun í Nextcloud:

# sudo -u www-data php /var/www/nextcloud/occ config:system:set mysql.utf8mb4 --type boolean --value="true"


Umbreyta töflum:

# sudo -u www-data php /var/www/nextcloud/occ maintenance:repair


Endurheimt tapaðar töfluvísitölur:

# sudo -u www-data php /var/www/nextcloud/occ db:add-missing-indices


Umbreyttu töfluvísitölum í bigint:

# sudo -u www-data php /var/www/nextcloud/occ db:convert-filecache-bigint


Uppfærsla 15.x -> 16.x

Endurheimt tapaðar töfluvísitölur:

# sudo -u www-data php /var/www/nextcloud/occ db:add-missing-indices


Umbreyttu töfluvísitölum í bigint:

# sudo -u www-data php /var/www/nextcloud/occ db:convert-filecache-bigint


Uppfærsla 16.x -> 17.x

Ekki er þörf á frekari aðgerðum.

Eftirsögn

Með því að fylgja þessum leiðbeiningum var sýndarvél með Nextcloud 13 uppfærð. Með því að nota sýndarvél geturðu ekki tekið öryggisafrit af Nextcloud skrám og gagnagrunni hennar, þar sem þú getur einfaldlega skilað áður vistuðu sýndarvélaskránni og byrjað upp á nýtt. aftur. Þetta á þó ekki við um möppuna með notendagögnum, sem ég mæli líka með að taka öryggisafrit af ásamt sýndarvélinni með Nextcloud. Í mínu tilviki er „skýið“ notað sem fjartengd mappa með sjálfvirkri útgáfu og með samstillingarstefnunni „aðeins þar“ og að missa þessi gögn var ekki mikilvægt fyrir mig - ég þyrfti bara að gera samstillinguna aftur í nokkrar klukkustundir . Þrátt fyrir lítilsvirðingu mína fyrir ævilangri „save just in case“ reglu gekk uppfærslan án nokkurra vandræða og allir viðskiptavinir byrjuðu að vinna með Nextcloud 17 án nokkurra vandræða starf!

Eftir uppfærsluna ákvað ég að hreinsa notendagögnin sem, af tölfræði að dæma, tóku um tvö terabæt. Ég hafði ekki svo mikið af rekstrargögnum - megnið af rúmmálinu var upptekið af útgáfuskrám og eyddum skrám. Vandamálið sem ég lenti í var að fyrir einn notanda var svo mikið af eyddum gögnum (það er ekki einu sinni spurning um magn, heldur magn - fullt af litlum skrám) að Nextcloud gat ekki birt þau í vefviðmótinu. Eftir að hafa kynnt mér stjórnunarhandbókina fann ég lausn í gegnum skipanalínuna. Kannski nýtist þetta einhverjum.

Til að hreinsa eyddar notendaskrár:

# sudo -u www-data php /var/www/nextcloud/occ trashbin:cleanup user


Til að hreinsa notendaútgáfuskrár:

# sudo -u www-data php /var/www/nextcloud/occ versions:cleanup user

Komdu aftur í upphafi, að efnisyfirliti.

Saga stofnunar heimaskýs. Hluti 5. Uppfærsla 2019 – PHP 7.2, MariaDB 10.4 og Nextcloud 17
Textaútgáfa: 1.1.1.
Fyrsta birtingardagur: 15.01.2020.
Síðasta breytingadagur: 15.01.2020.

Uppfæra log1.1.1 [15-01-2020]
Leiðrétting á innsláttarvillum.

1.1.0 [15-01-2020]
Lagfærði undirbúningskóða fyrir nexcloud gagnagrunninn til að virkja fjögurra bæta kóðun.

1.0.0 [15-01-2020]
Fyrsta útgáfa.

Heimild: www.habr.com

Kauptu áreiðanlega hýsingu fyrir síður með DDoS vernd, VPS VDS netþjónum 🔥 Kauptu áreiðanlega vefhýsingu með DDoS vörn, VPS VDS netþjónum | ProHoster