Điểm:0

Chạy bộ đệm cachefilesd trên ramdisk (tmpfs) để khởi động PXE NFS

lá cờ mx

Tôi đang chạy Ubuntu 20.04 LTS (nhân 5.4.0-81-chung) từ PXE và tôi muốn thêm bộ đệm cục bộ. Bởi vì tôi không muốn có một phân vùng trên tất cả các thiết bị của mình để lưu vào bộ nhớ đệm, nên tôi muốn sử dụng đĩa ram cho mục đích đó.

Tôi đã quản lý để kích hoạt fsc tùy chọn trong khi khởi động với sự trợ giúp của câu trả lời này.

Tuy nhiên khi tôi chạy cachefilesd dịch vụ, nó thất bại với -95: Thao tác không được hỗ trợ. Điều này có lẽ là do tmpfs không hỗ trợ user_xattr, đó là bắt buộc.

tôi đã đọc đây mà bạn có thể biên dịch/vá hạt nhân để kích hoạt user_xattr, mặc dù đây là một rủi ro bảo mật. Bên cạnh việc là một cơn ác mộng bảo trì, tôi không muốn đi xa đến mức đó và loay hoay với việc tự động hóa điều đó với mỗi bản cập nhật kernel.

tôi đã đọc đây (tiếng Đức) và cái này và nó phản ứng.

Nó chỉ ra rằng bạn có thể tạo một tmpfs, sau đó tạo một thiết bị loopback, định dạng thành ext4 và sau đó chạy fs-cache của bạn trên đó.

Tuy nhiên, vì tôi đang sử dụng PXE và điểm gắn kết NFS là /, làm thế nào để tôi làm điều đó trong khi khởi động, tốt nhất là trước cachedfilesd.service được bắt đầu?

Bộ tải khởi động của tôi (vesamenu.c32)

# [...]
gắn nhãn ubuntunfs
        nhãn menu ^Ubuntu NFS
        trợ giúp văn bản
Chạy Ubuntu từ Hệ thống tệp mạng.
        văn bản cuối
        nhân ubuntu/boot/vmlinuz
        initrd ubuntu/boot/initrd.img
        nối thêm root=/dev/nfs nfsroot=192.168.1.5:/srv/tftp/ubuntu,rw,fsc,relatime ip=dhcp rw
# [...]

fstab của tôi

/proc /proc proc mặc định 0 0
/sys /sys sysfs mặc định 0 0
/dev/nfs / nfs mặc định,thời gian tương đối,fsc 1 1

# ramdisk cho fs-cache cho nfs
tmpfs /media/ramdisk tmpfs mặc định, kích thước=5% 0 0

không /tmp tmpfs mặc định 0 0
không /var/run tmpfs mặc định 0 0
không /var/lock tmpfs mặc định 0 0
không /var/tmp tmpfs mặc định 0 0

/etc/cachefilesd.conf của tôi

thư mục/phương tiện/đĩa ram
gắn thẻ bộ đệm của tôi
nám 90%
bcull 70%
bstop 30%
chạy 90%
đảm bảo 70%
fstop 30%

bảng chọn lọc 14
guiverc avatar
lá cờ cn
Vui lòng cung cấp chi tiết sản phẩm và phát hành.
FalcoGer avatar
lá cờ mx
@guiverc Tôi hy vọng ý bạn là phiên bản ubuntu và kernel. Tôi đã thêm những cái đó.
guiverc avatar
lá cờ cn
theo sản phẩm, máy chủ ubuntu, máy tính để bàn ubuntu, lõi ubuntu, v.v. và các chi tiết phát hành như 20.04, 20.04.3, 20, v.v. (nếu cung cấp đầy đủ chi tiết về sản phẩm và phát hành, chúng tôi biết nhân, ví dụ: máy chủ ubuntu 20.04 sử dụng GA hoặc 5.4 kernel, kernel máy tính để bàn 20.ubuntu 20.04 là CTNH nên thay đổi theo cấp độ nâng cấp, 20.04 là 5.4, 20.04.2 là 5.8, 20.04.3 là 5.11, v.v., Ubuntu Core 20 là ....) - 5.4 của bạn ngụ ý đó là 20.04 máy chủ đối với tôi, do đó, hạt nhân GA
FalcoGer avatar
lá cờ mx
@guiverc Tôi đã cài đặt bằng debootstrap. Tôi cho rằng đó là máy chủ hoặc tối thiểu.
Điểm:0
lá cờ mx

Tôi đã làm điều đó với một dịch vụ systemd.

[Đơn vị]
Mô tả=Người tạo bộ đệm
Trước=cachefilesd.service

[Dịch vụ]
ExecStart=/bin/bash -c "dd if=/dev/zero of=/media/ramdisk/cache.ext4 bs=1k count=`df /media/ramdisk | tail -n 1 | sed -e 's/ \ +/ /g' | cut -d ' ' -f 2` && mke2fs /media/ramdisk/cache.ext4 && mount -o rw,noatime,nodiratime,user_xattr /media/ramdisk/cache.ext4 /media/cache/"
Khởi động lại = không
Loại=oneshot

[Cài đặt]
WantedBy=multi-user.target

Tập lệnh đang lấy số khối 1k (từ df) của đĩa ram làm đầu vào cho đtệp đầu vào của (nếu =) đối số, nếu không dd sẽ trả về mã lỗi vì đĩa đã đầy và && sẽ không hoạt động trong tình huống đó. Rõ ràng điều này chỉ hoạt động nếu ramdisk trống.

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