10 ví dụ lệnh sftp trên Centos / Ubuntu / Debian / Fedora
Lệnh sftp (Secure File Transfer Protocol) chạy trên giao thức SSH trên cổng chuẩn 22 theo mặc định để thiết lập một kết nối an toàn. SFTP đã được tích hợp vào nhiều công cụ giao diện đồ họa (FileZilla, WinSCP, FireFTP, vv.).
Cảnh báo bảo mật: Không mở cổng SSH (Secure SHell) toàn cầu vì điều này sẽ làm nhiễm sắc lỗ hổng bảo mật. Bạn chỉ nên mở cho một địa chỉ IP cụ thể từ đó bạn sẽ truyền hoặc quản lý tệp trên hệ thống từ xa hoặc ngược lại.
Kết nối với SFTP
Theo mặc định, giao thức SSH được sử dụng để xác thực và thiết lập kết nối SFTP. Để bắt đầu một phiên SFTP, nhập tên người dùng và tên máy chủ từ xa hoặc địa chỉ IP tại dấu nhắc lệnh. Sau khi xác thực thành công, bạn sẽ thấy một dấu nhắc sftp>.
# sftp tecmint@27.48.137.6 Connecting to 27.48.137.6... tecmint@27.48.137.6's password: sftp>
Lấy trợ giúp
Khi bạn đang ở dấu nhắc sftp, kiểm tra các lệnh có sẵn bằng cách gõ '?' hoặc 'help' tại dấu nhắc lệnh.
sftp> ? Available commands: cd path Change remote directory to 'path' lcd path Change local directory to 'path' chgrp grp path Change group of file 'path' to 'grp' chmod mode path Change permissions of file 'path' to 'mode' chown own path Change owner of file 'path' to 'own' help Display this help text get remote-path [local-path] Download file lls [ls-options [path]] Display local directory listing ln oldpath newpath Symlink remote file lmkdir path Create local directory lpwd Print local working directory ls [path] Display remote directory listing lumask umask Set local umask to 'umask' mkdir path Create remote directory put local-path [remote-path] Upload file pwd Display remote working directory exit Quit sftp quit Quit sftp rename oldpath newpath Rename remote file rmdir path Remove remote directory rm path Delete remote file symlink oldpath newpath Symlink remote file version Show SFTP version !command Execute 'command' in local shell ! Escape to local shell ? Synonym for help
Kiểm tra thư mục làm việc hiện tại với lệnh sftp
Lệnh 'lpwd' được sử dụng để kiểm tra thư mục làm việc hiện tại trên máy tính cục bộ, trong khi lệnh 'pwd' được sử dụng để kiểm tra thư mục làm việc hiện tại trên máy chủ từ xa.
sftp> lpwd Local working directory: / sftp> pwd Remote working directory: /tecmint/
Liệt kê tệp tin với sFTP
Liệt kê các tệp tin và thư mục trên hệ thống cục bộ và máy chủ ftp từ xa.
Trên máy chủ từ xa.
sftp> ls
Trên máy tính cục bộ.
sftp> lls
Tải lên tệp tin bằng lệnh sftp
Đặt một hoặc nhiều tệp tin vào máy chủ ftp từ xa:
sftp> put local.profile Uploading local.profile to /tecmint/local.profile
Tải lên nhiều tệp tin bằng lệnh sftp
Đặt nhiều tệp tin vào máy chủ ftp từ xa:
sftp> mput *.xls
Tải xuống tệp tin bằng lệnh sftp
Lấy một hoặc nhiều tệp tin về máy tính cục bộ
sftp> get SettlementReport_1-10th.xls Fetching /tecmint/SettlementReport_1-10th.xls to SettlementReport_1-10th.xls
Lấy nhiều tệp tin về máy tính cục bộ
sftp> mget *.xls
Lưu ý: Theo mặc định, lệnh get sẽ tải về tệp tin trong hệ thống máy tính cục bộ với cùng tên. Chúng ta có thể tải xuống các tệp từ xa với tên khác bằng cách chỉ định tên tại cuối. (Điều này chỉ áp dụng khi tải xuống một tệp duy nhất).
Tạo thư mục bằng sFTP
Tạo các thư mục mới trên máy tính cục bộ và máy chủ từ xa.
Máy chủ từ xa
sftp> cd test sftp>
Máy tính cục bộ
sftp> lcd Documents
Xóa thư mục bằng sFTP
Xóa thư mục hoặc tệp tin trên hệ thống máy chủ từ xa.
sftp> mkdir test sftp> lmkdir Documents
Lưu ý: Để xóa/bỏ đi một thư mục từ vị trí từ xa, thư mục đó phải trống.
Thoát khỏi shell sFTP
Lệnh '!' cho phép chúng ta thoát ra khỏi shell cục bộ để thực thi các lệnh Linux. Gõ lệnh 'exit' để trở lại dấu nhắc sftp>.
sftp> ! [root@sftp ~]# exit Shell exited with status 1 sftp>