Saya telah menggunakan Windows dan Mac OS selama 5 tahun terakhir dan sekarang saya mempertimbangkan untuk menggunakan Linux setiap hari. Saya telah menginstal Ubuntu pada mesin virtual dan mencoba memahami bagaimana saya dapat menggunakan Linux untuk pekerjaan sehari-hari saya (sebagai programmer js / desainer web).
Maaf untuk pertanyaan pemula tetapi terlintas di benak saya bahwa kadang-kadang ketika saya menginstal sebuah program melalui make config
& make install
itu mengubah sistem saya dengan cara yang tidak dapat dikembalikan dengan mudah. Di windows ketika Anda menginstal sebuah program, Anda dapat menghapus instalannya dan mudah - mudahan jika dimainkan oleh buku tidak akan ada jejak program yang tersisa di sistem file atau registrasi, dll. Di Mac OS Anda cukup menghapus suatu App seperti file.
Tetapi di Linux ada apt-get
dan kemudian ada make
. Saya tidak begitu mengerti bagaimana saya bisa menjaga instalasi Linux saya tetap bersih dan rapi. Rasanya seperti pemasangan aplikasi baru dapat merusak sistem saya. Tapi kemudian Linux memiliki reputasi sangat kuat, jadi pasti ada sesuatu yang saya tidak mengerti tentang bagaimana instalasi aplikasi dan penghapusan instalasi mempengaruhi sistem. Adakah yang bisa menjelaskan hal ini?
Pembaruan: ketika menginstal aplikasi, file-nya dapat menyebar di mana saja (manajer paket menangani bagian dari masalah) tetapi ada hack keren di sekitar itu: gunakan Docker untuk menginstal aplikasi dan menyimpannya di kotak pasir mereka, khususnya jika Anda tidak akan gunakan mereka terlalu sering. Dimungkinkan juga untuk menjalankan aplikasi GUI seperti Firefox sepenuhnya di Docker "kotak pasir".
apt-get
daripadamake
menginstal perangkat lunak.make install
digunakan ketika Anda perlu membangun versi terbaru (mungkin tidak stabil) dari perangkat lunak dari sumber, yang belum tersedia sebagai paket.apt
lebih sederhana dan memberikan tui yang lebih baik daripada menggunakanapt-get
.*.app
file tidak cukup, karena instalasi aplikasi sering berserakan di tempat lain (misalnya direktori Library, dari memori). Juga, jika Anda secara manual membangun dari sumber dengan Ubuntumake install
, gunakancheckinstall
sebagai gantinya untuk memudahkan penghapusan../configure ; make ; make install
jalan. Yang Anda butuhkan adalah mempelajari alat fpm yang luar biasa .Jawaban:
Instalasi baru jarang akan merusak sistem Anda (kecuali jika Anda melakukan hal-hal aneh seperti mencampur sumber dan biner).
Jika Anda menggunakan binari yang telah dikompilasi di Ubuntu maka Anda dapat menghapusnya dan tidak perlu khawatir merusak sistem Anda, karena biner harus mencantumkan apa yang diperlukan untuk dijalankan dan manajer paket Anda akan mencantumkan program apa yang bergantung pada program itu untuk Anda tinjau.
Saat Anda menggunakan sumber, Anda harus lebih berhati-hati agar Anda tidak menghapus sesuatu yang kritis (seperti glib). Tidak ada peringatan atau apa pun saat Anda menghapus instalan dari sumber. Ini berarti Anda benar-benar dapat merusak mesin Anda.
Jika Anda ingin menghapus instalasi menggunakan
apt-get
maka Anda akan menggunakanapt-get remove package
seperti yang dinyatakan sebelumnya. Setiap program yang bergantung pada paket itu akan dihapus juga dan Anda akan memiliki kesempatan untuk memeriksanya.Jika Anda ingin menghapus instalasi maka umumnya prosesnya adalah
make uninstall
. Tidak ada peringatan (seperti yang saya katakan di atas).make config
tidak akan mengubah sistem Anda, tetapimake install
akan.Sebagai pemula, saya sarankan menggunakan
apt-get
atau apa pun distro yang Anda gunakan untuk paket biner. Itu membuat hal-hal baik dan teratur dan kecuali Anda benar-benar ingin itu tidak akan merusak sistem Anda.Semoga semuanya beres.
sumber
--purge
opsi denganapt-get
Secara teori,
make uninstall
harus menghapus apa yangmake install
ditambahkan dan sistem Anda tidak menumpuk cruft. Masalahnya, tentu saja, adalah bahwa tidak semua makefile dibuat sama.Beberapa orang mungkin mengabaikan
uninstall
aturan tersebut, membiarkannya untuk mengetahui apa yang dilakukan olehinstall
aturan tersebut. Lebih buruk lagi, jika aturan instal menimpa pustaka tertaut,uninstall
rutinitas bisu dapat memutus ketergantungan untuk beberapa program lain.Solusi terbaik untuk pemasangan sumber adalah dengan menggunakan awalan yang berbeda dari paket yang diinstal oleh manajer pengemasan sistem. Apt menginstal file untuk
/usr/
menggunakan/usr/local/
hierarki untuk instalasi sumber Anda. Itu membuatnya jauh lebih mudah untuk melacak file apa yang termasuk dalam paket dan pencopotan pemasangan yang tidak akan merusak sistem../configure --prefix=/usr/local
berfungsi untuk banyak skrip konfigurasi. Jika tidak, Anda dapat mengedit Makefile secara manual. Atau cukup salin file secara manual.Apt dan manajer pengemasan lainnya melacak file apa yang telah mereka instal dan dependensi terbaliknya sehingga fungsi pencopotannya aman untuk digunakan.
sumber
Saya akan merekomendasikan Anda gunakan
apt-get install
untuk menginstal paket apa pun di linux danapt-get remove
(nama paket) atauapt-get purge
(nama paket) yang akan menghapus tidak hanya paket utama yang ingin Anda hapus tetapi semua paket atau dependensi terkait yang diinstal selama instalasi.Sekarang, untuk menjaga sistem Anda lebih bersih, saya sarankan Anda menggunakan
apt-get clean
https://askubuntu.com/questions/144222/how-do-apt-get-clean-and-apt-get-clean-all-differ#144224 ( posting ini menarik tentang itu) yang akan menghapus semua file yang diunduh saat instalasi tetapi tidak lagi diperlukan.Perintah lain yang akan berguna jika Anda ingin menghapus semua dependensi yang diinstal di sistem Anda, tetapi mereka tidak dihapus ketika Anda uninstall adalah
apt-get autoremove
.Jika Anda menginstal paket melalui make dan make install, Anda akan bertanggung jawab untuk mencopotnya sendiri (mungkin ada file README yang disertakan dalam paket yang diunduh yang memberi tahu Anda cara melakukannya) serta mencoba menghapus semua dependensi yang terkait dengannya. . Itu sebabnya selalu disarankan untuk menginstal paket di Linux yang ditawarkan oleh manajer paket distro, jika Anda melakukannya dengan cara ini, Anda dapat memastikan paket Anda telah cukup teruji untuk bekerja dengan distro (rasa Linux) yang Anda gunakan dan sangat tidak mungkin merusak sistem Anda. Juga, Anda dapat memastikan paket Anda akan diperbarui ketika dibutuhkan sedangkan jika Anda menginstalnya sendiri Anda bertanggung jawab untuk melakukan semua ini.
Saya harap ini membantu :)
sumber
Cara normal untuk mengelola aplikasi yang terinstal di Linux adalah dengan manajer paket. Pilihan manajer paket adalah salah satu hal utama yang membedakan distribusi. Ubuntu, seperti Debian (yang menjadi basisnya ), menggunakan dpkg dan APT ; sebagian besar waktu, Anda hanya perlu berinteraksi dengan salah satu antarmuka ke APT, seperti
apt-get
(baris perintah), aptitude (baris perintah atau mode teks) atau Synaptic (GUI).Manajer paket melacak file mana yang termasuk dalam program yang diinstal. Seperti pada Windows, program dapat mengeksekusi kode arbitrer sebagai bagian dari prosedur instalasi atau penghapusan instalan mereka, tetapi biasanya berperilaku baik dan tidak akan merusak program lain. Lebih jauh lagi, kode instalasi (un) ditulis oleh pengelola paket, bukan oleh penulis hulu (untuk paket-paket dalam distribusi utama). Tidak seperti Windows, ada antarmuka terpadu untuk instalasi, peningkatan dan penghapusan instalasi: manajer paket. Anda tidak perlu mencari uninstaller (jika ada), Anda cukup klik ikon "uninstall" di manajer paket grafis, atau jalankan
apt-get remove PACKAGENAME
.Jika Anda memerlukan perangkat lunak "eksotis", Anda mungkin perlu menginstalnya secara manual, baik dengan membongkar arsip atau dengan kompilasi dari sumber. Pemasang yang datang dalam bentuk program yang dapat dieksekusi jarang ditemukan di dunia Linux. Menjalankan
make install
cenderung menyebar setiap program selama beberapa direktori (/usr/local/bin
,/usr/local/man
,/usr/local/lib
, dll). Untuk menjaga hal-hal diurutkan, saya sarankan menggunakan "manajer paket orang miskin", seperti stow . Dengan stow, setiap paket diinstal di direktori masing-masing, danstow
utilitas menangani pembuatan tautan simbolik sehingga perintah yang diinstal oleh paket berada di jalur pencarian perintah dan seterusnya. Lihat Melacak program untuk lebih jelasnya.sumber
apt-get
atau sejenisnya). Tetapi mereka hanya menempatkan program yang cukup populer di repositori, yang memiliki cukup pengguna untuk yakin bahwa mereka pada dasarnya melakukan apa yang seharusnya mereka lakukan.Hampir setiap distro memiliki manajer paket pilihannya sendiri, ada beberapa yang populer. pacman, apt, rpm, emerge, ... distro berbasis debian menggunakan apt.
Doc terlihat menakutkan tetapi sebenarnya tidak terlalu sulit untuk membuat deb. Untuk penggunaan lokal , tetap pada tugas.
sumber
Anda harus mencoba menggunakan manajer paket Anda (apt-get, aptitude, synaptic, atau aptdcon, pusat perangkat lunak, mintinstall, ..) jika memungkinkan. Menggunakan tugas make untuk menginstal sangat mentah, tidak dijamin memiliki
uninstall
rekanan dan tidak dijamin bermain dengan baik dengan seluruh sistem (Ini hanya skrip yang diikat ke dalam sistem build make - dan tidak seperti paket yang ditinjau, make task dapat berisi kode yang dapat dieksekusi, berpotensi malware).Jika Anda tidak menemukan versi paket perangkat lunak yang Anda butuhkan, Anda mungkin menemukan
checkinstall
(checkinstall make install
) bermanfaat.sumber
Saya bukan ahli, dan tidak tahu banyak tentang menginstal perangkat lunak dari sumber, tetapi menggunakan
apt-get
, Anda dapat menghapus perangkat lunak yang diinstal denganapt-get remove package-name
. Untuk menghapus semua file konfigurasi juga, gunakanapt-get purge package-name
. Cara teraman untuk menjaga agar instalasi Linux Anda tetap rapi adalah dengan hanya menggunakan paket-paket di repositori resmi. Ketika suatu paket dibutuhkan yang tidak ada dalam repositori resmi, itu seringkali dapat ditemukan (karena Anda menggunakan Ubuntu) dalam PPA .sumber
apt-get
tidak ada gunanya bagi OP yang telah menggunakanconfigure
danmake install
Seperti jawaban yang lain katakan, saat ini sudah umum untuk menginstal sebagian besar perangkat lunak Anda menggunakan manajer paket pilihan distro Anda. Ini sangat nyaman sehingga Anda mungkin akan melewatkannya saat kembali ke Windows! Dalam arti tertentu, berbagai "pasar" dan "toko" menuju ke arah itu juga untuk OS komersial.
Karena itu, saya ingat bahwa ketika saya pertama kali mulai belajar tentang Linux saya bingung dengan cara perangkat lunak biasanya diinstal. Sementara pada Windows semua file masuk dalam satu direktori di bawah
c:\Programs
, "cara unix" tradisional adalah untuk menyebarkannya di "lokasi standar" (detailnya tidak terlalu standar, [lihat LSB untuk informasi lebih lanjut] [1] ), seperti/usr/local/bin
untuk executable,/usr/local/doc
untuk dokumentasi dan sebagainya.Dalam arti tertentu, Windows "tidak tahu" di mana executable Anda berada. Ia tahu bahwa mereka "di suatu tempat di bawah
c:\Program Files
", tetapi tidak lebih. Memindai semua direktori tersebut untuk menemukannya, atau dulu mahal, mahal. Jadi tautan ke executable akan ditempatkan secara eksplisit di lokasi yang diketahui (menu mulai), dan itulah yang akan Anda gunakan untuk memulainya.Di Unix / Linux, shell Anda, dan sebagian besar program lain dalam hal ini, secara otomatis akan mencari executable atau sumber daya lain di set lokasi yang diketahui. Jadi itu sebabnya, dengan hanya menyalin file Anda di direktori yang sesuai, Anda akan secara otomatis "melihatnya", tanpa harus "mendaftar" di mana saja agar pengguna tahu tentang mereka.
Kedua mekanisme memiliki pro dan kontra, tetapi Anda akan menemukan bahwa pendekatan Unix biasanya lebih fleksibel.
Harap diingat bahwa ada banyak pengecualian dan detail yang membuat gambarnya tidak sejelas yang saya jelaskan, tapi saya pikir pengantar seperti ini dapat berguna bagi pemula untuk setidaknya memahami logika dasar di baliknya.
sumber
Saya pikir saran terbaik hanya di posting forum ini . Berikut adalah opsi Anda (2 dan 3 kurang lebih sama dalam hal efek, sebenarnya):
Jika Anda tidak bisa menggunakan metode itu, gunakan
checkinstall
seperti yang direkomendasikan orang lain. Ini pengganti drop-in yang sangat sederhana untuk melakukan instalasi:Ini harus membangun perangkat lunak seperti biasa, dan kemudian berjalan
make install
dalam lingkungan terbatas yang melacak apa yang dilakukannya dan membangun sebuah paket yang akan melakukan hal-hal itu. Kemudian menginstal paket itu dengan manajer paket Anda. Menghapus kemudian sama seperti menghapus paket lain, seperti pada (2).make install
, saya kira. Dan berharap pengelola perangkat lunak memelihara rutinitas penghapusan instalasi.sumber