ssh server ls /var/lib/edumate/backup/weekly/*DBB*
retorna um arquivo
/var/lib/edumate/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120610020013.001
mas ssh server ls /data/backup/weekly/*DBB*
retorna o que está no diretório vinculado montado
/data/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120513020022.001
/data/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120520020018.001
/data/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120527020019.001
/data/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120603020028.001
/data/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120610020013.001
/data/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120710120854.001
Onde /data
está em outra partição
/dev/sdb2 on /data type ext3 (rw,acl,user_xattr)
e backup é um link simbólico para/data/backup
lrwxrwxrwx 1 root root 12 Jul 10 14:27 backup -> /data/backup/
É claro que estou atrás da lista de arquivos do diretório montado/vinculado. Existe alguma maneiracomo posso usar /var/lib/edumate/backup
emls
e não o vinculado? Vai scp
se comportar da mesma forma?
Responder1
Meu melhor palpite é que na sua máquina cliente, na qual você executou ssh
, você também tem um diretório chamado /var/lib/edumate/backup/weekly
. No momento em que você o executou, esse diretório na máquina cliente continha apenas um arquivo. Mas agora contém todos os arquivos que você espera.
O que acontece é que a correspondência de curingas acontece na máquina cliente e não no servidor. E na época, provavelmente havia apenas um arquivo lá. Assim, o que o servidor teria recebido do seu comando seria:
ls /var/lib/edumate/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120610020013.001
Para evitar isso no futuro, execute o comando entre aspas, como:
ssh server ls "/var/lib/edumate/backup/weekly/*DBB*"
Os curingas serão então passados para o servidor em vez de serem expandidos pelo seu shell na máquina cliente.