หากคุณ Dual-boot Windows และ Linux คุณอาจสังเกตว่าเมื่อแม้าท์พาร์ติชัน NTFS จาก Linux บางครั้งเขียนข้อมูลไม่ได้ คุณอ่านไฟล์ได้ แตะลบ เปลี่ยนชื่อ แก้ไข หรือเขียนไฟล์/ไดเรกทอรีใหม่ไม่ได้
ทำไมจึงเขียนบนพาร์ติชัน Windows จาก Linux ไม่ได้?
เกิดจากพาร์ติชันถูกแม้าท์ในโหมด Read-only บางตัวจัดการไฟล์จะแสดงกล่องเตือนเมื่อแม้าท์พาร์ติชัน Windows และเตือนเกี่ยวกับเรื่องนี้ ส่วนบางตัวไม่บอกอะไรเลย - คุณแค่ทำการเขียนบนระบบไฟล์ NTFS ไม่ได้
"แต่ทำไมพาร์ติชันถึงถูกแม้ท์ในโหมด Read-only?" คุณอาจถาม สาเหตุคือฟีเจอร์ Fast Startup ยาวไปทำให้สั้น: เมื่อปิดเครื่อง Windows จะบันทึกส่วนหนึ่งของ RAM ลงดิสก์ ครั้งต่อไปที่บูท จะโหลดส่วนนั้นกลับเข้า RAM
สิ่งนี้เร็วกว่ามาก เพราะเกือบเป็นแค่การคัดลอกจากดิสก์ไปหน่วยความจำ ตรงข้ามกับการบูทปกติที่ต้องอ่านไฟล์จากดิสก์ แล้ว CPU ต้องประมวลผลข้อมูลเยอะเพื่อเริ่มต้นทุกอย่าง หากฟังดูนามธรรม ให้คิดว่า: "Normal boot" เหมือนทำอาหารจากศูนย์ แล้ว 넣เตา "Fast boot" เหมือนเอาอาหารทำไว้จากตู้เย็นมาไมโครเวฟ
เป็นฟีเจอร์ความปลอดภัย
สรุป: เมื่อ Windows ปิดเครื่อง มัน Hibernates ข้อมูลแกน OS ลงดิสก์ เมื่อบูทหลัง Hibernate มัน Resume และเริ่มต้นเร็วขึ้น เพราะ Hibernation แช่แข็งข้อมูลหน่วยความจำและสถานะ OS บางส่วนแล้วบันทึกลงดิสก์ การแก้ไขข้อมูลบนดิสก์นั้นจึงมีความเสี่ยง
จินตนาการโปรแกรมกำลังทำงานอยู่ มีไฟล์เปิดอยู่หลายไฟล์มีเนื้อหาบางส่วนเขียนไว้ ตอนปิดเครื่อง โค้ดโปรแกรมถูกบันทึกลงดิสก์เพื่อ Resume ภายหลัง หากคุณแก้ไขไฟล์ของโปรแกรม ตอนโปรแกรม Resume จะไม่พบข้อมูลที่มันทำงานอยู่ จะ Crash หรือสูญเสียความคืบหน้าทั้งหมด สถานการณ์ที่ยากต่อการกู้คืน
วิธีทำให้พาร์ติชัน NTFS เขียนได้จาก Linux
มีสองวิธีแก้ปัญหา แต่ละอย่างมีข้อเสียของตัวเอง หากคุณต้องเขียนบนพาร์ติชัน Windows จาก Linux นานๆ ครั้ง ลองวิธีในส่วนถัดไป
บูทเข้า Windows และ Restart แทน Shutdown
เป็นจริง วิธีนี้ค่อนข้างไม่สะดวก แต่เป็นวิธีแก้ไขที่เร็วที่สุด และไม่เกี่ยวข้องกับการเปลี่ยนแปลงระยะยาว مثلวิธีอื่น
- หากอยู่ใน Linux ให้ Restart
- บูทเข้า Windows
- คลิก Start Menu เลือก Restart แทน Shutdown
- บูทกลับเข้า Linux ควรจะแม้ท์พาร์ติชัน NTFS ในโหมด Read/Write ได้
เมื่อ Windows Restart มันจะไม่ใช้ Fast Startup สำหรับการบูทครั้งต่อไป หมายความว่ามันไม่ Hibernate ไม่ Snapshot สถานะระบบ ไม่บันทึกข้อมูลหน่วยความจำลงดิสก์ ไม่มีข้อมูล Hibernate บนพาร์ติชัน = ปลอดภאותต่อการเขียน และ Linux จะรับรู้
กรณีมีความสับสน: คุณไม่ต้องทำทั้ง 4 ขั้นตอนทุกครั้ง ตราบใดที่ครั้งล่าสุดที่บูท Windows คุณ Restart แทน Shutdown Linux จะเขียนบนพาร์ติชัน NTFS ได้
ปิด Fast Startup
มีประโยชน์หากคุณต้องเขียนบนพาร์ติชัน Windows จาก Linux บ่อย ข้อเสียคือ Windows จะใช้เวลาบูทนานขึ้น
เพื่อปิด Fast Startup: คลิกขวา Start Menu แล้วคลิกซ้าย Power Options
ค้นหา "Additional power settings" คลิกข้อความนั้น จะอยู่ขวาหน้าต่าง หรือต้องเลื่อนลงหากหน้าต่างเล็ก
คลิก "Choose what the power button does"
คลิก "Change settings that are currently unavailable"
ยกเลิกเลือก "Turn on fast startup" แล้วคลิก "Save changes" มุมขวาล่าง
สรุป
นี่คือวิธีที่ปลอดภัย หากคุณยอมรับความเสี่ยง คำสั่ง Linux นี้เคยทำงานในอดีต (ดูเหมือนจะไม่ทำงานกับ Windows รุ่นใหม่) แทนที่ /dev/sda4 ด้วยชื่ออุปกรณ์ที่ถูกต้องสำหรับพาร์ติชัน NTFS ของคุณ หาไม่รู้ชื่ออุปกรณ์ สามารถหาได้จากบทช่วยสอนนี้
sudo mount -o remove_hiberfile /dev/sda4 /mnt
จำไว้ว่าคุณอาจทำให้บูทครั้งต่อไปของ Windows เสียหาย ลองก็ต่อเมื่อคุณรับความเสี่ยงที่อาจต้องมาแก้ปัญหา Windows หากทำงาน คุณจะพบเนื้อหาพาร์ติชัน Windows ในไดเรกทอรี /mnt