Freesco, NND, CDN, EOS

http://www.freesco.pl
Dzisiaj jest poniedziałek, 30 czerwca 2025, 14:31

Strefa czasowa UTC+2godz.




Nowy temat Odpowiedz w temacie  [ Posty: 5 ] 
Autor Wiadomość
Post: środa, 31 stycznia 2007, 22:27 
Offline
Użytkownik

Rejestracja: niedziela, 26 lutego 2006, 15:24
Posty: 105
Jak wyzej. zainstalowany wsio poprawione zadnych bledow nie wywala, ale w dalszym ciagu dojsc nie moge co zrobic zeby sie nie narobic a zeby zrobic, zeby wyswietlal staty sieci.

Musi pobrac dane z /proc/net/dev ale niemoze.

Gdzies na forum znalazlem zeby podac mu komede:

: [/] [] ()
sed -i 's/\/proc\/net\/dev/\/var\/cache\/siec.txt/'
, ale wywala mi ze:

: [/] [] ()
sed: can't read -: Nie ma takiego pliku ani katalogu
.

Jesli zna ktoś jakies rozwiązanie tego problemu to prosilbym o pomoc.

_________________
Pentium II 350MHz/512KB IDE 4,0GB 128MB/100MHz 20 urzyszkodników DSL2000/256


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: czwartek, 1 lutego 2007, 00:26 
Offline
PGF

Rejestracja: piątek, 25 lutego 2005, 18:22
Posty: 1430
Lokalizacja: Elbląg
Problem bierze się stąd, że w NND zwykły user (nobody) nie ma prawa odczytu pliku /proc/net/dev i nie da się tego zmienić.
Obszedłem to w następujący sposób:
1. W pliku
../phpsysinfo/includes/os/class.Linux.inc.php
zamień funkcję network() na taką:
: [/] [] ()
  function network () {
    $results = array();

    system("sudo /usr/local/sbin/read_ifstat");
    if ($fd = fopen('/var/local/ifstat', 'r')) {
      while ($buf = fgets($fd, 4096)) {
        if (preg_match('/:/', $buf)) {
          list($dev_name, $stats_list) = preg_split('/:/', $buf, 2);
          $stats = preg_split('/\s+/', trim($stats_list));
          $results[$dev_name] = array();

          $results[$dev_name]['rx_bytes'] = $stats[0];
          $results[$dev_name]['rx_packets'] = $stats[1];
          $results[$dev_name]['rx_errs'] = $stats[2];
          $results[$dev_name]['rx_drop'] = $stats[3];
          $results[$dev_name]['rx_frame'] = $stats[5];

          $results[$dev_name]['tx_bytes'] = $stats[8];
          $results[$dev_name]['tx_packets'] = $stats[9];
          $results[$dev_name]['tx_errs'] = $stats[10];
          $results[$dev_name]['tx_drop'] = $stats[11];
          $results[$dev_name]['tx_cols'] = $stats[13];
          $results[$dev_name]['tx_carrier'] = $stats[14];

          $results[$dev_name]['errs'] = $stats[2] + $stats[10];
          $results[$dev_name]['drop'] = $stats[3] + $stats[11];
        }
      }
    } else {
      echo "'/proc/net/dev' not readable";
    }
    return $results;
  }

2. Stwórz plik /usr/local/sbin/read_ifstat:

: [/] [] ()
#!/bin/bash

cat /proc/net/dev > /var/local/ifstat

3. Do /etc/sudoers dodaj linijkę:
: [/] [] ()
nobody ALL=NOPASSWD:/usr/local/sbin/read_ifstat

- i będzie śmigać :)

_________________
F33/F07,F11,F13,F17
ObrazekObrazek


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: czwartek, 1 lutego 2007, 10:43 
Offline
Użytkownik

Rejestracja: niedziela, 26 lutego 2006, 15:24
Posty: 105
dzieki za pomoc ale jest blad i niechce wykonywac pliku z /usr/local/sbin/ wiec do krona dorzucilem co minute zeby wykonal ten plik narazie smiga ale niewiem co jest nie tak w tym ze phpSysInfo nie wykonuje tego pliku sam.

zwraca takie błedy
: [/] [] ()
Warning: fopen(/var/local/ifstat): failed to open stream: No such file or directory in /home/httpd/html/.admin/phpsysinfo/includes/os/class.Linux.inc.php on line 438
'/proc/net/dev' not readable
Warning: Cannot modify header information - headers already sent by (output started at /home/httpd/html/.admin/phpsysinfo/includes/os/class.Linux.inc.php:438) in /home/httpd/html/.admin/phpsysinfo/includes/system_header.php on line 31

Warning: Cannot modify header information - headers already sent by (output started at /home/httpd/html/.admin/phpsysinfo/includes/os/class.Linux.inc.php:438) in /home/httpd/html/.admin/phpsysinfo/includes/system_header.php on line 35

_________________
Pentium II 350MHz/512KB IDE 4,0GB 128MB/100MHz 20 urzyszkodników DSL2000/256


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: czwartek, 1 lutego 2007, 13:25 
Offline
PGF

Rejestracja: piątek, 25 lutego 2005, 18:22
Posty: 1430
Lokalizacja: Elbląg
Wygląda, jakby nie wykonywał funkcji system - safe mode on w konfigu PHP ? Albo sudo - sprawdź, czy dobrze dopisałeś w /etc/sudoers.

_________________
F33/F07,F11,F13,F17
ObrazekObrazek


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: piątek, 2 lutego 2007, 02:10 
Offline
Użytkownik

Rejestracja: niedziela, 26 lutego 2006, 15:24
Posty: 105
dzieki juz dziala.

mialem blad w sudoers poprostu przeoczenie i zamias dodac

: [/] [] ()
nobody ALL=NOPASSWD:/usr/local/sbin/read_ifstat
do users to wrzucilem to na koncu i dlatego nie dzialalo thx all

_________________
Pentium II 350MHz/512KB IDE 4,0GB 128MB/100MHz 20 urzyszkodników DSL2000/256


Na górę
 Wyświetl profil  
 
Wyświetl posty nie starsze niż:  Sortuj wg  
Nowy temat Odpowiedz w temacie  [ Posty: 5 ] 

Strefa czasowa UTC+2godz.


Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 17 gości


Nie możesz tworzyć nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Przejdź do:  
Technologię dostarcza phpBB® Forum Software © phpBB Group
Hosting: Compus-Net
RobertKonik.pl