Nếu bạn đang sử dụng hệ điều hành kép (dual-boot) giữa Linux và Windows, chắc hẳn bạn mong muốn việc chuyển đổi qua lại giữa hai môi trường diễn ra một cách liền mạch. Tuy nhiên, đôi khi bạn có thể gặp phải tình huống khó chịu khi khởi động vào Linux nhưng lại không thể nhìn thấy hoặc truy cập các phân vùng Windows của mình. Điều này đặc biệt phiền toái khi bạn chỉ cần nhanh chóng lấy một tập tin quan trọng. May mắn thay, đây thường là sự cố có thể khắc phục được mà không cần quá nhiều công sức.
Là một chuyên gia đã từng đối mặt với vấn đề này không ít lần, tôi hiểu rõ cảm giác bối rối đó. Bài viết này sẽ đi sâu vào các nguyên nhân phổ biến và cung cấp hướng dẫn từng bước để giúp bạn truy cập lại dữ liệu trên phân vùng Windows từ hệ điều hành Linux một cách hiệu quả và an toàn.
Tại Sao Linux Đôi Khi Không Nhận Diện Ổ Đĩa Windows?
Trong hầu hết các trường hợp, Linux sẽ không “chạm” vào các phân vùng Windows của bạn bởi vì hệ điều hành Windows đã không tắt máy một cách gọn gàng. Các tính năng như Fast Startup (Khởi động nhanh) và chế độ ngủ đông (hibernation) có thể khiến hệ thống tệp (file system) của Windows ở trạng thái “không an toàn”. Tôi đã từng chứng kiến điều này sau khi cài đặt lại Windows và quên tắt tính năng Fast Startup.
Đôi khi, Linux có thể hoàn toàn thiếu sự hỗ trợ cho hệ thống tệp NTFS, hoặc ổ đĩa có thể được đánh dấu là cần sửa chữa. Ít phổ biến hơn, các cài đặt trong BIOS hoặc UEFI có thể can thiệp vào cách Linux nhận diện ổ đĩa. Nếu BitLocker được bật trên phân vùng Windows, Linux sẽ không thể truy cập vào ổ đĩa đã mã hóa cho đến khi nó được giải mã từ bên trong Windows.
Kiểm Tra Xem Linux Có Thấy Ổ Đĩa Không
Trước khi làm bất cứ điều gì khác, tôi luôn kiểm tra xem Linux có thực sự phát hiện được ổ đĩa hay không. Chạy lệnh lsblk
trong terminal sẽ cung cấp một cái nhìn tổng quan nhanh chóng:
Kiểm tra phân vùng ổ đĩa trên Linux bằng lệnh lsblk
Nếu các phân vùng Windows hiển thị nhưng không được gắn (mounted), thì khả năng cao đó là vấn đề về hệ thống tệp hoặc quá trình tắt máy. Nếu chúng hoàn toàn không xuất hiện, tôi sẽ kiểm tra sâu hơn với lệnh sudo fdisk -l
để tìm bất kỳ dấu hiệu nào của ổ đĩa. Khi không có gì hiển thị ở cả hai lệnh, điều đó thường chỉ ra một vấn đề về phần cứng, kết nối lỏng lẻo hoặc cấu hình BIOS.
Chế Độ Khởi Động Nhanh (Fast Startup) Của Windows Thường Gây Cản Trở
Một trong những vấn đề lớn nhất mà tôi từng gặp phải là Fast Startup. Tính năng này được thiết kế để tăng tốc thời gian khởi động của Windows bằng cách đưa hệ thống vào trạng thái ngủ đông thay vì tắt máy hoàn toàn. Nhưng Linux coi đây là một hệ thống tệp đang được mở một phần và từ chối gắn kết nó.
Để tắt Fast Startup, bạn cần khởi động vào Windows, mở Control Panel và điều hướng đến System and Security > Power Options (Hệ thống và Bảo mật > Tùy chọn Nguồn). Từ đó, nhấp vào “Choose what the power buttons do” (Chọn chức năng của nút nguồn), sau đó “Change settings that are currently unavailable” (Thay đổi cài đặt hiện không khả dụng). Bạn sẽ tìm thấy tùy chọn để tắt Fast Startup. Bỏ chọn và lưu thay đổi của bạn.
Tắt tính năng Khởi động nhanh trong Tùy chọn Nguồn của Windows 11
Hãy chắc chắn khởi động lại Windows sau đó, đừng chỉ tắt máy. Việc khởi động lại đó sẽ xóa cờ ngủ đông. Nếu điều đó vẫn không giải quyết được vấn đề, bạn có thể cần mở Command Prompt hoặc PowerShell với quyền Administrator trong Windows và chạy lệnh powercfg /h off
để tắt chế độ ngủ đông trên toàn hệ thống.
Bạn Có Thể Thiếu Hỗ Trợ NTFS Trong Linux
Một số bản phân phối Linux đã bao gồm hỗ trợ NTFS ngay từ đầu, nhưng tôi đã sử dụng một vài bản cài đặt tối giản không có. Nếu Linux báo lỗi khi bạn cố gắng gắn một phân vùng Windows, việc thiếu hỗ trợ NTFS có thể là lý do. Để khắc phục, hãy cài đặt gói ntfs-3g
bằng trình quản lý gói của bản phân phối của bạn. Trên các hệ thống dựa trên Ubuntu hoặc Debian, lệnh là sudo apt install ntfs-3g
. Người dùng Fedora có thể chạy sudo dnf install ntfs-3g
, và người dùng Arch Linux có thể sử dụng sudo pacman -S ntfs-3g
. Sau khi cài đặt xong, hãy thử gắn phân vùng lại.
Nếu bạn đang sử dụng kernel mới hơn (5.15 trở lên), hệ thống của bạn có thể đang sử dụng driver ntfs3
mới hơn. Nó cung cấp hiệu suất tốt hơn nhưng có thể nghiêm ngặt hơn trong việc từ chối gắn kết các phân vùng “bẩn” (dirty) hoặc đang ở chế độ ngủ đông. Nếu bạn đang gặp lỗi không mong muốn, đây có thể là nguyên nhân.
Khắc Phục Lỗi “Unsafe Shutdown” Hoặc “Dirty Bit”
Tôi đã gặp lỗi này rất nhiều lần: “The NTFS partition is in an unsafe state. Please resume and shutdown Windows fully.” (Phân vùng NTFS ở trạng thái không an toàn. Vui lòng tiếp tục và tắt Windows hoàn toàn.) Lỗi này thường xuất hiện khi Windows không tắt đúng cách hoặc ổ đĩa được đánh dấu là “dirty bit” (cờ lỗi).
Cách khắc phục tốt nhất là khởi động lại vào Windows, sau đó khởi động lại nó và tắt máy một cách sạch sẽ. Điều đó thường sẽ giải quyết vấn đề. Nhưng nếu bạn đang bị kẹt trong Linux và chỉ cần truy cập, bạn có thể sử dụng ntfsfix
một cách cẩn thận như một giải pháp tạm thời. Chạy lệnh sudo ntfsfix /dev/sdXN
(thay thế sdXN bằng tên phân vùng thực tế của bạn) có thể xóa dirty bit và cho phép Linux gắn kết ổ đĩa.
Tuy nhiên, cần lưu ý rằng ntfsfix
không thực sự sửa chữa hệ thống tệp; nó chỉ đơn giản là đặt lại cờ. Việc sử dụng nó có thể ngăn Windows tự động chạy chkdsk
vào lần khởi động tiếp theo, có khả năng che giấu các vấn đề nghiêm trọng hơn. Tôi chỉ sử dụng nó khi không còn lựa chọn nào khác.
Thử Gắn Kết Nối Chỉ Đọc (Read-Only) Như Một Giải Pháp Thay Thế An Toàn Hơn
Nếu bạn chỉ cần lấy tập tin từ phân vùng Windows và không cần ghi bất cứ thứ gì vào đó, việc gắn ổ đĩa ở chế độ chỉ đọc là một lựa chọn an toàn hơn. Điều này tránh việc chạm vào bất kỳ siêu dữ liệu nào hoặc ghi vào một hệ thống tệp có thể đang ở trạng thái không an toàn. Trong Linux, hãy sử dụng lệnh sau:
sudo mount -t ntfs-3g -o ro /dev/sdXN /mnt/windows
Thay thế /dev/sdXN
bằng tên thực tế của phân vùng Windows của bạn và /mnt/windows
bằng điểm gắn kết mong muốn. Lệnh này cho phép bạn truy cập tập tin mà không có nguy cơ làm hỏng dữ liệu. Nếu bạn không chắc chắn về trạng thái của phân vùng, đây là bước đầu tiên an toàn hơn so với việc thử ntfsfix
.
Tránh Ép Buộc Gắn Kết Trừ Khi Bạn Biết Rõ Rủi Ro
Có một tùy chọn của ntfs-3g
được gọi là “remove_hiberfile” mà một số hướng dẫn khuyên dùng nếu bạn đang xử lý một phân vùng Windows đã ngủ đông. Tôi đã thử nó trước đây, và mặc dù nó hoạt động, nó đi kèm với một cảnh báo lớn: nó sẽ xóa tệp ngủ đông của Windows. Điều đó có thể gây mất dữ liệu, đặc biệt nếu bạn có công việc chưa lưu.
Nếu không phải là trường hợp khẩn cấp, tôi đặc biệt khuyên bạn nên khởi động vào Windows và tắt máy đúng cách thay vì sử dụng phương pháp này. Việc thao tác với một hệ thống tệp đã ngủ đông từ Linux luôn là một hành động rủi ro cao.
Khi Ổ Đĩa Vẫn Không Hiển Thị, Hãy Kiểm Tra Sâu Hơn
Khi không có giải pháp nào ở trên hoạt động, đã đến lúc xem xét sâu hơn một chút. Tôi đã thấy các hệ thống mà chế độ lưu trữ BIOS được đặt thành RAID thay vì AHCI, và điều đó khiến Linux bị nhầm lẫn đến mức không thể nhìn thấy ổ đĩa.
Chuyển sang AHCI (một cách cẩn thận) trong BIOS đã giải quyết được vấn đề. Ngoài ra, tôi luôn kiểm tra kỹ các kết nối vật lý hoặc thử một cổng USB khác nếu đó là ổ đĩa ngoài. Nếu bạn vẫn gặp khó khăn, việc chạy chuẩn đoán SMART có thể giúp loại trừ khả năng lỗi ổ đĩa. Và nếu bạn đang sử dụng Windows 11, hãy kiểm tra xem BitLocker có được bật hay không bằng cách tìm kiếm “Manage BitLocker” (Quản lý BitLocker) trong menu Start. Nếu nó được bật, bạn sẽ cần tắt hoặc giải mã ổ đĩa trước khi Linux có thể đọc được nó.
Linux và Windows Hoàn Toàn Có Thể Tương Thích
Những vấn đề về phân vùng này từng khiến tôi bối rối rất nhiều. Nhưng một khi tôi hiểu cách Windows và Linux xử lý các hệ thống tệp khác nhau, mọi thứ trở nên suôn sẻ hơn rất nhiều. Giờ đây, tôi chỉ cần đảm bảo tắt Fast Startup, cài đặt hỗ trợ NTFS và luôn tắt Windows hoàn toàn trước khi chuyển đổi hệ điều hành.
Trên thực tế, tôi đã bắt đầu sử dụng các máy ảo (virtual machines) nhiều hơn cho các tác vụ Windows nhẹ. Chạy Windows trong máy ảo từ Linux bỏ qua hoàn toàn những vấn đề này vì bạn đang làm việc với các ổ đĩa ảo thay vì các phân vùng vật lý. Nó không lý tưởng cho việc chơi game hoặc bất cứ thứ gì đòi hỏi GPU cao, nhưng đối với việc kiểm tra phần mềm hoặc xử lý các quy trình làm việc cơ bản, đó là một giải pháp thay thế sạch sẽ. Với một chút thiết lập, Linux và Windows hoàn toàn có thể tương thích và việc chuyển đổi giữa chúng không còn là một cơn ác mộng hỗ trợ kỹ thuật mỗi lần nữa.
Bạn đã từng gặp phải lỗi Linux không nhận diện phân vùng Windows chưa? Bạn đã khắc phục bằng cách nào? Hãy chia sẻ kinh nghiệm của bạn trong phần bình luận bên dưới để cộng đồng tonghopthuthuat.com cùng tham khảo!