Saya mencoba mentransfer file dari komputer jarak jauh menggunakan ssh
ke komputer saya:
scp My_file.txt user_id@server:/Home
Ini harus meletakkan My_file.txt di folder rumah di komputer saya sendiri, kan? saya mendapat
scp / Home: izin ditolak
Juga ketika saya mencoba ...@server:/Desktop
:, untuk menyalin file dari komputer jarak jauh ke desktop saya.
Apa yang saya lakukan salah?
ssh
permissions
scp
Erez
sumber
sumber
scp My_file.txt user_id@server:
itu menyalin ke folder home pengguna.Jawaban:
Perintah Anda mencoba meletakkan Dokumen baru ke root (
/
) mesin Anda. Yang ingin Anda lakukan adalah mentransfernya ke direktori home Anda (karena Anda tidak punya izin untuk menulis/
). Jika jalur ke rumah Anda adalah sesuatu seperti/home/erez
coba yang berikut ini:Anda dapat mengganti jalur ke direktori home Anda dengan cara pintas
~/
, sehingga hal berikut ini akan memiliki efek yang sama:Anda bahkan dapat meninggalkan jalan sama sekali di sisi terpencil; ini berarti direktori home Anda.
Artinya, untuk menyalin file ke desktop Anda, Anda mungkin ingin mentransfernya ke
/home/erez/Desktop/
:atau menggunakan cara pintas:
atau menggunakan jalur relatif di sisi jarak jauh, yang ditafsirkan relatif terhadap direktori home Anda:
Edit:
Seperti @ chhan sudah disebutkan, Anda juga harus menukar argumen, itu harus
Jadi, jika Anda ingin menyalin file
My_file.txt
dari serveruser_id@server
ke desktop Anda, Anda harus mencoba yang berikut:Jika file
My_file.txt
tersebut berada di direktori home Anda di server, Anda dapat menggunakan pintasan lagi:sumber
~
harus dilindungi dari evaluasi sehingga dapat dievaluasi pada host jarak jauh:\~
misalnya.Saya datang ke sini untuk "Mentransfer file menggunakan scp: izin ditolak" karena saya memiliki kesalahan yang sama.
Dalam kasus saya, file yang diunduh dengan scp akan ditimpa file yang dimiliki oleh root, dan saya bukan root. Singkatnya, periksa kepemilikan file yang ditimpa.
sumber
/Home
dan tidak menjadi root, dia tidak memiliki akses tulis di luar~/
ini sepertinya seperti masalah perizinan
File mungkin tidak memiliki izin baca karena dikirim ke server tujuan sebagai akun sumber.
Anda perlu memastikan file pada sumbernya memiliki izin yang diperlukan, terutama izin baca
-rw-r - r--
chmod 744
lalu scp file ke tujuan. Ini akan diselesaikan
sumber
-rw-r--r--
adalah 644, bukan 744. Mengatur izin yang dapat dieksekusi pada file yang sebenarnya tidak dapat dieksekusi dapat menyebabkan masalah.Apa yang memperbaiki "izin ditolak" bagi saya adalah, pada server jarak jauh, ubah kepemilikan folder menjadi root: (Ini dapat terjadi ketika Anda mengirim file ke pengguna non-root, dan direktori dimiliki oleh root!) Di mesin jarak jauh (menyalin tujuan):
Yang pasti, aktifkan semua izin pada folder jarak jauh: (Tidak selalu perlu):
sumber
Anda memiliki argumen untuk
scp
dibalik. Ini sumber pertama, lalu tujuan, seperticp
.man scp
untuk lebih jelasnya.sumber
Permisssion Denied berarti Anda bukan root dari server. Anda cukup memegang akun di sana. Jadi dalam hal ini Anda perlu melakukan ini:
Ini akan menyalin ke direktori home Anda di server.
Ini juga akan berfungsi:
sumber
Instal alat windows "mRemoteG" dari www.mremoteng.org/
Buat koneksi SSH Anda ke kotak yang diinginkan.
Klik menu "Transfer File".
Ini akan memungkinkan untuk mentransfer file dengan mudah dari Windows ke Linux.
Terima kasih.
sumber
Amazon Linux AMI
Pastikan bahwa Anda perlu menetapkan jalur server absolut, dari rumah dalam kasus saat ini:
sumber
Izin yang sama berlaku di kedua sisi scp. Anda akan mendapatkan kesalahan ini jika pengguna tidak memiliki izin untuk menulis ke tujuan. Gejala tampaknya melibatkan sumber, namun dalam kasus saya tujuan dibuat oleh root dan tidak memiliki izin menulis untuk akun pengguna yang dimaksud.
sumber
Dalam kasus saya, saya juga mencoba untuk memberikan semua izin dengan -R ke folder tetapi masih mendapat kesalahan tentang izin.
Saya harus menghapus "/" sebelum jalur server dan folder target. Alasannya adalah karena Unduhan adalah folder pertama yang dapat saya daftarkan setelah saya ssh ke server, misalnya: ssh [email protected]
Ini bekerja:
sudo scp -rp /Users/macintosh.vn/Downloads/bbhs_20190301.zip [email protected]: Unduhan
Ini tidak berfungsi:
sudo scp -rp /Users/macintosh.vn/Downloads/bbhs_20190301.zip [email protected]: / Unduh
sumber
Memperbaiki mudah. Pastikan ANDA root. SCP ke remote dan ia akan meminta Anda untuk kata sandi root mesin. Baru saja masalah ini yang solusinya. Anda root mereka root.
sumber
sebelum menggunakan perintah scp, pastikan Anda memberi izin membaca, menulis, dan mengeksekusi kepada semua orang di luar. "chmod 777 nama file"
sumber