ผลต่างระหว่างรุ่นของ "การแก้ไขสิทธิการเข้าถึงพอร์ท USB ของบอร์ด MCU"
ไปยังการนำทาง
ไปยังการค้นหา
(YeeKbwNHwWo) |
Chaiporn (คุย | มีส่วนร่วม) (ย้อนการแก้ไขรุ่น 12628 โดย 27.101.112.11 (พูดคุย)) |
||
แถว 1: | แถว 1: | ||
− | + | หากพบปัญหาว่าการติดต่อกับบอร์ด MCU ผ่านพอร์ท USB ต้องเรียกผ่านคำสั่ง sudo เท่านั้น (อาทิเช่นการใช้คำสั่ง avrdude หรือการส่งคำร้องขอไปยังบอร์ดด้วยไพธอน) ให้ดำเนินการตามขั้นตอนต่อไปนี้เพื่อเพิ่มสิทธิให้กับบัญชีผู้ใช้ของเราในการเข้าถึงบอร์ด MCU อย่างเต็มรูปแบบ | |
+ | |||
+ | * สร้างไฟล์ชื่อ <code>45-objdev.rules</code> ไว้ในไดเรคตอรี <code>/etc/udev/rules.d/</code> โดยมีข้อมูลดังนี้ | ||
+ | # ObjDev-based USB devices | ||
+ | SUBSYSTEM=="usb", SYSFS{idVendor}=="16c0", SYSFS{idProduct}=="05dc", OWNER="root", GROUP="plugdev", MODE="0664" | ||
+ | :ข้อมูลข้างต้นเป็นการระบุว่าหากพบอุปกรณ์ USB ที่มี VID:PID เป็น 16c0:05dc (ซึ่งหมายถึงอุปกรณ์ที่ใช้ไลบรารีของ Objective Development) ให้กำหนดเจ้าของอุปกรณ์เป็น root และกลุ่มสมาชิกเป็น plugdev โดยสิทธิการเข้าถึงอุปกรณ์มีค่าเป็น 0664 ซึ่งหมายถึง <code>rw-rw-r--</code> นั่นคือให้เจ้าของและผู้ใช้อื่นในกลุ่มสมาชิกดังกล่าวมีสิทธิในการอ่าน/เขียน ส่วนผู้ใช้อื่นมีสิทธิเพียงการอ่านเท่านั้น | ||
+ | |||
+ | * สั่งให้บริการ udev เริ่มทำงานใหม่ | ||
+ | sudo /etc/init.d/udev restart | ||
+ | |||
+ | * หากบัญชีที่ใช้ยังไม่ได้เป็นสมาชิกของกลุ่ม plugdev (ตรวจสอบได้โดยพิมพ์คำสั่ง <code>groups</code>) ใช้คำสั่ง adduser เพื่อเพิ่มบัญชีผู้ใช้ของตนเป็นส่วนหนึ่งของกลุ่ม | ||
+ | sudo adduser <ชื่อบัญชี> plugdev | ||
+ | |||
+ | * ล็อกเอาท์และล็อกอินกลับเข้ามาใหม่ ตรวจสอบสมาชิกภาพของตนว่าอยู่ในกลุ่ม plugdev หรือไม่โดยพิมพ์คำสั่ง | ||
+ | groups | ||
+ | :หากพบ plugdev ในรายการ แสดงว่าต่อจากนี้เรามีสิทธิเต็มรูปแบบในการเข้าถึงบอร์ดไมโครคอนโทรลเลอร์ผ่านพอร์ท USB |
รุ่นแก้ไขเมื่อ 04:17, 3 พฤษภาคม 2555
หากพบปัญหาว่าการติดต่อกับบอร์ด MCU ผ่านพอร์ท USB ต้องเรียกผ่านคำสั่ง sudo เท่านั้น (อาทิเช่นการใช้คำสั่ง avrdude หรือการส่งคำร้องขอไปยังบอร์ดด้วยไพธอน) ให้ดำเนินการตามขั้นตอนต่อไปนี้เพื่อเพิ่มสิทธิให้กับบัญชีผู้ใช้ของเราในการเข้าถึงบอร์ด MCU อย่างเต็มรูปแบบ
- สร้างไฟล์ชื่อ
45-objdev.rules
ไว้ในไดเรคตอรี/etc/udev/rules.d/
โดยมีข้อมูลดังนี้
# ObjDev-based USB devices SUBSYSTEM=="usb", SYSFS{idVendor}=="16c0", SYSFS{idProduct}=="05dc", OWNER="root", GROUP="plugdev", MODE="0664"
- ข้อมูลข้างต้นเป็นการระบุว่าหากพบอุปกรณ์ USB ที่มี VID:PID เป็น 16c0:05dc (ซึ่งหมายถึงอุปกรณ์ที่ใช้ไลบรารีของ Objective Development) ให้กำหนดเจ้าของอุปกรณ์เป็น root และกลุ่มสมาชิกเป็น plugdev โดยสิทธิการเข้าถึงอุปกรณ์มีค่าเป็น 0664 ซึ่งหมายถึง
rw-rw-r--
นั่นคือให้เจ้าของและผู้ใช้อื่นในกลุ่มสมาชิกดังกล่าวมีสิทธิในการอ่าน/เขียน ส่วนผู้ใช้อื่นมีสิทธิเพียงการอ่านเท่านั้น
- สั่งให้บริการ udev เริ่มทำงานใหม่
sudo /etc/init.d/udev restart
- หากบัญชีที่ใช้ยังไม่ได้เป็นสมาชิกของกลุ่ม plugdev (ตรวจสอบได้โดยพิมพ์คำสั่ง
groups
) ใช้คำสั่ง adduser เพื่อเพิ่มบัญชีผู้ใช้ของตนเป็นส่วนหนึ่งของกลุ่ม
sudo adduser <ชื่อบัญชี> plugdev
- ล็อกเอาท์และล็อกอินกลับเข้ามาใหม่ ตรวจสอบสมาชิกภาพของตนว่าอยู่ในกลุ่ม plugdev หรือไม่โดยพิมพ์คำสั่ง
groups
- หากพบ plugdev ในรายการ แสดงว่าต่อจากนี้เรามีสิทธิเต็มรูปแบบในการเข้าถึงบอร์ดไมโครคอนโทรลเลอร์ผ่านพอร์ท USB