SCP blocca il file che sta trasferendo?


8

Avere una situazione in cui abbiamo un registro dell'applicazione seduto su un server AIX. Il registro viene continuamente scritto dall'applicazione e abbiamo utenti su Windows che desiderano visualizzare il file. Quello che stanno facendo è usare WinSCP per trasferire il file sul desktop e lo aprono usando un editor di testo.

Quello che penso potrebbe accadere è che scp sta bloccando il file per la durata del trasferimento e l'applicazione cessa di poter scrivere sul file. La ragione per cui credo che questo sia il file di registro smetterà di crescere in punti casuali durante il giorno.

È forse quello che sta succedendo?


Penso che un aixtag sarebbe il benvenuto.
Cristian Ciupitu,

Risposte:


8

Perché non provi questo. Inizia a scappare un file di grandi dimensioni, quindi eseguilo lsof /path/to/filesul server AIX e vedi cosa dice la colonna FD.

Dalla pagina man lsof:

   FD         is the File Descriptor number of the file or:
                   cwd  current working directory;
                   Lnn  library references (AIX);
                   err  FD information error (see NAME column);
                   jld  jail directory (FreeBSD);
                   ltx  shared library text (code and data);
                   Mxx  hex memory-mapped type number xx.
                   m86  DOS Merge mapped file;
                   mem  memory-mapped file;
                   mmap memory-mapped device;
                   pd   parent directory;
                   rtd  root directory;
                   tr   kernel trace file (OpenBSD);
                   txt  program text (code and data);
                   v86  VP/ix mapped file;
              FD is followed by one of these characters, describing the mode under which the file is open:
                   r for read access;
                   w for write access;
                   u for read and write access;
                   space if mode unknown and no lock
                        character follows;
                   `-' if mode unknown and lock
                        character follows.
              The mode character is followed by one of these lock characters, describing the type of lock applied to the file:
                   N for a Solaris NFS lock of unknown type;
                   r for read lock on part of the file;
                   R for a read lock on the entire file;
                   w for a write lock on part of the file;
                   W for a write lock on the entire file;
                   u for a read and write lock of any length;
                   U for a lock of unknown type;
                   x for an SCO OpenServer Xenix lock on part of the file;
                   X for an SCO OpenServer Xenix lock on the entire file;
                   space if there is no lock.
              See the LOCKS section for more information on the lock information character.
              The FD column contents constitutes a single field for parsing in post-processing scripts.

Se lo fai, almeno su Linux, vedrai che la colonna FD è "3r", il che significa che ha una sorta di blocco di lettura, ma non sono sicuro di cosa significhi il 3 davanti.


Cordiali saluti, sì, mette quel blocco di lettura sul file! Grazie!
ThaDon

Oh, in realtà la piccola r indica un blocco su solo una parte del file, forse scp non è il problema allora ...
ThaDon

1
È corretto, la piccola r indica che è un blocco byte. Quindi in teoria sta solo bloccando la parte che sta inviando. Ma se leggi la pagina man lsof sul blocco, dice anche che in alcuni casi potrebbe non riportare accuratamente il blocco. Potresti voler impostare un esperimento in cui hai un grande file di testo ... inizia a scapparlo e poi fai qualcosa come echo "blah blah blah" >> textfile. Se ciò lo aggiunge correttamente alla fine del file, direi che ciò che lsof sta segnalando è corretto.
3dinfluence

1

La maggior parte dei programmi Unix non usa il blocco o quando lo usano, non è obbligatorio, quindi dubito che il blocco stia impedendo al tuo registro di crescere. Più probabilmente il trasferimento SCP sta rallentando la scrittura del registro.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.