Iklan
Sistem operasi modern memberi Anda metode mudah untuk menyiapkan aplikasi baru. Ini termasuk paket penginstal otomatis serta perintah yang menginstal banyak bit perangkat lunak sekaligus. Tetapi apa yang sebenarnya terjadi ketika Anda menjalankan penginstal itu atau mengeluarkan perintah itu?
Mari kita lihat bagaimana perangkat lunak diinstal pada tiga platform desktop utama: Windows, macOS, dan Linux.
Metode Instalasi Perangkat Lunak
Ada beberapa cara berbeda untuk menjalankan aplikasi baru di komputer Anda. Dalam rangka meningkatkan kompleksitas, ini termasuk:
- Kompilasi Perangkat Lunak — Membangun aplikasi dari kode sumbernya. Hanya untuk sebagian besar pengguna teknis.
- Arsip Perangkat Lunak — Membongkar arsip seperti file ZIP dan menjalankan program dari mana pun Anda mengekstraknya. Ini mungkin memerlukan beberapa penyesuaian ekstra.
- Paket Penginstal — Menemukan file penginstal dan (dua kali) mengklik untuk memulai penginstalan.
- Manajer/Toko Perangkat Lunak — Memilih aplikasi dari antarmuka yang bagus dan mengklik tombol "Instal" yang besar. Ini ajaib!
Dalam artikel ini kita akan memeriksa Paket Penginstal, karena sebagian besar Pengelola/Toko Perangkat Lunak pada akhirnya menangani jenis paket ini di belakang layar. Untuk platform desktop utama saat ini — Windows, macOS, dan Linux — kita akan melihat apa yang menyusun salah satu paket ini, dan apa yang terjadi saat Anda menginstalnya.
Microsoft Windows
Paket Pemasang yang mungkin Anda temui untuk Windows hadir dalam salah satu dari dua rasa utama. File yang dapat dieksekusi (EXE) dapat mengatur program Anda dengan melakukan pekerjaan berat menempatkan file di lokasi yang tepat dan melakukan pembaruan Windows Registry. Paket Pemasang Windows (MSI) menambah ini dengan menyediakan layanan standar seperti pencopotan pemasangan.
Anda dapat memeriksa konten EXE atau MSI dengan membuka arsip dengan 7-Zip 7Zip: Program Gratis untuk Meng-unzip Format Arsip yang Tidak Biasa Baca selengkapnya . Jika Anda menggunakannya untuk melihat penginstal EXE 7-Zip sendiri, Anda akan menemukan sejumlah file berbeda di dalam:
Sementara file-file ini tidak memiliki folder yang berisi di dalam penginstal, pengembang akan mengarahkan masing-masing ke direktori target. Kebanyakan dari mereka berakhir di "lokasi pemasangan default" - saran yang sama yang biasanya Anda lihat untuk folder seperti "C:\Program Files\[nama program]" atau "C:\Program Files (x86)\[aplikasi baru Anda ].”
Saat menggunakan alat canggih seperti InstallShield untuk membuat paket penginstal, pengembang aplikasi dapat menyesuaikan penginstalan. Misalnya, mereka dapat menentukan versi Windows mana yang akan diinstal, mengatur pintasan untuk dibuat di Start Menu dan/atau di Desktop, atau mengumpulkan info pengguna seperti nama, alamat, dll. Contoh proyek InstallShield pada gambar di bawah ini menunjukkan layar untuk mengatur apakah kunci Registry Windows harus dibuat atau diperbarui.
Dengan InstallShield, file aplikasi dan penyesuaian lainnya dikemas dalam a setup.exe mengajukan. Membukanya dengan 7-Zip akan menunjukkan bahwa di dalamnya ada paket MSI yang, ketika dijalankan, terlihat seperti instalasi yang biasa kita lakukan. Mari kita tinjau apa yang terjadi selama proses ini.
Proses Instalasi Windows
Pemasang akan mengambil langkah-langkah berikut untuk menyiapkan aplikasi Anda untuk digunakan (urutan yang tepat dapat bervariasi tergantung pada penyesuaian pengembang):
- Pemasang dapat berisi arsip lain, seperti MSI yang disebutkan di atas atau format seperti CAB. Sebagai langkah pertama, penginstal akan mengekstrak ini ke lokasi sementara.
- Selanjutnya, ia akan memeriksa untuk melihat apakah dependensi yang telah ditetapkan tersedia. Jika ada yang hilang, itu akan mengunduhnya jika memungkinkan, atau keluar dari penginstal dengan kesalahan jika tidak.
- Jika ada dependensi yang diperlukan, mereka akan diinstal terlebih dahulu menggunakan penginstal apa pun yang disertakan (pernah menginstal .NET Framework terganggu? Microsoft .NET Framework: Mengapa Anda Membutuhkannya dan Cara Menginstalnya di WindowsAnda juga perlu menginstal atau memperbaruinya. Tapi tahukah Anda apa itu .NET Framework? Kami menunjukkan kepada Anda mengapa Anda membutuhkannya dan bagaimana Anda bisa mendapatkan versi terbaru. Baca selengkapnya ).
- Selanjutnya, penginstal akan mulai menyalin file aplikasi dan menempatkannya di lokasi yang benar.
- Jika pengembang mengonfigurasi pintasan apa pun, penginstal akan membuat dan mengarahkannya ke jalur penginstalan yang sebenarnya (ingat, Anda dapat mengubah ini Cara Membuat Pintasan Desktop Windows dengan Cara MudahPintasan desktop yang cerdas dapat menghemat waktu Anda dalam memilah menu dan folder. Kami menunjukkan cara cepat & mudah untuk membuatnya. Baca selengkapnya saat penginstal dijalankan).
- Perubahan pada Registri Windows 3 Alat Untuk Memantau & Memeriksa Registri WindowsRegistri Windows adalah salah satu bagian yang paling kurang dipahami dari sistem operasi Windows. Kami menunjukkan alat yang dapat menyederhanakan registri dan membantu Anda mengidentifikasi masalah. Baca selengkapnya , jika ada, akan dieksekusi.
- Terakhir, penginstal mungkin meminta pengguna untuk memasukkan informasi seperti nama atau alamat situs web.
Proses ini mungkin tampak rumit dibandingkan dengan sistem operasi berikutnya dalam daftar. Mari kita lihat menginstal perangkat lunak di macOS.
Apple macOS
Pemasang Windows memiliki banyak hal yang terjadi di bawah tenda. Tetapi jika Anda menggunakan Mac, Anda tahu bahwa menginstal aplikasi seringkali semudah mengunduh salinan aplikasi, membuka disk image (DMG), dan mengikuti beberapa petunjuk mudah Cara Menginstal & Menghapus Perangkat Lunak Mac: 5 Metode MudahBeralih ke Mac dan memahami dasar-dasarnya? Ingin tahu bagaimana cara menginstal perangkat lunak dari baris perintah? Punya aplikasi Windows lama yang harus Anda jalankan di komputer Apple Anda? Baca selengkapnya . Terkadang unduhan bahkan memberi Anda "Seret ke sini!" ikon.
Mari selami bundel APP serta mitranya penginstal PKG.
Struktur Paket macOS
File APP di permukaan adalah sebenarnya lebih sederhana daripada Windows karena dua alasan utama. Pertama, ini adalah folder standar. Satu-satunya perbedaan adalah bahwa itu diakhiri dengan akhiran ".APP". Jika Anda mengunduh salah satunya di Windows, Anda akan melihatnya ditampilkan sama seperti folder file lainnya di Explorer. Kedua, file APP menuntut agar semua yang dibutuhkan program disertakan. Tidak perlu khawatir kehilangan dependensi dengan jenis penginstal ini.
Bundel ini harus berisi tiga hal dalam folder bernama “Contents”: 1) file “Info.plist” yang berisi metadata aplikasi seperti nama, bahasa, nomor versi, dll.; 2) direktori "MacOS" yang menyimpan file executable utama; dan 3) direktori "Sumber Daya" yang menyimpan aset yang dibutuhkan aplikasi untuk berfungsi (misalnya ikon aplikasi). Ada folder opsional lainnya seperti "Frameworks" (kumpulan fungsionalitas yang tidak khusus untuk aplikasi), "Plug-Ins" (fungsi untuk aplikasi yang tidak diperlukan untuk menjalankannya) dan "SharedSupport" (data asing seperti template).
Sebaliknya, format PKG adalah kombinasi dari Windows-like penginstal dengan struktur mirip Unix 3 Sistem Operasi Mirip UNIX Yang Bukan LinuxBaru-baru ini, orang-orang mulai mengacaukan "UNIX" dengan "Linux." Linux dipengaruhi oleh UNIX, tetapi sistem UNIX tidak ada hubungannya dengan Linux. Berikut adalah beberapa sistem berbasis UNIX yang penting untuk diketahui. Baca selengkapnya . Aplikasi 7-Zip juga akan membuka file PKG, yang dikompresi dalam xar format. Di dalamnya ada satu atau lebih Muatan file, yang juga merupakan arsip. Untuk mengekstrak isinya gunakan rantai perintah berikut (cpio adalah format arsip serta program untuk memanipulasinya) di Terminal Mac atau Linux:
muatan kucing | gunzip -dc | cpio -i
Setelah selesai, Anda akan melihat pohon direktori mirip Unix yang sudah dikenal.
Pada contoh di bawah ini, saya telah menggunakan konverter dokumen, Pandoc. Ini termasuk biner di /usr/local/bin dan beberapa dokumentasi di /usr/local/share/man. Bagaimana hal-hal ini benar-benar terjadi? Kami akan melihat bagaimana masing-masing sebenarnya menginstal ke Mac Anda.
Saya telah menggunakan versi Windows 7-Zip untuk mengilustrasikan ini, daripada hanya versi Linux baris perintah.
Proses Instalasi aplikasi macOS
Saat Anda meletakkan file APP itu ke folder Aplikasi Anda, itu tidak terlalu banyak berubah. Ingat, semua yang diperlukan untuk menjalankan program sudah lengkap. Satu-satunya perbedaan dari drag-and-drop standar adalah bahwa file "Info.plist" didaftarkan ke sistem.
Ini akan mengonfigurasi hal-hal seperti executable mana yang dipanggil saat Anda memulai aplikasi, ikon mana yang ditampilkan, jenis file yang didukungnya, dan banyak lagi. Tetapi jika tidak, aplikasi Anda (seperti paket APP untuk Atom Editor yang ditunjukkan di bawah) sekarang siap digunakan.
Proses Instalasi macOS PKG
Membuka file PKG, di sisi lain, meluncurkan penginstal "gaya penyihir". Untuk program sederhana ini biasanya a penginstal komponen, yang biasanya melalui langkah-langkah berikut:
- Jalankan pra-instal naskah.
- Buka kemasan konten "Payload" ke mesin.
- Jalankan pasca pemasangan naskah.
Pengembang kemudian dapat menggabungkan beberapa komponen menjadi satu arsip produk Install. Ini menambahkan opsi seperti menampilkan EULA untuk diterima pengguna, mengumpulkan info dari pengguna, dan memilih komponen yang akan dipasang. Sementara itu, Penginstal Apple menangani semua detail pemasangan komponen yang diperlukan satu per satu di latar belakang.
Berbicara tentang penginstal berbasis Unix, kita akan beralih ke dua format paket Linux terkemuka di bagian berikutnya.
Ubuntu dan Fedora Linux
Ah, DEB versus RPM Cara Menginstal Perangkat Lunak di Linux: Dijelaskan Format PaketAnda telah beralih ke Linux, dan ingin menginstal beberapa perangkat lunak. Tetapi manajer paket berbeda tergantung pada distro Anda. Jadi aplikasi mana yang dapat Anda unduh dan instal? Itu semua dalam akronim. Baca selengkapnya . Salah satu perang api yang hebat, hanya dikalahkan oleh orang-orang seperti vi melawan emacs atau KDE versus GNOME. Namun format ini lebih mirip daripada berbeda. Mari lihat.
Struktur File Paket Linux
Untuk melihat bagian dalam file DEB, Anda dapat mencoba pengelola arsip GUI. Jika tidak, gunakan ar memerintah. Perintah berikut dimasukkan di terminal 40+ Perintah Terminal Linux yang Paling Banyak DigunakanBaik Anda baru memulai atau hanya ingin tahu tentang terminal Linux, berikut adalah perintah paling umum yang akan membawa Anda sepanjang waktu di Linux. Baca selengkapnya akan mengekstrak isi paket Debian:
ar -x nama-paket-Anda.deb
Tiga file akan keluar dari ini:
- control.tar.gz — Ini pada gilirannya berisi satu file utama, Kontrol, yang berisi metadata tentang paket, seperti nama resmi, versi, dan dependensinya. Mungkin juga berisi file lain seperti skrip yang akan dijalankan selama proses instalasi atau file konfigurasi default.
- data.tar.gz — File yang membentuk aplikasi itu sendiri ada di arsip TAR.GZ ini. Semuanya, termasuk binari, dokumentasi, dan konfigurasi default ada di sini. Dalam contoh paket kde-service-menu-encfs_0.5.2_all.deb, berisi file dan direktori seperti yang ditunjukkan pada gambar di bawah ini.
- debian-biner — Ini adalah file yang mendefinisikan versi format paket Debian yang digunakan file. Untuk distribusi modern, ini hanya akan berisi "2.0" pada satu baris.
Di Fedora, Anda dapat menggunakan rpm2cpio dan cpio perintah untuk mengekstrak paket RPM dan menelusuri file mereka:
rpm2cpio nama-paket-Anda.rpm | cpio -idvm
Untuk paket kde-cli-tools-5.9.4-2.fc26.x86_64.rpm, Anda akan melihat pohon file yang mirip dengan paket DEB. Tapi itu tidak menyediakan metadata, setidaknya tidak di NS biner kemasan. Anda harus mengunduh RPM sumber (.SRC.RPM) yang sesuai dengan versi biner Anda, lalu gunakan perintah yang sama di atas pada file itu. Termasuk di dalamnya adalah file SPEC yang berisi banyak item yang sama dengan Kontrol file dalam paket Debian.
Sekarang kita memiliki pemahaman tentang struktur paket Linux, mari kita jelajahi apa yang terjadi ketika Anda benar-benar menginstalnya Cara Menginstal Perangkat Lunak di Linux: Dijelaskan Format PaketAnda telah beralih ke Linux, dan ingin menginstal beberapa perangkat lunak. Tetapi manajer paket berbeda tergantung pada distro Anda. Jadi aplikasi mana yang dapat Anda unduh dan instal? Itu semua dalam akronim. Baca selengkapnya .
Instalasi Paket Linux
Saat Anda menginstal paket dari salah satu format, terlepas dari front-end, serangkaian langkah serupa terjadi:
- Sistem paket memeriksa isi paket untuk menentukan apakah ada dependensi yang hilang. Bergantung pada alatnya, itu akan memperingatkan Anda, atau mengatur untuk mengunduhnya.
- Jika paket berisi skrip atau perintah pra-instal, mereka akan menjalankan selanjutnya.
- Kemudian sistem paket benar-benar mengekstrak file paket.
- Dengan file di tempat, skrip pasca-instal berjalan.
- Terakhir, paket tersebut didaftarkan ke database internal menggunakan metadatanya, sehingga nanti dapat di-uninstall.
Mengetahui Bagaimana Perangkat Lunak Diinstal Adalah Hal yang Baik
Karena pengembang sistem operasi dan perangkat lunak yang menjalankannya melakukan pekerjaan yang baik untuk mempermudah penginstalan perangkat lunak, Anda tidak perlu terlalu memperhatikan detailnya. Tetapi memiliki beberapa pengetahuan tentang yang terjadi di balik layar akan memberi Anda ketenangan pikiran tentang apa yang sedang diinstal pada sistem Anda, serta membantu pemecahan masalah.
Berapa banyak metode penginstalan perangkat lunak di atas yang telah Anda lakukan? Lebih suka DEB atau RPM? Atau apakah bundel APP Mac mewakili puncak kemudahan penggunaan? Pernah mengalami instalasi mimpi buruk? Beri tahu kami di komentar di bawah!
Aaron telah mendalami teknologi sebagai analis bisnis dan manajer proyek selama lima belas tahun, dan telah menjadi pengguna setia Ubuntu hampir selama ini (sejak Breezy Badger). Minatnya meliputi open source, aplikasi bisnis kecil, integrasi Linux dan Android, dan komputasi dalam mode teks biasa.