Product SiteDocumentation Site

3.2. Bagaimana Memigrasi

Untuk menjamin keberlanjutan layanan, setiap migrasi komputer harus direncanakan dan dieksekusi sesuai rencana. Prinsip ini berlaku apa pun sistem operasi yang digunakan.

3.2.1. Survey dan Mengidentifikasi Layanan

Walaupun terlihat sesederhana, langkah ini penting. Seorang administrator benar-benar tahu peran utama masing-masing server, namun peran dapat berubah, dan kadang pengguna berpengalaman mungkin telah memasang layanan yang “liar”. Mengetahui hal tersebut setidaknya akan mengizinkan Anda untuk memutuskan apa yang akan dilakukan dengannya, daripada menghapusnya semena-mena.
Untuk tujuan ini, alangkah bijak untuk menginformasikan ke para pengguna proyek Anda sebelum memigrasikan server. Untuk melibatkan mereka ke dalam proyek, mungkin berguna untuk memasang program-program perangkat lunak bebas pada desktop mereka sebelum migrasi, yang akan mereka jumpai lagi setelah migrasi ke Debian; LibreOffice dan keluarga Mozilla adalah contoh terbaik di sini.

3.2.1.1. Jaringan dan Proses

Alat nmap (dalam paket dengan nama yang sama) akan mengidentifikasi secara cepat layanan Internet yang diwadahi oleh suatu mesin yang terhubung jaringan tanpa perlu masuk ke dalamnya. Panggil saja perintah berikut pada mesin lain yang terhubung pada jaringan yang sama:
$ nmap mirwiz
Starting Nmap 7.93 ( https://nmap.org ) at 2024-05-20 00:15 CEST
Nmap scan report for mirwiz (192.168.1.104)
Host is up (0.00062s latency).
Not shown: 992 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
25/tcp   open  smtp
80/tcp   open  http
111/tcp  open  rpcbind
139/tcp  open  netbios-ssn
445/tcp  open  microsoft-ds
5666/tcp open  nrpe
9999/tcp open  abyss

Nmap done: 1 IP address (1 host up) scanned in 0.06 seconds
Jika server adalah mesin Unix yang menawarkan akun shell ke pengguna, menarik untuk menentukan apakah proses dieksekusi di latar belakang tanpa kehadiran pengguna. Perintah ps auxw menampilkan daftar semua proses dengan identitas penggunanya. Dengan memeriksa informasi ini terhadap keluaran perintah who atau w, yang menampilkan daftar pengguna yang login, memungkinkan untuk mengidentifikasi server atau program yang berjalan di latar belakang secara liar atau tak dideklarasikan. Melihat crontabs (tabel daftar aksi otomatis terjadwal oleh pengguna) seringkali menyediakan informasi menarik pada fungsi-fungsi yangi dilayani oleh server (penjelasan lengkap tentang cron tersedia di Bagian 9.7, “Menjadwalkan Tugas dengan cron dan atd).
Pada beberapa kasus, penting untuk memback-up server Anda: memungkinkan pemulihan informasi setelah sesuatu dilakukan, ketika pengguna melaporkan masalah khusus disebabkan oleh migrasi.

3.2.2. Mem-back up Konfigurasi

Bijaksana untuk memertahankan konfigurasi setiap layanan teridentifikasi agar dapat memasang yang setara pada server yang diperbarui. Setidaknya buat salinan cadangan dari berkas-berkas konfigurasi.
Untuk mesin Unix, berkas konfigurasi biasanya ditemukan di /etc/, tetap mungkin juga terletak di sub-direktori /usr/local/. Ini yang terjadi bila program telah dipasang dari sumber, bukan dari paket. Dalam beberapa kasus, ini mungkin juga dapat ditemukan di bawah /opt/.
Untuk mengelola layanan data (seperti basis data), sangat direkomendasikan untuk mengekspor data ke format standar yang nantinya akan mudah diimpor oleh perangkat lunak baru. Seperti format yang biasanya berupa mode teks dan terdokumentasi; mungkin, sebagai contoh, SQL dump untuk basis data, atau berkas LDIF untuk server LDAP.
Backup basisdata

Gambar 3.2. Backup basisdata

Setiap perangkat lunak server itu berbeda, dan tidak mungkin menjelaskan semua kasus secara detail. Bandingkan dokumentasi perangkat lunak yang ada dan yang baru apakah ada bagian yang dapat dieksport (dapat diimpor) dan yang memerlukan penanganan manual. Membaca buku ini akan menglarifikasi konfigurasi program server Linux utama.

3.2.3. Mengambil Alih sebuah Server Debian yang Ada

Agar pengambilalihan pemeliharaan efektif, pertama analisa mesin yang sedang berjalan dengan Debian.
Berkas pertama yang dicek ialah /etc/debian_version, yang biasanya berisi nomor versi sistem Debian yang terinstall (bagian dari paket base-files). Jika menunjukkan codename/sid, itu berarti sistem telah diperbarui dengan paket dari distribusi pengembangan (entah itu testing atau unstable).
Program apt-show-versions (dari paket Debian dengan nama sama) periksa daftar paket terinstall dan identifikasi versi yang tersedia. aptitude juga dapat digunakan untuk tugas ini, walaupun dengan cara yang kurang semantik.
Sekilas pada berkas /etc/apt/sources.list (dan direktori /etc/apt/sources.list.d/) akan menampilkan dari mana paket Debian terinstall. Jika ada beberapa nampak dari sumber yang tak diketahui, administrator mungkin memilih untuk menginstall ulang sepenuhnya sistem komputer untuk mengoptimalkan kompabilitas dengan perangkat lunak yang disediakan oleh Debian.
The sources.list file is often a good indicator: the majority of administrators keep, at least in comments, the list of APT sources that were previously used. But you should not forget that sources used in the past might have been deleted, and that some random packages grabbed on the Internet might have been manually installed (with the help of the dpkg command). In this case, the machine is misleading in its appearance of being a “standard” Debian system. This is why you should pay attention to any indication that will give away the presence of external packages (appearance of deb files in unusual directories, package version numbers with a special suffix indicating that it originated from outside the Debian project, such as ubuntu or lmde, etc.). Below are two examples, showcasing unusual version suffixes and a third-party package without a source.
$ dpkg -l
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                          Version                        Architecture Description
+++-=============================-==============================-============-===================
[..]
ii  docker-buildx-plugin          0.14.0-1~debian.12~bookworm    amd64        Docker Buildx cli plugin.
ii  docker-ce                     5:26.1.3-1~debian.12~bookworm  amd64        Docker: the open-source application container engine
ii  docker-ce-cli                 5:26.1.3-1~debian.12~bookworm  amd64        Docker CLI: the open-source application container engine
ii  docker-ce-rootless-extras     5:26.1.3-1~debian.12~bookworm  amd64        Rootless support for Docker.
[..]
$ apt-show-versions | grep No
hc-utils:all 0.0.4-1 installed: No available version in archive
Demikian pula, menarik untuk menganalisa isi dari direktori /usr/local/, yang tujuannya memang berisi program yang dicompile dan diinstall secara manual. Mendaftar perangkat lunak terinstall dengan cara ini adalah instruktif, karena ini menimbulkan pertanyaan pada alasan mengapa tidak menggunakan paket Debian yang sesuai, jika paket tersebut ada.

3.2.4. Menginstall Debian

Setelah seluruh informasi yang diperlukan pada server tersebut diketahui, kita dapat mematikannya dan mulai menginstall Debian.
Untuk memilih versi yang sesuai, kita harus tahu arsitektur komputernya. Jika merupakan PC terkini, sepertinya amd64 (PC lawas biasanya i386). Dalam kasus lain, kita dapat memersempit kemungkinan menurut sistem yang sebelumnya digunakan.
Tabel 3.1 tidak dimaksudkan untuk lengkap, tetapi mungkin bermanfaat. Perhatikan bahwa mendaftar arsitektur Debian yang tidak lagi didukung dalam rilis stabil saat ini. Dalam hal apapun, dokumentasi asli untuk komputer adalah sumber yang paling dapat diandalkan untuk menemukan informasi ini.

Tabel 3.1. Sistem operasi dan arsitektur yang sesuai

Sistem OperasiArsitektur
DEC Unix (OSF/1)alpha, mipsel
HP Unixia64, hppa
IBM AIXpowerpc
Irixmips
OS Xamd64, powerpc, i386
z/OS, MVSs390x, s390
Solaris, SunOSsparc, i386, m68k
Ultrixmips
VMSalpha
Windows 95/98/MEi386
Windows NT/2000i386, alpha, ia64, mipsel
Windows XP / Windows Server 2003-2008i386, amd64, ia64
Windows RTarmel, armhf, arm64
Windows Vista / Windows 7-8-10-11 / Windows Server 2010-amd64

3.2.5. Menginstall dan Mengonfigurasi Layanan Terpilih

Setelah Debian terinstall, kita harus menginstall dan mengonfigurasi satu per satu semua layanan yang komputer tersebut harus sajikan. Konfigurasi baru harus memertimbangkan yang sebelumnya untuk memastikan transisi yang mulus. Seluruh informasi yang dikumpulkan pada kedua langkah awal akan berguna untuk menyelesaikan bagian ini.
Install layanan terpilih

Gambar 3.3. Install layanan terpilih

Sebelum terjun ke latihan ini dengan dua kaki, sangat disarankan Anda membaca peringatan pada buku ini. Setelah itu Anda akan lebih memahami bagaimana mengonfigurasi layanan yang diharapkan.