Using apt-get Commands In Linux [Complete Beginners Guide]

apt-get commands

Bài viết này giúp bạn biết được rằng mình có thể làm gì với apt-get commands trên Linux, làm thế nào thể tìm kiếm, cài đặt, nâng cấp cũng như dọn dẹp hệ thống.

Nếu bạn mới bắt đầu sử dụng Ubuntu hoặc những bản phân phối khác dựa trên Ubuntu như Linux Mint hay elementary OS. Bạn chắc hẳn phải biết qua lệnh apt-get.

Đúng vậy, việc đầu tiên trong những việc cần làm sau khi cài đặt Ubuntu là sử dụng apt-get update và apt-get upgrade. Bây giờ, bạn có thể nhận biết được một vài lệnh và cách sử dụng của chúng nhưng có nhiều lệnh khác chưa chắc đã nắm được.

Trong bài viết này, tôi sẽ giải thích nhiều lệnh apt-get khác nhau với ví dụ kèm theo. Theo đó, bạn sẽ có thể sử dụng chúng tốt như một chuyên gia Linux.

What is apt-get?

Ubuntu có nguồn gốc từ Debian Linux. Debian sử dụng dpkg package system. Một package system là công cụ cung cấp cách cài đặt chương trình và ứng dụng trên hệ thống cụ thể. Theo cách này, bạn không phải build chương trình từ mã nguồn.

APT (Advanced Package Tool) là công cụ command line để tương tác với package system. Đã có dpkg để quản lý cài đặt nhưng apt thân thiện hơn với người dùng. Bạn có thể dùng nó để tìm kiếm và cài đặt packages mới cũng như nâng cấp hoặc sau đó gỡ bỏ đi,...

Có 2 lệnh chính khi nhắc đến APT: apt-get và apt-cache. apt-get dùng cho cài đặt, nâng cấp và xóa bỏ packages trong khi apt-cache dùng cho việc tìm kiếm packages mới.

Tôi đang sử dụng Linux Mint 18 trong hướng dẫn này, nhưng bạn có thể sử dụng bất kì bản phân phối nào là Ubuntu-based như elementary OS, Linux Lite,...

Using apt-get commands

Hãy bắt đầu với apt-get. Bạn không thể không sử dụng lệnh này. Tốt hơn hết là phải hiểu nó, theo đó có bạn có thể xử lý Linux tốt hơn.

Update the package database

Về cơ bản, apt-get làm việc trên một database chứa các packages khả dụng. Nếu bạn không cập nhật database này, hệ thống sẽ không biết có packages mới hay không. Đúng vậy, đây là lệnh đầu tiên phải chạy trên bất kì hệ thống Debian-based nào ngay sau khi vừa cài đặt.

Cập nhật package database yêu cầu quyền superuser nên bạn sẽ cần "sudo".

sudo apt-get update

Khi chạy lệnh trên, bạn sẽ nhìn thấy thông tin được trả về từ nhiều servers khác nhau.

sudo apt-get update

Bạn sẽ nhìn thấy có loại ở đây là hit, get và ign. Để tôi giải thích:

  • hit: Không có thay đổi nào về package version.
  • ign: package sẽ bị bỏ qua. Có nhiều lý do cho vấn đề này. Ví dụ, package này quá mới nên không cần kiểm tra có phiên mới tiếp theo hay không, hoặc một lỗi nào đó của việc truy xuất file từ servers. Đây không phải một lỗi cụ thể của package, có thể thử lại sau và mọi thứ lại bình thường nên không cần lo lắng về nó.
  • get: Có phiên bản mới của một package cụ thể. apt-get sẽ tải thông tin chứ không phải binaries và files để tiến hành cài đặt package đó.

Upgrade installed packages with apt-get

Một khi bạn đã cập nhật package database, bạn có thể nâng cấp các package mà đã được cài từ trước. Cách thuận tiện nhất đó là nâng cấp toàn bộ packages có thể.

sudo apt-get upgrade

apt-get upgrade

Để nâng cấp một gói cụ thể bất kỳ, sử dụng lệnh bên dưới:

sudo apt-get upgrade <package_name>

Cách khác để thực hiện nâng cấp hoàn toàn là sử dụng lệnh sau:

sudo apt-get dist-upgrade

Nhưng bạn nên hạn chế sử dụng nó. Tôi sẽ giải thích tại sao trong phần tới.

Difference between upgrade and dist-upgrade

Lệnh apt-get upgrade không bao giờ tự động xóa bỏ hoặc cài packages mới.

Lệnh apt-get dist-upgrade thì khác, nó tìm kiếm depencencies với phiên bản mới hơn của những package đã cài đặt, tự động cài đặt cài mới xóa bỏ cái cũ.

Nghe có vẻ dist-upgrade thông minh hơn nhưng nó kèm theo rủi ro. Nó hoàn toàn có thể vô tình xóa bỏ những package bạn cần. Đây là lý do chính không nên dùng dist-upgrade trên production.

What is the difference between apt-get update and apt-get upgrade?

Sự nhầm lẫn này rất phổ biến. Bạn không phải người duy nhất cảm thấy bối rối với 2 lệnh này.

Nghe qua thì có vẻ apt-get update nên cập nhật package mới phải. Nhưng nó chỉ cập nhật database của những package khả dụng. Ví dụ, gói x với phiên bản 1.3 đang được cài đặt; sau khi chạy apt-get update, database sẽ chứa thông tin của phiên bản mới hơn là 1.4.

Chạy apt-get upgrade sau apt-get update sẽ nâng cấp các packages có thể lên phiên bản mới hơn.

Đó là lý do tại sao cách nhanh nhất để cập nhật Ubuntu, ta dùng tổ hợp sau:

sudo apt-get update && sudo apt-get upgrade -y

Using apt-cache commands to search for packages

Thực lòng, đây không phải cách tôi thích để tìm kiếm packages. Nhưng nó cũng có thể hữu ích khi tìm kiếm một vài thư viện cụ thể.

Tất cả những gì bạn cần là chạy lệnh sau (không cần sudo):

apt-cache search <search_term>

apt-cache search

Bạn không nhớ chính xác tên của package. Nó sẽ tìm kiếm package phù hợp theo tên và mô tả ngắn và hiển thị kết quả.

Nếu bạn muốn tìm package với tên cụ thể, dùng lệnh sau:

apt-cache pkgnames <search_term>

apt-cache pkgnames

Một khi biết chính xác tên của package, bạn có thể lấy nhiều thông tin hơn về nó, chẳng hạn như phiên bản, dependencies,..

apt-cache showpkg <package_name>

apt-cache showpkg

How to install new packages with apt-get

Với tên chính xác của package, bạn có thể dễ dàng cài đặt nó:

sudo apt-get install <package_name>

Tưởng tượng, bạn muốn cài đặt pinta image editor. Bạn chạy lệnh sau:

sudo apt-get install pinta

Một điểm thú vị của lệnh apt-get install đó là auto-completion. Nếu không nhớ tên chính xác, bạn có thể gõ một vài ký tự sau đó nhấn tab. Nó sẽ gợi ý tất cả những package mà tên bắt đầu với những ký tự vừa gõ.

apt-get install and tab

How to install multiple packages

Bạn không bị giới hạn cài đặt một package một lần. Bạn có thể cài nhiều packages một lúc bằng cách liệt kê tên của chúng sau lệnh apt-get install

sudo apt-get <package_1> <package_2> <package_3>

install pinta

What if you run install on an already installed package?

Chẳng hạn, package A đã được cài đặt trước đó, bạn cố tình sử dụng apt-get install để cài nó tiếp. apt-get sẽ tìm trong database và nếu package A có phiên bản mới hơn , nó sẽ nâng cấp. Vậy nên không có tác hại nào khi dùng apt-get install trừ khi bạn không muốn nâng cấp.

How to install packages without upgrading

Vậy khi bạn muốn cài đặt nhưng không muốn package được nâng cấp? Nghe hơi lạ nhưng bạn có lý do nào đó. Chỉ thần thêm option --no-upgrade vào sau lệnh apt-get install.

sudo apt-get install --no-upgrade <package_name>

--no-upgrade

How to only upgrade a package, not install it

Tương tự trường hợp --no-upgrade, bạn phải dùng --only-upgrade.

sudo apt-get install <package_name> --only-upgrade

--only-upgrade

How to install a specific version of an application

Mặc định, bản mới nhất khả dụng sẽ được cài đặt. Nhưng thay vào đó, bạn muốn cài một phiên bản cụ thể, dùng lệnh sau:

sudo apt-get install <package_name>=<version_number>

How to remove installed packages with apt-get

Cài đặt các gói không phải là điều duy nhất bạn có thể làm với apt-get. Bạn cũng có thể loại bỏ các gói với nó. Tất cả những gì bạn cần làm là sử dụng lệnh theo cách sau:

sudo apt-get remove <package_name>

Auto-completion cũng hoạt động ở đây. Vì vậy, chỉ cần bắt đầu nhập tên package và nhấn tab, và nó sẽ đề xuất tất cả các package đã cài đặt bắt đầu bằng các chữ cái đó.

Một cách khác để gỡ cài đặt các gói là sử dụng purge. Lệnh được sử dụng theo cách sau:

sudo apt-get purge <package_name>

What is the difference between apt-get remove and apt-get purge?

  • apt-get remove chỉ gỡ bỏ binaries của một package. Các file cấu hình vẫn còn nguyên.
  • apt-get purge xóa bỏ hoàn toàn package bao gồm cả những file cấu hình.

Vì vậy, nếu bạn đã “gỡ bỏ” một phần mềm cụ thể và sau đó cài đặt lại, hệ thống của bạn sẽ có các file cấu hình giống nhau. Tất nhiên, bạn sẽ được yêu cầu ghi đè các file cấu hình hiện có khi bạn cài đặt lại.

Purge đặc biệt hữu ích khi bạn đã làm sai cấu hình của một chương trình, khi bạn muốn xóa hoàn toàn dấu vết của nó khỏi hệ thống và bắt đầu lại.

Trong phần lớn các trường hợp, một thao tác gỡ bỏ đơn giản là quá đủ để gỡ cài đặt một gói.

How to clean your system with apt-get

Bạn cũng có thể dọn dẹp hệ thống của mình bằng apt-get và giải phóng một số dung lượng ổ đĩa.

Bạn có thể sử dụng lệnh dưới đây để xóa bộ nhớ cache apt (các packages đã truy xuất được lưu cục bộ):

sudo apt-get clean

Một cách khác là sử dụng autoclean. Không giống như lệnh clean ở trên, autoclean chỉ xóa những tệp gói đã truy xuất hiện có phiên bản mới hơn và do đó sẽ không được sử dụng nữa.

sudo apt-get autoclean

Một cách khác để giải phóng dung lượng ổ đĩa là sử dụng autoremove. Nó loại bỏ các libraries và packages đã được cài đặt tự động để đáp ứng các dependencies của một gói được cài đặt khác. Nếu package đó bị gỡ bỏ, các package được cài đặt tự động này sẽ vô dụng trong hệ thống. Lệnh này loại bỏ các package như vậy.

sudo apt-get autoremove

Đây là một cách để dọn dẹp hệ thống Linux. Nếu bạn thích GUI, đây là một số lựa chọn thay thế CCleaner cho Linux mà bạn có thể sử dụng trên Ubuntu và các bản phân phối Linux dựa trên Ubuntu.

Tổng kết

Có nhiều hơn các lệnh với apt-get nhưng bài viết này đã liệt kê đủ để có khởi đầu tốt. Bạn luôn có thể tìm thêm thông tin trong man pages.

Nguồn: https://itsfoss.com/apt-get-linux-guide/

Leave a Reply

Your email address will not be published. Required fields are marked *