Alle brukere har minst en gang glemt passord til nettsteder, sosiale nettverk som de ikke har brukt på lenge. En lignende situasjon kan skje med en Linux-distribusjon. Det er ikke vanskelig å glemme det, spesielt hvis det er mange forskjellige distribusjoner med forskjellige passord. La oss nå snakke om hva du skal gjøre hvis du har glemt Linux-passordet ditt, hvordan du tilbakestiller det riktig og ikke sletter dataene dine. Å tilbakestille et Linux-passord er ikke en veldig vanskelig oppgave. Men det bør gjøres klart at du ikke kan finne ut passordet ditt, du kan bare tilbakestille det.
For å tilbakestille passordet må du bevæpne deg med en LiveCD-plate med hvilken som helst Linux-distribusjon, det er bare viktig å matche bitkapasiteten til systemet som skal gjenopprettes og systemet på platen. Det er best å ta de nyeste versjonene av distribusjoner. De er mer praktiske å jobbe med, selv om selv Gentoo og ArchLinux vil gjøre det.
Deretter starter du opp fra LiveCD-platen og åpner terminalen. Hvis platen starter opp i et kommandoskall uten et grafisk grensesnitt, er det greit. Du må vite på hvilken harddisk rotfilsystemet til distribusjonen du skal installere, befinner seg. Du kan vise alle tilgjengelige disker med kommandoen:
$ fdisk -l
Som regel starter disknavnet med bokstavene sd for vanlige disker og nvme for M.2 SSD-er. Rotpartisjonen er liten hvis det ble allokert en egen partisjon for hjemmemappen under installasjonen, og den har et Linux-filsystem. Hvis det ikke ble opprettet en egen partisjon for oppstartslasteren, vil rotpartisjonen også være merket med en stjerne som oppstartbar. Dette er for eksempel /dev/nvme0n1p1
. Den skal være montert på /mnt
:
$ mount /dev/nvme0n1p1 /mnt/
Så vi kan se /dev/nvme0n1p1 - partisjonen der systemet ble installert. Det kan like gjerne være /dev/sda1
eller /dev/sdb5
. Gå deretter inn i chroot-miljøet:
$ chroot /mnt /bin/bash
Vi befinner oss nå i miljøet til distribusjonen som er installert på den monterte disken. Dette er en slik variant av gjenopprettingsmodus uten å starte operativsystemet.
Deretter kan brukeren angi passordet til root linux-brukeren ved hjelp av passwd-kommandoen
:
$ passwd root
Det kan hende at verktøyet gir en feilmelding, men hvis det ikke gir noen feil, har passordet blitt oppdatert, og du kan bruke systemet.
Det finnes en annen måte. Passordene til alle brukere lagres i filen /etc/shadow
på denne måten:
user_name:encrypted password:user_id:group id_id
For eksempel:
root:AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:0:0:::::
bin:!!:9797:0:::::
daemon:!!:9797:0:::::
For hver oppføring er alle parametere atskilt med kolon, den første parameteren (root) er brukernavnet, den andre parameteren (AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...) er passordhash. For å endre passordet til ønsket passord, må du først opprette hashen manuelt. For å gjøre dette kan du bruke denne kommandoen:
$ openssl passwd -1 -salt xyz new_password
Lim den deretter inn i stedet for den forrige:
$ vi /etc/passwd
Det er ikke mulig å fjerne Linux-passordet helt, uten passordet vil du ikke kunne autorisere deg selv i systemet, så det beste alternativet er å erstatte det med et nytt. Når du har erstattet det, lagrer du endringene, og du er ferdig. Før du starter på nytt, ikke glem å avslutte chroot og avmontere roten til systemet:
$ exit
$ umount /mnt
Hvis du ikke har en diskett tilgjengelig, kan du bruke Grub til dette formålet. I menyen for oppstartsalternativer trykker du på E for å redigere kjerneparametrene:
Her må du legge til parameteren init=/bin/bash
i linjen vmlinuz etter alle parametere (se skjermbilde):
Trykk Ctrl+D
for å fortsette oppstarten. Etter at initialiseringen er fullført, vil kjernen sende kontrollen til kommandoen bash shell som vi sendte i kjerneparametrene, der du kan gjenopprette passordet. Som standard er filsystemet montert i skrivebeskyttet modus, og for å kunne endre noe som helst må du montere det på nytt for skriving:
$ exit
$ umount /mnt
Alle andre handlinger med /etc/shadow-filen
er lik det første punktet.