Score:1

ทำกฎ udev ตอนบูต

ธง cn

ฉันมีบริการที่ต้องการเรียกใช้ หลังจากที่ udev ได้ตั้งค่าการอนุญาตที่ถูกต้องในไฟล์อุปกรณ์แล้วเท่านั้น

สิ่งนี้ดูเหมือนจะผิดพลาดในเวลาบูต: บริการของฉันเริ่มต้นขึ้นด้วย /dev/hidraw0 ยังไม่ได้ตั้งค่าสิทธิ์ของไฟล์

บริการของฉันถูกกำหนดให้เป็น:

# cat /lib/systemd/system/turboledz.service 
[หน่วย]
คำอธิบาย=บริการ Turbo LEDz
หลังจาก = systemd-udevd.service

[บริการ]
ประเภท = ง่าย
ผู้ใช้=ภูต
ExecStart=/usr/bin/turboledzd
KillMode=กลุ่มควบคุม

[ติดตั้ง]
WantedBy=multi-user.target

และฉันเห็นการพึ่งพาของมัน:

# systemctl รายการพึ่งพา turboledz
turboledz.service
â ââsystem.slice
â ââsysinit.target
â ââapparmor.service
â ââdev-hugepages.mount
â ââdev-mqueue.mount
â ââkeyboard-setup.service
â ââkmod-static-nodes.service
â ââplymouth-read-write.service
â ââplymouth-start.service
â ââproc-sys-fs-binfmt_misc.automount
â ââsetvtrgb.บริการ
â ââsys-fs-fuse-connections.เมานต์
â ââsys-kernel-config.mount
â ââsys-kernel-debug.mount
â ââsys-kernel-tracing.mount
â ââsystemd-ask-password-console.path
â ââsystemd-binfmt.service
â ââsystemd-boot-system-token.service
â ââsystemd-hwdb-update.service
â ââsystemd-journal-flush.service
â ââsystemd-journal.service
â ââsystemd-machine-id-commit.service
â ââsystemd-modules-load.service
â ââsystemd-pstore.service
â ââsystemd-random-seed.service
â ââsystemd-sysctl.service
â ââsystemd-sysusers.service
â ââsystemd-timesyncd.service
â ââsystemd-tmpfiles-setup-dev.service
â ââsystemd-tmpfiles-setup.service
â ââsystemd-udev-trigger.service
â ââsystemd-udevd.service
â ââsystemd-update-utmp.service
â ââcryptsetup.target
â ââlocal-fs.target
â â ââ-.เมาท์
â â ââboot-efi.mount
â â ââmnt-farm0.mount
â â ââmnt-farm1.mount
â â ââmnt-farm2.mount
â â ââmnt-farm3.mount
â â ââmnt-farm4.mount
â â ââmnt-farm5.mount
â â ââsystemd-fsck-root.service
â â ââsystemd-remount-fs.service
â ââswap.target
â â ââswapfile.swap
â ââveritysetup.target

การอนุญาตควรได้รับการดูแลโดยมีกฎนี้:

# cat /lib/udev/rules.d/70-turboledz.rules 
# ทำให้ผู้ขาย "Arduino LLC", ผลิตภัณฑ์ "Arduino Micro" สามารถเข้าถึงได้สำหรับผู้ใช้ที่ไม่ใช่รูท
# หมายเหตุ: BUS 1 คือ USB

SUBSYSTEMS=="usb", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="8037", MODE="0666"

KERNEL=="hidraw*", ATTRS{busnum}=="1", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="8037", MODE="0666"

โดยปกติ กฎนี้จะตั้งค่าการอนุญาตอย่างถูกต้องเมื่อฉันเสียบอุปกรณ์

แต่ตอนบูท ดูเหมือนจะไม่รัน?

กฎ udev ทั้งหมดทำงานระหว่างการบูตหรือไม่

อัปเดต:

ฉันเห็นว่ากฎเริ่มทำงานในที่สุด เนื่องจากหลังจากบู๊ต เมื่อฉันเข้าสู่ระบบในเครื่อง ฉันเห็นการอนุญาตที่ถูกต้อง

ดูเหมือนว่ากฎเพิ่งใช้กับบริการของฉันล่าช้า

ระบบปฏิบัติการ: อูบุนตู 21.10

ซีพียู: i5-11600K

เคอร์เนล: Linux i7 5.13.0-22-ทั่วไป

ระบบ: 248.3-1ubuntu8

user.dz avatar
ng flag
คุณช่วยทดสอบว่า `sudo update-initramfs -u` ช่วยได้ไหม

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา