+15

(Part1) Hai năm dual boot và hai tháng sử dụng WSL2 , đây là những rủi ro mình đã gặp phải khi sử dụng Windows và Linux trên cùng 1 máy tính .

I, Tại sao mình phải sử dụng đồng thời Windows và Linux ?

Câu chuyện đơn giản là khoảng năm 2018 mình đi thực tập backend web , và công ty yêu cầu mình cài Ubuntu . Tuy nhiên, vì ở trên lớp đại học mình vẫn cần Windows để làm Matlab, Powerpoint, .. nên mình đã search được 3 giải pháp :

  • Chạy máy ảo ubuntu trên windows (VMware)
  • Ubuntu app on Windows (sau này mình mới biết nó chính là WSL) .
  • Dualboot Windows và Ubuntu .

Đây là cấu hình laptop ở thời điểm đó của mình :

Title: Dell Inspiron 5558
CPU: core i5-5200U (2 cores 4 threads)
Processor Base Clocks : 2.20 GHz
Max Turbo Frequency : 2.70 GHz
RAM: 8GB  DDR3 1600Hz
Hard Drive: 1TB HDD

Ok, với một cpu intel thế hệ 5 chỉ có 2 nhân 4 luồng, mức xung nhịp 2.2 - 2.7GHz và 8GB RAM DDR3 bus 1600Hz; thì việc chạy máy ảo Ubuntu trên VMware đã cho mình 1 trải nghiệm khá tệ .

Đợt ấy mình nhớ là mình ngồi cài ruby chay bằng lệnh này mà cũng mất đến 20 phút :

rbenv install 1.9

Thế là mình đi đến tìm hiểu cách thứ 2, Ubuntu app on Windows (WSL).

image.png

Tuy nhiên, ở thời điểm đó , Ubuntu app on Windows mới release được 2 năm , có rất nhiều review nói rằng tính năng của nó quá sơ sài để có thể lập trình web, nên mình đã không dám thử cách này .

Thay vào đó, mình đã chọn cách mà hầu hết các bạn intern trong công ty sử dụng, đó là DualBoot Windows và Ubuntu trên cùng 1 ổ cứng. Dualboot là cách tốt nhất ở thời điểm đó, nó cho trải nghiệm nhanh hơn nhiều so với chạy máy ảo , và cũng cung cấp đầy đủ tính năng cần thiết để lập trình web hơn so với WSL ở thời điểm đó .

II, Rủi ro của Dualboot

Việc sử dụng Dualboot trên laptop của mình không có vấn đề gì, cho đến tháng 6/2021 . Đây là thời điểm mà Hà Nội cách ly 14 ngày lần thứ nhất , công ty mình yêu cầu toàn bộ nhân viên work from home .

Chính vì lý do đó mình quyết định làm việc bằng laptop cá nhân tại nhà thay vì phải lên công ty bê máy về cho nặng. Và làm việc ở nhà được khoảng 1 tháng, thì trong một sáng đẹp trời , mình bật Ubuntu lên và bị lỗi này :

Mình search một hồi thì cũng tìm được cách sửa , bạn có thể đọc chi tiết ở đây :

https://askubuntu.com/questions/885062/root-file-system-requires-manual-fsck

Tóm gọn lại thì lỗi này xảy ra là do tính năng Windows Update của Win 10, nó đã ghi đè MBR(master boot record) , khiến cho mình không thể boot được vào Ubuntu . Với lỗi này thì mình mất 15 phút để có thể sửa boot cho mỗi lần (đấy là may mắn vì trong tay mình có sẵn 1 cái usb live boot ubuntu 18.04) .

Tuy nhiên điều khó chịu là, LỖI NÀY LẶP ĐI LẶP LẠI TRONG 7 NGÀY LIÊN TIẾP .

Và việc fix lỗi này thì càng ngày càng khó hơn, do mỗi lần thì message lỗi lại khác nhau . Có lần mình fix được bằng boot-repair trên usb live boot ubuntu, có lần thì lại phải gõ 1 đống command fix lỗi fsck loằng ngoằng .

Để giải quyết dứt điểm lỗi này, mình đã tìm hiểu nhiều nguồn và tóm tắt lại cho các bạn một số rủi ro mà bạn có thể gặp phải, khi dualboot Ubuntu và Windows .

1, Tác nhân

Mình DualBoot từ năm 2018, nhưng tại sao đến tận tháng 6/2021 mới liên tục gặp những rủi ro này . Chất xúc tác ở đây chính là việc mình phải switch giữa UbuntuWindows liên tục.

  • Từ năm 2018 đến trước tháng 6/2021 , mình không có sự di chuyển qua lại giữa 2 hệ điều hành trên laptop nhiều . Trong 6 tháng thực tập thì mình chỉ dùng Ubuntu, ít khi switch sang Windows. Còn sau khi lên chính thức, mình chủ yếu dùng Ubuntu trên PC của công ty , máy laptop mình chỉ dùng Windows .
  • Trong tháng 6/2021, từ 7h45 sáng đến 17h tối mình sử dụng Ubuntu để làm việc, sau 20h thì dùng Windows để giải trí . Liên tục như thế trong khoảng 25 ngày, thì lỗi MBR mới bắt đầu phát sinh .

Nghĩa là dùng song song nhiều thì sẽ bị, còn nếu chỉ dualboot thử trong thời gian ngắn, có lẽ bạn sẽ ít gặp phải những rủi ro này . Đây cũng là 1 yếu tố đáng để bạn cân nhắc .

2, Các loại rủi ro mà bạn có thể gặp phải khi dualboot Windows 10 và Ubuntu .

Các rủi ro này mình chích từ nhiều nguồn, nhưng đầy đủ nhất thì bạn có thể đọc ở bài báo này .

Sau đây là tóm tắt các loại rủi ro :

2.1 Windows Update

Đây chính là rủi ro mà mình đã trình bày ở phần đầu của bài viết . Nó chỉ đơn giản là phá hoại khả năng boot vào os của bạn , với rủi ro này có thể dùng các tool như boot-repair của Ubuntu hay diskpart của Windows là có thể sửa được . Tuy nhiên nếu nó lặp lại liên tục thì có hơi bất tiện .

Ngoài ra, mình DualBoot ở đây sử dụng phiên bản Ubuntu 18.04 và lấy Ubuntu là primary OS (hệ điều hành mặc định khi khởi động máy) . Vì vậy, mỗi khi Windows update và reboot, nó lại reboot vào Ubuntu, điều này sẽ khiến cho các lỗi do xung đột giữa 2 hệ điều hành dễ xảy ra hơn .

Nếu bạn lựa chọn dualboot Windows và Ubuntu , bạn nên sử dụng Windows như primary OS nhé để khắc phục rủi ro này nhé .

2.2 Rủi ro từ việc ghi đè dữ liệu và hệ điều hành

Nó đến từ việc bạn phân vùng không thực sự rõ ràng khi dualboot . Bạn có thể đọc ở trường hợp này :

Anh bạn trong ảnh do đọc không kỹ hướng dẫn dualboot nên đã phân vùng hơi láo nháo, dẫn đến hậu quả là ổ D:/ của anh ta mất hoàn toàn dữ liệu và trở thành unallocated space .

Hay thêm 1 trường hợp nữa :

Anh bạn nói trên chỉ có 1 ổ cứng SSD khoảng 128GB , bạn dành 64GB cho Windows và 64GB cho Ubuntu . Như chúng ta đã biết, việc cài Windows 10 64bit sẽ chiếm khoảng 40GB dung lượng ổ cứng , như vậy là bạn chỉ còn khoảng 24GB ổ cứng cho dữ liệu cá nhân . Giờ bạn tải thêm 1-2 game offline cỡ 21-22GB chẳng hạn, vậy đến khi Windows Update, phần dữ liệu thêm vào hoàn toàn có khả năng vượt qua giới hạn phân vùng dữ liệu của Windows, vậy lúc này nếu nó tràn sang phân vùng của Ubuntu thì sao ? Rất có khả năng 1 trong 2 hệ điều hành hoặc cả 2 sẽ mất toàn bộ dữ liệu như anh bạn bên trên .

Tất nhiên, đây chỉ là giả thiết, vì Windows và Linux đều rất thông minh trong việc đánh dấu phân vùng . Để hạn chế rủi ro này, bạn nên mua 1 ổ cứng riêng cho mỗi phân vùng, và thực hiện cài đặt thật clean .

2.3 Rủi ro về bảo mật

Chúng ta đều biết rằng các hệ điều hành có nhân Linux đều có tính bảo mật cao và ít bị ảnh hưởng bởi viruss và malware . Lý do là vì những người sử dụng Linux chiếm 1 phần rất nhỏ trên thị trường hệ điều hành (hầu như họ là các lập trình viên). Ngược lại, virus và malware hầu hết được tạo ra là để tấn công Windows - hệ điều hành phổ biến với mọi người dùng . Vì vậy việc dualboot Windows và Linux sẽ khiến ảnh hưởng của Virus lên môi trường Linux tăng lên . Để khắc phục rủi ro này, hãy cài đặt tường lửa và các phần mềm diệt Virus xịn nhé /

2.4 Lãng phí hiệu năng

Đây không phải là một rủi ro, mà là một nhược điểm về mặt trải nghiệm . Một hệ điều hành luôn chạy mượt nhất khi nó là hệ điều hành chính . Ở trường hợp này, nếu bạn sử dụng Ubuntu như 1 hệ điều hành thứ cấp, chắc chắn trải nghiệm sẽ chậm chạp hơn so với việc cả PC chỉ sử dụng một hệ điều hành Ubuntu duy nhất (đây là điều mình đã trải nghiệm trên chính con laptop mà mình đã nói với các bạn). Thêm nữa, với cùng 1 nhu cầu như duyệt web, gõ văn bản, nghe âm thanh, ... Ở cả Windows và Linux mình lại đồng thời phải cài Chrome, VLC, Text Editor , ..... việc duplicate các phần mềm vì cùng 1 mục đích ở 2 hệ điều hành sẽ gây ra lãng phí bộ nhớ . Đây cũng là 1 điểm bạn nên cân nhắc khi chọn dualboot .

2.5 Kết luận

Về cơ bản , có khá nhiều rủi ro khi bạn dualboot Windows và Ubuntu. Tuy nhiên, mình chỉ giới thiệu về 4 rủi ro này vì nó là 4 lý do chính khiến mình bỏ DualBoot .

Mình cũng đã bỏ luôn con lap cùi với chip đời 5 và RAM DDR3 kia để mua 1 con PC xìn xịn về code cho sướng.

Hiện tại con PC của mình đang dùng WSL2. Và ở part 2 của bài viết, mình sẽ kể về trải nghiệm của mình khi sử dụng WSL2 trên cả con lap cùi, lẫn trên con PC mới . Qua đó, mình sẽ nói cho bạn biết rằng, nên sử dụng WSL2 hay là DualBoot?

Hẹn gặp lại nhóe ❤️ .


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí