Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Strony: 1
Problem juz zostal rozwiazany -
Rozwiazanie na koncu
Nie mogę uruchomić nawet prościutkiego skryptu do połączenia do Internetu przez telefon GPRS, bo na Debianie 4.0 Etch (nowiutka instalacja) są jakieś dziwne zabezpieczenia. Na Ubuntu to działa. Na Debianie skrypt uruchamia się dobrze jako root (łączę się z Internetem), ale jako zwykły użytkownik nie chce. Dodałem zwykłego użytkownika do grupy dip i dialout, wylogowałem się i zalogowałem ponownie.
W logach /var/log/syslog mam to:
Jako root działa dobrze:
Dec 17 22:46:23 debian pppd[4603]: pppd 2.4.4 started by root, uid 0 Dec 17 22:46:24 debian chat[4604]: timeout set to 50 seconds Dec 17 22:46:24 debian chat[4604]: abort on (BUSY) Dec 17 22:46:24 debian chat[4604]: abort on (NO CARRIER) Dec 17 22:46:24 debian chat[4604]: send (AT^M) Dec 17 22:46:24 debian chat[4604]: timeout set to 70 seconds Dec 17 22:46:24 debian chat[4604]: expect (OK) (...)
Jako zwykły użytkownik nie:
Dec 17 22:48:00 debian pppd[4647]: pppd 2.4.4 started by magda, uid 1000 Dec 17 22:48:01 debian pppd[4647]: Connect script failed Dec 17 22:48:02 debian pppd[4647]: Exit.
Próbowałem wielu kombinacji, zmieniając atrybuty dla plików chat i pppd komendami typu
chmod 4777 /usr/sbin/chat
chmod 0777 /usr/sbin/chat
Nawet zmieniałem grupę tych plików np
chown :dip /usr/sbin/pppd
Możliwe, że nie sprawdziłem wszystkich kombinacji powyższych komend, ale chyba posprawdzałem te udostępniające maksymalną ilość uprawnień do odczytu i wykonywania dla wszystkich .
Czy coś przeoczyłem, czy szukam w złym miejscu? Jak się Wam udaje uruchomić najprostszy skrypt do gprs na zwykłym użytkowniku ?? (na root działa Internet - łączę się)
Tak go próbuję uruchomić jako zwykły użytkownik (efekt w logach powyżej, uruchamia się tylko sam początek)
magda@debian:~$ /usr/sbin/pppd call gprs
Przy okazji dziwna rzecz - prostsza komenda wogóle nie działa:
magda@debian:~$ pppd call gprs
bash: pppd: command not found
To chyba dziwne, czy nie powinnien ten program pppd być odnajdowany w domyślnej ścieżce?
Gdy jestem root to działa ta krótka wersja:
debian:/home/magda# pppd call gprs
Ale to nie jest problemem bo jak pisałem używam dłuższej wersji :
magda@debian:~$ /usr/sbin/pppd call gprs
Oto dwa bardzo proste, typowe skrypty gprs:
plik gprs w /etc/pppp/peers
connect "chat -v -f /etc/ppp/peers/gprs-connect" disconnect "chat -v -f /etc/ppp/peers/gprs-disconnect" noauth debug crtscts lock novjccomp nopcomp defaultroute noipdefault usepeerdns 115200 /dev/ttyS0 user "ppp" password "ppp"
plik gprs-connect w /etc/pppp/peers
TIMEOUT 50 ABORT 'BUSY' ABORT 'ERROR' ABORT 'NO CARRIER' '' AT TIMEOUT 70 OK 'AT+CGDCONT=1,"IP","www.plusgsm.pl"' OK 'ATDT*99***1#' TIMEOUT 30 CONNECT ""
Ostatnio edytowany przez km42 (2007-12-19 00:39:00)
Offline
użyj sudo do odpalenia pliku startowego
Offline
Nie chcę sudo .. Ja potrzebuję to zrobić jako zwykły użytkownik, Czemu na Ubuntu mogę być zwykłym użytkownikiem a tu nie?
Na Debianie jak zrobię
su
pppd call gprs
to mogę się łaczyć z Internetem.
Tu chodzi o ustawienie odpowiednich praw dla zwykłego użytkownika, bo z prawami roota, to nie sztuka.
To po co ta grupa dialout czy też inna dip ? Dodałem tam swojego zwykłego użytkownika i nie pomaga.
Dziwne to wszystko :/
Ostatnio edytowany przez km42 (2007-12-18 17:48:30)
Offline
widocznie pppd jest w /sbin albo /usr/sbin. to jest w $PATH roota, ale userów nie. zapytaj jako root:
which pppd
żeby to sprawdzić
Offline
To nie problem , zwykły użytkownik może uruchomić pppd, zobacz pierwszą linijkę z jego (nieudanych) logów
Dec 17 22:48:00 debian pppd[4647]: pppd 2.4.4 started by magda, uid 1000 Dec 17 22:48:01 debian pppd[4647]: Connect script failed Dec 17 22:48:02 debian pppd[4647]: Exit.
dalej się pewnie chrzani, Może brak dostępu do wywoływanego po pppd programu chat
bo najpierw startuje pppd i potem on uruchamia sobie program chat
Jak pisałem wyżej próbowałem zmieniać prawa dostępu do plików
pppd i chat
na maksymalne dla wszystkich, nie wiem czy dobrze robiłem (może przeoczyłem jakąś kombinację, ale chyba nie)
może ten suid coś? nie do końca wiem co to jest, ale przestawiałem chyba i to, bo parę razy użyłem
chmod 4777 /usr/sbin/chat
chmod 0777 /usr/sbin/chat
te "4" i "0" to chyba do suid
Ew. mogę znów pobawić się w zmienianie praw dostępu do plików pppd i chat na maksymalne prawa - by były dostępne dla zwykłego użytkownika, tylko napiszcie jak, Czy dodatkowo dodawać te pliki do grupy dip lub dialout ?
Offline
Przyjrzyjcie się jeszcze raz logom z udanego połączenia root, Występują tam słowa pppd i chat, dla zwykłego usera skończyło się na pppd, brak chat
Dec 17 22:46:23 debian pppd[4603]: pppd 2.4.4 started by root, uid 0
Dec 17 22:46:24 debian chat[4604]: timeout set to 50 seconds
Offline
ooooooo, zaświtał mi w głowie pewnien pomysł! Lecę sprawdzić to rozwiązanie
tu mam wywołanie chat bez pełnej ścieżki
a jak widać zwykły user ma problem z uruchomieniem pppd i pewnie chat jak nie poda pełnej ścieżki
lecę zmienić w skrypcie:
connect "chat -v -f /etc/ppp/peers/gprs-connect"
na
connect "/usr/sbin/chat -v -f /etc/ppp/peers/gprs-connect"
Większość skryptów gprs dostępnych w internecie ma formę którszą chat a nie /usr/sbin/chat
Więc użytkownicy Debiana powinni zwracać uwagę na tą różnicę - o ile mam rację , że tu jest błąd .... idę to sprawdzić :)
Ostatnio edytowany przez km42 (2007-12-18 18:23:05)
Offline
Tak to było to :)
Trzeba użyć pełnej ścieżki /usr/sbin/chat zamiast sam chat
Ostatnio edytowany przez km42 (2007-12-19 00:36:59)
Offline
Strony: 1