Android

Cách sử dụng lệnh linux sftp để truyền tệp

Linux Tutorial for Beginners - 17 - SFTP

Linux Tutorial for Beginners - 17 - SFTP

Mục lục:

Anonim

SFTP (Giao thức truyền tệp SSH) là một giao thức tệp an toàn được sử dụng để truy cập, quản lý và truyền tệp qua vận chuyển SSH được mã hóa.

Khi so sánh với giao thức FTP truyền thống, SFTP cung cấp tất cả các chức năng của FTP và dễ dàng cấu hình hơn.

Không giống như scp command , chỉ cho phép truyền tệp, lệnh sftp cho phép bạn thực hiện một loạt các hoạt động trên các tệp từ xa và tiếp tục chuyển tệp.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách sử dụng lệnh sftp Linux.

Trước khi bắt đầu

Để có thể chuyển và quản lý tệp qua SFTP, bạn phải có quyền ghi trên hệ thống từ xa.

Khi truyền các tệp lớn, nên chạy lệnh sftp bên trong một màn hình hoặc phiên tmux.

Thư mục từ nơi bạn chạy lệnh sftp là thư mục làm việc cục bộ.

Thiết lập kết nối SFTP

SFTP hoạt động trên mô hình máy khách-máy chủ. Nó là một hệ thống con của SSH và hỗ trợ tất cả các cơ chế xác thực SSH.

Mặc dù xác thực mật khẩu truyền thống được thiết lập theo mặc định và dễ sử dụng hơn, nhưng nếu bạn thường xuyên kết nối với máy chủ của mình thông qua SSH / SFTP, bạn nên tạo khóa SSH và thiết lập đăng nhập SFTP không mật khẩu.

Để mở kết nối SFTP với hệ thống từ xa, hãy sử dụng lệnh sftp theo sau là tên người dùng máy chủ từ xa và địa chỉ IP hoặc tên miền:

sftp remote_username@server_ip_or_hostname

Sau khi kết nối, bạn sẽ thấy dấu nhắc sftp và bạn có thể bắt đầu tương tác với máy từ xa:

Connected to remote_username@server_ip_or_hostname. sftp>

Nếu máy chủ SSH từ xa không nghe trên cổng 22 mặc định, hãy sử dụng tùy chọn -oPort để chỉ định cổng thay thế:

sftp -oPort=custom_port remote_username@server_ip_or_hostname

Các lệnh SFTP

Hầu hết các lệnh SFTP tương tự hoặc giống hệt với các lệnh bạn sẽ sử dụng trong dấu nhắc shell của Linux.

Bạn có thể nhận được danh sách tất cả các lệnh SFTP có sẵn bằng cách nhập help hoặc ? .

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

Điều hướng với SFTP

Khi bạn đăng nhập vào máy chủ từ xa, thư mục làm việc hiện tại của bạn là thư mục gốc của người dùng từ xa. Bạn có thể kiểm tra bằng cách gõ:

pwd

Remote working directory: /home/remote_username

Để liệt kê các tập tin và thư mục sử dụng ls :

ls

Để điều hướng đến thư mục khác, sử dụng lệnh cd . Ví dụ: để chuyển sang /tmp bạn sẽ gõ:

cd /tmp

Các lệnh trên được sử dụng để điều hướng và làm việc trên vị trí từ xa.

Shell sftp cũng cung cấp các lệnh để điều hướng cục bộ, thông tin và quản lý tệp. Các lệnh cục bộ được bắt đầu bằng chữ l .

Ví dụ: để in thư mục làm việc cục bộ, bạn sẽ gõ:

cd lpwd

Local working directory: /home/local_username

Truyền tệp bằng SFTP

Với SFTP, bạn có thể chuyển các tập tin một cách an toàn giữa hai máy.

Lệnh sftp rất hữu ích khi bạn làm việc trên máy chủ không có GUI và bạn muốn chuyển tệp hoặc thực hiện các thao tác khác trên các tệp từ xa.

Tải xuống tệp bằng lệnh SFTP

Khi bạn đã đăng nhập vào máy chủ từ xa, thư mục làm việc hiện tại của bạn là thư mục nhà người dùng từ xa.

Khi tải xuống các tệp bằng lệnh sftp , các tệp được tải xuống thư mục mà bạn đã nhập lệnh sftp .

Để tải xuống một tệp từ máy chủ từ xa, hãy sử dụng lệnh get :

get filename.zip

Đầu ra sẽ trông giống như thế này:

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

Để tải xuống một thư mục từ hệ thống từ xa, hãy sử dụng tùy chọn -r đệ quy:

get -r remote_directory

Nếu quá trình truyền tệp thất bại hoặc bị gián đoạn, bạn có thể tiếp tục lại bằng lệnh reget .

Cú pháp của reget giống như cú pháp của get :

reget filename.zip

Tải tệp lên bằng lệnh SFTP

Để tải tệp từ máy cục bộ lên máy chủ SFTP từ xa, hãy sử dụng lệnh put :

put filename.zip

Đầu ra sẽ trông giống như thế này:

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

Nếu tệp bạn muốn tải lên không nằm trong thư mục làm việc hiện tại của bạn, hãy sử dụng đường dẫn tuyệt đối đến tệp.

Khi làm việc với put bạn có thể sử dụng các tùy chọn tương tự có sẵn với lệnh get .

Để tải lên một thư mục địa phương, bạn sẽ gõ:

put -r locale_directory

Để tiếp tục tải lên bị gián đoạn:

reput filename.zip

Thao tác tệp với SFTP

Thông thường, để thực hiện các tác vụ trên máy chủ từ xa, bạn sẽ kết nối với nó thông qua SSH và thực hiện công việc của mình bằng thiết bị đầu cuối shell. Tuy nhiên, trong một số trường hợp, người dùng có thể chỉ có quyền truy cập SFTP vào máy chủ từ xa.

SFTP cho phép bạn thực hiện một số lệnh thao tác tệp cơ bản. Dưới đây là một số ví dụ về cách sử dụng trình bao SFTP:

  • Nhận thông tin về việc sử dụng đĩa của hệ thống từ xa:

    df

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

    Tạo một thư mục mới trên máy chủ từ xa:

    mkdir directory_name

    Đổi tên một tệp trên máy chủ từ xa:

    rename file_name new_file_name

    Xóa một tập tin trên máy chủ từ xa:

    rm file_name

    Xóa một thư mục trên máy chủ từ xa:

    rmdir directory_name

    Thay đổi quyền của tệp trên hệ thống từ xa:

    chmod 644 file_name

    Thay đổi chủ sở hữu của một tệp trên hệ thống từ xa:

    chown user_id file_name

    Bạn phải cung cấp ID người dùng cho các lệnh chown chgrp .

    Thay đổi chủ sở hữu nhóm của một tệp từ xa bằng:

    chgrp group_id file_name

Khi bạn đã hoàn thành công việc của mình, hãy đóng kết nối bằng cách gõ bye hoặc quit .

Phần kết luận

Trong hướng dẫn này, chúng tôi đã chỉ cho bạn cách sử dụng lệnh sftp để tải xuống và tải tệp lên máy chủ SFTP từ xa.

Bạn cũng có thể muốn thiết lập xác thực dựa trên khóa SSH và kết nối với máy chủ Linux của mình mà không cần nhập mật khẩu.

Hãy để lại nhận xét nếu bạn có bất kỳ câu hỏi hoặc phản hồi.

thiết bị đầu cuối sftp