Sau khi đào sâu hơn, tôi đã tìm ra nó.
TL;DR
Ghim: phát hành X=Y
lọc theo các trường của tệp Phát hành bằng cách sử dụng ký hiệu tốc ký. Trong tệp phát hành, phiên bản phải là phiên bản của giải phóng. ví dụ) cho Debian bullseye bạn có thể có Ghim: phát hành v=11
, hoặc cho Ubuntu Jammy bạn có thể có Ghim: phát hành v=22.04
. Nguồn gốc nên tên tác giả hoặc nhà cung cấp. ví dụ.) Ghim: phát hành o=LP-PPA-mozillateam
.
Ghim: phiên bản X
bộ lọc dựa trên phiên bản gói. ví dụ.) Ghim: phiên bản 1:91
.
Ghim: gốc X
bộ lọc đối với tên máy chủ. ví dụ.) Ghim: nguồn gốc ppa.launchpad.net
.
Tập tin phát hành
bên trong Xác định phiên bản gói và thuộc tính phân phối
phần của người đàn ông apt_preferences
chúng tôi tìm thấy điều này.
Các vị trí được liệt kê trong tệp nguồn.list(5) phải cung cấp các tệp Gói và Bản phát hành để mô tả các gói có sẵn tại vị trí đó.
Vì vậy, mỗi vị trí (có nguồn gốc) có một phát hành tập tin cho mỗi bản phát hành có sẵn.Trong liên kết đó, chúng tôi thấy tệp phát hành được lưu trữ tại dist/$DIST/InRelease
.
Trên máy cục bộ của tôi, chúng tôi có
chính sách $ apt-cache
500 gói http://ppa.launchpad.net/mozillateam/ppa/ubuntu jammy/main amd64
phát hành v=22.04,o=LP-PPA-mozillateam,a=jammy,n=jammy,l=các bản dựng ổn định của Firefox ESR và Thunderbird,c=main,b=amd64
nguồn gốc ppa.launchpad.net
Ở đây, bạn có thể thấy máy cục bộ của tôi đang sử dụng kẹt cứng
giải phóng. Vì vậy, tệp phát hành có liên quan được đặt tại dist/jammy/InRelease
. Điều này cung cấp cho chúng tôi tập tin này ở đây: http://ppa.launchpad.net/mozillateam/ppa/ubuntu/dists/jammy/InRelease.
Tệp phát hành đó được tạo bởi người lưu trữ kho lưu trữ và chứa thông tin meta về bản phân phối. Một số thông tin là tùy chọn, và một số thì không. Một số trường tùy chọn bao gồm:
- Nguồn gốc
- Nhãn mác
- Phiên bản
- Thượng hạng
- tên mã
Và một số trường không bắt buộc bao gồm:
Đây là những gì bạn lọc khi bạn chỉ định Ghim: phát hành X=
trong tệp tùy chọn của bạn. Nó cũng được mô tả khi bạn chạy chính sách apt-cache
. Trong ví dụ trên, chúng ta có:
- Nguồn gốc:
o=LP-PPA-mozillateam
- Nhãn mác:
l=Firefox ESR
- Phiên bản:
v=22,04
- Thượng hạng:
một = kẹt
- Tên mã:
n=nhức nhối
- Các thành phần:
c=chính
Lưu ý: Tôi không thể tìm thấy bất cứ điều gì trong trang hướng dẫn liên quan đến b=
trường trong đầu ra của chính sách apt-cache
chỉ huy.
Nguồn gốc
Cũng như thông tin trên trong tệp phát hành, vị trí cũng có nguồn gốc. Điều này cũng được bao gồm trong đầu ra của chính sách apt-cache
chỉ huy. Như bạn có thể thấy ví dụ trên, đó là ppa.launchpad.net
.
Đây là những gì bạn lọc khi bạn bao gồm Ghim: gốc X
trong tệp tùy chọn của bạn.
bên trong Ảnh hưởng của tùy chọn APT
của trang người đàn ông, nó có câu hữu ích này:
Không nên nhầm lẫn điều này với Nguồn gốc của bản phân phối như được chỉ định trong tệp Phát hành.Phần theo sau thẻ "Origin:" trong tệp Phát hành không phải là địa chỉ Internet mà là tên tác giả hoặc nhà cung cấp, chẳng hạn như "Debian" hoặc "Ximian".
Phiên bản
Quay trở lại Xác định phiên bản gói và thuộc tính phân phối
phần của trang người đàn ông.
Như đã đề cập ở trên, nó nói:
Các vị trí được liệt kê trong tệp nguồn.list(5) phải cung cấp các tệp Gói và Bản phát hành để mô tả các gói có sẵn tại vị trí đó.
Vì vậy, ngoài tệp phát hành này, chúng tôi cũng có một tệp gói. Trang người đàn ông tiếp tục nói:
Chỉ có hai dòng trong mỗi bản ghi [của tệp gói] có liên quan để đặt mức độ ưu tiên của APT:
Gói: dòng
   đặt tên gói
Phiên bản: dòng
   cung cấp số phiên bản cho gói được đặt tên
Điều này khác với những gì nó nói cho trường Phiên bản của Giải phóng tập tin mà nó nói
Phiên bản: dòng
   đặt tên cho phiên bản phát hành. Ví dụ, các gói trong cây có thể thuộc bản phát hành Debian phiên bản 11.
Nếu chúng tôi tìm thấy một trong những tệp gói này, chúng tôi có thể thấy tệp này. Đối với gói ở trên, đối với kiến trúc của tôi, nó ở đây: http://ppa.launchpad.net/mozillateam/ppa/ubuntu/dists/jammy/main/binary-amd64/Packages.xz
Trong kho lưu trữ nén đó, chúng tôi có một gói
tệp chứa danh sách tất cả các gói có sẵn và phiên bản của chúng (và nhiều thông tin khác). Đây là một phần của một trong nhiều gói có sẵn:
Trọn gói: chim sấm sét
Ưu tiên: tùy chọn
Phần: thư
Kích thước cài đặt: 227239
Người bảo trì: Nhóm Ubuntu Mozilla <[email protected]>
Kiến trúc: amd64
Phiên bản: 1:91.5.1+build1-0ubuntu1
Phiên bản này là những gì bạn phù hợp với khi bạn bao gồm Ghim: phiên bản X
trong tệp tùy chọn của bạn.
Nếu bạn chạy chính sách apt-cache
trên một gói cụ thể, bạn có thể xem các phiên bản có sẵn cho gói đó.
$ apt-cache chính sách thunderbird
sấm sét:
Đã cài đặt: 1:78.14.0-1~deb11u1
Ứng viên: 1:78.14.0-1~deb11u1
Bảng phiên bản:
1:91.5.1+build1-0ubuntu1 500
500 gói http://ppa.launchpad.net/mozillateam/ppa/ubuntu jammy/main amd64
1:91.5.1-1+b2 10
10 http://ftp.us.debian.org/debian không ổn định/Gói AMD64 chính
1:91.5.0-2~deb11u1 500
500 gói http://security.debian.org/debian-security bullseye-security/main amd64
*** 1:78.14.0-1~deb11u1 900
900 http://deb.debian.org/debian bullseye/main Gói amd64
100 /var/lib/dpkg/trạng thái
Nhầm lẫn với Phiên bản
Có vẻ như phiên bản được chỉ định trong tệp phát hành không phải lúc nào cũng chính xác. Ví dụ: đối với Google Chrome, chúng tôi có:
chính sách $ apt-cache
900 http://dl.google.com/linux/chrome/deb stable/main AMD64 Gói
phát hành v=1.0,o=Google LLC,a=stable,n=stable,l=Google,c=main,b=amd64
xuất xứ dl.google.com
Tôi không chắc phiên bản này đại diện cho cái gì, vì nó không khớp với các phiên bản trong tệp gói:
$ grep "Gói\|Phiên bản" /var/lib/apt/lists/dl.google.com_linux_chrome_deb_dists_stable_main_binary-AMD64_Packages
Gói: google-chrome-beta
Phiên bản: 99.0.4844.17-1
Gói: google-chrome-ổn định
Phiên bản: 98.0.4758.80-1
Gói: google-chrome-không ổn định
Phiên bản: 100.0.4867.0-1