Điểm:1

Cài đặt 20.04 cho wsl2 nếu Microsoft Store bị lỗi?

lá cờ id

Có cách nào để cài đặt 20.04 để sử dụng với wsl2 không không phụ thuộc vào Microsoft Store (hoặc Add-AppxPackage) có hoạt động không?

Lý do: Microsoft Store và Add-AppxPackage bị hỏng trên máy tính của tôi, các nỗ lực khắc phục chúng đều không thành công và giải pháp duy nhất của Microsoft là "cài đặt lại Windows" vì không có cách nào để tạo lại hoặc tự gỡ cài đặt và cài đặt lại Store. Những người khác đã phát hiện ra rằng Add-AppxPackage không phải là kẽ hở để vượt qua Microsoft Store bị hỏng.


Ngẫu nhiên, tôi đã cố tải xuống bằng cách chạy:

Gọi-WebRequest -Uri https://aka.ms/wslubuntu2004 -OutFile Ubuntu.appx -UseBasicParsing
Add-AppxPackage .\Ubuntu.appx

Thật không may, đây là thông báo lỗi tôi nhận được:

Add-AppxPackage: Triển khai không thành công với HRESULT: 0x80073CF3, Cập nhật gói không thành công, phụ thuộc hoặc xung đột
Thẩm định.
Triển khai Thêm hoạt động với khối lượng mục tiêu C: trên Gói
CanonicalGroupLimited.Ubuntu20.04onWindows_2004.2020.424.0_x64__79rhkp1fndgsc từ: (Ubuntu.appx) không thành công do lỗi
0x80073CF3. Xem http://go.microsoft.com/fwlink/?LinkId=235160 để được trợ giúp chẩn đoán các sự cố triển khai ứng dụng.
LƯU Ý: Để biết thêm thông tin, hãy tìm [ActivityId] 014ee586-6a11-0004-ce43-5001116ad701 trong Nhật ký sự kiện hoặc sử dụng
dòng lệnh Get-AppPackageLog -ActivityID 014ee586-6a11-0004-ce43-5001116ad701
Tại dòng:1 ký tự:1
+ Add-AppxPackage .\Ubuntu.appx
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : WriteError: (D:\Downloads\Ubuntu.appx:String) [Add-AppxPackage], IOException
    + FullQualifiedErrorId : DeploymentError,Microsoft.Windows.Appx.PackageManager.Commands.AddAppxPackageCommand

Nếu bạn tìm hiểu kỹ các thông báo lỗi trong EventViewer, cuối cùng chúng sẽ dẫn đến "tệp XML mà Microsoft Store cần bằng cách nào đó đã bị xóa và không có cách nào để lấy lại tệp đó mà không cần cài đặt lại Store bằng cách cài đặt lại Windows" :-(

Dù sao, tôi không mong đợi bất cứ ai ở đây giúp chẩn đoán Microsoft Store, tôi chỉ hy vọng rằng có một số cách thay thế để cài đặt Ubuntu 20.04 cho WSL2 mà không cần Cửa hàng Windows để hoạt động.

lá cờ in
WSL2 có phải là một yêu cầu tuyệt đối không? Một máy ảo sẽ là một lựa chọn khả thi?
Bitbang3r avatar
lá cờ id
Tôi cho rằng tôi CÓ THỂ sử dụng VirtualBox nếu tôi phải làm vậy. Ban đầu, tôi bắt đầu sử dụng wsl (không phải 2) vì hiệu suất của nó với Docker tốt hơn rất nhiều (ít nhất là đối với những việc nhỏ mà thời gian khởi động chiếm phần lớn hoặc hầu hết tổng thời gian). Khi wsl (và mặc nhiên là Hyper-V) được bật, VirtualBox hoàn toàn không sử dụng được. Sau đó, khi tôi quay lại xây dựng AOSP, tôi đã chuyển sang wsl2 để có thể chạy xfce và DDD qua VcXsrv. Cuối cùng tôi đã có phiên bản VirtualBox mới nhất để không chết khi khởi động Linux với HyperV đang hoạt động, nhưng hiệu suất rất tệ.
Bitbang3r avatar
lá cờ id
Bây giờ tôi hoàn toàn không thể sử dụng wsl(2) * một cách có ý nghĩa cho đến khi tôi cài đặt lại Windows hoặc Microsoft cùng nhau hành động và tìm ra cách thích hợp để khắc phục cài đặt Store bị hỏng, tôi cho rằng tôi cũng có thể tắt wsl và HyperV để VirtualBox ít nhất sẽ hoạt động bình thường trở lại. Thở dài.
NotTheDr01ds avatar
lá cờ vn
Có vẻ như bạn đã thực hiện nghiên cứu của mình và tôi biết bạn nói rằng bạn không tìm kiếm trợ giúp để sửa Cửa hàng, nhưng bạn có thể muốn thử hỏi về điều đó trên [Người dùng cấp cao](https://superuser.com ). "Sửa chữa" có hoạt động cho Windows thay vì cài đặt lại đầy đủ không? Ngay cả trong khi cài đặt đầy đủ, vẫn có một tùy chọn để giữ các tệp và ứng dụng của người dùng.
Điểm:1
lá cờ vn

Miễn là bạn đã cài đặt WSL (dù sao cũng không dựa vào Cửa hàng, vì vậy đó không phải là vấn đề), bạn có thể sử dụng wsl --nhập khẩu lệnh phụ để nhận bản phân phối Ubuntu "tải phụ".

Gói mà bạn đã tải xuống có chứa tệp bạn cần, nhưng để hợp lý hóa các hướng dẫn, tôi sẽ yêu cầu bạn tải xuống lại. Tất nhiên, bạn có thể điều chỉnh công thức này nếu muốn:

  • Đầu tiên, chọn một vị trí cho các tệp WSL của bạn. Ví dụ:

    cd $env:HỒ SƠ NGƯỜI DÙNG
    mkdir -p wsl\instance\Ubuntu20_04
    mkdir wsl\hình ảnh
    đĩa CD
    
  • Tải xuống gói Appx theo cách thủ công vào đó wsl thư mục, thông qua liên kết trực tiếp thích hợp được tìm thấy đây hoặc, trong trường hợp của bạn, thông qua:

    # Giả sử chúng ta vẫn đang ở trong thư mục `wsl` đã tạo ở trên
    Gọi-WebRequest -Uri https://aka.ms/wslubuntu2004 -OutFile Ubuntu.appx -UseBasicParsing 
    
  • Tệp kết quả thực sự chỉ là một tệp được đổi tên .zip tập tin. Giải nén nó trong PowerShell và di chuyển cài đặt.tar.gz đến hình ảnh thư mục đã tạo ở trên:

    # Vẫn còn trong thư mục `wsl`
    Mở rộng-Lưu trữ Ubuntu.appx
    mv Ubuntu\install.tar.gz hình ảnh\
    Xóa mục -Recurse Ubuntu
    
  • Bạn sẽ cần giải nén cài đặt.tar.gz tập tin để cài đặt.tar. Cả PowerShell và Windows đều không có tính năng tích hợp sẵn để thực hiện việc này, vì vậy tôi sẽ để tùy chọn đó theo sở thích của bạn. Tôi đoán bạn đã cài đặt một cái gì đó như 7-zip rồi.

  • đổi tên hình ảnh\install.tar đến hình ảnh\Ubuntu20_04.tar. Điều này không thực sự cần thiết, nhưng tôi muốn giữ hình ảnh "nguyên sơ" trong trường hợp bạn muốn cài đặt các phiên bản bổ sung. WSL rất lý tưởng để tạo ra các phiên bản "vứt đi" nơi bạn có thể thử thứ gì đó có khả năng phá hoại mà không sợ làm hỏng phiên bản chính của mình.

  • Vẫn từ bên trong wsl danh mục:

    wsl --nhập phiên bản Ubuntu20.04\hình ảnh Ubuntu20_04\Ubuntu20_04.tar --version 2
    wsl --set-default Ubuntu20.04 # Tùy chọn và có lẽ không cần thiết nếu đây là bản phân phối đầu tiên được cài đặt
    wsl -u root userradd --create-home --user-group --groups adm,dialout,cdrom,soft,sudo,audio,dip,video,plugdev,netdev --password tên người dùng "encryptedPassword"
    

    ... Tất nhiên, điều chỉnh tên tài khoản là tên người dùng của bạn. Nhìn thấy đây để biết cách tạo mật khẩu được mã hóa.

    Theo hiểu biết tốt nhất của tôi, điều này sẽ tạo ra một người dùng giống như cách mà người dùng mặc định được tạo bởi bản cài đặt Microsoft Store của Ubuntu 20.04.

  • Bắt đầu WSL Ubuntu với quyền root:

    wsl -u gốc
    
  • Để đặt người dùng mặc định chạy khi phiên bản bắt đầu, hãy tạo một /etc/wsl.conf với các nội dung sau:

    [người dùng]
    mặc định=tên người dùng
    

    ... thay thế tên người dùng của bạn, tất nhiên.

  • Thoát trở lại PowerShell

  • Tắt phiên bản để cho phép nó sao lưu và đọc wsl.conf:

    wsl --chấm dứt Ubuntu20.04
    

Đó nên là nó. Đang chạy wsl nên bắt đầu chạy Ubuntu 20.04 dưới ID người dùng của bạn.

Tôi chưa có cơ hội kiểm tra từ đầu đến cuối từng bước ở đây, nhưng đây là sự kết hợp của những điều tôi đã làm trong quá khứ và các câu trả lời khác mà tôi đã cung cấp. Tôi tin rằng tôi đã tập hợp tất cả các phần mà bạn cần, nhưng nếu bạn gặp sự cố, hãy cho tôi biết và tôi sẽ xem xét cũng như chỉnh sửa nó.

neogeomat avatar
lá cờ br
Xin chào, các bước hoạt động tốt. khi cố gắng đăng nhập bằng "tên người dùng wsl -u", nó báo lỗi "-sh: 6: export: (x86)/Common: tên biến xấu"
NotTheDr01ds avatar
lá cờ vn
@neogeomat Và đó là mà không cần làm gì khác? Tôi chỉ thấy một người khác với lỗi đó gần đây. Tôi khá chắc chắn rằng vấn đề là do tập lệnh đang được chạy qua `sh` (không phải `bash`) không trích dẫn chính xác biến `"$PATH"`. Xem [câu trả lời này](https://askubuntu.com/a/1355022/1165986) để thảo luận chi tiết hơn.
Điểm:-3
lá cờ de

Để giải quyết vấn đề dường như yêu cầu cài đặt lại Windows, tôi đã sử dụng khả năng được gọi là "nâng cấp tại chỗ" của trình cài đặt Windows để cài đặt lại tất cả các tệp và ứng dụng của bạn! Điều này có thể giúp bạn. Nhìn thấy hướng dẫn này ví dụ, để biết chi tiết.

Hôm nay tôi thậm chí đã tìm được lời giải thích cuối cùng này cho câu hỏi chính của bạn, nếu không được sao chép bởi người khác ở đây, vì đây là bài đăng cũ hơn: https://superuser.com/questions/1271682/is-there-a-way-of-installing-ubuntu-windows-subsystem-for-linux-on-win10-v170 Là người cuối cùng, ngay cả MS cũng ghi lại tất cả điều này: https://docs.microsoft.com/en-us/windows/wsl/install-manual

Hy vọng bài viết của tôi sẽ giảm số lượng downvote bây giờ ..

NotTheDr01ds avatar
lá cờ vn
Chào mừng bạn đến với Hỏi Ubuntu. Có thể có một số lý do khiến bạn nhận được phiếu phản đối. Đầu tiên, "câu trả lời" ban đầu của bạn (đoạn đầu tiên hiện tại) chỉ là một liên kết để cố gắng giúp giải quyết vấn đề mà người đăng ban đầu cho biết họ *không* cố gắng giải quyết. Vì điều đó không liên quan đến câu hỏi thực tế, nên nó thực sự xứng đáng là một nhận xét (như tôi đã làm về chủ đề đó trong câu hỏi chính). Tôi nhận ra rằng, với tư cách là người dùng mới, bạn không có danh tiếng để đăng nhận xét và đó là do thiết kế. Khi bạn hỏi hoặc trả lời các câu hỏi một cách có trách nhiệm, bạn sẽ nhận được đặc quyền này.
NotTheDr01ds avatar
lá cờ vn
Thứ hai, các câu trả lời chỉ liên kết rất khó chịu ở đây (và có thể là một nguyên nhân bổ sung của các lượt phản đối). Ít nhất là tóm tắt liên kết bạn cung cấp, nhưng như bạn đã nói, nó * hầu hết * trùng lặp với những gì tôi đã đăng (mặc dù có một số hữu ích đối với sự khác biệt trong câu trả lời của Siêu người dùng đó). Và, như một lưu ý phụ, không, tôi không sao chép câu trả lời đó -- tôi đã đưa ra câu trả lời của mình thông qua việc thực sự hiểu quy trình và tôi đảm bảo kiểm tra từng bước trong câu trả lời của mình để đảm bảo rằng nó áp dụng cho *điều này* cụ thể câu hỏi đúng cách. Mặc dù vậy, nhìn lại, câu trả lời của tôi có thể được đơn giản hóa.
PeterG avatar
lá cờ de
Xin chào, cảm ơn những nhận xét của bạn mà tôi có thể chấp nhận ít nhiều, đồng thời cho rằng điều này là do trình độ mới bắt đầu của tôi. Tuy nhiên, tôi không biết tại sao các giải pháp trực tiếp cho những điều rõ ràng mà người khác bỏ lỡ có thể bị bỏ phiếu và những đóng góp cá nhân dài dòng lại vượt trội so với thông tin trực tiếp của nhà cung cấp về chủ đề (được gửi sau). Dù sao đi nữa, tôi muốn chia sẻ điều gì đó mà tôi có trải nghiệm mới mẻ, cũng như ghi công cho thế giới S.E. mạng tôi đã lấy cảm hứng rất nhiều lần cho đến nay. Tôn trọng kỹ năng và chiều sâu của bạn, tôi sẽ không đạt được điều đó khi cuộc sống đơn giản diễn ra. Chúc bạn vui vẻ!

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.