Тәжірибелік нұсқаулық / Ubuntu нұсқасы мен архитектурасын тексеру

Ubuntu нұсқасы мен архитектурасын тексеру

Ubuntu бейнесін атауына қарап қана таңдамаңыз. Қолданбаға қажет runtime, дерекқор, native extension, CPU архитектурасы, backup және monitoring құралдары бірге үйлесуі тиіс. Орнатылып іске қосылуы ресми қолдауға ие дегенді білдірмейді.

· Жаңартылды: · Оқу уақыты: шамамен 4 минут

Нұсқаулық мазмұны

Бағдарламалық талаптарды анықтаңыз

Қолданба мен оның жеткізушісі қолдайтын Ubuntu шығарылымын, runtime және дерекқор нұсқаларын тізіңіз. Мысалы, Ubuntu 24.04 әдепкі пакеттерінде Python 3.12, PHP 8.3 және PostgreSQL 16 бар; нақты patch нұсқалары жаңартылады. Backup агенті, native extension және мониторинг те таңдалған ортаға сай болуы керек. LTS таңдау кестесін осы талаптармен бірге қараңыз.

OS, kernel және архитектураны ажыратыңыз

cat /etc/os-release
uname -r
dpkg --print-architecture
uname -m

OS шығарылымын /etc/os-release анықтайды. Kernel нөмірі Ubuntu шығарылымын немесе қолдау мерзімін өздігінен анықтамайды. amd64 пен x86_64 — бір архитектураның атаулары; arm64 пен aarch64 — екінші жұп. Native бинарь мен контейнер бейнесінің архитектурасы сәйкес келуі тиіс.

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.'
fi
sudo tail -n 50 /var/log/cloud-init.log
sudo tail -n 50 /var/log/cloud-init-output.log

Cloud-init жұмыс істеп тұрса, аяқталуын күтіңіз. Оның орнатылмағаны жеке өзі ақау емес: провайдер басқа баптау тәсілін қолдануы мүмкін. Error немесе degraded күйін тиісті журналдармен зерттеңіз; бөлісер алдында құпия деректерді жасырыңыз. Қатені жасыру үшін cloud-init clean орындамаңыз және желі конфигурациясын себепсіз өзгертпеңіз. Cloud-init аяқталуы қолданбаның толық сау екенін дәлелдемейді.

Пакет репозиторийі мен кандидат нұсқасын тексеріңіз

sudo apt update
apt-cache policy python3 php postgresql
apt-cache policy python3.12 php8.3 postgresql-16

apt update пакет индексін жаңартады, орнатылған бағдарламаларды жаңартпайды. Installed: (none) пакет орнатылмағанын, Candidate: (none) қолжетімді кандидат жоқ екенін білдіреді. Атауды, архитектураны және қосылған repository компоненттерін тексеріңіз. Кездейсоқ репозиторийді тек қатені кетіру үшін қоспаңыз. Metapackage нақты нұсқалы пакетке сілтеуі мүмкін; дерекқор клиентін орнату серверді орнатумен бірдей емес.

Runtime пен native extension сәйкессіздігін бөлек шешіңіз

Шартты қолданбаға Python 3.10 және тек amd64 үшін жасалған extension керек делік. Ubuntu 24.04 arm64 ортасында runtime та, архитектура да сәйкес емес. amd64 таңдау архитектура мәселесін шешеді, бірақ Python 3.12 нұсқасын 3.10-ға айналдырмайды. venv басқа interpreter нұсқасын өзі орнатпайды.

Қолданбаны жаңарту немесе оған қолдау көрсетілетін runtime/контейнер таңдау жолын қараңыз. Жүйелік Python-ды ауыстырмаңыз. Ескі OS таңдалса, оның қауіпсіздік күтімі мен көшу жоспары керек. Басты бетті ашумен шектелмей, extension, дерекқор, фондық тапсырмалар және backup қалпына келтіруін тексеріңіз.

Контейнер мен қолдау шекарасын түсініңіз

Контейнер host kernel, желі және сақтау жүйесін пайдаланады. Басқа архитектураны emulation арқылы іске қосу native орындаудан ерекшеленеді. Persistent volume үшін бөлек backup қажет. Бейнені digest бойынша бекіту қайталанатын deploy береді, бірақ қауіпсіздік жаңартуларын жоспарлау міндетін жоймайды.

Ubuntu Main стандартты күтімі, Ubuntu Pro кеңейтілген қамтуы және үшінші тарап пакеттерінің қолдауы әртүрлі. Қолданба репозиторийі Ubuntu-мен автоматты түрде бір мерзімге қолдау алмайды.

Жаңарту мен қайта жүктеуді жоспарлаңыз

apt list --upgradable
systemctl --failed
if [ -f /var/run/reboot-required ]; then cat /var/run/reboot-required; fi

Қате аяқталған update немесе upgrade болса, алдымен себебін түзетіңіз. Reboot-required белгісі мен жаңарту күйін тексеріңіз; белгі жоқ болуы жүйе толық жаңартылғанын дәлелдемейді. Қызметті қайта іске қосу мен reboot үшін күтім уақытын белгілеңіз.

Үлкен release upgrade-ті алдымен көшірмеде сынаңыз: қолданба, дерекқор, extensions, репозиторийлер және соңғы дерек синхрондауы бірге тексеріледі. Rollback жоспары жаңа жазбаларды да ескеруі керек. Upgrade алдындағы snapshot кейін түскен тапсырыстарды қалпына келтірмейді.

Тексерілген конфигурацияны тіркеңіз

OS, архитектура, kernel, image, қолданба build нұсқасы, runtime, lockfile, репозиторий және provisioning қадамдарын жазыңыз. Жазбаға құпия кілт қоспаңыз. Өткен және өтпеген тесттерді, жауапты адамды, күтім уақытын, alert арнасын, backup мекенін, қалпына келтіру тәсілі мен соңғы сынақ күнін сақтаңыз.

Жиі қойылатын сұрақтар

Ең жаңа Ubuntu әрқашан дұрыс па?

Қолданба мен тәуелділіктер сол шығарылымды қолдауы керек. Жаңалығын ғана емес, үйлесімділік пен қолдау мерзімін бағалаңыз.

arm64 пен amd64 еркін алмастырыла ма?

Native extension мен бинарь архитектураға тәуелді болуы мүмкін. Бүкіл бағдарламалық жүйені тексеріңіз.

Контейнер backup міндетін жоя ма?

Жоқ. Persistent деректер мен қалпына келтіру қадамдарын бөлек сақтап, сынау керек.

Жаңа бейнені немесе үлкен жаңартуды маңызды дерегі жоқ көшірмеде тексеріп, жұмыс істейтін қалпына келтіру жолын дайындаңыз.

Ресми дереккөздер

  1. 1-құжат: discourse.ubuntu.com
  2. 2-құжат: ubuntu.com
  3. 3-құжат: docs.cloud-init.io
  4. 4-құжат: manpages.ubuntu.com
  5. 5-құжат: docs.python.org
  6. 6-құжат: ubuntu.com

Қатысты нұсқаулықтар