ฉันได้เชื่อมต่อหนึ่งโฟลเดอร์เซิร์ฟเวอร์การผลิตของฉันด้วย "บัญชี SSH" sshfs
เซิร์ฟเวอร์ของฉันผ่านทาง
ฉันมักจะต้องค้นหาpwd
(หรือrealpath
) ไฟล์บนเซิร์ฟเวอร์เดิม (การผลิต) แต่ pwd ส่งคืนพา ธ ไปยังไฟล์บนเซิร์ฟเวอร์ที่เชื่อมต่อ ("บัญชี ssh")
มีวิธีที่จะได้รับเส้นทางเดิมหรือไม่?
ขอบคุณ
แก้ไข: เพิ่มเติมเกี่ยวกับเรื่องนี้: ฉันใช้สิ่งนี้เพื่อเชื่อมโยงเซิร์ฟเวอร์ ssh ของฉันไปยังเซิร์ฟเวอร์ SFTP ที่แตกต่างกันหลายแห่ง / โฮสติ้งที่ใช้ร่วมกัน
ดังนั้นหากฉันทำสิ่งนี้ (บนเซิร์ฟเวอร์บางตัว): sshfs user@domain:/ mount_point
จากนั้นฉันเชื่อมต่อกับบัญชี FTP ของฉันซึ่งทำหน้าที่เป็นรูทสำหรับผู้ใช้ของฉัน แต่มีมากกว่าสิ่งที่ชอบ/var/www/clients/c/a/account/pub/
และนั่นคือเส้นทางที่ฉันต้องการ -
sshfs user@domain:/ mount_point # mount SFTP acc.
cd mount_point
XXXX file.ext # get back: /var/www/clients/…/pub/file.ext
pwd file.ext # returns /ssh-server/path/mount_point/file.ext
หวังว่ามันจะสมเหตุสมผล
ขอบคุณ
/ssh-account/path/to/file
…สิ่งที่ผิด
sshd
เซิร์ฟเวอร์ของคุณทำงานใน chroot ซึ่ง/
ไม่ใช่ของจริง/
บนเซิร์ฟเวอร์และคุณต้องการใช้งานจริง/
ไม่มีวิธีรับค่าจริง/
บนเซิร์ฟเวอร์ผ่าน ssh อย่างไรก็ตามคุณสามารถกำหนดชื่อแทนได้ตามคำแนะนำในคำตอบของฉันและเพียงแค่แทนที่ชื่อแทน/var/www/mywebsite
(เช่นใช้/var/www/clients/c/a/account/pub
หรืออย่างนั้น) เพื่อไม่ให้กำหนดนามแฝงหลายตัวคุณสามารถแยกวิเคราะห์ผลลัพธ์ของการmount
ตัดสินใจว่าสิ่งนี้ชี้ไปที่การใช้ชื่อผู้ใช้ที่ได้รับsshfs
จากนั้นสร้างผลลัพธ์ตามนั้น
pwd --see-through-every-mount-and-symlink
: D
pwd --blatantly-defy-chroot --ignore-filesystem-restrictions --find-absolutely-the-absolute --accept-no-substitutes --never-surrender
?