ฉันจะเรียกใช้ wvdial จาก / etc / network / interfaces ได้อย่างไร


14

ฉันใช้ wvdial เพื่อเชื่อมต่อกับเครือข่ายมือถือ (ฉันมีโมเด็ม usb) และใช้งานได้ดี อย่างไรก็ตามฉันต้องการทำการเชื่อมต่อโดยอัตโนมัติเล็กน้อย (ปัจจุบันฉันกำลังรัน wvdial ทุกครั้งที่ฉันต้องการเชื่อมต่อ) ฉันหลงทางถ้ามีวิธีเพิ่มเครือข่ายนี้ใน/etc/network/interfaces(ในแบบเดเบียนอย่างแท้จริง) เพื่อให้มันเชื่อมต่อเมื่อเริ่มต้นและ / หรือเมื่อใดก็ตามที่ฉันเชื่อมต่อโมเด็ม

ความคิดใด ๆ ใคร

คำตอบ:


17

เพิ่มไปยัง/etc/network/interfacesสิ่งที่ชอบ

auto ppp0
iface ppp0 inet wvdial

(ทดสอบบน Ubuntu Lucid)


3
เมื่อวันที่เสียงดัง Debian ทำงานเกินไป
Farhadix

2

คุณต้องรวมเข้าwvdialกับifupdownระบบ หากคุณต้องการเริ่มต้นการแก้ปัญหาเปลือกตามที่เต็มไปด้วยการเชื่อมต่อแบบ PPP ทางเลือกกับ wvdialconf แต่โปรดทราบว่า Debian แนะนำให้ใช้เครื่องมือกราฟิกเช่น NetworkManager สำหรับการกำหนดค่าการเชื่อมต่อเครือข่ายบนเดสก์ท็อปที่ใช้ GUI

PS: ปกติแล้วควรเป็นความคิดเห็น แต่ฉันยังไม่มีสิทธิ์ในการแสดงความคิดเห็น :)


เกี่ยวกับเครื่องมือที่ใช้ GUI ฉันใช้ KDE และ KNetworkManager เพียงใช้งานไม่ได้ :(
Grzenio

@Grzenio คุณหมายถึงอะไรโดย "แค่ไม่ทำงาน"? ฉันจำได้ว่ามันง่ายมากที่จะสร้างการเชื่อมต่อบรอดแบนด์มือถือใหม่โดยใช้ GNOME NetworkManager และตั้งค่าให้เชื่อมต่ออัตโนมัติ มันควรจะคล้ายกันใน KNetworkManager
sakisk

0

ลองอัตโนมัติเชื่อมต่อคุณสมบัติของ wvdial อธิบายไว้ในwvdial.conf ตัวเลือกนี้คือ "เปิด" โดยค่าเริ่มต้นดังนั้นอาจไม่ทำงานในกรณีของคุณ

มันไม่ทำงานสำหรับคุณปิดการใช้งานและใช้แทนสคริปต์นี้จากArchWiki Wvdial :

หาก wvdial หยุดการเชื่อมต่อแบบสุ่มคุณสามารถใช้สคริปต์ด้านล่าง

#! /bin/bash
(
   while : ; do
       wvdial
       sleep 10
   done
) &

สวัสดีฉันพบคำตอบนี้ในคำถามอื่นที่นี่ - มันไม่ทำงาน ปัญหาคือบางครั้งกระบวนการ PPPD ตาย แต่ wvdial ยังคงอยู่ - ดังนั้นสคริปต์นี้จะไม่ทำงานเนื่องจาก wvdial ไม่สามารถทำงานได้สองครั้ง
William Hilsum

@WilliamHilsum: หากเริ่มต้น pppd /etc/inittabตัวอย่างเช่นs1:23:respawn:/usr/sbin/pppd /dev/ttyS1 115200มันจะถูกรีสตาร์ทเมื่อมันตาย สคริปต์ข้างต้นควรจะล้มเหลวและล้มเหลวเมื่อ wvdial ทำงานอยู่
harrymc

0

ในการรันwvdialด้วยboucleคุณสามารถใช้สคริปต์นี้และคุณสามารถหยุดมันด้วยCtrl+ C:

#!/bin/bash     
i=1
while [ $i -le 10 ];
        wvdial 
        sleep 10
      $i
let $[ i+=1 ] 
done

1
นี่คล้ายกับคำตอบของ @ harrymc มาก คุณสามารถดูรายละเอียดเพิ่มเติมเล็กน้อยเกี่ยวกับสิ่งที่แตกต่างจากสคริปต์ของคุณและทำไมมันถึงทำงานได้ดีขึ้น? โปรดดูที่วิธีการตอบและนำทัวร์ของเราไปปรับปรุงคำตอบของคุณ
Burgi
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.