5
การแปลงชื่อไฟล์ UTF-8 NFD เป็น UTF-8 NFC ไม่ว่าจะเป็น rsync หรือ afpd
ฉันมีเซิร์ฟเวอร์ไฟล์ภายในบ้านที่ใช้ FreeNAS 8 ไม่กี่วันที่ผ่านมาฉันใช้ rsync เพื่ออัปโหลดไลบรารี iTunes ทั้งหมดของฉันจาก Mac เพื่อที่ฉันจะสามารถโหลดห้องสมุดของฉันผ่านเครือข่ายแทนที่จะเป็นไดรฟ์ USB ที่ช้า ส่วนใหญ่ใช้งานได้แล้วและ iTunes ทำงานได้ดีขึ้นมากในขณะนี้ แต่ฉันพบปัญหาในการเข้าถึงเพลงใด ๆ ที่มีตัวละครที่ไม่ใช่ ASCII (ฉันพบปัญหาครั้งแรกเมื่อโหลดเพลงของQueensrÿche) ไฟล์จะปรากฏใน Finder แต่ความพยายามในการเข้าถึงทำให้มันหายไปจนกว่าฉันจะเชื่อมต่อกับเซิร์ฟเวอร์อีกครั้ง หลังจากการวิจัยพบว่านี่เป็นเพราะ OSX ใช้ลำดับอักขระ UTF ที่แตกต่างจาก Linux ระบบไฟล์ OSX ใช้ Unicode Normalization Form D (NFD) โดยที่ linux ใช้ Form C (NFC) Rsync ไม่แปลงแบบฟอร์มเหล่านี้เมื่อทำการคัดลอกจาก mac ของฉันไปยังเซิร์ฟเวอร์ตอนนี้เมื่อ iTunes พยายามเข้าถึงไฟล์ที่มีอักขระพิเศษผ่านเครือข่ายไฟล์บนเซิร์ฟเวอร์จะมีการเข้ารหัสที่ผิดและรายงาน AFPD …