SSH를 통한 원격 실행이 링크를 따르지 않습니까?

SSH를 통한 원격 실행이 링크를 따르지 않습니까?

ssh server ls /var/lib/edumate/backup/weekly/*DBB*하나의 파일을 반환합니다

/var/lib/edumate/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120610020013.001 

하지만 ssh server ls /data/backup/weekly/*DBB*마운트된 링크 디렉터리에 있는 내용을 반환합니다.

/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

/data다른 파티션은 어디에 있나요?

/dev/sdb2 on /data type ext3 (rw,acl,user_xattr)

백업은 다음에 대한 심볼릭 링크입니다./data/backup

lrwxrwxrwx 1 root     root       12 Jul 10 14:27 backup -> /data/backup/

물론 나는 마운트/링크된 디렉토리의 파일 목록을 따릅니다. 어떤 방법이 있나요?어떻게 사용할 수 있나요 /var/lib/edumate/backup?ls연결된 것이 아닌가요? scp같은 행동을 할 것인가 ?

답변1

내 추측으로는 를 실행한 클라이언트 컴퓨터에 ssh이라는 디렉터리도 있을 것이라는 것입니다 /var/lib/edumate/backup/weekly. 실행 당시 클라이언트 시스템의 해당 디렉토리에는 하나의 파일만 포함되어 있었습니다. 하지만 이제 여기에는 여러분이 기대하는 모든 파일이 포함되어 있습니다.

서버가 아닌 클라이언트 시스템에서 와일드카드 일치가 발생합니다. 그리고 당시에는 아마도 파일이 하나뿐이었을 것입니다. 따라서 서버가 귀하의 명령으로부터 수신한 내용은 다음과 같습니다.

ls /var/lib/edumate/backup/weekly/DBB.0.db2inst1.NODE0000.CATN0000.20120610020013.001

앞으로 이를 방지하려면 다음과 같이 따옴표를 사용하여 명령을 실행하세요.

ssh server ls "/var/lib/edumate/backup/weekly/*DBB*"

그러면 와일드카드는 클라이언트 시스템의 셸에서 확장되는 대신 서버로 전달됩니다.

관련 정보