Puncte:1

Nu se poate șterge un fișier pe WSL Ubuntu 20.02.2

drapel ru

Acest lucru este probabil cauzat de închiderea WSL atunci când procesul de ștergere nu este finalizat. Și acum vreau să șterg acest fișier.


ls -lba scoateți acest lucru

root@A12581:/HelloWorld/android-kernel/.repo/projects/prebuilts/boot-artifacts.git# ls -lba
ls: nu poate accesa „.repo_config.json”: nu există un astfel de fișier sau director
total 0
drwxr-xr-x 1 rădăcină rădăcină 4096 28 ian 09:27 .
drwxr-xr-x 1 rădăcină rădăcină 4096 27 ian 15:56 ..
-????????? ? ? ? ? ? .repo_config.json

dar nu pot șterge acest fișier / șterge folderul care conține acest fișier / redenumește folderul care conține acest fișier


mediul meu:

WSL1

Ubuntu 20.04.2 LTS

drapel in
Acesta este de obicei un semn al coruperii sistemului de fișiere. Din păcate, WSL1 nu are un mecanism de reparare a indicilor de fișiere. Poate doriți să vă faceți o favoare și să reconstruiți containerul... poate cu WSL2.
Nate T avatar
drapel it
Mesajul de eroare spune că fișierul nu există. Verificați pentru a vă asigura că calea există și că se află în sistemul dvs. de fișiere wsl. Cel mai probabil, fie ați avut o greșeală de scriere în calea fișierului, fie fișierul se află în afara sistemului de fișiere WSL (de exemplu, este pe unitatea Windows). Amintiți-vă, wsl acționează asupra resurselor din sistemul de fișiere wsl, care este de obicei creat împreună cu unitatea dvs. C și adesea pe o unitate complet diferită.
NotTheDr01ds avatar
drapel vn
Ați făcut vreodată progres în acest sens? O problemă similară a apărut astăzi pe stiva Unix și Linux.
user16387400 avatar
drapel ru
@NotTheDr01ds îmi pare rău să spun, dar se pare că nu există altă cale decât să faci o copie de rezervă și să reinstalezi întregul sistem
Puncte:0
drapel vn

@matigo este probabil corect cu comentariul privind corupția sistemului de fișiere. De asemenea, sunt de acord că utilizarea WSL2 a ext4 este aproape sigur mai robustă dacă se potrivește nevoilor dvs.

Dacă nu ați făcut-o deja, faceți a wsl --oprire (de la PowerShell) pentru a vă asigura că toate mânerele/lacătele sunt eliberate. Apoi reporniți și încercați din nou. Are o șansă relativ mică de a funcționa, dar merită încercat, deoarece este atât de rapid.

Dacă acest lucru nu funcționează, aș recomanda următoarele pentru a încerca să reparați instanța WSL1.

Practic, dus-întors instanța WSL1 printr-un wsl --export/wsl --import. The gudron dus-întors pe care le efectuează acest proces ar trebui să (sperăm) eliminați fișierul corupt la arhivare sau dezarhivare, unul sau altul.

Din PowerShell:

# Confirmați numele distribuției
wsl -l -v
# Numele distribuției poate fi „Ubuntu” sau „Ubuntu-20.04” - Ajustați următoarele linii în consecință:
wsl --oprire
cd ~\Documente
mkdir WSL\imagini
mkdir WSL\instanțe\UbuntuRecovery
wsl --export Ubuntu WSL\images\ubuntu.tar
wsl --import UbuntuRecovery WSL\instances\UbuntuRecovery WSL\images\ubuntu.tar --versiunea 1
wsl -d UbuntuRecovery

Vedeți dacă fișierul a dispărut sau poate fi șters în acea instanță nouă.

Dacă da, și dacă totul arată în regulă în noua instanță, atunci:

  • Setați numele de utilizator implicit în acea instanță prin a /etc/wsl.conf dosar per acest raspuns.
  • Ieși din instanță
  • Din nou, din PowerShell:
    wsl --terminate UbuntuRecovery
    wsl --set-default UbuntuRecovery
    

Noua instanță va fi implicită oricând wsl este rulat.

În cele din urmă, eliminați instanța originală coruptă cu:

wsl --unregister Ubuntu

Important: Acesta este un distructiv Operațiune. Asigurați-vă că totul funcționează conform intenției. Pe partea bună, am făcut deja o copie de rezervă...

De asemenea, puteți dezinstala „Aplicația” Ubuntu care a fost instalată din Magazin în acel moment.

Veți lansa prin wsl (dacă nu ați fost deja) sau Windows Terminal de la ubuntu.exe (sau ubuntu2004.exe) comanda va dispărea.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.