Få adgang til en delt Windows 11-mappe fra Ubuntu 26.04 LTS – kun via kommandolinjen
Hvis du har en mappe delt fra en Windows 11-maskine, kan Ubuntu få adgang til den via SMB/CIFS.
I denne guide monterer vi en delt Windows-mappe på Ubuntu 26.04 LTS, så den opfører sig næsten som en almindelig lokal mappe.
Hele Ubuntu-delen udføres fra kommandolinjen.
Opsætningen kommer til at se sådan ud:
Windows 11
C:\Deling
|
| SMB
|
v
\\192.168.1.100\Deling
|
| CIFS
|
v
Ubuntu 26.04 LTS
/mnt/windowsdeling
Canonical dokumenterer cifs-utils som standardmetoden til at montere SMB/CIFS-shares fra Windows eller Samba-servere på Ubuntu. (documentation.ubuntu.com)
Forudsætninger
Vi tager i eksemplet udgangspunkt i følgende:
Windows 11-computerens IP-adresse:
192.168.1.100
Windows-brugeren:
casper
Navnet på det delte Windows-share:
Deling
På Ubuntu monterer vi det under:
/mnt/windowsdeling
Erstat værdierne med dem, der passer til dit eget netværk.
1. Kontroller forbindelsen til Windows-maskinen
Start Terminal på Ubuntu.
Kontroller først, at Windows-maskinen kan nås:
ping 192.168.1.100
Stop ping med:
Ctrl+C
Hvis Windows-maskinen svarer, ved vi, at der grundlæggende er IP-forbindelse mellem maskinerne.
Bemærk dog, at manglende ping-svar ikke nødvendigvis betyder, at SMB ikke virker. Windows Firewall kan være konfigureret til at blokere ICMP Echo Request.
2. Opdater pakkelisten
Kør:
sudo apt update
3. Installer CIFS-værktøjerne
Ubuntu bruger Linux-kernens CIFS-driver sammen med pakken cifs-utils til at montere Windows SMB-shares.
Installer pakken:
sudo apt install cifs-utils
Canonical angiver netop cifs-utils som den nødvendige pakke til CIFS-mounts. (documentation.ubuntu.com)
Du kan kontrollere, at værktøjet findes:
mount.cifs -V
4. Opret et mount point
Linux skal have en lokal mappe, hvor Windows-sharet monteres.
Opret:
sudo mkdir -p /mnt/windowsdeling
Mappen er i første omgang tom.
Kontroller:
ls -l /mnt/windowsdeling
5. Test adgang til Windows-sharet
Windows-sharet har UNC-navnet:
\\192.168.1.100\Deling
Linux bruger i stedet denne notation:
//192.168.1.100/Deling
Monter sharet med:
sudo mount -t cifs //192.168.1.100/Deling /mnt/windowsdeling -o username=casper
Du bliver herefter bedt om Windows-brugerens password:
Password for casper@//192.168.1.100/Deling:
Indtast passwordet.
Passwordet vises normalt ikke på skærmen, mens du skriver.
Canonical viser samme grundlæggende syntaks til CIFS-mounts:
mount -t cifs //server/share mountpoint
6. Kontroller at Windows-mappen er monteret
Kør:
mount | grep cifs
Du bør kunne se noget i stil med:
//192.168.1.100/Deling on /mnt/windowsdeling type cifs
Du kan også bruge:
df -hT | grep cifs
7. Vis filerne fra Windows
Nu kan du bruge almindelige Linux-kommandoer.
Kør:
ls -la /mnt/windowsdeling
Hvis Windows-mappen eksempelvis indeholder:
test.txt
rapport.pdf
billeder
vil filerne nu være synlige direkte fra Ubuntu.
8. Læs en fil fra Windows
Hvis mappen indeholder filen:
test.txt
kan den læses med:
cat /mnt/windowsdeling/test.txt
Ubuntu læser nu filen direkte fra Windows-maskinen via SMB.
9. Gå ind i Windows-mappen
Du kan også behandle sharet som en almindelig Linux-mappe:
cd /mnt/windowsdeling
Vis indholdet:
ls
Kontroller din aktuelle placering:
pwd
Resultatet vil være:
/mnt/windowsdeling
10. Test om du har skriverettigheder
Hvis Windows-sharet giver din Windows-bruger skriverettigheder, kan du oprette en fil fra Ubuntu:
echo "Denne fil er oprettet fra Ubuntu" | sudo tee /mnt/windowsdeling/ubuntu-test.txt
Kontroller:
ls -l /mnt/windowsdeling
Filen:
ubuntu-test.txt
bør derefter også være synlig på Windows-maskinen.
Hvis du får:
Permission denied
skyldes det typisk, at Windows-brugeren ikke har de nødvendige Share- eller NTFS-rettigheder.
Den effektive Windows-adgang afhænger både af share permissions og de underliggende filsystemrettigheder.
11. Afmonter Windows-sharet
Når forbindelsen ikke længere skal bruges:
cd ~
Afmonter derefter:
sudo umount /mnt/windowsdeling
Kontroller:
mount | grep cifs
Hvis der ikke kommer noget output, er sharet ikke længere monteret.
12. Monter det igen
Du kan altid forbinde igen med:
sudo mount -t cifs //192.168.1.100/Deling /mnt/windowsdeling -o username=casper
Men hvis sharet bruges ofte, er det mere praktisk at konfigurere automatisk mount.
13. Opret en credentials-fil
Det er en dårlig idé at skrive Windows-passwordet direkte i /etc/fstab.
Canonical anbefaler i stedet en separat credentials-fil, som beskyttes med filrettigheder. (documentation.ubuntu.com)
Opret eksempelvis:
sudo mkdir -p /etc/samba
Opret derefter filen:
sudo tee /etc/samba/windows-credentials > /dev/null <<'EOF'
username=casper
password=DIT_WINDOWS_PASSWORD
EOF
Erstat:
DIT_WINDOWS_PASSWORD
med Windows-brugerens rigtige password.
14. Beskyt credentials-filen
Det er meget vigtigt, at almindelige brugere ikke kan læse passwordet.
Kør:
sudo chmod 600 /etc/samba/windows-credentials
Kontroller:
sudo ls -l /etc/samba/windows-credentials
Det bør ligne:
-rw------- 1 root root ...
Kun root kan dermed læse eller ændre filen.
Credentials-filer understøttes direkte af mount.cifs og er den anbefalede metode frem for at placere passwordet direkte i /etc/fstab. (documentation.ubuntu.com)
15. Find din Ubuntu-brugers UID og GID
Find din bruger-ID:
id
Du vil eksempelvis se:
uid=1000(casper) gid=1000(casper)
Her er både UID og GID:
1000
Disse værdier kan bruges til at få filerne på det monterede Windows-share til at fremstå som ejet af din normale Ubuntu-bruger.
16. Test mount med credentials-filen
Afmonter først eventuelt eksisterende mount:
sudo umount /mnt/windowsdeling
Monter derefter med credentials-filen:
sudo mount -t cifs //192.168.1.100/Deling /mnt/windowsdeling \
-o credentials=/etc/samba/windows-credentials,uid=1000,gid=1000
Der spørges nu ikke om password.
Kontroller:
ls -la /mnt/windowsdeling
Canonical dokumenterer både credentials= samt brug af uid til CIFS-mounts. (documentation.ubuntu.com)
17. Monter automatisk ved hjælp af /etc/fstab
Hvis Windows-sharet skal være tilgængeligt permanent, kan det tilføjes til:
/etc/fstab
Lav først en backup:
sudo cp /etc/fstab /etc/fstab.backup
Tilføj derefter følgende linje:
echo '//192.168.1.100/Deling /mnt/windowsdeling cifs credentials=/etc/samba/windows-credentials,uid=1000,gid=1000,_netdev 0 0' | sudo tee -a /etc/fstab
Resultatet i /etc/fstab bliver:
//192.168.1.100/Deling /mnt/windowsdeling cifs credentials=/etc/samba/windows-credentials,uid=1000,gid=1000,_netdev 0 0
_netdev fortæller systemet, at der er tale om et netværksbaseret filsystem.
18. Test /etc/fstab
Du bør altid teste konfigurationen, før maskinen genstartes.
Afmonter først:
sudo umount /mnt/windowsdeling
Kør derefter:
sudo mount -a
Hvis kommandoen ikke giver fejl, kontroller:
mount | grep windowsdeling
eller:
ls /mnt/windowsdeling
Hvis filerne er synlige, virker konfigurationen.
19. Brug automount hvis Windows-maskinen ikke altid er tændt
Hvis Windows-pc’en eksempelvis er en almindelig desktop-pc, som ikke altid er tændt, kan det være uhensigtsmæssigt at forsøge at montere sharet ved hvert Ubuntu-boot.
En mere robust /etc/fstab-linje er derfor:
//192.168.1.100/Deling /mnt/windowsdeling cifs credentials=/etc/samba/windows-credentials,uid=1000,gid=1000,_netdev,nofail,x-systemd.automount 0 0
Her betyder:
_netdev
at mountet kræver netværk.
nofail
betyder, at Ubuntu fortsat kan starte, selv om Windows-maskinen ikke kan kontaktes.
x-systemd.automount
betyder, at systemd kan montere sharet, når mappen faktisk tilgås.
Det er ofte en bedre løsning til klientmaskiner, hvor den eksterne Windows-pc ikke nødvendigvis er online hele tiden.
20. Fejlfinding
Kan Ubuntu nå Windows-maskinen?
ping 192.168.1.100
Er TCP-port 445 tilgængelig?
Hvis nc er installeret:
nc -vz 192.168.1.100 445
SMB over TCP bruger normalt TCP port 445.
Er CIFS-sharet monteret?
mount | grep cifs
Se kernel-fejl fra CIFS
Hvis et mount fejler:
sudo dmesg | tail -30
eller:
sudo journalctl -k -n 30
CIFS-driveren kan her give mere detaljerede oplysninger om eksempelvis authentication eller protocol negotiation.
Forkert brugernavn eller password
Kontroller filen:
sudo cat /etc/samba/windows-credentials
Den skal have formatet:
username=casper
password=DIT_PASSWORD
og være beskyttet med:
sudo chmod 600 /etc/samba/windows-credentials
Windows-share kan ikke findes
Kontroller, at share-navnet er korrekt.
Hvis Windows viser:
\\192.168.1.100\Deling
skal Linux bruge:
//192.168.1.100/Deling
Bemærk forskellen på \ i Windows UNC-path og / i Linux-kommandoen.
Kommandoerne samlet
Installer CIFS:
sudo apt update
sudo apt install cifs-utils
Opret mount point:
sudo mkdir -p /mnt/windowsdeling
Manuel forbindelse:
sudo mount -t cifs //192.168.1.100/Deling /mnt/windowsdeling -o username=casper
Vis filerne:
ls -la /mnt/windowsdeling
Afmonter:
sudo umount /mnt/windowsdeling
Opret credentials-fil:
sudo mkdir -p /etc/samba
sudo tee /etc/samba/windows-credentials > /dev/null <<'EOF'
username=casper
password=DIT_WINDOWS_PASSWORD
EOF
sudo chmod 600 /etc/samba/windows-credentials
Permanent mount i /etc/fstab:
//192.168.1.100/Deling /mnt/windowsdeling cifs credentials=/etc/samba/windows-credentials,uid=1000,gid=1000,_netdev,nofail,x-systemd.automount 0 0
Test konfigurationen:
sudo mount -a
Kontroller:
ls /mnt/windowsdeling
Hvad har vi opnået?
Ubuntu-maskinen kan nu få adgang til en delt mappe på Windows 11 via SMB:
Windows 11
\\192.168.1.100\Deling
|
| SMB / TCP 445
|
v
Linux CIFS client
|
v
/mnt/windowsdeling
|
v
Ubuntu-programmer og kommandoer
Filer på Windows-share’et kan dermed bruges fra Ubuntu næsten på samme måde som filer på et lokalt filsystem.
Samtidig har øvelsen arbejdet med flere centrale Linux- og netværksbegreber:
- SMB/CIFS
- UNC-paths
- mount points
mountogumount- Linux UID/GID
- credentials-filer
- filrettigheder
/etc/fstab- systemd automount
- TCP port 445
Det gør øvelsen velegnet til undervisning i både Linux, operativsystemer og grundlæggende netværksadministration.