Yillar davomida skriptda ishlagan scp buyrug'i joriy mijoza tunnel bilan hech qanday aloqasi yo'q yo'l xatosi bilan muvaffaqiyatsiz bo'lishi mumkin. VPN baytlarni tashidi; mijoz serverdan server yecha olmaydigan nomni so'radi. Joriy OpenSSH scp standart bo'yicha SFTP orqali uzatadi, SFTP esa eski protokol kabi qobiq uslubidagi kengaytmani bajarmaydi. Buyruqni o'z hisobingizdan tashqariga kuzatish yo'l aslida qayerda talqin qilinishini ko'rsatadi.

Hisobdan boshlang, keyin u yoza oladigan katalogdan

Ikki nuqta ikkita nom maydonini ajratadi va faqat chap tomon siz yozayotgan mashinaga tegishli. Undan keyingi hamma narsani server hal qiladi, siz autentifikatsiya qilgan hisob ostida, o'sha hisobdagi fayl tizimi ko'rinishi ichida. Buyruqni tuzishdan oldin ikkalasini ham tasdiqlang, chunki administrator uchun to'g'ri yo'l uzatish foydalanuvchisi uchun avtomatik to'g'ri emas. Shu farq tarmoq nosozligidek ko'rinadigan ko'p ruxsat xatolarining manbasidir.

Serverdan uning o'z ko'rinishini so'rang: ssh [email protected] pwd va ssh [email protected] ls -ld /srv/archive. Agar ikkinchi buyruq ruxsat rad etilganini xabar qilsa, tunnel joyida va yo'l bu hisob uchun yaroqsiz. Uzatish davom etishi uchun ruxsatlarni kengaytirish o'rniga egalikni tuzating yoki boshqa manzil tanlang.

Cheklangan SFTP konfiguratsiyasi chrootni fayl tizimining ildizi sifatida taqdim etishi mumkin. Bu ko'rinish ichida mutlaq yo'l chroot ichida mutlaqdir, bu administrator xostda ko'radigan joy emas.

Ikki nuqtaning ikkala tomonini aniq nomlang

Yuklash masofaviy fayl nomini ko'rsatishi kerak, mahalliy asosiy nom narigi tomonda qabul qilinadi deb taxmin qilish o'rniga.

scp q3-invoice.csv [email protected]:/home/transfer/drop/q3-invoice.csv

Yuklab olish xuddi shu sabab bilan mahalliy manzilni ko'rsatishi kerak. Ikki nom maydoni mustaqil va ular mos keladi deb taxmin qiluvchi skript masofaviy daraxt boshqa tartibdan foydalanganda birinchi marta buziladi.

scp [email protected]:/srv/archive/2026-q3.csv ./2026-q3.csv

Qo'llab-quvvatlanadigan skriptda ~otheruser dan saqlaning. Boshqa hisobning uy katalogini kengaytirish masofaviy qobiq xususiyati edi va SFTP server uni taqlid qiluvchi kengaytmani amalga oshirmasligi mumkin. Hisob haqiqatan ocha oladigan mutlaq yo'lni yozing va bo'sh joyli mahalliy yo'llarni serverdagi qobiq uchun yozilgan qo'shtirnoq qatlamlarini ko'chirish o'rniga qo'shtirnoqqa oling.

scp ingiz aslida qaysi protokoldan foydalanishini biling

OpenSSH 9.0 dan beri mijoz standart bo'yicha SFTP dan foydalanadi va distributivlar bu xatti-harakatni o'z jadvali bo'yicha qabul qiladi yoki orqaga portlaydi. Versiya satri mijoz nima niyat qilganini aytadi, lekin sotuvchi yig'ilishi upstream dan farq qilishi mumkin, shuning uchun haqiqatan ishga tushirgan mijozi tekshiring: ssh -V.

Ikki protokol nomlarni turlicha hal qiladi. Eski SCP masofaviy foydalanuvchi qobig'idan yo'lni kengaytirishni so'raydi, shuning uchun joker belgilar va tildelarni o'sha qobiq o'z qoidalari bilan boshqaradi. SFTP esa fayl uzatish amallarini chiqaradi, shuning uchun joker belgi yo mijoz tomonidan kengaytiriladi yoki umuman kengaytirilmaydi. Ikkalasi ham SSH ichida bir mashinaga boradi, shuning uchun bitta xost ikki mijoz ostida boshqacha harakat qilishi mumkin.

scp -v so'ragan quyi tizimni chop etadi va sftp quyi tizim satri zamonaviy yo'ldan foydalanilayotganini tasdiqlaydi. scp -O eski protokolni qo'llab-quvvatlanadigan va haqiqatan zarur joyda majburlaydi va o'zining qo'shtirnoq qoidalarini ham qaytaradi. Bu VPN varianti emas, serverda biror narsani yoqish usuli emas va xost kaliti tekshiruvini yumshatish sababi emas.

Skript unga tayanmasdan oldin yo'lni sinab ko'ring

Yo'l muammosi eng yomon paytda, kechasi hech kim qaramaydigan avtomatlashtirilgan ishda namoyon bo'ladi. Avval kichik fayl va ish ishlatadigan aniq hisob bilan manzilni isbotlang va o'sha sinov buyrug'ini ish ta'rifi yonida saqlang. Agar sinovga boshqa hisob yoki boshqa katalog kerak bo'lsa, ishga ham kerak bo'ladi.

Server tomonini ham tekshiring. grep -i subsystem /etc/ssh/sshd_config SFTP quyi tizimi sozlanganligini ko'rsatadi va sftp -b /dev/null [email protected] faqat o'sha quyi tizim javob berganda muvaffaqiyatli chiqadi. SSH kirishlarini qabul qiladigan, ammo quyi tizimi yo'q xost kirish sinovida butunlay sog'lom ko'rinib, har bir zamonaviy uzatishda muvaffaqiyatsizlikka uchraydi.

Mijoz versiyasini, foydalanilayotgan protokolni va mutlaq masofaviy yo'lni ish eslatmalariga yozib qo'ying. Keyingi yangilanish standart qiymatni o'zgartirganda, o'sha eslatma besh daqiqalik tuzatish bilan taxminlarga to'la tushdan keyin o'rtasidagi farqdir.

O'xshash maqolalar