Điểm:0

ý nghĩa của "dpkg-divert --local --rename --add /sbin/initctl"

lá cờ za

Đây là từ https://help.ubuntu.com/community/LiveCDCustomizationFromScratch.
Ở đây tôi phải làm trong môi trường chroot,

dpkg-divert --local --rename --add /sbin/initctl

Có phải nó nói với hệ điều hành rằng "từ giờ trở đi, khi bạn cài đặt các gói, bất kể gói đó là gì (--local), nếu gói đó cố cài đặt/sbin/initctl, hãy cài đặt nó (--add) vào/sbin/initctl. phân phối (--rename)"? Tôi đã cố gắng hiểu sách hướng dẫn nhưng không thể hiểu chính xác.

Có phải là nếu một tệp được chuyển hướng sang tệp khác bằng lệnh dpkg-divert này (giả sử xfile sang xfile.distrib) bởi một gói, thì khi gói được sử dụng, xfile.distrib được sử dụng thay vì xfile ban đầu?
tôi đã thử mèo /var/lib/dpkg/diversions và nó cho tôi danh sách này.

/usr/share/dict/words
/usr/share/dict/words.pre-dictionaries-common
từ điển thông dụng
/usr/share/man/man1/sh.1.gz
/usr/share/man/man1/sh.distrib.1.gz
dấu gạch ngang
/usr/share/man/man1/dh_gstscancodecs.1.gz
...

Tệp chứa danh sách các tệp chứ không phải tên gói và tôi không thể hiểu được. Ví dụ dòng đầu tiên làm gì /usr/share/dic/từ bần tiện?
Xin ai đó xác nhận cho tôi nếu sự hiểu biết của tôi là chính xác và ý nghĩa của danh sách.

Điểm:0
lá cờ us

Có phải nó nói với hệ điều hành rằng "từ giờ trở đi, khi bạn cài đặt các gói, bất kể gói đó là gì (--local), nếu gói đó cố cài đặt/sbin/initctl, hãy cài đặt nó (--add) vào/sbin/initctl. phân phối (--rename)"

  • --đổi tên yêu cầu nó di chuyển bất kỳ tệp hiện có nào ngay lập tức
  • tôi muốn đặt --cộng bên cạnh "nói với hệ điều hành"

Có phải là nếu một tệp được chuyển hướng sang tệp khác bằng lệnh dpkg-divert này (giả sử xfile sang xfile.distrib) bởi một gói, thì khi gói được sử dụng, xfile.distrib được sử dụng thay vì xfile ban đầu?

Không. Bất cứ ai thiết lập trò chơi phải cung cấp một cái gì đó thay cho điều này xfile (trong trường hợp này, đó là bạn). Trong trang đó, họ làm:

ln -s /bin/true /sbin/initctl

Các chuyển hướng tệp bao gồm các nhóm ba dòng:

  1. Các tập tin được chuyển hướng
  2. Vị trí chuyển hướng
  3. Gói thiết lập chuyển hướng

Vì vậy, đối với ba dòng sau:

/usr/share/dict/words
/usr/share/dict/words.pre-dictionaries-common
từ điển thông dụng

đpkg sẽ chuyển hướng cài đặt của /usr/share/dict/words từ các gói khác với từ điển thông dụng (Nói, người mỹ, ví dụ) để /usr/share/dict/words.pre-dictionaries-common. Nếu bạn cài đặt người mỹ, bạn có thể thấy điều này trong thực tế:

# dpkg -S /usr/share/dict/words
chuyển hướng theo từ điển-phổ biến từ: /usr/share/dict/words
chuyển hướng theo từ điển-phổ biến cho: /usr/share/dict/words.pre-dictionaries-common
tiếng Mỹ: /usr/share/dict/words

Hướng dẫn đó hơi lỗi thời: initctl là Upstart, không còn được sử dụng. Bạn thậm chí không thể cài đặt nó nữa. Quản lý dịch vụ được thực hiện bằng systemd và bây giờ bạn sử dụng hệ thống thay thế.

lá cờ za
Cảm ơn! Bây giờ tôi gần như có thể hiểu nó. Một câu hỏi, bây giờ các gói khác sẽ cài đặt vào vị trí (tệp) được chuyển hướng, thì các gói khác sẽ sử dụng tệp được chuyển hướng (đã thay đổi tên) mới thay vì tệp gốc? Vì vậy, câu hỏi của tôi là nếu chuyển hướng chỉ để cài đặt hoặc để sử dụng thực tế ngoài gói thiết lập chuyển hướng. (và Vâng, tôi biết hướng dẫn LiveCDFromScratch ở trên quá cũ nên hầu như không sử dụng được. Tôi hy vọng mọi người trên Ubuntu cập nhật các tài liệu đó.)
muru avatar
lá cờ us
Không ai khác ngoài `dpkg` và người tạo ra chuyển hướng biết về chuyển hướng. Bất kỳ ai sử dụng `/path/to/some/file` đã được chuyển hướng sẽ sử dụng bất cứ thứ gì hiện có.
lá cờ za
A cảm ơn nhiều!
lá cờ us
@muru Tôi thậm chí không có initctl trong/sbin. chỉ init. Ubuntu 18.04.6 LTS \n \l Những dòng đó đã làm gì, khi nó có ý nghĩa? để giữ quá trình init an toàn?
muru avatar
lá cờ us
@CEOatApartico trong các bước sau đó, một số gói đã được cài đặt. Một số gói bắt đầu hoặc khởi động lại dịch vụ khi cài đặt và điều này được thực hiện bằng cách sử dụng lệnh `initctl`. Vì không có lý do gì để làm điều đó trong chroot (và nó sẽ gây ra lỗi vì init không chạy trong chroot), nên họ thay thế nó bằng `true` cho phần còn lại của quá trình thiết lập.

Đă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.