อักขระ Unicode ในเซิร์ฟเวอร์ Ubuntu


10

ฉันเพิ่งย้ายจาก Ubuntu Desktop 13.04 ไปยัง Ubuntu Server 13.10 และตอนนี้ระบบไฟล์ของฉันดูเหมือนจะไม่รองรับอักขระ Unicode ฉันใช้ rsync เพื่อสำรองข้อมูล / ซิงค์ไฟล์และแสดงตัวอักษรที่เหมาะสม แต่ต้องการลบชื่อไฟล์ที่ไม่ตรงกันและสร้างเวอร์ชันที่ใช้ Escape

ตัวอย่างเช่น:

root@ubuntu-server:~# rsync -avh --progress --delete --dry-run --exclude \$RECYCLE.BIN /media/source/ /media/target/

deleting Tiësto - Ten Seconds Before Sunrise.mp3
Ti\#353sto - Ten Seconds Before Sunrise.mp3

นอกจากนี้ถ้าฉันคัดลอกไฟล์ Unicode ไปยังระบบไฟล์มันจะแสดงเป็น:

drwxr-xr-x 3 root root      4096 Jan 21  2013 DJ Ti?sto/

ฉันพยายามติดตั้งไลบรารี Unicode ผ่านทางapt-get install unicodeแต่ดูเหมือนจะไม่ทำอะไรเลยเท่าที่สามารถแก้ไขปัญหาได้

อัปเดต: ตอนนี้อาจเป็นปัญหาเคอร์เนล ฉันกำลังคัดลอกไป samba / cifs และฉันพยายามระบุ utf8 charset ผ่านmount -t cifs //192.xxx.xxx.xxx/source/ /media/target/ -o iocharset=utf8แต่สิ่งนี้สร้างข้อผิดพลาด ...

mount error(79): Can not access a needed shared library
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

การตรวจสอบบันทึกของเคอร์เนลจะเผยให้เห็นอัญมณีเล็ก ๆ นี้

root@ubuntu-server:~# tail /var/log/kern.log
Nov 30 03:51:33 ubuntu-server kernel: [ 1756.518222] CIFS VFS: CIFS mount error: iocharset utf8 not found

ฉันจะรับ utf8 ได้อย่างไรในเคอร์เนล

ความคิดใด ๆ

คำตอบ:


10

ตกลงหลังจากการแก้ไขปัญหาข้างต้นและ googling มาก ... ฉันพบรายงานข้อผิดพลาดนี้ที่มีการอธิบายวิธีแก้ปัญหา โดยทั่วไปหากคุณติดตั้งเซิร์ฟเวอร์ Ubuntu ให้น้อยที่สุดคุณจะได้รับไดรเวอร์ที่น้อยที่สุด ฉันคิดว่ามีคนตัดสินใจ utf8 ไม่สำคัญพอที่จะรวมไว้ในชุดไดรเวอร์ขั้นต่ำ ดังนั้นหากคุณติดตั้งประเภทนั้นคุณจะต้องติดตั้งlinux-image-extra-virtualแพ็กเกจภายหลังเพื่อรับการสนับสนุน utf8 ไดรเวอร์เพิ่มเติม 232 MB เพื่อรองรับชุดอักขระ utf8 ... มีประสิทธิภาพ : - / อย่างไรก็ตามปัญหานี้ได้รับการแก้ไข

root@ubuntu-server:~# apt-get install linux-image-extra-virtual
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
    crda iw libnl-3-200 libnl-genl-3-200 linux-firmware linux-image-3.11.0-13-generic
    linux-image-extra-3.11.0-13-generic linux-image-generic wireless-regdb
The following NEW packages will be installed:
    crda iw libnl-3-200 libnl-genl-3-200 linux-firmware linux-image-3.11.0-13-generic
    linux-image-extra-3.11.0-13-generic linux-image-extra-virtual
    linux-image-generic wireless-regdb
0 upgraded, 10 newly installed, 0 to remove and 12 not upgraded.
Need to get 73.5 MB of archives.
After this operation, 232 MB of additional disk space will be used.

ทดสอบสำเนาไฟล์ utf8:

root@ubuntu-server:~# cp -a /media/source/DJ* /media/target/.

จากนั้นตรวจสอบ:

root@ubuntu-server:~# ll
drwxr-xr-x 3 root root      4096 Jan 21  2013 DJ Tiësto/

อัปเดต (2/22/2015):

คุณอาจจะสามารถที่จะได้รับไปด้วยมากเบาติดตั้งถ้าคุณใช้อาร์กิวเมนต์--no-install-recommends ฉันไม่ได้ลองแต่คุณอาจจะทำได้ถ้าคุณมีปัญหานี้apt-get

คุณสามารถลอง:

apt-get install --no-install-recommends linux-image-extra-virtual

หากไม่สามารถแก้ปัญหาได้เพียงติดตั้งใหม่ แต่ด้วยคำแนะนำ:

apt-get install --reinstall linux-image-extra-virtual

นี่เป็นการเพิ่มตัวอักษรยูนิโค้ดส่วนใหญ่ให้ฉัน แต่ฉันพบว่าบางตัวยังขาดหายไป สิ่งต่าง ๆ เช่นคำพูดคู่พิเศษเช่น "เจ้าชาย" นี้ไม่ทำงาน
yeliha
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.