Android

Πώς να χρησιμοποιήσετε την εντολή linux sftp για να μεταφέρετε αρχεία

4 Awesome Raspberry Pi projects for 2017

4 Awesome Raspberry Pi projects for 2017

Πίνακας περιεχομένων:

Anonim

Το SFTP (πρωτόκολλο μεταφοράς αρχείων SSH) είναι ένα πρωτόκολλο ασφαλούς αρχείου που χρησιμοποιείται για την πρόσβαση, τη διαχείριση και τη μεταφορά αρχείων μέσω κρυπτογραφημένης μεταφοράς SSH.

Σε σύγκριση με το παραδοσιακό πρωτόκολλο FTP, το SFTP προσφέρει όλες τις λειτουργίες του FTP και είναι ευκολότερο να ρυθμιστεί.

Σε αντίθεση με την scp command , η οποία επιτρέπει μόνο μεταφορές αρχείων, η εντολή sftp σάς επιτρέπει να εκτελέσετε μια σειρά λειτουργιών σε απομακρυσμένα αρχεία και να συνεχίσετε τις μεταφορές αρχείων.

Σε αυτό το σεμινάριο, θα σας δείξουμε πώς να χρησιμοποιήσετε την εντολή sftp του Linux.

Πριν ξεκινήσεις

Για να μπορείτε να μεταφέρετε και να διαχειρίζεστε αρχεία μέσω SFTP, πρέπει να έχετε άδεια εγγραφής στο απομακρυσμένο σύστημα.

Κατά τη μεταφορά μεγάλων αρχείων, συνιστάται η εκτέλεση της εντολής sftp σε μια οθόνη ή μια συνεδρία tmux.

Ο κατάλογος από τον οποίο εκτελείτε την εντολή sftp είναι ο τοπικός κατάλογος εργασίας.

Δημιουργία σύνδεσης SFTP

Το SFTP λειτουργεί σε μοντέλο πελάτη-διακομιστή. Είναι ένα υποσύστημα SSH και υποστηρίζει όλους τους μηχανισμούς πιστοποίησης SSH.

Παρόλο που ο παραδοσιακός έλεγχος ταυτότητας με κωδικό πρόσβασης έχει ρυθμιστεί από προεπιλογή και είναι πιο εύκολος στη χρήση, εάν συνδέεστε τακτικά στον server σας μέσω του SSH / SFTP, συνιστάται η δημιουργία κλειδιών SSH και η δημιουργία κωδικού πρόσβασης SFTP χωρίς κωδικό πρόσβασης.

Για να ανοίξετε μια σύνδεση SFTP σε ένα απομακρυσμένο σύστημα, χρησιμοποιήστε την εντολή sftp ακολουθούμενη από το όνομα χρήστη του απομακρυσμένου διακομιστή και τη διεύθυνση IP ή το όνομα τομέα:

sftp remote_username@server_ip_or_hostname

Αφού συνδεθείτε, θα εμφανιστεί η εντολή sftp και μπορείτε να αρχίσετε να αλληλεπιδράτε με το απομακρυσμένο μηχάνημα:

Connected to remote_username@server_ip_or_hostname. sftp>

Εάν ο απομακρυσμένος διακομιστής SSH δεν ακούει στην προεπιλεγμένη θύρα 22, χρησιμοποιήστε την επιλογή -oPort για να καθορίσετε την εναλλακτική θύρα:

sftp -oPort=custom_port remote_username@server_ip_or_hostname

Εντολές SFTP

Οι περισσότερες από τις εντολές SFTP είναι παρόμοιες ή ίδιες με τις εντολές που θα χρησιμοποιούσατε στη γραμμή εντολών του κελύφους Linux.

Μπορείτε να πάρετε μια λίστα με όλες τις διαθέσιμες εντολές SFTP πληκτρολογώντας help ή ? .

help

Available commands: bye Quit sftp cd path Change remote directory to 'path'…… version Show SFTP version !command Execute 'command' in local shell ! Escape to local shell ? Synonym for help

Πλοήγηση με SFTP

Όταν είστε συνδεδεμένοι στο απομακρυσμένο διακομιστή, ο τρέχων κατάλογος εργασίας σας είναι ο αρχικός κατάλογος απομακρυσμένου χρήστη. Μπορείτε να το ελέγξετε πληκτρολογώντας:

pwd

Remote working directory: /home/remote_username

Για να εμφανίσετε τα αρχεία και τους καταλόγους, χρησιμοποιήστε την εντολή ls :

ls

Για να μεταβείτε σε άλλο κατάλογο, χρησιμοποιήστε την εντολή cd . Για παράδειγμα, για να μεταβείτε στον κατάλογο /tmp θα πληκτρολογήσετε:

cd /tmp

Οι παραπάνω εντολές χρησιμοποιούνται για πλοήγηση και εργασία στην απομακρυσμένη τοποθεσία.

Το κέλυφος sftp παρέχει επίσης εντολές για τοπική πλοήγηση, πληροφορίες και διαχείριση αρχείων. Οι τοπικές εντολές προστίθενται με το γράμμα l .

Για παράδειγμα, για να εκτυπώσετε τον τοπικό κατάλογο εργασίας, πληκτρολογήστε:

cd lpwd

Local working directory: /home/local_username

Μεταφορά αρχείων με SFTP

Με το SFTP μπορείτε να μεταφέρετε αρχεία με ασφάλεια μεταξύ δύο μηχανών.

Η εντολή sftp είναι χρήσιμη όταν εργάζεστε σε διακομιστή χωρίς GUI και θέλετε να μεταφέρετε αρχεία ή να εκτελέσετε άλλες λειτουργίες στα απομακρυσμένα αρχεία.

Λήψη αρχείων με την εντολή SFTP

Αφού συνδεθείτε στον απομακρυσμένο διακομιστή, ο τρέχων κατάλογος εργασίας σας είναι ο αρχικός κατάλογος απομακρυσμένου χρήστη.

Κατά τη λήψη αρχείων με την εντολή sftp , τα αρχεία μεταφορτώνονται στον κατάλογο από τον οποίο πληκτρολογήσατε την εντολή sftp .

Για να κάνετε λήψη ενός μόνο αρχείου από τον απομακρυσμένο διακομιστή, χρησιμοποιήστε την εντολή get :

get filename.zip

Η έξοδος θα πρέπει να φαίνεται κάπως έτσι:

Fetching /home/remote_username/filename.zip to filename.zip /home/remote_username/filename.zip 100% 24MB 1.8MB/s 00:13

get filename.zip local_filename.zip

Για να κάνετε λήψη ενός καταλόγου από το απομακρυσμένο σύστημα, χρησιμοποιήστε την επαναλαμβανόμενη επιλογή -r :

get -r remote_directory

Εάν μια μεταφορά αρχείων αποτύχει ή διακοπεί, μπορείτε να την συνεχίσετε χρησιμοποιώντας την εντολή reget .

Η σύνταξη της reget είναι η ίδια με τη σύνταξη του get :

reget filename.zip

Μεταφόρτωση αρχείων με την εντολή SFTP

Για να ανεβάσετε ένα αρχείο από το τοπικό μηχάνημα στον απομακρυσμένο διακομιστή SFTP, χρησιμοποιήστε την εντολή put :

put filename.zip

Η έξοδος θα πρέπει να φαίνεται κάπως έτσι:

Uploading filename.zip to /home/remote_username/filename.zip filename.zip 100% 12MB 1.7MB/s 00:06

Εάν το αρχείο που θέλετε να μεταφορτώσετε δεν βρίσκεται στον τρέχοντα κατάλογο εργασίας σας, χρησιμοποιήστε την απόλυτη διαδρομή στο αρχείο.

Όταν εργάζεστε με τη put μπορείτε να χρησιμοποιήσετε τις ίδιες επιλογές που είναι διαθέσιμες με την εντολή get .

Για να ανεβάσετε έναν τοπικό κατάλογο, θα πληκτρολογήσετε:

put -r locale_directory

Για να συνεχίσετε μια διακοπτόμενη μεταφόρτωση:

reput filename.zip

Χειρισμός αρχείων με SFTP

Συνήθως, για να εκτελέσετε εργασίες σε έναν απομακρυσμένο διακομιστή, θα συνδεθείτε σε αυτόν μέσω SSH και κάντε την εργασία σας χρησιμοποιώντας το τερματικό του κελύφους. Ωστόσο, σε ορισμένες περιπτώσεις, ο χρήστης μπορεί να έχει μόνο πρόσβαση SFTP στον απομακρυσμένο διακομιστή.

Το SFTP σας επιτρέπει να εκτελέσετε μερικές βασικές εντολές χειρισμού αρχείων. Παρακάτω παρατίθενται ορισμένα παραδείγματα για τον τρόπο χρήσης του κελύφους SFTP:

  • Λάβετε πληροφορίες σχετικά με τη χρήση του δίσκου του απομακρυσμένου συστήματος:

    df

    Size Used Avail (root) %Capacity 20616252 1548776 18002580 19067476 7%

    Δημιουργήστε έναν νέο κατάλογο στον απομακρυσμένο διακομιστή:

    mkdir directory_name

    Μετονομασία ενός αρχείου στον απομακρυσμένο διακομιστή:

    rename file_name new_file_name

    Διαγραφή αρχείου στον απομακρυσμένο διακομιστή:

    rm file_name

    Διαγραφή καταλόγου στον απομακρυσμένο διακομιστή:

    rmdir directory_name

    Αλλάξτε τα δικαιώματα ενός αρχείου στο απομακρυσμένο σύστημα:

    chmod 644 file_name

    Αλλάξτε τον κάτοχο ενός αρχείου στο απομακρυσμένο σύστημα:

    chown user_id file_name

    Πρέπει να δώσετε το αναγνωριστικό χρήστη στις εντολές chown και chgrp .

    Αλλάξτε τον κάτοχο ομάδας ενός απομακρυσμένου αρχείου με:

    chgrp group_id file_name

Αφού τελειώσετε με την εργασία σας, κλείστε τη σύνδεση πληκτρολογώντας bye ή quit .

συμπέρασμα

Σε αυτό το σεμινάριο, σας δείξαμε πώς να χρησιμοποιήσετε την εντολή sftp για τη λήψη και τη μεταφόρτωση αρχείων στον απομακρυσμένο διακομιστή SFTP.

Μπορεί επίσης να θέλετε να ρυθμίσετε έναν έλεγχο ταυτότητας βασισμένο σε κλειδί SSH και να συνδεθείτε στους διακομιστές Linux χωρίς να εισάγετε κωδικό πρόσβασης.

Μπορείτε να αφήσετε ένα σχόλιο αν έχετε οποιεσδήποτε ερωτήσεις ή σχόλια.

τερματικό sftp