- โค้ด: เลือกทั้งหมด
[root@right ~]# ls -la /dev/ttyUSB2
crw-rw---- 1 root dialout 188, 2 Aug 8 12:03 /dev/ttyUSB2
แต่ในเครื่อง Issabel/Elastix/FreePBX ตอน Asterisk ทำงานมันใช้ user คือ asterisk ครับ จึงไม่สามารถ read/write ไฟล์ เวลาเข้า Asterisk Console จะฟ้องแบบนี้
- โค้ด: เลือกทั้งหมด
[2020-08-08 12:10:34] WARNING[3668]: chan_dongle.c:225 opentty: unable to open /dev/ttyUSB2: Permission denied
วิธีแก้ไขให้ asterisk สามารถ read/write ไฟล์ /dev/ttyUSB2 (ซึ่งเป็นไฟล์ device name ของอุปกรณ์) ได้ น่าจะมีหลายวิธีอยู่ครับ แบบที่ง่ายสุดก็คือนี้เลย
- โค้ด: เลือกทั้งหมด
[root@right ~]# chmod 666 /dev/ttyUSB*
หรือไม่ก็
- โค้ด: เลือกทั้งหมด
[root@right ~]# chmod 777 /dev/ttyUSB*
แต่บทความนี้ผมจะไม่ได้ใช้วิธีเปลี่ยน permission ของไฟล์ครับ ผมจะเซ็ตเพิ่มว่าให้ user=asterisk อยู่ใน group=dialout ด้วย วิธีการมีดังต่อไปนี้ครับ
1. ตรวจสอบก่อนว่า user=asterisk อยู่ group ไหน
- โค้ด: เลือกทั้งหมด
grep asterisk /etc/passwd
ผลลัพธ์
asterisk:x:997:994:Asterisk PBX:/var/lib/asterisk:/bin/bash
พบว่า asterisk อยู่ใน group id=994 ซึ่งเมื่อเราไปดูในไฟล์ /etc/group พบว่า group ชื่อ asterisk
2. ตรวจสอบก่อนว่า group=dialout มี user อะไรอยู่บ้าง
- โค้ด: เลือกทั้งหมด
grep dialout /etc/group
dialout:x:18:
จากข้อมูลนี้และในไฟล์ /etc/passwd ทำให้เรารู้ว่าไม่มี user อยู่ใน group dialout
3. เพิ่ม user=asterisk ให้อยู่ใน group=dialout ด้วย
รันคำสั่งนี้ครับ
[code]
usermod -a -G dialout asterisk
[/code
4. ตรวจสอบว่า user=asterisk อยู่ใน group ไหนบ้าง
พบว่าอยู่ใน group asterisk ซึ่งเป็น group เดิม (เรียกว่า primary group) และ dialout แล้ว
[code]
groups asterisk
[code]
ผลลัพธ์
asterisk : asterisk dialout
วิธีการติดตั้ง Issabel บน CentOS 7
เปิดบริการ อบรม Issabel/FreePBX/Elastix ด้วยคอร์สพิเศษ ให้ติดตั้ง คอนฟิกคล่อง ใช้งานคล่อง ได้ใน 3 วัน
เทคนิคการคอนฟิก Firewall เมื่อเปลี่ยนพอร์ต Web (http/https)
เทคนิคการใช้งาน Firewall + GeoIP บน Issabel
เทคนิคการใช้งาน Issabel
เทคนิคการใช้งาน Elastix
เทคนิคการใช้งาน Asterisk
เทคนิคการใช้งาน FreePBX
ติดตั้งธีม Elastixwave บน Issabel
ตัวอย่างการใช้งาน Action URL บน Grandstream IP Phone