TL; DR : có rất nhiều vùng màu xám và nó phụ thuộc vào những gì bạn đang làm. Hầu hết, Trung tâm phần mềm và các phương thức dòng lệnh thực hiện những điều tương tự khi nói đến .deb
các gói, nhưng các gói phần mềm khác có thể yêu cầu các bước khác nhau.
Sự khác biệt giữa cài đặt một phần mềm trong trung tâm phần mềm và dòng lệnh Ubuntu là gì?
Đây là thực tế: cài đặt không gì khác hơn là ném các tệp đi kèm với gói phần mềm vào các thư mục phù hợp. Sẽ không thành vấn đề nếu nó được thực hiện thông qua dòng lệnh hoặc qua Trung tâm phần mềm - chúng cũng làm điều tương tự - ném các tệp vào các thư mục tương ứng của chúng. Tuy nhiên, vấn đề quan trọng là gói và cách bạn xử lý nó. Ở đây tôi sẽ giới thiệu một số gói cơ bản mà bạn có thể xử lý trên Ubuntu. Đối với sự khác biệt giữa dòng lệnh và Trung tâm phần mềm, sự khác biệt cơ bản nhất là trong Trung tâm phần mềm, bạn bấm vào các nút; trong dòng lệnh bạn nhập lệnh. Tôi biết Trung tâm phần mềm sử dụng rất nhiều mã python, nhưng trong dòng lệnh, nó phụ thuộc vào tiện ích bạn sử dụng. Cũng có số lượng Trung tâm phần mềm có thể xóa (đọc bên dưới về điều đó)
Các gói phần mềm cho Ubuntu có thể có ba cách: .deb
tệp, .run
tệp và chỉ mã nguồn thô trong nén zip
hoặc tar
lưu trữ. Tùy thuộc vào cái mà bạn đang xử lý, cài đặt dòng lệnh có thể ít nhiều gây đau đớn. Đây không phải là điều mà bạn là người dùng mới nên thực sự lo lắng, ít nhất là trong năm đầu tiên sử dụng Linux.
Bạn sẽ thấy hầu hết .deb
các tệp - chúng là các gói phần mềm được biên dịch sẵn, sẵn sàng để sử dụng. Đây là ít đau đớn. Họ cũng rất thường xuyên chỉ định các phụ thuộc - phần mềm khác mà chương trình của bạn sẽ không chạy. Các tiện ích dòng lệnh như apt
và apt-get
sẽ tự động cài đặt các phụ thuộc cho bạn. Trong thực tế, Trung tâm phần mềm sử dụng apt-get
làm back-end, do đó, nó cũng tự động cài đặt các phụ thuộc.
.run
các tệp thường là các tệp nhị phân được mã hóa và độc quyền. Bạn thực sự không thể thấy những gì họ đang làm.
Với mã nguồn thô, bạn phải tự làm mọi thứ - xây dựng phần mềm và cài đặt các phụ thuộc.
Cũng có cách để cài đặt các gói từ các bản phát hành khác, như .rpm
các gói, nhưng điều này được thực hiện rất rất hiếm khi.
Ngoài ra còn có một lớp phần mềm được gọi là container. Có docker và lxd
container. Gần đây, Ubuntu đã giới thiệu một cái gì đó được gọi là snap
các gói. Điều gì là tốt về tất cả những người? Chúng có thể chạy ở bất cứ đâu, cách ly an toàn với hệ thống chính của bạn và có thể được cài đặt / cài đặt lại khá nhanh. Các loại phần mềm này không thể cài đặt được thông qua Trung tâm phần mềm và thường dành cho quản trị viên hệ thống chuyên nghiệp hoặc người dùng kỹ thuật / người dùng nâng cao. Là người dùng mới, bạn không phải lo lắng về những điều đó, chỉ cần lưu ý rằng chúng tồn tại và chúng thật tuyệt vời :)
Cuối cùng, một cái gì đó giống như một tập lệnh (và thường là một tệp) cũng có thể được coi là một ứng dụng và một lần nữa - cài đặt không gì khác hơn là ném tệp đó vào nơi nó thuộc hoặc được cho là thuộc về.
Tại sao một số phần mềm tôi đã cài đặt với dòng lệnh không thể được tìm kiếm trong trung tâm phần mềm (nhấn phím cửa sổ)?
Một lần nữa, điều này thực sự phụ thuộc vào gói. Nếu các nhà phát triển phần mềm quyết định đưa .desktop
tệp vào gói của họ, bạn sẽ có thể tìm kiếm nó trong Dash. .desktop
các tệp giống như các phím tắt Windows, mặc dù chúng làm được nhiều hơn thế. Ví dụ điển hình về tiện ích dòng lệnh đi kèm với .desktop
tệp là Byobu - một chương trình rất tiện dụng để chia thiết bị đầu cuối thành các tab / cửa sổ phụ.
Tuy nhiên, bạn có thể tạo .desktop
tệp của riêng mình cho từng chương trình và đặt nó vào ~/.local/share/applications/
thư mục.
Một lần nữa, điều này không liên quan gì đến ứng dụng là dòng lệnh hoặc GUI. Nó phụ thuộc vào lựa chọn nhà phát triển ứng dụng thực hiện
Các lệnh chính xác để cài đặt một phần mềm từ dòng lệnh để tôi có thể tìm kiếm chúng là gì?
Một lần nữa, phụ thuộc vào những gì bạn đang làm. Nếu bạn đang cài đặt phần mềm từ kho chính thức của Ubuntu, thì bạn chỉ cần làmsudo apt-get install my-software
Nếu bạn đang cài đặt một .deb
gói, bạn có thể sử dụng một trong hai dpkg
lệnh hoặc apt-get
. Đây là ví dụ về việc tôi cài đặt gói gỡ lỗi google-chrome với apt-get. LƯU Ý : tại thời điểm cài đặt, tôi đang ở trong cùng thư mục với .deb
tệp, do đó phải chỉ định ./
một phần
$ 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) .
Điều gì là tốt đẹp apt-get
? Nó có --purge
tùy chọn, cho phép bạn loại bỏ mọi thứ liên quan đến một chương trình. Ví dụ: nếu tôi chỉ gỡ bỏ nó sudo apt-get remove google-chrome-stable
hoặc thực hiện nó thông qua Trung tâm phần mềm, nó có thể để lại các tệp cấu hình, để khi bạn cài đặt lại phần mềm, nó đã sẵn sàng để sử dụng như trước đây. --purge
tùy chọn cũng sẽ xóa các tập tin cấu hình. Điều đó thật tiện lợi nếu phần mềm của bạn bị hỏng và bạn muốn cài đặt hoàn toàn mới. Trung tâm phần mềm không làm điều đó, vì vậy đó là một sự khác biệt khác.
Nếu bạn đang xử lý .run
tệp, bạn sẽ cần làm cho tệp đó có thể thực thi được và chạy nó. Như thế này:
$ sudo chmod +x ./software.run
$ sudo ./software.run
Tôi đã sao lưu và khôi phục hệ thống của mình một lần nhưng một số lệnh đã hoạt động trước đó (như "subl") không hoạt động sau khi khôi phục hệ thống.
Nó phụ thuộc vào loại sao lưu bạn đã làm. Nếu bản sao lưu của bạn bao gồm tất cả các tệp cần thiết subl
để hoạt động, thì nó sẽ hoạt động. Nó cũng có thể là sao lưu của bạn xảy ra trước khi subl
được cài đặt. Đảm bảo bạn đã cấu hình sao lưu đúng cách
Tôi nghĩ rằng những câu hỏi này là về $ PATH bằng cách nào đó nhưng tôi không thể tìm thấy một số tài liệu về điều này. Bất kỳ tài liệu bổ sung sẽ được đánh giá cao.
Các $PATH
biến có liên quan đến vỏ (thông dịch lệnh nơi bạn đặt lệnh). Nó không thực sự liên quan đến Unity Dash. $PATH
biến thực sự là danh sách các thư mục, trong đó shell sẽ tìm kiếm các chương trình có tập quyền thực thi. Dash chỉ thực sự quan tâm đến .desktop
các tập tin. Ví dụ: tôi có thể có một chương trình ngồi trong /usr/bin
thư mục và có thể mở nó thông qua dòng lệnh nhưng Dash thì không, vì không có .desktop
tệp tương ứng cho nó.
Nếu bạn muốn tìm thêm tài liệu về $PATH
, hãy chọn bất kỳ cuốn sách nào về kịch bản shell Linux. Đây là một trong những mục kiến thức nền tảng cho bất kỳ người dùng Linux nào muốn sử dụng dòng lệnh.
Một số suy nghĩ khép kín : Sự phức tạp của việc cài đặt phần mềm cho Linux đôi khi có thể gây sốc cho những người dùng mới đến từ thế giới Windows hoặc Mac. Trong thực tế, đó là những nguyên tắc giống nhau - ném mọi thứ nơi nó thuộc về, và nó sẽ hoạt động. Bạn không tìm thấy lối tắt cho chương trình của bạn? Tạo một cái - nó chỉ là một tệp văn bản! Máy tính là máy móc, và chúng có nghĩa là được vận hành. Windows cũng có %PATH%
biến cho dòng lệnh của nó, bạn không bao giờ biết về nó, bởi vì dòng lệnh Windows kém linh hoạt và ít được sử dụng hơn so với trên Linux. Nói tóm lại, đừng bị đe dọa bởi mọi thứ bạn có thể thấy, bởi vì trên cơ sở hàng ngày, đó là tất cả khoảng 20% các lệnh hoặc hành động được sử dụng thường xuyên nhất và chúng cung cấp cho bạn 80% công việc được thực hiện.