Cơ bản cách chép file và điều khiển Raspberry Pi từ máy tính (SSH)
Duy Luân
một năm trướcBình luận: 42Lượt xem: 11.678
Cơ bản cách chép file và điều khiển Raspberry Pi từ máy tính (SSH)
Để chép file và điều khiển Raspberry Pi từ máy tính, chúng ta sẽ sử dụng một tính năng gọi là SSH (Secure Shell). Nó cho phép bạn "đột nhập" vào máy tính này từ máy tính khác để điều khiển nó, chạy các dòng lệnh... Còn để chép file, chúng ta sử dụng giao thức SFTP, hay còn gọi là FTP over SSH.

Cho phép Pi dùng SSH

Nói trước về việc điều khiển Raspberrry Pi từ xa bằng SSH, bạn sẽ nhập một số lệnh và các dòng lệnh đó sẽ được thực thi bởi Raspberry Pi. Nếu bạn đang dùng macOS, bạn không cần phải làm gì thêm, mọi thứ bạn cần để dùng SSH đã có sẵn. Nếu bạn dùng Windows, bạn cần cài ứng dụng PuTTY.

Quay sang Raspberrry Pi, mặc định tính năng SSH đã bị vô hiệu hóa vì lý do bảo mật. Bạn phải tự mình bật nó lên bằng cách vào hệ điều hành Raspbian > biểu tượng Cài đặt (Settings) > Raspberry Pi Configuration > Interface Options > SSH > Enable. Cái này chỉ cần làm 1 lần.

SSH_enable_Raspberry_Pi.png

Chưa hết, bạn phải biết được địa chỉ IP của máy Raspberry Pi là gì thì mới SSH vào được. Cái này thì mở cửa sổ Terminal ra (biểu tượng màu đen trên thanh statusbar, nằm kế biểu tượng file) > gõ lệnh

Code:
ifconfig
Bạn sẽ thấy xuất hiện dòng wlan0 hoặc eth0 tùy vào việc bạn đang vào mạng cho Raspberry Pi bằng Wi-Fi hay dây LAN. Ghi nhớ địa chỉ này để bạn SSH vào. Thường thì địa chỉ IP này sẽ không đổi nên các lần sau bạn không nhất thiết phải vào xem lại IP.

Cách dùng SSH

Để điều khiển được con Pi, bạn phải ở chung mạng với nó, ví dụ như chung mạng Wi-Fi ở nhà chẳng hạn (cũng có cách SSH từ xa, nhưng mình sẽ đề cập trong bài riêng). Sau đó, bạn mở ứng dụng Terminal trên macOS hoặc PuTTY trên Windows và nhập lệnh:

Code:
ssh pi@<địa chỉ IP của Raspberry Pi>
Trong đó ssh là câu lệnh để kết nối, pi là tên user mặc định trên Raspberry Pi. Sau khi nhập dòng lệnh này bạn sẽ được hỏi password của user pi là gì, nó là mật khẩu mà bạn đã thiết lập cho RPi của mình. Mặc định mật khẩu là raspberry.

Sau khi đã SSH vào được, bạn sẽ thấy màn hình giống như bên dưới. Vậy là giờ bạn có thể điều khiển, cài phần mềm, khởi động lại Pi và làm nhiều trò khác mà không cần phải nối Pi ra màn hình ngoài và cũng không cần cắm chuột, bàn phím vào Pi.

ssh_raspberry_pi.jpg

Cách chép file sang Pi bằng SFTP

Để chép file chúng ta sẽ dùng một phần mềm tên là FileZilla (bạn có thể dùng phần mềm khác cũng được, cách thiết lập tương tự nhau). FileZilla có cho cả Windows và macOS. Tải về FileZilla tại đây.

Vào FileZilla, bạn nhấn biểu tượng tạo mới kết nối ở góc trên bên trái cửa sổ, nhấn New Site. Nhập địa chỉ IP của Raspberry Pi vào ô Host, ô Protocol thì chọn SFTP, Logon Type chọn Normal > nhập user là pi và nhập password của bạn vào.

Xong, nhấn Connect để kết nối. Từ giờ trở đi bạn có thể kéo thả file vào FileZilla để chép file lên Raspberry Pi rồi đấy.

sftp_filezilla_raspberry_pi.jpg
Ace dùng window dùng bitwise ssh client để ssh và chép file nhé
https://www.bitvise.com/ssh-client-download
@maitien2004 windiws 10 hình như có tính năng ssh luôn r thì phải
@maitien2004 Windows mình toàn dùng Winscp cực ngon
windows 10 giờ có sẵn ssh rồi, chỉ cần vào manage optional features trong setting rồi add ssh là có thể dùng được trong cmd luôn
dùng công cụ như x-manager hay Xterm moba : thì có cả combo ssh lẫn ftp file luôn 😁
😁 Mình toàn dùng bitvise ssh
Ai dùng đt, máy tính bảng ios, android thì sài termius
EF54CC26-5AC6-4635-B7C4-E034A496C6C7.png
@kelangthang182000 Tù lắm bác ơi, đã ssh thì phải có bàn phím nó mới lẹ được, lóc cóc bàn phím ảo chỉ là giải pháp tình thế thôi.
@Elv1es chuẩn rồi
@Elv1es Đây chính là lý do mình chuộng bàn phím vật lý như BB. Mặc dù không nhanh như PC nhưng điều khiển chạy file java trên máy tính tiện lắm. Thêm nữa là nên cài VPN như Hamachi và setup 01 máy Linux trên Amazon nữa thì có mà điều khiển cả mạng VPN từ bất kì đâu trên thế giới luôn.
Mặc định ssh bị tắt rồi, sau khi flash ae cần tạo 1 file có tên là SSH k có đuôi mở rộng, sau đó gắn vào rpi boot lên thì ssh mới tự động mở lại. Dành cho ae chỉ dùng dòng lệnh k dùng màn hình giao diện để điểu khiển
vấn đề là vẫn chưa mua con PI ^^
Điều khiển từ xa thì phải mở ssh, set ip tĩnh rồi forward port cho nó. Lúc đó mới đúng nghĩa remote away. Chứ trong local thì cũng không ứng dụng gì nhiều.
Cũng hay đấy
@Duy Luân nên làm một bài về headless, vì không phải ai cũng mua được màn hình, chuột và bàn phím để gắn vào mà chỉ sử dụng laptop 😃
@ahxdtngh từ từ 😁 step by step nhe haha
@Duy Luân Mod nên gộp các bài thành 1 list theo thứ tự để tiện tham khảo.
@xedieu Khi nào có đủ bài thì sẽ có list đó nha
@Duy Luân Vì món này cần làm step by step, có list ngay thì sẽ có nhiều người theo hơn.
Pc chạy hfs, pi dùng lệnh wget là được. Nhanh và gọn nhẹ.
- Đóng góp : WinSCP tiện lợi hơn FileZilla, support nhiều hơn 1 protocol: SFTP, FTP.. có sẵn putty tích hợp
- Nếu b dùng terminal để connect vào pi mà thực sự bạn yêu thích cái cách đó hoặc không có gui hoặc không thể cài thì :
+ scp <path to file from local side> <username>@<ip address>:<path to destination on server side> // copy file from your local to pi
+ scp <username>@<ip address>:<path to file on server side> <path to destination local side> // copy file from pi to your local
- Nếu bạn ssh nhiều lần vào pi bạn sẽ cảm thấy thật phiền khi phải nhập password liên tục mỗi lần ssh , cơ chế passwordless authen , from your command:
B1: ssh-keygen
B2: ssh-copy-id -i <uername>@<ip address>
B3: ssh <uername>@<ip address>
sau 3 bước như trên bạn sẽ ssh vào pi mà không bao h phải nhập password nữa.
@tyller end WinSCP là của ae Windows only =)) ổng xài Mac nên chơi với FileZilla là đúng rồi =))) Vì thế bổ sung cho đóng góp trên là ae nào xài Windows thì có thể dùng WinSCP ngon hơn =)) ae Linux (ít nhất là ubuntu) thì có thể SFTP sang bằng files browser mặc định ;)
@hieunguyen7120 uh nhỉ, quên mất là author đang xài macOS 😃
@tyller end Cài ssh-server nào cho đám server chạy Win bác nhỉ? Server nhé.
@Locke thấy người ta hay xài Open SSH :v
@tyller end Mình có FileZilla Pro và mình thấy nó hỗ trợ khá nhiều protocol và service, tuy vậy mình chỉ cài để đó thôi chứ SSH với SCP có hết rồi, cứ terminal mà gõ, đỡ phải mở app.
upload_2019-2-14_10-5-18.png
mình đang dùng krusader làm app file browser, có tính năng ssh browser giống filezilla các kiểu luôn mà thấy khi copy lên remote hoặc copy từ remote về khá chậm, kiểu như nó phải đi qua 1 tầng nữa để lấy các thông tin về file, % copy... nên chậm hẳn

toàn dùng lệnh rsync hoặc scp cho lẹ 😁
scp, rsync
Nhanh gọn lẹ
sync file nào nặng thì dùng nohup rsync ,xong rồi đi chơi 😁:D
Thanks tác giả
Hoá ra OS Luân cài cho Raspberry Pi là linux based on Debian ==> Hay đấy, để khi nào lên kế hoạch compile từ source của Debian xem như nào 😁
Có một cách để không cần lúc nào cũng phải tìm lại địa chỉ IP của con Raspberry Pi bằng lệnh ipconfig sau mỗi lần tắt đi mở lại. Cũng như bác nào đó không có màn hình cho con Pi thì phải làm sao khi không xem được địa chỉ IP của nó? Có một cách là cài một service của Apple là Bonjour Printer Services(https://support.apple.com/kb/DL999). Sau đó cứ khi nào cắm chung con Pi chung mạng LAN với máy tính thì chỉ cần gõ
@soulMaker Cài VPN Hamachi trên raspberry thì có luôn ip cố định. Điều khiển từ ngoài mạng LAN vô tư.
  • Chịu trách nhiệm nội dung: Trần Mạnh Hiệp
  • © 2020 Công ty Cổ phần MXH Tinh Tế
  • Địa chỉ: 209 Đường Nam Kỳ Khởi Nghĩa, Phường 7, Quận 3, TP.HCM
  • Số điện thoại: 02862713156
  • MST: 0313255119
  • Giấy phép thiết lập MXH số 11/GP-BTTTT, Ký ngày: 08/01/2019