Sự khác biệt giữa cài đặt trung tâm phần mềm ubfox và dòng lệnh [đã đóng]


8

Xin chào, tôi mới tham gia vào thế giới Ubuntu. Tôi có một vài câu hỏi về việc cài đặt phần mềm trong Ubuntu:

  1. 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 của Ubuntu là gì?

  2. 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ổ)?

  3. 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ì?

  4. 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.

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. :)


1
Những phần mềm nào bạn đã cài đặt qua dòng lệnh không xuất hiện trên Trung tâm phần mềm? Bạn đang sử dụng phiên bản Ubuntu nào?
Anwar

2
@Andy # 2 và 4 cần thêm chi tiết. Cảm ơn!
Edgy1

1
Chào mừng bạn đến hỏi Ubuntu! Chúng tôi xin lỗi, nhưng Hỏi Ubuntu không phải là một diễn đàn, mà là một trang Câu hỏi & Trả lời: nó hoạt động tốt nhất nếu bạn hỏi một câu hỏi, vì vậy bạn có thể nhận được một câu trả lời. Khi bạn đặt nhiều câu hỏi, bạn cần tìm một chuyên gia thành thạo trong nhiều lĩnh vực, điều này trở nên không rõ ràng khi bạn đặt nhiều câu hỏi hơn, tốt, một câu hỏi! ;-) Vì vậy, xin vui lòng, chia câu hỏi của bạn thành nhiều câu hỏi và gửi cho tôi một nhận xét để tôi có thể trả lời một trong những câu hỏi của bạn.
David Foerster

Câu trả lời:


9

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 .debcá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: .debtệp, .runtệp và chỉ mã nguồn thô trong nén ziphoặc tarlư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 .debcá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ư aptapt-getsẽ 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-getlàm back-end, do đó, nó cũng tự động cài đặt các phụ thuộc.

.runcá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ư .rpmcá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à lxdcontainer. Gần đây, Ubuntu đã giới thiệu một cái gì đó được gọi là snapcá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 .desktoptệp vào gói của họ, bạn sẽ có thể tìm kiếm nó trong Dash. .desktopcá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 .desktoptệ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 .desktoptệ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 .debgói, bạn có thể sử dụng một trong hai dpkglệ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 .debtệ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ó --purgetù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-stablehoặ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. --purgetù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ý .runtệ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 $PATHbiế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. $PATHbiế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 .desktopcác tập tin. Ví dụ: tôi có thể có một chương trình ngồi trong /usr/binthư mục và có thể mở nó thông qua dòng lệnh nhưng Dash thì không, vì không có .desktoptệ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.


1
Như một vấn đề của thực tế, nhiều gói hơn một số tác phẩm đưa vào một số thư mục. Các khía cạnh cài đặt vượt ra ngoài điều này là phụ thuộc, xây dựng lại bộ đệm và các kích hoạt khác, cấu hình dịch vụ, bắt đầu dịch vụ.
Có QUIT - Anony-Mousse

The complexity of software installation for Linux may sometimes be shocking to new users who come from Windows or Mac worldcũng phụ thuộc vào cách họ đã sử dụng chúng. Tôi đã "cài đặt" rất nhiều ứng dụng bằng cách giải nén chúng trong Windows và tôi đã thấy rất nhiều trình cài đặt thực sự chỉ đang giải nén ở đâu đó Program Files. Trong Linux, phần lớn việc cài đặt cũng dễ như trên Windows. Chỉ thay vì tải xuống và chạy một .exetập tin, bạn sẽ làm điều đó với một .deb. Hay bất cứ cái gì. Và thực thi dòng lệnh chỉ thực hiện quá trình đó cho bạn. Trung tâm phần mềm là một GUI trên đầu trang.
VLAZ

5
  1. 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 của Ubuntu là gì?

Không có sự khác biệt trong cách cài đặt phần mềm. Nhưng đã từng có một số khác biệt trong đó phần mềm có thể được cài đặt trước ngày 15.10. Trung tâm phần mềm Ubuntu trong Trusty được sử dụng để cho phép người dùng mua các ứng dụng thông qua nó và những ứng dụng này thường không thể được cài đặt apt-get.

  1. 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ổ)?

Tôi nghĩ rằng bạn đang đề cập đến tìm kiếm bằng Dash ở đây (sử dụng siêu khóa). Dash thường chỉ hiển thị những chương trình đi kèm với giao diện người dùng đồ họa và có một số loại biểu tượng (cụ thể hơn là với tệp .desktop ). Đây là tốt cho sử dụng hàng ngày và được hiển thị trong tìm kiếm Dash. Nhưng đây không phải là tất cả các ứng dụng được cài đặt của bạn; Ubuntu có rất nhiều ứng dụng dòng lệnh không xuất hiện trong Dash, vì những ứng dụng này không phù hợp để sử dụng như các ứng dụng độc lập đồ họa (và vì chúng thường không đi kèm với tệp .desktop). Ví dụ: Bạn sẽ không thấy tarchương trình trong Dash.

Vì vậy, nếu bạn cài đặt một ứng dụng dòng lệnh, nó sẽ không xuất hiện trong tìm kiếm Dash (phím Windows) nói chung. Vì, bạn chưa chỉ định ứng dụng nào không xuất hiện, đây có thể là câu trả lời chung.

Lưu ý: Như Serg đã chỉ ra trong một nhận xét, sự xuất hiện của các biểu tượng trong Dash phụ thuộc vào các tệp .desktop. Nếu một ứng dụng dòng lệnh đi kèm với tệp .desktop, nó cũng sẽ xuất hiện trong dấu gạch ngang. Tôi đồng ý với anh ấy. Nhưng sự thật là, các ứng dụng dòng lệnh thường không đi kèm với tệp .desktop .

  1. Các lệnh chính xác để cài đặt phần mềm từ dòng lệnh để tôi có thể tìm kiếm chúng là gì?

Như đã nói, không có lệnh nào để cài đặt phần mềm từ dòng lệnh sẽ buộc nó xuất hiện trong tìm kiếm Dash. Một số phần mềm sẽ tự động xuất hiện, một số sẽ không. Nếu bạn cài đặt trình soạn thảo văn bản nguyên tử thông qua dòng lệnh, nó sẽ xuất hiện. Nếu bạn cài đặt p7zipgói, nó sẽ không xuất hiện trong tìm kiếm Dash. Nó phụ thuộc vào tính khả dụng của các biểu tượng đồ họa của phần mềm (và cấu hình của các biểu tượng trình khởi chạy trong môi trường máy tính để bàn của bạn, chẳng hạn như Unity, Xfce, v.v.). Nó không phụ thuộc vào cách bạn cài đặt chúng.

  1. 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 cách bạn sao lưu và khôi phục. subllà tên chương trình cho Sublime Text Editor. Nếu bạn chưa cài đặt nó, hãy cài đặt nó. Các subllệnh nên bắt đầu làm việc.


1
Trả lời cho điểm # 2 không hoàn toàn chính xác. Dash tìm kiếm các tập tin .desktop. Ví dụ hay về tiện ích dòng lệnh đi kèm với tệp .desktop là byobu và có thể tìm kiếm thông qua dấu gạch ngang. Các biểu tượng không liên quan
Sergiy Kolodyazhnyy

@Serg Cảm ơn. Tôi muốn đưa ra một câu trả lời phi kỹ thuật càng nhiều càng tốt. Dù sao, tôi sẽ chỉnh sửa
Anwar

@Serg Có vẻ như byobu cũng đi kèm với một biểu tượng :)
Anwar

Ngay cả khi nó không có biểu tượng, nó vẫn có thể tìm kiếm được trong Dash, vì .desktoptệp này, nó sẽ chỉ có biểu tượng có dấu chấm hỏi nhưng nó vẫn hoạt động. Biểu tượng là thực sự tùy chọn. Tùy thuộc vào các nhà phát triển có bao gồm các biểu tượng hay không.
Sergiy Kolodyazhnyy

3

Tôi đoán rằng bạn đang sử dụng một trong hai apthoặc apt-gettừ dòng lệnh. apt là một trình quản lý gói mà trung tâm phần mềm GUI dựa vào. Ví dụ, bạn muốn cài đặt gói "gimp". Để làm điều đó thông qua dòng lệnh bạn sử dụng

sudo apt install gimp

Tất cả trung tâm phần mềm thực hiện là, khi bạn chọn GIMP sẽ được cài đặt, sẽ chạy lệnh đó trong nền để bạn không phải nhập nó.

Để tìm kiếm một chương trình có thể cài đặt thông qua dòng lệnh, sử dụng lệnh này:

apt search {search term}
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.