dbwebb-se / python

Coursematerial for python
Other
34 stars 31 forks source link

Kända fel och lösningar #44

Open AndreasArne opened 3 years ago

AndreasArne commented 3 years ago

Här samlar vi saker som brukar gå fel med verktyg och hur vi kan lösa dem.

Generellt

Windows

Mac

Borde inte vara relevant längre

AndreasArne commented 3 years ago

python3 går till windows default installation och ger permission denied

windows-python-error

Lösning

Alternativ 1 Sök på manage app execution aliases i windows. Inaktivera windows egna version av python.

image

Alternativ 2 Radera python3 i ...\AppData\local\Microsoft\WindowsApps\python3.

AndreasArne commented 3 years ago

FileNotFoundError: [WinError 3] cannot find path specified

image

Felet är troligen för att ni inte har installerat Python3 i terminalen utan använder en windows installation. Då klara inte python av sökvägarna som skapas i cygwin.

Lösning

Installera python3 i terminalen. T.ex. apt-cyg install python om ni använder Cygwin. Ni kanske också behöver avinstallera windows installationen av Python.

AreonL commented 3 years ago

Realpath: command not found | No such file or directory

$ dbwebb test plane
../python/.dbwebb/test/run.d.bash: line 79: realpath: command not found
../python/.dbwebb/test/run.d.bash: line 81: : No such file or directory

Felet är för MacOS som inte har realpath / coreutils installerat

Lösning Snabb lösningen är brew install coreutils i MacOS terminalen checka så den är installerad med realpath --version

AndreasArne commented 3 years ago

certificate is not trusted

Det går inte att ladda ner saker med wget utan får följande fel.

...
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 185.199.108.133, 185.199.109.133, 185.199.110.133, ...
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|185.199.108.133|:443... connected.
ERROR: The certificate of ‘raw.githubusercontent.com’ is not trusted.
ERROR: The certificate of ‘raw.githubusercontent.com’ doesn't have a known issuer.

Lösning 1

Antivirus program blockerar certifikatet. Pause/stäng av antivirusprogrammet och försök igen.

Lösning 2

Något paket är utdaterat i terminalen.

Kör sudo apt upgrade.

AndreasArne commented 3 years ago

VSCode hittar inte python i cygwin

image

Lösning

VI tackar DirtyBits i Discord för utförlig lösning.

AndreasArne commented 3 years ago

Pylint kan inte skapa cache filer

unable to create directory "/home/saxxon/students/<year>/<akrn>/.cache/.pylint"
unable to create file"/home/saxxon/students/<year>/<akrn>/.cache/.pylint/<file>.stats"
[Errno 2] No such file or directory: "/home/saxxon/students/<year>/<akrn>/.cache/.pylint/<file>.stats"

Lösning

Logga in på studentservern och skapa mapparna .cache och .cache/pylint.

dbwebb login
mkdir .cache
mkdir .cache/pylint
exit
AndreasArne commented 2 years ago

Failed to update course repo

dbwebb update ger följande fel.

Update course-repo with latest changes from its master at GitHub.
error: cannot pull with rebase: You have unstaged changes.
error: please commit or stash them.
FAILED to update course repo.

Lösning

Felet betyder att du har ändrat i några av filerna utanför me-mappen. Använd kommanfot git status för att kolla vilka filer som är ändrade på. Ett exempel på hur det kan se ut:

On branch master
Your branch is up to date with 'origin/master'.

Changes not staged for commit:
  (use "git add/rm <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

    deleted:    example/marvin/words.txt
    deleted:    example/module_lecture/debug.log

no changes added to commit (use "git add" and/or "git commit -a")

Här betyder det att två filer har blivit raderade. Kolla igen din egna utskrift och notera om du har ändrat i någon fil och fill behålla den ändringen. Filer som du vill behålla ändringen i behöver du kopiera in i me-mappen.

När du har sparat undan din saker kör vi nästa kommando som kommer återställa alla ändrade filer. Kör kommandot (glöm inte punkten på slutet i kommandot):

Stå i python mappen när du kör kommandot.

git checkout .

Kör git status igen kolla att inte några filer är ändrade på längre. Det ska se ut så här:

On branch master
Your branch is up to date with 'origin/master'.

nothing to commit, working tree clean

Nu kan du köra dbwebb update igen och det ska fungera.

AndreasArne commented 1 year ago

VS Code Server for WSL closed unexpectedly

Du får detta felet i VSCode.

image

Lösning

Vi har två olika lösningar.

Lösning 1

Stäng ner VSCode, öppna cmd och exekvera wsl --shutdown. Nu kan du starta VSCode igen och förhoppningsvis är felet borta. Om detta inte funkade, testa lösning 2.

Lösning 2

I VSCode avinstallera wsl pluginet som vi har installerat när vi satte upp labbmiljön. Öppna sen wsl/ubuntu terminalen (inte i VSCode) och kör rm -rf ~/.vscode-server. Nu kan du starta VSCode igen och installera pluginet som du avinstallerade.

AndreasArne commented 1 year ago

Använder root som användare i WSL/Ubuntu

När du startar WSL/Ubuntu står det root på kommando raden. bild

Att använda root som en vanlig användare kan ställa till med problem ibland. Därför behöver vi skapa en ny användare som har färre rättigheter.

Lösning

Starta WSL/Ubuntu och skapa en ny användare med useradd -m -s /bin/bash <ditt användarnamn>. Byt ut "<ditt användarnamn>" med vad du vill att din användare ska heta.

Nu behöver du välja ett lösenord till din användare, skriv passwd <ditt användarnamn>. Gör så att din användare kan få admin/sudo rättigheter med kommandot usermod -aG sudo <ditt användarnamn>.

Sen behöver du ändra så att din nya användare används automatiskt när vi loggar in.

Stäng ner WSL/Ubuntu terminalen. Starta cmd terminalen och skriv wsl --shutdown och wsl --exec config --default-user <ditt användarnamn>, igen byt ut <ditt användarnamn> mot vad ditt användarnamn är. Om ovanstående inte fungerar följ Method 1 - /etc/wsl.conf i detta svaret: https://superuser.com/a/1627461

Starta nu WSL/Ubuntu terminalen och då ska du vara inloggad som din nya användare. På bilden blir jag inloggad som min användare zeldah istället för root, vilket vi vill.

bild

Om det inte går att öppna code . i terminalen efteråt. Testa att installera en äldre version av WSL pluginet.

AndreasArne commented 1 year ago

Error: 0x80370114 The operation could not be started because a required feature is not installed

För att kunna installera WSL behöver vi aktivera den funktionaliteten i Windows.

Lösning

Om det fortfarande inte funkar, försök med nedanstående.

AndreasArne commented 1 year ago

Error : 0x80004002 - No such interface supported

Vi tror att felet beror på att man har en äldre version av WSL.

Lösning

Uppdatera wsl genom att starta Powershell som administratör och kör kommandot wsl --update. Starta ett nytt powershell fönster inte som adrministratör och försök installera wsl och ubuntu igen. Om du får samma fel igen kör följande kommando i powershell terminalen som är administratör.

Get-AppxPackage |? { $_.Name -like "*WindowsSubsystemforLinux*" }
Remove-AppxPackage -Package MicrosoftCorporationII.WindowsSubsystemForLinux_1.2.5.0_x64__8wekyb3d8bbwe

Försök installera igen i nytt powershell fönster som inte är admin.

AndreasArne commented 1 year ago

Failed to attach disk, ERROR_FILE_NOT_FOUND

När vi kör wsl --install får vi följande fel: image

Vi får felet för att vi kör kommandot i en terminal som är startad som administratör.

Lösning

Stäng ner terminalen (cmd/powershell) och starta en ny, inte som administratör. Kör kommandot , wsl --install igen.

AndreasArne commented 1 year ago

Error : 0x80370102 - Enable virtualization i BIOS

WSL bygger på virtualizering och den tekniken är inte aktiverad på alla datorer.

Lösning

Gå in i BIOS och aktivera virtualizering. Microsoft har en bra guide på hur man gör https://support.microsoft.com/en-us/windows/enable-virtualization-on-windows-11-pcs-c5578302-6e43-4b4b-a449-8ced115f58e1.

AndreasArne commented 10 months ago

Thonny debuggern kan inte hantera Exception

När vi debuggar kod som lyfter ett exception jraschar debuggern med följande fel.

ERROR   thonny.backend: Exception in _trace
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/thonny/plugins/cpython/cpython_backend.py", line 1787, in _trace
    return self._trace_and_catch(frame, event, arg)
  File "/usr/lib/python3/dist-packages/thonny/plugins/cpython/cpython_backend.py", line 1862, in _trace_and_catch
    assert last_custom_frame.event.startswith("before_")
AssertionError

Det exceptions som lyfts är för snabbt för debugger. Den hänger inte med på något sätt.

Lösning

Ändra till en snabbare debugger.

Gå till "tools" -> "options" -> "run & debug" och ändra preferred debugger till "faster".

AndreasArne commented 1 week ago

install: illegal option --

När man installerar dbwebb-cli steg för steg på Mac kan man få ovanstående fel.

Lösning

Installera coreutils med kommandot brew install coreutils. Testa installera dbwebb-cli igen.

Om du fortfarande får samma fel, i installerings kommandot byt ut ordet install mot ginstall, sudo ginstall --mode=0755 -D dbwebb /usr/local/bin/dbwebb. Nu borde det gå att installera