Gói cài đặt apt-get ở đâu?

Where Does Apt Get Install Packages



Cho dù bạn là một người kỳ cựu về Linux hay mới bắt đầu với Linux, chắc hẳn bạn đã từng sử dụng apt-get hoặc thấy nó được sử dụng ở đâu đó. Đây là cách chính để cài đặt các gói và phụ thuộc trên Ubuntu. Nói một cách đơn giản hơn, apt-get là mục đích sử dụng của mọi người dùng Linux khi muốn thiết lập phần mềm trên máy tính của họ. Điều này làm nảy sinh một câu hỏi mới - apt-get cài đặt các gói này ở đâu? Các tệp sẽ đi đến đâu và làm cách nào để truy cập chúng? Trong hướng dẫn này, chúng ta sẽ tìm ra câu trả lời cho những câu hỏi này.

Bố cục hệ thống tệp Ubuntu

Trước khi đi sâu vào các tính năng kỹ thuật của vấn đề, chúng ta hãy bắt đầu bằng cách tìm hiểu cơ bản về Tiêu chuẩn phân cấp hệ thống tệp, hay còn gọi là FHS. Tất cả các bản phân phối Linux đều lấy cấu trúc thư mục và nội dung của chúng từ Tiêu chuẩn phân cấp hệ thống tập tin. Chúng ta sẽ lướt qua một số phần rất quan trọng để hiểu gói cài đặt apt-get ở đâu và tại sao lại như vậy.







FHS không được coi là có thẩm quyền về cấu trúc và nội dung thư mục đối với mọi bản phân phối Linux, nhưng nói chung đây là tiêu chuẩn phổ biến nhất của bố cục tệp. Tất cả các thư mục và tệp trong FHS xuất hiện dưới ‘/’ - thư mục gốc. Chúng ta hãy xem một số thư mục thường được sử dụng.



  • / bin thư mục chứa các tệp nhị phân lệnh chính.
  • / dev thư mục chứa các tệp thiết bị.
  • / etc thư mục có các tệp cấu hình máy chủ lưu trữ cụ thể.
  • / home folder chứa cài đặt cá nhân của người dùng và các tệp đã lưu.

Một tổ chức phi lợi nhuận có tên là Linux Foundation duy trì Tiêu chuẩn phân cấp hệ thống tệp và bản cập nhật cuối cùng (phiên bản 3.0) đã được thực hiện vào ngày 3 tháng 6 năm 2015.



Bây giờ chúng ta đã hiểu rõ hơn về cách hệ thống tệp Linux chung được cấu trúc và cách nó hoạt động, chúng ta đã sẵn sàng tìm hiểu cách apt-get sử dụng chính cấu trúc này để cài đặt các gói và phụ thuộc.





Quản lý gói hàng

Tất cả các hệ điều hành và bản phân phối Linux đều có trình quản lý gói. Những người quản lý gói này chịu trách nhiệm cài đặt và gỡ bỏ phần mềm khỏi máy tính và bảo trì chúng. Chúng cung cấp cho người dùng nhiều quyền kiểm soát hơn đối với loại chương trình họ muốn chạy trên hệ thống và làm cho việc cài đặt của chúng có thể thực hiện được.

Trong Ubuntu (và Debian), dpkg là trình quản lý gói mà hầu hết mọi người sử dụng. Bạn có thể quản lý các gói có phần mở rộng .deb thông qua dpkg. Thảo luận về tiện ích này là phù hợp với chủ đề của chúng tôi vì chúng tôi sẽ sử dụng nó để tìm các gói cài đặt apt-get. Aptitude là cách thân thiện hơn với người dùng để sử dụng dpkg vì nó cung cấp giao diện người dùng. Hãy để chúng tôi xem xét cách thức hoạt động của dpkg trong Ubuntu, cú pháp của nó và cách bạn có thể sử dụng nó để tìm ra nơi apt-get cài đặt các gói.



Cú pháp chung của lệnh này như sau.

$dpkg [hành động]

Một phương pháp phổ biến khác của việc sử dụng nó là:

$dpkg [tùy chọn]tên tập tin

Bạn có thể cài đặt một gói trên hệ thống Linux của mình bằng cách chạy lệnh dpkg đơn giản sau.

$dpkg -tôitên gói hàng

Chúng ta sẽ hiểu cách người ta có thể sử dụng dpkg và apt-get để cài đặt các gói và tìm hiểu nơi các gói được cài đặt trong các phần sau.

Apt-get hoạt động như thế nào?

Đến thời điểm này, chúng ta đều biết rằng apt-get có thể được sử dụng để cài đặt, gỡ bỏ và nâng cấp các gói Linux. Chúng tôi cũng biết rằng nó đóng vai trò là giao diện người dùng cho dpkg, tiện ích quản lý gói gốc dành cho Ubuntu và Debian. Nhưng nó thực sự hoạt động như thế nào? Và điều gì xảy ra với các tệp được cài đặt bởi nó? Hãy cùng tìm hiểu!

Hãy để chúng tôi bắt đầu bằng cách cài đặt một gói thử nghiệm có tên là ack. Vì mục đích này, chúng tôi sẽ sử dụng apt-get và sau đó chúng tôi sẽ theo dõi các tệp được cài đặt bởi nó đến các vị trí cụ thể của chúng.

Tiếp tục và bắt đầu một cửa sổ Terminal mới thông qua menu Hoạt động hoặc nhấn Ctrl + Alt + T trên bàn phím của bạn. Bước tiếp theo là đảm bảo rằng bạn đã thêm kho lưu trữ đa vũ trụ. Nếu không có điều đó, bạn không thể cài đặt ack. Rõ ràng là bạn có thể tự do sử dụng bất kỳ gói nào khác mà bạn chọn.

Vì vậy, để thêm kho lưu trữ, hãy chạy lệnh sau trong Terminal.

$sudoapt-add-repository đa vũ trụ

Khi điều đó không xảy ra, chúng tôi chuyển sang cài đặt gói.

$sudo apt-get cài đặtChao ôi

(Lưu ý rằng thay vì ack-grep, ack đã được cài đặt. Đây là lý do tại sao chúng tôi sẽ sửa đổi các lệnh tiếp theo mà chúng tôi thực thi)

Quá trình cài đặt sẽ hoàn tất trong vài giây. Sau khi thực hiện điều đó, bây giờ chúng tôi điều tra gói với sự trợ giúp của trình quản lý gói của chúng tôi, dpkg. Chúng tôi sẽ tìm ra nơi các tệp của gói đã được cài đặt và cách truy cập chúng.

Nhớ lại cú pháp chung của lệnh dpkg mà chúng ta đã mô tả trong các phần trước. Ở đây, chúng tôi sẽ sử dụng một biến thể của lệnh đó để liệt kê các tệp trong gói đã cài đặt.

Để liệt kê nội dung của một gói, chúng ta sử dụng toán tử -L với lệnh dpkg. Chạy lệnh dưới đây để xem các tệp.

$dpkg -NSChao ôi

Như bạn có thể thấy trong hình, tất cả các tệp đã cài đặt trình quản lý gói được hiển thị cùng với địa chỉ của chúng trên máy tính.

Ngoài ra, một số tệp được tạo hoặc sửa đổi bởi các tập lệnh pre / postrm và pre / postinstall có trong gói đã cài đặt. Bạn có thể xem các tập lệnh này trong thư mục sau.

/ở đâu/lib/dpkg/thông tin

thông tin thêm

Bây giờ chúng tôi đã đề cập đến phần nội dung của hướng dẫn, chúng tôi sẽ thêm một số thông tin bổ sung cho những ai tò mò muốn tìm hiểu thêm.

Ví dụ: giả sử bạn muốn sử dụng dpkg để giải nén tất cả các tệp của một gói trong thư mục hiện tại. Bạn có thể thực hiện việc này bằng cách chạy lệnh đơn giản sau.

$dpkg -NStên gói hàng

Bạn cũng có thể nắm giữ các tệp như preinst, postrm, postinst, v.v. bằng lệnh dưới đây.

$dpkg -Vàtên gói hàng

Thao tác này cũng sẽ giải nén các tệp đã nói vào thư mục hiện tại.

Phần kết luận

Với điều đó đã được nói, chúng tôi kết thúc hướng dẫn này. Hôm nay chúng ta đã học được một số điều về apt-get. Chúng tôi đã xem Tiêu chuẩn phân cấp hệ thống tệp, cách trình quản lý gói Ubuntu hoạt động và cuối cùng, cách chúng tôi có thể tìm thấy nơi apt-get cài đặt các gói.