You are on page 1of 9

Package Management

Nội dung:

Cách hoạt động của Package system

Các hoạt động chính ( Tìm kiếm, install, remove, ….)

Phân biệt apt , yum

Các bản phân phối khác nhau sẽ sử dụng hệ thống đóng gói khác nhau và theo
một nguyên tắc chung, một gói dành cho bản phân phối này sẽ không tương thích
với bản phân phối khác.
Hầu hết các bản phân phối chia thành 2 loại: Debian Style và Red Hat Style

1. Cách hoạt động của Package System


Package Files: là một file compressed chứa tất cả các thông tin cần thiết để cài
đặt phần mềm. Được tạo bởi package maintainer.
Repositories: Nơi chứa các package files. Một bản phân phối có thể có một vài
kho lưu trữ khác nhau cho các giai đoạn khác nhau của vòng đời phát triển phần
mềm.
Dependencies: Một chương trình ít khi “standalone” mà thường có được xây dựng
dựa trên các thành phần của một phần mềm khác. Hệ thống quản lý các package
sẽ cung cấp các phương thức để khi cài đặt package thì tất cả các dependencies
của package sẽ được cài đặt.
Package management systems được chia làm hai loại công cụ:

Package Management 1
Low-level tools: Dùng để thực hiện các tác vụ như: install và remove

High-level tools: Dùng để xử lý các tác vụ liên quan đến tìm kiếm thông tin
metadata và cài đặt dependencies

Distributions Low-level tools High-level tools

Debian-Style dpkg (debian package) apt-get, apt

Red Hat Style rpm yum

2. Các hoạt động chính


Tìm kiếm package trên repository

Sử dụng high-level tools: Có thể tìm kiếm theo tên hoặc theo mô tả

Câu lệnh: apt-cache search search_string

VD Tìm kiếm apache

Cài đặt package từ repository

Package Management 2
Sử dụng high-level tools để tải gói từ kho lưu trữ và cài đặt cùng với các
dependency cần thiết cho chương trình

Câu lệnh: apt-get install package_name

Cài đặt package từ package file

Được sử dụng để cài đặt package từ package file đã được download về máy,
tuy nhiên lệnh low-level sẽ không có dependency resolution nên sẽ không tự
động cài đặt được các dependency cần thiết

Câu lệnh: dpkg -i package_file

Xóa package

Package Management 3
Cập nhật package từ respository

Cập nhật package từ package file

Đối với những package đã download sẵn file package chứa version mới nhất
về máy, ta có thể chạy lệnh low-level sau để update

Package Management 4
Hiện danh sách các package đã được cài đặt

Câu lệnh: dpkg -l

VD Giả sử khi install nginx thì có thể sử dụng câu lệnh: dpkg -l | grep nginx để dễ
dàng tìm kiếm hơn.

Package Management 5
Xác định khi một package đã được cài đặt:

Câu lệnh: dpkg -s package_name

Hiển thị thông tin về gói đã cài đặt

Tìm package nào đã cài đăt file

Mô tả Câu lệnh

Tìm kiếm package trên repository apt-cache search string_search

Cài đặt package từ repository apt-get install package_name

Cài đặt package từ package file dpkg -i package_file

Xóa package apt-get remove package_name

Cập nhật package từ repository apt-get update; apt-get upgrade

Cập nhật package từ package files dpkg -i package_file

Hiển thị danh sách package dpkg -l

Xác định package đã được cài đặt hay chưa dpkg -s package_name

Hiển thị thông tin của một package apt-cache show package_name

Package Management 6
Tìm package nào đã cài đặt file dpkg —search file_name

3. Phân biệt apt và yum


APT (Advanced Package Tool):

apt là công cụ quản lý gói phần mềm chủ yếu được sử dụng trên các hệ
điều hành dựa trên Debian như Ubuntu, Debian và các bản phân phối khác.
Nó được thiết kế để giúp người dùng cài đặt, cập nhật và gỡ bỏ các phần
mềm dễ dàng từ các kho lưu trữ (repositories) của hệ điều hành.

1. YUM (Yellowdog Updater Modified):

yumlà công cụ quản lý gói phần mềm được sử dụng chủ yếu trên các hệ
điều hành dựa trên Red Hat như CentOS, Fedora và các bản phân phối
khác. Giống như APT, yum cung cấp khả năng cài đặt, cập nhật và gỡ bỏ
phần mềm từ các kho lưu trữ của hệ điều hành.

Câu hỏi:
? Trong thư mục /etc/apt có file sources.list, file này là gì?
Trong các kho lưu trữ dùng để cung cấp các gói cho người dùng. Ubuntu và
các bản phân phối dựa trên Debian sẽ sử dụng file sources.list để lưu giữ bản
ghi của tất cả các kho lưu trữ trên hệ thống.
Ex:

root@ToeUbuntu:/etc/apt# cat sources.list


# See http://help.ubuntu.com/community/UpgradeNotes for how t
# newer versions of the distribution.
deb http://vn.archive.ubuntu.com/ubuntu jammy main restricted

Package Management 7
# deb-src http://vn.archive.ubuntu.com/ubuntu jammy main rest

## Major bug fix updates produced after the final release of


## distribution.
deb http://vn.archive.ubuntu.com/ubuntu jammy-updates main re
# deb-src http://vn.archive.ubuntu.com/ubuntu jammy-updates m

## N.B. software from this repository is ENTIRELY UNSUPPORTED


## team. Also, please note that software in universe WILL NOT
## review or updates from the Ubuntu security team.
deb http://vn.archive.ubuntu.com/ubuntu jammy universe
# deb-src http://vn.archive.ubuntu.com/ubuntu jammy universe
deb http://vn.archive.ubuntu.com/ubuntu jammy-updates univers
# deb-src http://vn.archive.ubuntu.com/ubuntu jammy-updates u

## N.B. software from this repository is ENTIRELY UNSUPPORTED


## team, and may not be under a free licence. Please satisfy
## your rights to use the software. Also, please note that so
## multiverse WILL NOT receive any review or updates from the
## security team.
deb http://vn.archive.ubuntu.com/ubuntu jammy multiverse
# deb-src http://vn.archive.ubuntu.com/ubuntu jammy multivers
deb http://vn.archive.ubuntu.com/ubuntu jammy-updates multive
# deb-src http://vn.archive.ubuntu.com/ubuntu jammy-updates m

## N.B. software from this repository may not have been teste
## extensively as that contained in the main release, althoug
## newer versions of some applications which may provide usef
## Also, please note that software in backports WILL NOT rece
## or updates from the Ubuntu security team.
deb http://vn.archive.ubuntu.com/ubuntu jammy-backports main
# deb-src http://vn.archive.ubuntu.com/ubuntu jammy-backports

deb http://vn.archive.ubuntu.com/ubuntu jammy-security main r


# deb-src http://vn.archive.ubuntu.com/ubuntu jammy-security
deb http://vn.archive.ubuntu.com/ubuntu jammy-security univer

Package Management 8
# deb-src http://vn.archive.ubuntu.com/ubuntu jammy-security
deb http://vn.archive.ubuntu.com/ubuntu jammy-security multiv
# deb-src http://vn.archive.ubuntu.com/ubuntu jammy-security

? Lệnh apt-get update và lệnh apt-get upgrade có chức năng gì?


Lệnh apt-get update:

Kết nối với các kho lưu trữ đã được cấu hình trong file sources.list hoặc thực
mục sources.list.d

Lệnh này được sử dụng để tải thông tin package từ tất cả các kho lưu trữ đã
được cấu hình. Đưa ra thông tin về phiên bản cập nhật của các gói và các
dependency

Lệnh apt-get upgrade:

Để cài đặt các bản nâng cấp có sẵn của các gói được cài đặt trên hệ thống từ
các nguồn được cấu hình

Package Management 9

You might also like