TL; DR : ada banyak area abu-abu dan itu tergantung pada apa yang Anda lakukan. Sebagian besar, Pusat Perangkat Lunak dan metode baris perintah melakukan hal serupa ketika datang ke .deb
paket, tetapi paket perangkat lunak lain mungkin memerlukan langkah yang berbeda.
Apa perbedaan antara menginstal perangkat lunak di pusat perangkat lunak Ubuntu dan baris perintah?
Inilah kenyataannya: instalasi tidak lebih dari membuang file yang datang dengan paket perangkat lunak ke direktori yang sesuai. Tidak masalah jika dilakukan melalui command line atau melalui Software Center - mereka melakukan hal yang sama - melempar file ke direktori masing-masing. Yang penting, bagaimanapun, adalah paket dan bagaimana Anda menanganinya. Di sini saya akan membahas beberapa paket dasar yang dapat Anda tangani di Ubuntu. Adapun perbedaan antara baris perintah dan Pusat Perangkat Lunak, perbedaan paling mendasar adalah bahwa di Pusat Perangkat Lunak Anda mengklik tombol; di baris perintah Anda mengetik perintah. Saya tahu Pusat Perangkat Lunak menggunakan banyak kode python, tetapi dalam baris perintah tergantung pada utilitas yang Anda gunakan. Ada juga jumlah berapa banyak Pusat Perangkat Lunak dapat menghapus (baca di bawah tentang itu)
Paket perangkat lunak untuk Ubuntu dapat datang dalam tiga cara: .deb
file, .run
file, dan hanya kode sumber mentah dalam kompresi zip
atau tar
arsip. Bergantung pada yang Anda hadapi, instalasi baris perintah bisa jadi lebih atau kurang menyakitkan. Ini bukan sesuatu yang Anda benar-benar khawatirkan sebagai pengguna baru, setidaknya tidak pada tahun pertama menggunakan Linux.
Anda akan melihat sebagian besar .deb
file - mereka adalah paket perangkat lunak yang sudah dikompilasi, siap digunakan. Ini tidak terlalu menyakitkan. Mereka juga sangat sering menentukan dependensi - perangkat lunak lain yang tanpanya program Anda tidak dapat berjalan. Utilitas baris perintah seperti apt
dan apt-get
akan menginstal dependensi secara otomatis untuk Anda. Bahkan, Pusat Perangkat Lunak menggunakan apt-get
sebagai back-end, sehingga ia juga menginstal dependensi secara otomatis.
.run
file biasanya file biner berpemilik dan dikodekan. Anda tidak dapat benar-benar melihat apa yang mereka lakukan.
Dengan kode sumber mentah, Anda harus melakukan semuanya sendiri - membangun perangkat lunak dan menginstal dependensi.
Ada juga cara untuk menginstal paket dari distro lain, seperti .rpm
paket, tetapi ini sangat jarang dilakukan.
Ada juga kelas perangkat lunak yang dikenal sebagai wadah. Ada buruh pelabuhan dan lxd
kontainer. Sampai saat ini, Ubuntu telah memperkenalkan sesuatu yang dikenal sebagai snap
paket. Apa yang baik dari semua itu? Mereka dapat berjalan di mana saja, terisolasi dengan aman dari sistem utama Anda, dan dapat diinstal / diinstal ulang dengan cukup cepat. Jenis perangkat lunak ini tidak dapat diinstal melalui Pusat Perangkat Lunak dan umumnya untuk administrator sistem profesional atau pengguna teknologi / lanjut. Sebagai pengguna baru Anda tidak perlu khawatir tentang itu, hanya perlu diketahui bahwa mereka ada dan mereka luar biasa :)
Akhirnya, sesuatu seperti skrip (dan biasanya satu file) juga dapat dianggap sebagai aplikasi dan lagi - instalasi tidak lebih dari membuang file itu di tempat yang seharusnya atau seharusnya.
Mengapa beberapa perangkat lunak yang saya instal dengan baris perintah tidak dapat dicari di pusat perangkat lunak (tekan tombol jendela)?
Sekali lagi, ini sangat tergantung pada paketnya. Jika pengembang perangkat lunak memutuskan untuk memasukkan .desktop
file dengan paket mereka, Anda akan dapat mencarinya di Dash. .desktop
file-file itu seperti cara pintas Windows, walaupun mereka jauh lebih banyak. Contoh bagus dari command-line utility yang disertakan dengan .desktop
file adalah Byobu - program yang sangat berguna untuk memisahkan terminal menjadi tab / windows tambahan.
Anda dapat, bagaimanapun, membuat .desktop
file Anda sendiri untuk setiap program dan menempatkannya ke dalam ~/.local/share/applications/
folder.
Sekali lagi, ini tidak ada hubungannya dengan aplikasi menjadi command-line atau GUI. Itu tergantung pada pilihan yang dibuat pengembang aplikasi
Apa perintah yang benar untuk menginstal perangkat lunak dari baris perintah sehingga saya dapat mencari mereka?
Sekali lagi, tergantung pada apa yang Anda lakukan. Jika Anda menginstal perangkat lunak dari repositori resmi Ubuntu, maka Anda dapat melakukannyasudo apt-get install my-software
Jika Anda menginstal .deb
paket, Anda dapat menggunakan dpkg
perintah atau apt-get
. Inilah contoh saya menginstal paket deb google-chrome dengan apt-get. CATATAN : pada saat instalasi saya di direktori yang sama dengan .deb
file, karena itu harus menentukan ./
bagian
$ sudo apt-get install ./google-chrome-stable_current_amd64.deb
[sudo] password for xieerqi:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'google-chrome-stable' instead of './google-chrome-stable_current_amd64.deb'
The following NEW packages will be installed:
google-chrome-stable
0 upgraded, 1 newly installed, 0 to remove and 54 not upgraded.
Need to get 0 B/50.0 MB of archives.
After this operation, 190 MB of additional disk space will be used.
Get:1 /home/xieerqi/下载/google-chrome-stable_current_amd64.deb google-chrome-stable amd64 53.0.2785.101-1 [50.0 MB]
Selecting previously unselected package google-chrome-stable.
(Reading database ... 476104 files and directories currently installed.)
Preparing to unpack .../google-chrome-stable_current_amd64.deb ...
Unpacking google-chrome-stable (53.0.2785.101-1) ...
Processing triggers for menu (2.1.47ubuntu1) ...
Processing triggers for bamfdaemon (0.5.3~bzr0+16.04.20160701-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for gnome-menus (3.13.3-6ubuntu3.1) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu5) ...
Processing triggers for mime-support (3.59ubuntu1) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up google-chrome-stable (53.0.2785.101-1) ...
update-alternatives: using /usr/bin/google-chrome-stable to provide /usr/bin/x-www-browser (x-www-browser) in auto mode
update-alternatives: using /usr/bin/google-chrome-stable to provide /usr/bin/gnome-www-browser (gnome-www-browser) in auto mode
update-alternatives: using /usr/bin/google-chrome-stable to provide /usr/bin/google-chrome (google-chrome) in auto mode
Processing triggers for menu (2.1.47ubuntu1) .
Apa yang baik tentang apt-get
? Ini memiliki --purge
opsi, yang memungkinkan Anda untuk menghapus segala sesuatu yang berkaitan dengan suatu program. Sebagai contoh, jika saya hanya menghapusnya sudo apt-get remove google-chrome-stable
atau melakukannya melalui Pusat Perangkat Lunak, itu mungkin meninggalkan file konfigurasi, sehingga ketika Anda menginstal ulang perangkat lunak, itu siap digunakan seperti sebelumnya. --purge
opsi akan menghapus file konfigurasi juga. Itu nyaman jika perangkat lunak Anda rusak dan Anda ingin menginstalnya sepenuhnya baru. Software Center tidak melakukan itu, jadi itu perbedaan lain.
Jika Anda berurusan dengan .run
file, Anda harus membuat file itu dapat dieksekusi dan menjalankannya. Seperti ini:
$ sudo chmod +x ./software.run
$ sudo ./software.run
Saya mencadangkan dan memulihkan sistem saya satu kali tetapi beberapa perintah berfungsi sebelumnya (seperti "subl") tidak berfungsi setelah memulihkan sistem.
Itu tergantung pada jenis cadangan yang Anda lakukan. Jika cadangan Anda menyertakan semua file yang diperlukan untuk membuatnya subl
berfungsi, maka itu seharusnya berfungsi. Bisa juga cadangan Anda terjadi sebelum subl
diinstal. Pastikan Anda mengkonfigurasi cadangan dengan benar
Saya pikir pertanyaan-pertanyaan ini adalah tentang $ PATH entah bagaimana, tetapi saya tidak dapat menemukan beberapa materi tentang ini. Bahan tambahan apa pun akan dihargai.
The $PATH
variabel relevan dengan shell (command interpreter di mana Anda meletakkan perintah). Ini tidak benar-benar relevan dengan Unity Dash. $PATH
variabel sebenarnya adalah daftar direktori, di mana shell akan mencari program yang memiliki izin yang dapat dieksekusi. Dash benar-benar peduli dengan .desktop
file saja. Sebagai contoh, saya dapat memiliki program duduk di /usr/bin
folder dan dapat membukanya melalui baris perintah tetapi Dash tidak akan, karena tidak ada .desktop
file yang sesuai untuk itu.
Jika Anda ingin mencari bahan tambahan $PATH
, ambil buku apa saja tentang skrip shell Linux. Ini adalah salah satu item pengetahuan dasar untuk setiap pengguna Linux yang ingin menggunakan baris perintah.
Beberapa pemikiran penutup : Kompleksitas instalasi perangkat lunak untuk Linux terkadang mengejutkan bagi pengguna baru yang datang dari dunia Windows atau Mac. Pada kenyataannya, ini adalah prinsip yang sama - melempar semua yang ada di tempatnya, dan itu akan berhasil. Anda tidak menemukan jalan pintas ke program Anda? Buat satu - itu hanya file teks! Komputer adalah mesin, dan itu dimaksudkan untuk dioperasikan. Windows juga memiliki %PATH%
variabel untuk command-line-nya, Anda tidak pernah mengetahuinya, karena Windows command-line kurang fleksibel dan kurang digunakan daripada di Linux. Singkatnya, jangan terintimidasi oleh apa pun yang Anda lihat, karena setiap hari itu adalah sekitar 20% dari perintah atau tindakan yang paling sering digunakan, dan mereka memberi Anda 80% dari pekerjaan yang dilakukan.