MARS + pipe filesystem II
Miroslav BENES
mbenes na tenez.cz
Pondělí Červen 4 15:46:07 CEST 2001
Preji krasny den !
Jak uz jsme psal drive, pokousim se zprovoznit pipe-filesystem na
mars-u. Prvotni chybicka byla u me }problem s velkymi a malymi
pismeny), takze ted jsem o neco dal. Presto to porad jeste neni ono.
Jako skript pouzivam toto :
#!/bin/bash
case "$1" in
'CREAT')
echo "`basename $0` $1 $2 $3 $4 $5" `date` >>/tmp/mars-pipe
;;
'WRITE')
echo "`basename $0` $1 $2 $3 $4 $5" `date` >>/tmp/mars-pipe
;;
READ')
echo "`basename $0` $1 $2 $3 $4 $5" `date` >>/tmp/mars-pipe
cat /var/log/mars_nwe.log
;;
*)
echo "`basename $0` $1 $2 $3 $4 $5" `date` >>/tmp/mars-pipe
;;
esac
Neboli vsechny pristupy se zapisuji do souboru /tmp/mars-pipe a navic
pri pokusu o cteni by se mel vracel LOG od marse.
a) cteni
v klientovi (DOS) si namapuju prislusny svazek na L: a zadam prikaz
(nazev skriptu je test) :
C:\>copy L:\test c:\mars.log
1 zkopírovaných souborů
V zaznamu se objevi :
test READ 1 12610 Po čen 4 12:47:02 CEST 2001
Tedy vypada to, ze prvni parametr je operace (READ), druhy je cislo
pripojeni a treti je PID vlakna nwconn.
Problem ale je, ze soubor se neprenese cely :
....
06.04,12:32:09 NWB 0 0:check_compress_bindery after qsort
06.0<EOF>
Tady je to utnute a ma to delku presne 512 B. Co delam spatne ?
Domnival jsem se, ze prikaz "cat" prenese data na standardni vystup,
ktery se v tomto pripade preda klientovi. Ale asi se vloudila
chybicka. Jaky by mel byt spravny postup ?
Druhy dotaz - jak se do takove roury ma mars-u zapisuje ?
Zkousel jsem vsechno mozne :
C:\>echo "abcd" >L:\test
Chyba při vytváření souboru
(neudela nic)
C:\>echo "abcd" >>L:\test
(nehlasi chybu)
v "logu" /tmp/mars-pipe je :
test READ 1 12610 Po čen 4 12:53:49 CEST 2001
C:\>copy c:\autoexec.bat l:\test
Přístup odepřen - l:\test
0 zkopírovaných souborů
(neudela nic)
C:\>copy c:\autoexec.bat >l:\test
Chyba při vytváření souboru
(neudela nic)
C:\>copy c:\autoexec.bat >>l:\test
(hlaseni klienta "out of disk space...")
Soubor nelze kopírovat do sebe sama
Nedostatek místa na disku
v "logu" /tmp/mars-pipe je :
test READ 1 12610 Po čen 4 12:55:42 CEST 2001
V log-u mars-e je obvykle hlaska :
06.04,12:55:51 NWC 1 48:Got SIG_PIPE
Pritom jak adresar tak ta davka maji prava 777, takze nechapu puvod
hlasky "pristup odepren".
Jak se ma do te roury zapisovat ? A proc hlasi, ze ten "soubor" ma
velikost 2,065,400,459 B ?
Diky za kazdy napad.
--------------------------
Miroslav BENES
E-mail : mbenes na tenez.cz
TENEZ Chotebor, a.s
--------------------------
Další informace o konferenci Linux