a execução remota via ssh não segue links?

a execução remota via ssh não segue links?

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 /dataestá 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/backupemlse não o vinculado? Vai scpse 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.

informação relacionada