Làm cách nào để cài đặt một gói duy nhất từ ​​Debian sid?


8

Lấy ví dụ về ibus-sunpinyin, không tồn tại trong bản phát hành bóp. Tôi sẽ không chuyển toàn bộ hệ thống sang nhánh sid, vì vậy, tôi muốn tải xuống gói duy nhất từ ​​kho lưu trữ sid và cài đặt nó như sau:

# Add the sid repository
sudo mv /tmp/sid.list /etc/apt/sources.list.d/

# Error: can't install because version conflicts of libc6:
#     sudo apt-get install ibus-sunpinyin

# This is ok but it will upgrade a lot of mess from sid branch:
#     sudo apt-get upgrade ibus-sunpinyin

# So, instead of apt-get install/upgrade, let me download & install the single package.
# However, this errored again because of version conflicts of libc6:
#      apt-get install --download-only ibus-sunpinyin

## THEN, WHAT CAN I DO? ##

# Remove the sid repository.
sudo mv /etc/apt/sources.list.d/sid.list /tmp

# Install the single package.
sudo dpkg -i ./ibus-sunpinyin-x.x.x.deb

Để tải xuống một gói duy nhất: bạn có thể apt-get download ...(đối với apt-get 0.8.11+) hoặc aptitude download .... Tuy nhiên, tôi cũng thất bại sudo dpkg -i ibus-sunpinyin-x.x.x.debdo phụ thuộc vào bên.
Xiè Jìléi

Câu trả lời:


1

Bạn cũng có thể thử tải xuống các gói nguồn từ kho lưu trữ bên cạnh và xây dựng chúng trên hệ thống ép của bạn. Bạn có thể gặp rắc rối nếu có nhiều phụ thuộc hoặc nếu gói phụ thuộc vào phiên bản của thư viện không có sẵn.

Nếu điều này hoạt động, thì bạn không cần phải duy trì phân phối khác trong một thư mục riêng, như bạn đã làm với phương pháp bootstrapping.


1
apt-pinning là cách thích hợp để làm điều này, TBH. jaqque.sbih.org/kplug/apt-pinning.html
Rob

9

Những gì bạn thực sự muốn là tìm hiểu về ghim apt. http://jaqque.sbih.org/kplug/apt-pinning.html


Bạn cần điều này nếu gói bạn muốn không có backport. Nếu không, tôi sẽ đặt cược backport thường hoạt động tốt hơn.
d -_- b

1
Vâng. Backports là một đặt cược an toàn hơn nhiều. Ghim Apt không phải lúc nào cũng hoạt động và đôi khi sẽ kéo theo nhiều hơn bạn muốn (không ai muốn giúp nếu bạn kéo libc6 từ sid!)
Rob

4

Gói này có sẵn trong Debian Backports , điều này sẽ giúp cuộc sống của bạn dễ dàng hơn rất nhiều. Đây thường là các gói được kéo từ thử nghiệm hoặc không ổn định (sid) và "backported" cho bản phát hành ổn định hiện tại.

Thêm dòng này vào sources.list

deb http://backports.debian.org/debian-backports squeeze-backports main

sau đó chạy:

apt-get update && apt-get -t squeeze-backports install ibus-sunpinyin

0

Một cách để giải quyết vấn đề này là sử dụng cdebootstrapđể cài đặt một hệ thống sid cơ bản, sau đó sử dụng chrootđể chạy chương trình bạn cần trong hệ thống mới.

cdebootstrapcài đặt một hệ thống debian mới từ bất kỳ phân phối nào bạn muốn trong một thư mục. Sau đó, chrootcho phép bạn chạy các chương trình trong bản phân phối khác mà không cần khởi động lại hoặc bất cứ điều gì.

Bạn cũng có thể sử dụng mount --bindđể cho phép hệ thống chroot truy cập vào thư mục nhà của bạn, / Proc, v.v.

Từ trong hệ thống chroot, apt-get sẽ cài đặt từ kho lưu trữ bên.

Để được giải thích chi tiết hơn, hãy xem https://wiki.ubfox.com/DebootstrapChroot .

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.