یکی از مشکلات همیشگی هنگام اتصال به سرورها از طریق شبکه، انتفال فایل
است. ابزار هایی مثل sftp با وجود کارایی فراوان، مشکلاتی هم دارند، مثلا
استفاده مکرر از آنها ملالآور است و اصلا برای اسکریپت نویسی مناسب نیستند
و مشکلاتی مثل سطح دسترسی و غیره هم ممکن است رخ دهد.
یک راه حل
جالب برای این مشکلات استفاده مستقیم از خود ssh است. مثلا به کمک دستور
زیر میتوان فایلی را از سرور به کلاینت منتقل کرد.
ssh
<server_ip> cat /path/to/file
>/path/to/file/on/client
|
ssh -tt
<server_name> sudo cat /path/to/file >
/path/to/save/file |
ssh
<server_ip> curl http://example.com
>/path/to/save ssh <server_ip> "dd if=/dev/sdx |gzip -c9" >/path/to/save |
علاوه بر این میتوان از این مزیت در جهت عکس نیز استفاده کرد. مثلا به کمک این دستور میتوان از سیستم بکاپ گرفت و مستقیما روی یک کامپیوتر روی شبکه ذخیره کرد:
"dd if=/dev/sdx|
gzip -c9 |ssh <server_name> "cat >
/path/to/file |
حتی میتوان فایل هایی را بازنویسی کرد که ویرایش آنها نیاز به دستور روت دارد.
cat /file/on/client
|ssh -tt <server_address> sudo tee
/path/to/file |
علاوه بر همه این مثال ها میتوان از قدرت bash و ابرازهای مختلف استفاده کرد و به ترکیبهای هیجانانگیز بیشتری رسید. اگر مثال های جالبتری به ذهنتان رسید آنهارا باما در میان بگذارید.