Ubuntu-ի տարբերակ և ճարտարապետություն․ ստուգեք համատեղելիությունը
Ubuntu-ի իմիջն ընտրեք ամբողջ հավելվածի պահանջներով՝ օպերացիոն համակարգ, runtime, տվյալների բազա, native extensions, backup և monitoring։ Մեկ բաղադրիչի գործարկումը ամբողջ համակարգի աջակցություն չի ապացուցում։
VPSuntu · Թարմացվել է · Ընթերցում՝ մոտ 4 րոպե
Ուղեցույցի բովանդակությունը
Սկսեք համատեղելիության ցանկից
Տարբերակեք արտադրողի աջակցվող տարբերակը և ձեր փորձարկման մեջ պարզապես աշխատածը։ Ubuntu 24.04-ի սկզբնական արխիվում կան Python 3.12, PHP 8.3 և PostgreSQL 16․ patch տարբերակները փոխվում են updates-ի հետ։
Ստուգեք հավելվածը, պանելը, բազայի extensions-ը, backup agent-ը և monitoring-ը։ Ubuntu LTS-ի աջակցման աղյուսակը օպերացիոն համակարգի ելակետ է, ոչ բոլոր երրորդ կողմի ծրագրերի աջակցություն։
Պարզեք թողարկումն ու ճարտարապետությունը
cat /etc/os-release
uname -r
dpkg --print-architecture
uname -mՓոքր էկրանին բոլոր սյունակները տեսնելու համար աղյուսակը ոլորեք հորիզոնական։
| Արդյունք | Նշանակություն |
|---|---|
| VERSION_ID | Տեղադրված Ubuntu-ի թողարկում |
| uname-ի kernel տարբերակ | Ընթացիկ միջուկը, ոչ դիստրիբուտիվի աջակցման ժամկետը |
| amd64 կամ x86_64 | 64-բիթ x86 ճարտարապետություն |
| arm64 կամ aarch64 | 64-բիթ Arm ճարտարապետություն |
Native binary-ն, extension-ը կամ image-ը պետք է համապատասխանեն ճարտարապետությանը կամ դրա համար առանձին build ունենան։ SSH մուտքը դա չի ստուգում։
Ուսումնասիրեք cloud-init-ի վիճակը
if command -v cloud-init >/dev/null 2>&1; then
cloud-init status --long
else
printf '%s\n' 'cloud-init is not installed; check the provider provisioning method.'
ficloud-init-ի առկայությունը կամ բացակայությունն ինքնին սխալ չէ․ հաշվի առեք իմիջի provisioning մեթոդը։ Running վիճակում սպասեք, իսկ error կամ degraded արդյունքը ուսումնասիրեք։
sudo tail -n 50 /var/log/cloud-init.log
sudo tail -n 50 /var/log/cloud-init-output.logLogs-ը փոխանցելուց առաջ ծածկեք գաղտնի տվյալները։ Սխալը թաքցնելու համար մի գործարկեք cloud-init clean և մի փոխարինեք ցանցային կարգավորումները։ Provisioning-ի ավարտն ու հավելվածի health-ը առանձին ստուգումներ են։
Ստուգեք փաթեթների թեկնածու տարբերակները
sudo apt update
apt-cache policy python3 php postgresql
apt-cache policy python3.12 php8.3 postgresql-16apt update-ը թարմացնում է փաթեթների ինդեքսը, բայց ծրագրեր չի տեղադրում։ Համեմատեք installed-ը, candidate-ը և repository-ն։ Installed: none-ը նշանակում է՝ փաթեթը տեղադրված չէ, Candidate: none-ը՝ այդ անունով թեկնածու չկա։
Ստուգեք փաթեթի անունը, ճարտարապետությունը և repository component-ը։ Պատահական արտաքին repository ավելացնելը ավտոմատ լուծում չէ։ Metapackage-ը և versioned package-ը կարող են այլ անուններ ունենալ։
Ստուգեք նաև executable-ի իրական տարբերակը։ Բազայի client-ի տարբերակը չի հաստատում աշխատող database server-ի տարբերակը։
Տարբերակեք տարբերակի և ճարտարապետության խնդիրները
Ենթադրենք հավելվածին պետք է Python 3.10 և միայն amd64-ում հասանելի native extension։ Ubuntu 24.04 arm64-ում երկու անհամապատասխանություն կա։ amd64 իմիջը լուծում է ճարտարապետությունը, բայց ինքնաբերաբար չի փոխում Python-ի պահանջը։
Python virtual environment-ը interpreter-ի տարբերակը չի փոխում։ Հավելվածի համար մի փոխարինեք system Python-ը։ Համեմատեք հավելվածի upgrade-ը, աջակցվող runtime-ը կամ համապատասխան container-ը։ Հին OS ընտրելիս սպասարկման պլան է պետք։
Առանձին միջավայրում փորձարկեք extension-ը, database operation-ը, ֆոնային աշխատանքն ու backup-ը։ Միայն գլխավոր էջը բացելը բավարար չէ։
Container-ն էլ աջակցվող միջավայր է պահանջում
Container-ը կախված է host kernel-ից, ցանցից և storage-ից։ Ընտրեք native architecture image և առանձին ստուգեք emulation-ի աջակցությունն ու արտադրողականությունը։ Persistent volumes-ի backup-ը անկախ է container image-ից։
Image digest-ի ամրագրումն օգնում է կրկնելիությանը, բայց updates-ի գործընթացը մնում է անհրաժեշտ։ Խոցելի տարբերակը հավերժ պահելը լուծում չէ։ Ubuntu Main-ի ստանդարտ աջակցությունն ու Ubuntu Pro-ի ընդլայնումը չեն փոխարինում երրորդ կողմի repository-ի սպասարկողի պատասխանատվությանը։
Պլանավորեք թարմացումներն ու release upgrade-ը
apt list --upgradable
systemctl --failed
if [ -f /var/run/reboot-required ]; then cat /var/run/reboot-required; fiՓաթեթների ցանկը կարդալուց առաջ թարմացրեք ինդեքսը։ Ստուգեք failed services-ը և reboot-ի պահանջի marker-ը․ դրա բացակայությունը լիովին թարմացված համակարգ չի ապացուցում։ Maintenance window-ում հաշվի առեք ծառայությունների restart-ը։
Release upgrade-ը նախ փորձարկեք պատճենում՝ runtime, database, extensions, repositories և data migration։ Պլանավորեք վերջնական sync-ը և rollback-ը։ Upgrade-ից առաջ snapshot-ը չի վերականգնում դրանից հետո ստացված պատվերները։
Պահեք կրկնելի գրառում
Գրանցեք OS release-ը, architecture-ը, kernel-ը և provider image-ը․ հավելվածի build-ը, runtime-ը, lockfiles-ը և repositories-ը․ provisioning քայլերը՝ առանց secrets-ի։
Պահեք թեստերի արդյունքներն ու չլուծված խնդիրները, updates-ի պատասխանատուին, սպասարկման ժամն ու alerts-ը։ Նշեք backup-ի տեղադրությունը, վերականգնման ընթացքը և վերջին հաջող փորձի ամսաթիվը։ Հետո անցեք Ubuntu VPS-ի կարգավորմանը։
Հաճախ տրվող հարցեր
Ubuntu 24.04-ը մի՞շտ է լավագույն տարբերակը։
Ոչ։ Ընտրեք աջակցվող թողարկում, որը համապատասխանում է հավելվածին, պանելին ու կախվածություններին։
Reinstall-ը և release upgrade-ը նո՞ւյնն են։
Ոչ։ Reinstall-ը կարող է վերագրել գործող սկավառակը, իսկ in-place upgrade-ը փոխում է գոյություն ունեցող համակարգը։ Երկուսին էլ պետք են ստուգված պատճեն և վերականգնման պլան։