在 CentOS 系統中,SFTP 亂碼問題通常是由于字符編碼不一致導致的。要解決這個問題,你可以嘗試以下方法:
更改 SFTP 客戶端的字符編碼設置:
對于 OpenSSH 客戶端,你可以在連接時使用 -o 選項指定字符編碼,例如:
sftp -o "SendEnv LANG=en_US.UTF-8" user@hostname
這將把客戶端的字符編碼設置為 UTF-8。
更改 SFTP 服務器的字符編碼設置:
對于 OpenSSH 服務器,你可以在 /etc/ssh/sshd_config 文件中添加以下行來設置字符編碼:
AcceptEnv LANG=en_US.UTF-8
然后重啟 SSH 服務以使更改生效:
sudo systemctl restart sshd
如果你使用的是其他 SFTP 客戶端,例如 FileZilla,你可以在客戶端的設置中找到字符編碼選項,并將其更改為與服務器相同的編碼。
確保你的終端模擬器(如 PuTTY、Xshell 等)使用的字符編碼與服務器一致。通常,UTF-8 是一個不錯的選擇。
嘗試以上方法后,SFTP 亂碼問題應該能得到解決。如果問題仍然存在,請檢查服務器和客戶端的系統語言設置,確保它們支持并使用相同的字符編碼。