Điểm:3

Sự khác biệt giữa `Pin: release v` và `Pin: version` trong tệp tùy chọn apt

lá cờ cn

Tôi dường như không thể tìm thấy bất cứ điều gì liên quan đến sự khác biệt giữa Ghim: phiên bản 5.8Ghim: phát hành v=5.8 trong tài liệu cho tệp tùy chọn apt.

Họ làm điều tương tự hoặc có sự khác biệt?

Cũng có một sự xuất hiện tương tự giữa Ghim: nguồn gốc "nguồn gốc"Ghim: phát hành o=origin.

Terrance avatar
lá cờ id
Xem `man apt_preferences` và https://help.ubuntu.com/community/PinningHowto
dylanmorroll avatar
lá cờ cn
Tôi đã xem trong đó nhưng dường như nó không trả lời những câu hỏi tôi đang hỏi trừ khi tôi bỏ sót điều gì đó
Terrance avatar
lá cờ id
Trong `man apt_preferences` xung quanh dòng 335+ có rất nhiều câu trả lời mà bạn đang hỏi.
Someone avatar
lá cờ my
Câu hỏi của bạn quá rộng... Vui lòng chỉnh sửa để chỉ giới hạn ở một câu hỏi
dylanmorroll avatar
lá cờ cn
Tôi đã chỉnh sửa câu hỏi.
dylanmorroll avatar
lá cờ cn
@Terrance Tôi thấy nó nói về việc chỉ định phiên bản thông qua `Pin: release v=` nhưng tôi không thấy đề cập đến `Pin: version`?
Terrance avatar
lá cờ id
Thông thường, những gì có trong `man file` là những gì được hỗ trợ trong cài đặt, v.v. `Pin: version` có thể không được hỗ trợ nữa.
N0rbert avatar
lá cờ zw
`Pin: version` vẫn được hỗ trợ. Vừa test ngày 21.10. Ngoài ra, hãy kiểm tra https://wiki.debian.org/AptConfiguration?action=show&redirect=AptPreferences#apt_preferences_.28APT_pinning.29.
Điểm:3
lá cờ cn

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:

  • Các thành phần

Đâ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
muru avatar
lá cờ us
Nếu, đối với Ubuntu 22.04, đó là `bản phát hành v=22.04` thì có vẻ như đó là phiên bản phân phối chứ không phải phiên bản gói. Tôi có thể tưởng tượng, ví dụ: một bên thứ ba để phân phối thứ gì đó như Nodejs hoặc PostgreSQL, thiết lập nhiều kênh cho mỗi bản phát hành chính của phần mềm và đặt phiên bản phân phối tương ứng. Chrome không có loại mô hình phát hành đó, vì vậy có lẽ họ chỉ đặt giá trị giả là 1.0.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.