Tôi có thể nâng cấp cài đặt Ubuntu hiện tại của mình trong WSL từ 16.04 đến 18.04 không?


46

Tôi hiện đang chạy Ubuntu 16.04 trong WSL (Windows 10 v1709 trở lên), được cài đặt bằng lxrun.

Tôi có thể nâng cấp nó lên 18.04 không?

Nếu vậy thì thế nào? Nếu không thì khi nào?


Ở đây người ta có thể đọc " Chúng tôi sẽ xem xét hỗ trợ 18.04 nhưng chưa có mốc thời gian chính thức. "
sba

@Biswapriyo Không chắc chắn nếu tôi đã làm điều đó một cách thích hợp, nhưng sudo do-release-upgrade -dsau đó buộc một apt upgradenguồn thay đổi lực lượng (xenial → bionic) hoạt động tốt với tôi. Chỉ cần đảm bảo xóa những thứ như linux-imagevà grub khỏi WSL.
iBug

Ubuntu 18.04 có sẵn trong cửa hàng: microsoft.com/en-us/store/p/ubfox-1804/9n9tngvndl3q
Biswapriyo

Câu trả lời:


36

Tôi chỉ buộc phải nâng cấp từ 16.04 và nó đã thành công, mặc dù quá trình này không được tốt lắm.

sudo do-release-upgrade -d

Đầu tiên làm nâng cấp. Như mọi người đã báo cáo trong các bình luận, có khả năng tất cả những gì bạn cần làm trước ngày 18.04 đã được thiết lập. Trong một vài trường hợp như của tôi, nó sẽ làm hầu hết mọi thứ trong khi hiển thị là "thất bại".

Trong trường hợp nó hiển thị là "thất bại", hãy mở /etc/apt/sources.listvà thay thế tất cả "xenial" bằng "bionic", và sudo apt update && sudo apt -y upgrade. Hầu hết mọi người nên làm mọi thứ vào thời điểm này.

Trong một số trường hợp (nhưng không phải tất cả), APT và Debian Packager có thể bị lỗi trong quá trình này. Theo chủ đề GitHub này , bạn cần loại bỏ grub và hạt nhân, nếu có:

sudo apt -f purge grub-pc
sudo apt -f purge linux-image*

Lặp lại lệnh cuối cùng vài lần vì dpkg sẽ thất bại sau khi gỡ bỏ mọi gói. Sau khi tất cả những hình ảnh Linux đó bị xóa, bạn sẽ có được một Bionic Beaver hoạt động hoàn toàn trong WSL của bạn.

Đọc thêm: Hướng dẫn nâng cấp bản phát hành ứng dụng Ubuntu của bạn - Công cụ dòng lệnh Windows dành cho nhà phát triển


12
FWIW, có lẽ các sự cố bạn gặp phải đã được khắc phục trong bản cập nhật Windows 10 tháng 4 năm 2018, nhưng tôi đã làm sudo do-release-upgrade -dvà nó đã nâng cấp lên 18.04 mà không có lỗi, nó đã đặt chính xác các nguồn của tôi. . Nó hoạt động hoàn toàn tốt!
Paul

@Paul Chúng đã được cài đặt trước đó và được cập nhật cùng nhau.
iBug

10
Có thể xác nhận rằng chỉ cần sudo do-release-upgrade -dlàm việc tốt bây giờ.
Bến

21

Vâng, bạn có thể!

Hiện tại có ba loại Ubuntu có sẵn trên Window Store.

Ảnh chụp màn hình từ Windows Store hiển thị ba loại Ubuntu có sẵn.

  • Ubuntu: Đây sẽ luôn là phiên bản LTS ổn định mới nhất.
  • Ubuntu 18.04 LTS: Dành cho các nhà phát triển muốn có phiên bản 18.04 cụ thể.
  • Ubuntu 16.04 LTS: Dành cho các nhà phát triển muốn có phiên bản 16.04 cụ thể.

Nếu bạn đã cài đặt ứng dụng "Ubuntu" đơn giản (không có số phiên bản) trước ngày 18.04 được cung cấp trên Windows Store, bạn có thể nâng cấp ứng dụng này bằng bộ lệnh sau:

sudo apt update -y         # makes apt system up-to-date 
sudo apt dist-upgrade -y   # upgrades Ubuntu 16.04 packages to latest

sudo do-release-upgrade    # performs the upgrade to Ubuntu 18.04

Thực hiện theo tất cả các lời nhắc và chú ý tất cả các cảnh báo bạn được trình bày. Chúng thường là do các tùy chỉnh và thư viện hoặc kho lưu trữ của bên thứ ba mà bạn tự thêm vào.

Nguồn chính thức: https://bloss.msdn.microsoft.com/commandline/2018/07/09/up nâng cấp-Ubuntu /


2
Nên sudo apt dist-upgrade, thực sự, hoặc nâng cấp có tổ chức sẽ ngăn chặn nâng cấp phát hành
Chris Browet

8

Hiện tại đã có Ubuntu18.04 chính thức trong cửa hàng windows, cũng như Ubuntu16.04.

Mặc dù tôi không tìm thấy bất kỳ thông tin chính thức nào về sự khác biệt giữa hai loại này và Ubuntu.

Vâng, có ba Ubuntu khác nhau trong cửa hàng windows tại thời điểm này.


3
Hai bản cài đặt có số phiên bản ở cuối dành cho những người muốn sử dụng một phiên bản cụ thể và gắn bó với nó. Phiên bản được gắn nhãn "Ubuntu" dành cho những người muốn luôn chạy bản phát hành mới nhất.
DaveTheMinion

Vâng, sau đó tìm thấy trên một số blog.
X.Arthur

1
Tôi có ấn tượng rằng nếu bạn đang sử dụng "Ubuntu", nó sẽ cập nhật lên phiên bản mới nhất thông qua cửa hàng ứng dụng, nhưng rõ ràng không phải vậy.
DaveTheMinion

@DavidB Nó nên được cập nhật khi MS đã kiểm tra tính ổn định của nó. Có vẻ như 18.04 hiện tại đã thay đổi rất nhiều thứ và một số cần triển khai mới trên WSL. Hy vọng, phiên bản windows tiếp theo sẽ bao gồm điều này.
X.Arthur

Bạn có chắc về điều này? Tôi đã nâng cấp và mọi thứ dường như đang hoạt động trơn tru.
DaveTheMinion

2

Tuyên bố miễn trừ trách nhiệm: Quy trình sau đây yêu cầu Phân phối GNU / Linux được cài đặt sẵn trong WSL (như OP đã cài đặt Ubuntu 16.04). Các liên kết được cung cấp có thể không hoạt động trong tương lai. Bạn có thể bình luận dưới đây nếu có. Nó đòi hỏi ít kiến ​​thức về các công cụ dòng lệnh GNU / Linux tar, UnsquashFSv.v. Cài đặt các công cụ này trước khi làm theo quy trình này.

  • Trình cài đặt có thể thực thi: Bạn cần một hàm nhập WslRegisterDistribution có thể thực thi để cài đặt bản phân phối. Có hai cách. Bạn có thể biên dịch trình cài đặt của riêng mình từ mã nguồn ( link1 ) hoặc trích xuất trình cài đặt từ gói Appx do Microsoft cung cấp ( link2 ).

  • Tải Ubuntu 18.04: Tải xuống tệp SquashFS Ubuntu 18.04 . Bây giờ hãy chạy Ubuntu cũ với WSL trong thư mục tải xuống đó và đăng nhập với tư cách rootngười dùng. Chạy các lệnh sau đây (chỉ với người dùng root):

cp ./ubuntu-18.04-server-cloudimg-amd64.squashfs ~ 
cd ~ 
unsquashfs -d temp ubuntu-18.04-server-cloudimg-amd64.squashfs 
cd temp 
tar -czf ../Ubuntu.tar.gz --hard-dereference * 
cd .. 
mv Ubuntu.tar.gz /mnt/c 

Các cplệnh sao chép tập tin squashfs trong thư mục chính (bắt buộc). UnsquashFStrích xuất các tập tin trong tempthư mục và tarnén tất cả các tập tin trong một .tar.gzđịnh dạng. Sau đó, mvlệnh di chuyển tập tin đó trong thư mục tải xuống trước đó. Bạn có thể xóa tempthư mục bằng rm -rf ~/templệnh.

  • Cài đặt: Đặt cả tệp thực thi và tệp tar.gz vào cùng một thư mục mà bạn muốn cài đặt. Bạn đã chạy một lệnh ( link1 ) hoặc nhấp đúp chuột vào tệp thực thi ( link2 ) để cài đặt. Nó cần 15-30 giây để cài đặt tùy thuộc vào máy của bạn.

3
Dường như cũng có các công cụ như github.com/Biswa96/WSLInstallgithub.com/DDoSolitary/LxRun Offerline , có vẻ như có thể được sử dụng cho phần cài đặt (mặc dù bản thân chưa thử nghiệm nó).
phk

Ahaha, liên kết github đầu tiên từ tôi như thực sự trỏ đến kho lưu trữ của bạn, vì vậy đừng bận tâm. Chúc mừng!
phk
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.