Trang chủ / Chuyên đề / Quản trị packages trong Ubuntu và Debian với apt-get-apt-cache
Thứ ba, 06/08/2013 | 00:00 GMT+7

Quản trị packages trong Ubuntu và Debian với apt-get-apt-cache

Apt là công cụ dòng lệnh cho trình cài đặt gói dpkg và là cách quản lý phần mềm từ dòng lệnh được ưa chuộng cho nhiều bản phân phối. Nó là hệ thống quản lý gói chính trong các bản phân phối Linux dựa trên Debian, Ubuntu. Trong hướng dẫn này, ta sẽ thảo luận về cách sử dụng cơ bản của apt-get và apt-cache và cách chúng có thể quản lý phần mềm của bạn. Ta sẽ thực hành trên server Ubuntu, nhưng các bước và kỹ thuật tương tự sẽ áp dụng trên bất kỳ bản phân phối dựa trên Debian nào.

Cách cập nhật database (cơ sở dữ liệu) gói với Apt-Get

Apt-get hoạt động trên database của các phần mềm sẵn có, đã biết. Nó thực hiện cài đặt, tìm kiếm gói và nhiều hoạt động khác bằng cách tham chiếu database này.

Do thực tế này, trước khi bắt đầu bất kỳ hoạt động đóng gói nào với apt-get, ta cần đảm bảo bản sao local của database được cập nhật.

Cập nhật database bằng lệnh sau. Apt-get yêu cầu quyền quản trị cho hầu hết các hoạt động:

sudo apt-get update

Bạn sẽ thấy danh sách các server mà ta đang lấy thông tin từ đó. Sau đó, database của bạn sẽ được cập nhật.

Cách nâng cấp các gói đã cài đặt với Apt-Get

Ta có thể nâng cấp các gói trên hệ thống của bạn bằng cách ra lệnh sau:

sudo apt-get upgrade

Để nâng cấp hoàn thiện hơn, bạn có thể sử dụng đối số "dist-upgrade", đối số này cố gắng giải quyết dependencies (các-phụ-thuộc) thông minh cho các gói mới và sẽ nâng cấp các chương trình cần thiết tối ưu:

sudo apt-get dist-upgrade

Cách cài đặt các gói mới với Apt-Get

Nếu biết tên gói muốn cài đặt, bạn có thể cài đặt bằng cú pháp sau:

sudo apt-get install package1 package2 package3 ...

Bạn có thể thấy rằng có thể cài đặt nhiều gói cùng một lúc, điều này rất hữu ích để có được tất cả các phần mềm cần thiết cho một dự án chỉ trong một dòng lệnh.

Điều quan trọng là hiểu rằng apt-get không chỉ cài đặt phần mềm được yêu cầu mà còn bất kỳ phần mềm nào cần thiết đi kèm (ví dụ thư viện...) để cài đặt hoặc chạy nó.

Ta có thể cài đặt gói soạn thảo văn bản "vim" đầy đủ bằng lệnh:

sudo apt-get install vim

Cách xóa gói bằng Apt-Get

Để xóa một gói khỏi hệ thống của bạn, bạn có thể sử dụng lệnh sau:

sudo apt-get remove package_name

Lệnh này xóa gói, nhưng vẫn giữ các file cấu hình trong trường hợp bạn cài đặt lại gói sau này. Bằng cách này, cài đặt của bạn sẽ vẫn nguyên vẹn, mặc dù chương trình chưa được cài đặt.

Nếu đây bạn muốn xóa hoàn toàn các file cấu hình cũng như chương trình, hãy sử dụng cú pháp sau:

sudo apt-get purge package_name

Thao tác này gỡ gói cài đặt và xóa mọi file cấu hình được liên kết với gói.

Để loại bỏ bất kỳ gói nào đã được cài đặt tự động đi kèm (như các phụ thuộc), hãy nhập lệnh sau:

sudo apt-get autoremove

Bạn cũng có thể chỉ định tên gói sau lệnh "autoremove" để gỡ gói cài đặt và các phụ thuộc của gói.

Cờ tùy chọn Apt-Get phổ biến

Có một số tùy chọn khác nhau có thể dùng với các cờ. Ta sẽ đi qua một số cở cơ bản. 

Để thực hiện "dry run" một lệnh để xem sơ bộ những gì một lệnh sẽ thực hiện, bạn có thể chuyển cờ "-s" cho "mô-phỏng (simulate)":

sudo apt-get install -s htop
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Suggested packages:
  strace ltrace
The following NEW packages will be installed:
  htop
0 upgraded, 1 newly installed, 0 to remove and 118 not upgraded.
Inst htop (1.0.1-1 Ubuntu:12.04/precise [amd64])
Conf htop (1.0.1-1 Ubuntu:12.04/precise [amd64])

Thay cho các hành động thực tế, bạn có thể thấy phần "Inst" và "Conf" chỉ định rằng ở đó gói sẽ được cài đặt khi lựa chọn "-s" bị xóa.

Nếu thêm cờ "-y" phần mềm sẽ được cài ngay mà không hỏi bạn xác nhận cài.

sudo apt-get remove -y htop

Nếu bạn muốn download một gói, nhưng không cài đặt nó, bạn có thể sử dụng lệnh sau:

sudo apt-get install -d packagename

Các file sẽ được đặt trong "/var/cache/apt/archives".

Nếu bạn muốn chặn kết quả, bạn có thể chuyển cờ "-qq" cho lệnh:

sudo apt-get remove -qq packagename

Cách tìm một gói với Apt-Cache

Apt là bộ các công cụ miễn phí, liên quan được sử dụng để quản lý phần mềm hệ thống của bạn.

Trong khi "apt-get" được sử dụng để nâng cấp, cài đặt và loại bỏ các gói, "apt-cache" được sử dụng để truy vấn database về thông tin gói.

Bạn có thể sử dụng lệnh sau để tìm kiếm gói phù hợp với nhu cầu. Lưu ý apt-cache thường không yêu cầu quyền quản trị:

apt-cache search what_you_are_looking_for

Ví dụ: nếu ta muốn tìm "htop", một version cải tiến của "top", ta có thể nhập như sau:

apt-cache search htop
aha - ANSI color to HTML converter
htop - interactive processes viewer

Ta cũng có thể tìm kiếm các thuật ngữ chung chung hơn. Trong ví dụ này, ta sẽ tìm kiếm phần mềm chuyển đổi mp3:

apt-cache search mp3 convert
abcde - A Better CD Encoder
cue2toc - converts CUE files to cdrdao's TOC format
dir2ogg - audio file converter into ogg-vorbis format
easytag - viewing, editing and writing ID3 tags
hpodder - Tool to scan and download podcasts (podcatcher)
id3v2 - A command line id3v2 tag editor
kid3 - KDE MP3 ID3 tag editor
kid3-qt - Audio tag editor
. . .

Cách xem thông tin với Apt-Cache

Để xem thông tin về một gói, bao gồm cả mô tả mở rộng, hãy sử dụng cú pháp sau:

apt-cache show package_name

Điều này cũng sẽ cung cấp kích thước của download và các phụ thuộc cần thiết cho gói.

Để xem một gói đã được cài đặt hay chưa và kiểm tra xem gói đó thuộc về repository (kho-lưu-trữ) nào, ta có thể chạy:

apt-cache policy package_name

Kết luận

Đến đây bạn đã biết về apt-get và apt-cache để quản lý hầu hết các phần mềm trên server, dựa trên họ Linux Debian. Hầu hết các hoạt động phần mềm có thể được quản lý bằng các công cụ này. 


Tags: Ubuntu

Các tin trước

Sử dụng roles và quản lý cấp quyền trong postgresql trên vps 2013-08-05

Lệnh truy vấn SQL trong postgresql sử dụng select 2013-08-02

Các lệnh truy cấn quản lý bảng dữ liệu trong postgresql trên cloud-server 2013-08-01

Bảo mật MySQL và MariaDB Databases trên Linux VPS 2013-07-23

Cài đặt Firewall với UFW trên Ubuntu và Debian Cloud Server 2013-06-25

Cơ bản nhất về MYSQL trên Ubuntu CentOS 2012-06-12