Solusi 1:
Mana yang harus saya (kamu) pilih?
Gunakan RPM dan tetap gunakan RPM. RPM jauh lebih mudah digunakan daripada kode sumber, lebih mudah untuk memperbarui dan menginstal pembaruan keamanan, dan akan menghemat waktu Anda dalam jangka panjang. Saya dapat memperbarui semua perangkat lunak di kotak CentOS saya dalam waktu sekitar 5 menit. Butuh waktu berjam-jam, mungkin berhari-hari, untuk melakukan hal yang sama saat mengompilasi dari sumber.
Selain itu, karena Anda baru mengenal sistem Linux, Anda ingin sistem Anda sejalan dengan apa yang digunakan komunitas lainnya, sehingga contoh dalam dokumentasi dan posting forum akan cocok dengan apa yang Anda miliki di sistem lokal Anda. Dokumentasi biasanya mengasumsikan bahwa Anda menginstal perangkat lunak melalui RPM. Jika Anda memiliki sistem hibrid yang dibangun dari RPM, tetapi kemudian menginstal selusin program dari kode sumber, proses debug akan lebih sulit dan akan membutuhkan lebih banyak pengetahuan dan keterampilan.
Mengkompilasi dari sumber lebih rumit dan akan mengharuskan Anda menyelesaikan masalah ketergantungan selama kompilasi. Sebelum Anda dapat mengkompilasi perangkat lunak, Anda perlu menginstal dependensi seperti file header, kompiler pada sistem, dan ini sering kali diinstal melalui RPM.
Namun, perhatikan bahwa RHEL dan CentOS umumnya tetap menggunakan satu versi utama dari suatu produk (mis. CentOS5 menyediakan RPM untuk PHP 5.3, tetapi tidak akan pernah menyediakan RPM untuk 5.4). Perbaikan keamanan dan beberapa perubahan fitur 'di-backport' oleh RedHat ke versi saat ini.
Instal dari sumber jika Anda menginginkan versi perangkat lunak tertentu yang tidak tersedia dari CentOS atau jika Anda ingin menyesuaikan sendiri kode sumber. Sebagai permulaan, coba hindari ini.
Untuk ImageMagick, instal RPM yang disediakan oleh CentOS. Jika tidak memenuhi kebutuhan Anda, teliti versi mana yang Anda butuhkan, dan instal dari sumber.
rpm -Uvh atau gunakan yum
Gunakan yum, yang merupakan pembungkus RPM (perpustakaan RPM) dan melakukan banyak pekerjaan untuk Anda. Sekali lagi, ini akan menghemat waktu Anda.
RPM digunakan untuk menginstal RPM dari file lokal, yang berarti Anda harus menemukan RPM dan mengunduhnya serta semua dependensinya. Yum akan melakukan pemeriksaan dependensi, dan akan mendownload serta menginstal RPM untuk Anda.
akankah binari secara otomatis menjadi seperti /usr/bin
Saya lebih suka ketika kode sumber menempatkan binari di /usr/local/bin
dan bukan /usr/bin
. /usr/bin
adalah untuk perangkat lunak yang disediakan oleh vendor, dan /usr/local/bin
harus disediakan untuk paket yang dikompilasi secara lokal. Jika kode sumber memasang binari ke /usr/bin
, artinya binari tersebut mungkin secara tidak sengaja tergantikan saat Anda menjalankan yum update --yes
di lain waktu .
Lihat juga https://unix.stackexchange.com/questions/8656/usr-bin-vs-usr-local-bin-on-linux
Ada varian Unix lain yang mengkompilasi semua perangkat lunak dari sumber, tetapi sistem tersebut cenderung memiliki metode yang baik dan alat yang baik untuk menjaga agar semua file sumber tetap teratur. FreeBSD adalah sistem operasi populer di mana admin cenderung mengkompilasi perangkat lunak dari paket sumber yang disebut 'Port', dan ini adalah cara yang bagus untuk mempelajari tentang OS dan kode sumber.
Solusi 2:
-
Saya mencoba untuk tetap berpegang pada paket distribusi sebanyak mungkin. Ini cenderung menjadi pendekatan yang lebih konsisten untuk manajemen perangkat lunak. Jika Anda menemukan item yang tidak tersedia sebagai paket RPM, Anda dapat membuat RPM Anda sendiri dari tarbal sumber.
-
Jika Anda memilih RPM, menggunakan yum adalah cara menarik perangkat lunak dari repositori perangkat lunak dan menginstal melalui RPM. RPM adalah kerangka pengelola paket yang sebenarnya.