ใส่ script ช่วยล็อกอินอัตโนมัติเวลาต่อเน็ต

หน้าจอ login แบบนี้ ตั้งแต่ พรบ. คอมฯ ปี 50 ประกาศใช้ พวกเราผู้ใช้อินเตอร์เน็ตของหน่วยงานต่างๆ ก็คงจะคุ้นเคยกับหน้าจอ Login คล้ายๆ กับรูปทางซ้ายมือนี้

เรามาใส่ script ช่วยล็อกอินอัตโนมัติเวลาต่อ Wireless ติดกันดีกว่า (บล็อกนี้สำหรับผู้ใช้ Linux เท่านั้นครับ)

“พอใช้ Script นี้เวลาเปิดเครื่องมา แล้วต่อ Wireless ติด มันก็ login ให้ทันทีครับ แล้วก็ login ซ้ำ เวลาต่อ Wireless อันใหม่ให้ด้วย!” — @nattster

วิธีทำ

1. ที่ไดเร็กทอรี่ /etc/NetworkManager/dispatcher.d ให้สร้างไฟล์ 02autologin ครับ

$ sudo gedit /etc/NetworkManager/dispatcher.d/02autologin

2. แปะโค้ดดังนี้

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/bin/bash
IF=$1
STATUS=$2
if [ "$STATUS" = "up" ]; then
    if [ "$IF" = "wlan0" ]; then        # แก้ wlan0 เป็นชื่อการ์ด wireless หรือ lan ตามใจชอบ
        val=$(iwconfig $IF | grep -o 'ESSID:[^ ]*')
        essid=${val:7:$[${#val}-8]}
        case $essid in
        truewifi*)
            python /home/xxx/autologin1.py
            ;;
        KUWIN*)
            python /home/xxx/autologin2.py
            ;;
        esac
    fi
fi

3. อย่าลืมแก้ wlan0 ในบรรทัดที่ 5 เป็นชื่อการ์ด wireless หรือ lan ที่ต้องการให้ช่วย login อัตโนมัติด้วยนะครับ (เช่น eth0, eth1 เป็นต้น)
4. Save และปิดไฟล์ แล้วเรียกคำสั่ง

sudo chmod +x /etc/NetworkManager/dispatcher.d/02autologin

Script นี้ทำไร?

Script ข้างบนยังทำงานไม่ได้นะครับ มันแค่ทำหน้าที่เช็คว่า “ถ้า wlan0 ถูกเชื่อมต่อกับ truewifi ให้รันสคริปต์ /home/xxx/autologin1.py ขึ้นทำงาน” เท่านั้นเองครับ

ถ้าจะให้มันทำงานได้จริงๆ ต้องไปหา(หรือเขียน) script autologin สำหรับอินเตอร์เน็ตแต่ละยี่ห้อนะครับ

ถ้าใช้เน็ตยี่ห้อเดียวกัน ติดต่อหลังไมค์ได้ครับ ;) (ตะโกนใส่ @nattster ก็ได้ครับ)

หมายเหตุ: ทดลองบน Ubuntu 9.04 และใช้ Network Manager เป็นตัวจัดการ Wireless + LAN ครับ
เพิ่มเติม: สำหรับคนใช้ ifconfig เป็นตัวจัดการเน็ตเวิร์ค (เช่น Ubuntu Server) สามารถใส่ script ไว้ที่ /etc/network/if-up.d/ ได้นะครับ ให้ผลลัพธ์เหมือนกัน

Comments (4)

nonthJune 22nd, 2009 at 11:49 pm

โอ๊ะ หน้าจอ login คุ้นๆนะ :p

[Reply]

krajungJune 23rd, 2009 at 3:15 am

อยากได้บน windows บ้าง อิอิ

[Reply]

SikachuJune 23rd, 2009 at 11:12 am

ผมพยายามทำ code ประมาณนี้ใน iphone เหมือนกันครับ แต่ปรากฎว่าไม่เวิร์ค เพราะ ifconfig ของ iPhone ไม่บอก ESSID -*-

[Reply]

nattsterJune 23rd, 2009 at 1:13 pm

@Sikachu อ่าเหอะๆ ลองคุยกับ @nonth ดูครับ (ผมไม่มี iPhone ใช้ อิๆ)

[Reply]

Leave a comment

Your comment