Khi làm việc với hệ điều hành Linux, đặc biệt là các bản phân phối dựa trên Red Hat như CentOS, Fedora hay Oracle Linux, bạn thường sử dụng Yum để quản lý các gói phần mềm. Tuy nhiên, trong một số tình huống, chẳng hạn như khi bạn không có kết nối Internet, bạn vẫn có thể cài đặt các gói bằng cách thiết lập một Local Yum Repository.

Trong bài viết này, chúng ta sẽ cùng nhau tìm hiểu quy trình từng bước để tạo Local Yum Repository và cài đặt các gói phần mềm mà không cần Internet.


1. Chuẩn bị môi trường

Để bắt đầu, bạn cần một máy tính hoặc máy chủ với hệ điều hành Linux đã được cài đặt Yum và có quyền truy cập vào terminal.

2. Cài đặt các gói cần thiết

Đảm bảo rằng bạn đã cài đặt createrepoyum-utils, chúng là công cụ hỗ trợ cho việc tạo repository:

sudo yum install createrepo yum-utils

3. Tải xuống các gói phần mềm

Trước tiên, bạn cần tải xuống các gói mà bạn muốn cài đặt vào máy chủ. Bạn có thể làm điều này trên một máy khác có kết nối Internet. Sử dụng lệnh sau để tải xuống gói mà bạn cần:

yum install --downloadonly --downloaddir=

Ví dụ:

yum install --downloadonly --downloaddir=/tmp/downloads httpd

4. Tạo Local Yum Repository

Sau khi đã tải xuống các gói, bạn cần tạo một Local Yum Repository từ thư mục chứa các gói đã tải về.

4.1. Tạo thư mục repository

Tạo một thư mục mới để chứa repository:

sudo mkdir -p /var/www/html/yumrepo

4.2. Sao chép các gói vào thư mục repository

Sao chép tất cả các gói đã tải xuống vào thư mục repository:

sudo cp /tmp/downloads/* /var/www/html/yumrepo/

4.3. Tạo metadata cho repository

Sử dụng lệnh createrepo để tạo metadata cho repository:

sudo createrepo /var/www/html/yumrepo/

5. Cấu hình Yum để sử dụng Local Repository

Bây giờ bạn cần cấu hình Yum để nhận diện Local Repository. Tạo một file .repo trong thư mục /etc/yum.repos.d/.

sudo vi /etc/yum.repos.d/local.repo

Thêm vào nội dung sau:

[localrepo]
name=Local Repository
baseurl=file:///var/www/html/yumrepo/
enabled=1
gpgcheck=0

6. Cài đặt gói từ Local Yum Repository

Bây giờ, bạn có thể cài đặt các gói từ Local Yum Repository mà không cần Internet. Chỉ cần sử dụng lệnh yum install như bình thường:

sudo yum install

Ví dụ:

sudo yum install httpd

7. Cập nhật Local Repository

Nếu bạn cần thêm hoặc cập nhật các gói trong Local Repository, bạn chỉ cần thêm các gói mới vào thư mục /var/www/html/yumrepo/ và chạy lại lệnh createrepo để cập nhật metadata:

sudo createrepo /var/www/html/yumrepo/

Kết luận

Bằng cách thiết lập một Local Yum Repository, bạn có thể dễ dàng cài đặt và quản lý các gói phần mềm trên hệ thống Linux của mình mà không cần kết nối Internet. Điều này rất hữu ích trong môi trường sản xuất hoặc khi bạn cần cài đặt trên nhiều máy mà không muốn tải xuống từng gói một.

Hy vọng hướng dẫn này hữu ích cho bạn trong quá trình quản lý gói phần mềm trên hệ thống Linux của mình!