Máy tính xách tay của tôi có hệ thống khởi động kép, một là Windows 7, một cái khác là Arch Linux, chúng chia sẻ một đĩa. Và tôi đã tải một số tệp vào đĩa chia sẻ trong Arch Linux, có tên tệp chứa các ký tự Trung Quốc, Hàn Quốc và Nhật Bản.
Sau khi tôi khởi động vào Win7, tôi thấy rằng các tệp trên đĩa được chia sẻ có vấn đề mã hóa với các ký tự CJK, trong khi các phần tiếng Anh trông vẫn ổn.
Làm cách nào để tên của các tệp đó được hiển thị chính xác trong cả hai hệ thống?
PS: Tôi đã thử dùng convmv -f utf8 -t gbk
Arch Linux, nhưng gặp lỗi cho biết một số thứ như mã hóa không chứa một số ký tự.
1
Không có con đường nào dễ dàng. Windows sử dụng mã hóa UTF16 (UCS2). Linus thường sử dụng UTF8.
—
fpmurphy
Tôi đã thử dùng confmv -f utf8 -t utf16, nó cho tôi biết
—
宇宙
new filename "��." contains characters, which are not POSIX filesystem conform! This may result in data loss.
tại sao điều này lại xảy ra?
@ fpmurphy1 Tôi sao chép các tệp vào thanh USB trong arch linux và sau đó khởi động vào win7, thấy rằng các tên tệp đó được hiển thị chính xác. Điều đó có liên quan đến định dạng của đĩa chia sẻ không?
—
宇宙
@fpmurphy nó thực sự phụ thuộc vào hệ thống tệp chứ không phải HĐH, trừ khi FS không chỉ định mã hóa. Các hệ thống tệp Windows như NTFS hoặc exFAT yêu cầu sử dụng UTF-16 và bất kỳ ai đọc phân vùng đó cũng phải sử dụng UTF-16. \ @ FS bạn đang sử dụng loại FS nào?
—
phuclv