Computer >> Máy Tính >  >> Hệ thống >> Linux

Cách chuyển đổi giữa các gói Linux bằng Alien

Bạn có muốn chuyển đổi một gói Linux sang một số định dạng khác không? Có lẽ gói bạn đang tìm kiếm không có sẵn cho bản phân phối của bạn nhưng bạn vẫn muốn nó dù có thế nào đi nữa. Hoặc có thể bạn là nhà phát triển và muốn tiết kiệm thời gian của mình bằng cách nhanh chóng đóng gói lại chương trình của bạn sang các định dạng khác mà không cần phải xây dựng lại gói.

May mắn thay, Linux đã có công cụ bạn cần. Với Alien, bạn có thể dễ dàng chuyển đổi gói Linux hiện có của mình sang các định dạng khác thông qua dòng lệnh. Trước tiên, hãy bắt đầu bằng cách cài đặt công cụ trên hệ thống của bạn.

Cách cài đặt Alien trên Linux

Alien có sẵn trong kho lưu trữ vũ trụ Ubuntu. Để cài đặt nó, trước tiên hãy bật vũ trụ kho lưu trữ và cập nhật danh sách gói hệ thống của bạn. Sau đó, cài đặt người ngoài hành tinh gói bằng APT như bạn thường làm.

vũ trụ
sudo add-apt-repository universe
sudo apt update
sudo apt install alien

Người dùng Debian có thể chỉ cần cài đặt gói này bằng APT:

sudo apt install alien

Alien chưa có sẵn trong kho lưu trữ chính thức của Arch. Tuy nhiên, bạn có thể cài đặt nó từ AUR bằng trình trợ giúp AUR. Đối với mục đích của hướng dẫn này, chúng tôi sẽ sử dụng yay.

yay -S alien

Trên Fedora, CentOS và các bản phân phối dựa trên RPM khác, bạn có thể cài đặt Alien bằng DNF như sau:

sudo dnf install alien

Sau khi hoàn tất, hãy xác minh cài đặt bằng cách nhập ngoài hành tinh --version trong thiết bị đầu cuối. Nếu lệnh trả về thông tin phiên bản cho gói, quá trình cài đặt thành công. Tuy nhiên, nếu không, hãy thử thực hiện lại các bước cài đặt.

Chuyển đổi giữa các gói Linux bằng Alien

Sử dụng Alien, bạn có thể chuyển đổi giữa một số gói Linux. Để liệt kê một số:

  1. DEB (các bản phân phối dựa trên Debian)
  2. TAR.GZ (Kho lưu trữ được đóng gói)
  3. RPM (Fedora, CentOS và các bản phân phối khác)
  4. PKG (định dạng gói Solaris)
  5. SLP
  6. LSB

Alien có thể giải thích các tùy chọn sau:

  1. -d hoặc --to-dpkg :Chuyển đổi gói được chỉ định sang định dạng gói DEB
  2. -r hoặc --to-rpm :Chuyển đổi gói sang định dạng RPM
  3. -t hoặc --to-tgz :Tạo tệp lưu trữ TAR.GZ từ gói được chỉ định
  4. -l hoặc --to-lsb :Tạo gói LSB (Cơ sở tiêu chuẩn Linux)
  5. -p hoặc --to-pkg :Chuyển đổi gói được chỉ định sang định dạng PKG
  6. --to-slp :Tạo gói SLP

Cách sử dụng Alien trên Linux

Cú pháp cơ bản của tiện ích là:

sudo alien options filename

... nơi tùy chọn là các cờ khác nhau mà bạn có thể sử dụng với lệnh và tên tệp là đường dẫn tuyệt đối hoặc tương đối đến gói bạn muốn chuyển đổi.

Để chuyển đổi một gói RPM thành DEB:

sudo alien --d file.rpm
sudo alien --to-deb file.rpm

Để chứng minh cách bạn có thể chuyển đổi một gói sang tất cả các định dạng khác, chúng tôi sẽ chuyển đổi tệp DEB sang các gói Linux khác.

NỢ thành RPM:

sudo alien -r file.deb
sudo alien --to-rpm file.deb

GỬI TAR.GZ:

sudo alien -t file.deb
sudo alien --to-tgz file.deb

GỠ NỢ cho LSB:sudo Alien -l file.deb sudo Alien --to-lsb file.deb GỬI TỚI PKG:

sudo alien -p file.deb
sudo alien --to-pkg file.deb

NỢ cho SLP:

sudo alien --to-slp file.deb

Lưu ý rằng bạn cũng có thể chuyển đổi bất kỳ định dạng gói nào sang bất kỳ định dạng nào khác. Ví dụ:RPM thành LSB, SLP thành PKG, PKG thành DEB, v.v.

Cũng có thể chuyển đổi một gói sang nhiều định dạng bằng một lệnh duy nhất. Tất cả những gì bạn phải làm là chỉ định các cờ cho chuyển đổi như sau:

sudo alien --to-deb --to-rpm --to-tgz file.pkg
sudo alien -d -r -p file.tar.gz

Nếu gói chứa các tập lệnh cụ thể cho định dạng, bạn có thể chuyển đổi các tập lệnh đó bằng cách sử dụng --scripts hoặc -c cờ.

sudo alien --scripts --to-deb file.rpm
sudo alien -c --to-deb file.rpm

Cài đặt các gói sau khi chuyển đổi

Ngoài việc chuyển đổi các gói, Alien cũng có thể cài đặt các gói cho bạn. Bạn có thể thêm --install hoặc -i gắn cờ bằng lệnh để cài đặt ngay gói sau khi chuyển đổi.

Ví dụ:

sudo alien --to-rpm --install file.deb
sudo alien -r -i file.deb

Xử lý Thông tin Phiên bản Trong quá trình Chuyển đổi

Theo mặc định, Alien tự động tăng chi tiết phiên bản của gói. Nếu bạn chuyển đổi gói có số phiên bản 1.17.1 sử dụng Alien, gói được tạo sẽ có số phiên bản 1.17.2 .

Bạn có thể ghi đè hành vi mặc định này bằng cách sử dụng -k hoặc --keep-version cờ như sau:

sudo alien --to-rpm -k file.deb
sudo alien --to-rpm --keep-version file.deb

Bây giờ bạn có thể chuyển đổi gói trong Linux

Là một nhà phát triển, việc xây dựng lại một gói cho các bản phân phối Linux khác nhau có thể khó khăn. Để giải quyết vấn đề này, bạn có thể sử dụng Alien để chuyển đổi gói của mình sang các định dạng Linux khác một cách dễ dàng.

Mặc dù Alien là một tiện ích đáng tin cậy, nhưng nó không được khuyến khích nếu bạn muốn phát triển đúng các gói gốc cho các bản phân phối. Ngoài ra, trong khi xuất bản một gói, bạn phải luôn liệt kê các phần phụ thuộc mà chương trình yêu cầu.