ssh

Sådan udføres Linux-kommandoer på Remote System via SSH?

Sådan udføres Linux-kommandoer på Remote System via SSH?

For at arbejde på det eksterne system skal du først logge på det system, udføre kommandoer for at udføre forskellige opgaver og derefter logge ud fra den session. Selv for at køre en enkelt kommando på et eksternt system skal du gennemgå alle trin. Mens du arbejder på de lokale og eksterne systemer side om side, skal du skifte mellem dem flere gange. At logge ind og ud fra et system flere gange kan være irriterende. Der skal være en måde, der giver dig mulighed for at udføre kommandoer på et eksternt system uden at logge ind på det.Heldigvis er der en måde, vi kan vise dig, hvordan du udfører kommandoer på et eksternt system via SSH direkte fra din lokale maskine.

Forudsætninger

Som forudsætning skal du have:

Bemærk: Kommandoerne nævnt i denne vejledning er blevet udført på Ubuntu 20.04 LTS-terminal (Focal Fossa), som kan åbnes via Ctrl + Alt + T-genvejen. De samme kommandoer gælder også for Linux Mint og Debian.

Udfør Linux-kommandoer på Remote System via SSH

For at udføre en kommando på et eksternt system fra dit lokale system skal du bruge følgende syntaks:

$ ssh

Hvor brugernavn er brugeren på fjernsystemet, værtsnavn / IP_Address er værtsnavnet eller IP-adressen på det eksterne system. Det Kommando / script er den kommando eller det script, du vil køre på det eksterne system.

Hvis SSH kører på en anden port end standardporten, skal du sørge for at nævne den ved hjælp af -p-flag som følger:

$ ssh -p

Udfør en enkelt kommando på det eksterne system

Lad os sige, at du skal finde værtsnavnet på fjernsystemet. I dette tilfælde vil den kommando, du skal køre på det lokale system, være:

$ ssh tin @ 192.168.72.148 værtsnavn

Nu bliver du bedt om at angive adgangskoden til fjernbrugeren. Indtast adgangskoden, og tryk på Enter.

I den følgende output er “mypc” værtsnavnet på det eksterne system.


Du kan også vedlægge kommandoen i et enkelt (") eller dobbelt inverteret komma (" ") som dette:

$ ssh tin @ 192.168.72.148 "værtsnavn"

Udfør flere kommandoer på Remote System

Hvis du har brug for at udføre flere kommandoer på fjernsystemet via SSH, skal du adskille dem ved hjælp af (;) eller (&&) og omslutte dem med inverterede kommaer (“”). Hvis du ikke placerer flere kommandoer i inverterede kommaer, udføres kun den første kommando på den eksterne maskine, og de andre kommandoer udføres på den lokale maskine.

$ ssh   “Kommando1 && kommando2”

eller

$ ssh   “Kommando1; kommando2 ”

Brug af && separatoren

Hvis du bruger separatoren (&&), kører den anden kommando kun, hvis den første kommando udføres med succes. For eksempel for at køre kommandoer “mkdir” og “ls” på det eksterne system skal du udstede følgende kommando på dit lokale system:

$ ssh -t tin @ 192.168.72.148 “Mkdir myfiles && ls”

Nu bliver du bedt om at angive adgangskoden til fjernbrugeren. Indtast adgangskoden, og tryk på Enter.

Følgende er output af de kommandoer, der udføres på et eksternt system. Den anden kommando “ls” udføres kun på fjernsystemet, hvis den første kommando “mkdir” lykkes.


Denne kommando er også nyttig, når du opgraderer systemet. Generelt udføres en systemopgradering efter en opdatering. Derfor kan du ved hjælp af ovenstående kommando få systemopgraderingen til at køre, hvis opdateringerne lykkes.

Bruger ; separator

Hvis du bruger separatoren (;), kører den anden kommando, uanset om den første kommando lykkedes eller ej. For eksempel for at køre kommandoer “værtsnavn” og “ip r” på fjernsystemet, skal du udstede følgende kommando på dit lokale system:

$ ssh tin @ 192.168.72.148 "værtsnavn ; ip r ”

Nu bliver du bedt om at angive adgangskoden til fjernbrugeren. Indtast adgangskoden, og tryk på Enter.

Følgende er output af de kommandoer, der udføres på et eksternt system. Den anden kommando "ip r" udføres, selvom den første kommando ikke lykkes.

Udfør kommando på eksternt system med Sudo-privilegier

Nogle kommandoer på Linux kræver forhøjede privilegier som at installere eller fjerne enhver software, at tilføje eller fjerne en bruger, ændre systemkonfigurationer osv. Når du udfører en kommando på fjernsystemerne, der kræver sudo-rettigheder, bliver du først bedt om adgangskoden til fjernbrugeren, og derefter bliver du bedt om sudo-adgangskoden for at udføre kommandoen.

For eksempel for at opdatere systemopbevaringssteder på det eksterne system skal du køre følgende kommando på dit lokale system:

$ ssh -t tin @ 192.168.72.148 “Sudo apt opdatering”

Følgende er output af kommandoen, der udføres på et eksternt system med forhøjede privilegier.


Bemærk: Derefter bruges -t-indstillingen her til kraftigt at tildele tty.

Udfør kommando på eksternt system, og gem dets output til lokalt system

Outputtet fra de kommandoer, der udføres på fjernsystemerne, kan også gemmes i det lokale system. For eksempel udfører følgende kommando ifconfig-kommandoen på fjernsystemet, og derefter gemmer den sin output i en fil med navnet ip.txt på den lokale maskines skrivebord.

$ ssh -t tin @ 192.168.72.148 “Ifconfig”> ~ / Desktop / ip.txt

Udfør lokalt script på eksternt system

Scriptet, der er placeret på det lokale system, kan også udføres på det eksterne system. Lad os forklare dette ved at oprette et script med navnet sample.sh i det lokale system.

$ sudo nano prøve.sh

Tilføj nedenstående linjer i scriptfilen:

#!/ bin / bash
dato
værtsnavn
IP-rute
ping -c 3 google.com

Gem nu og luk scriptet.


Nu for at udføre scripteksemplet.sh på fjernsystemet, udsted kommandoen nedenfor i Terminal:

$ ssh -t tin @ 192.168.72.148 'bash -s; < sample.sh

Her er output, efter at scriptet er udført på et eksternt system:


Det er alt der er ved det! I denne vejledning har vi vist dig, hvordan du udfører kommandoer på et eksternt system via SSH. Det gør det meget let at arbejde på fjernsystemet og sparer dig også for besværet med at logge ind og ud fra fjernsystemet flere gange.

Bedste spil at spille med håndsporing
Oculus Quest introducerede for nylig den gode idé om håndsporing uden controllere. Med et stadigt stigende antal spil og aktiviteter, der udfører supp...
Sådan vises OSD-overlay i fuldskærms Linux-apps og -spil
Afspilning af fuldskærmsspil eller brug af apps i distraktionsfri fuldskærmstilstand kan afskære dig fra relevante systemoplysninger, der er synlige i...
Top 5 spiloptagelseskort
Vi har alle set og elsket streaming af gameplay på YouTube. PewDiePie, Jakesepticye og Markiplier er kun nogle af de bedste spillere, der har tjent mi...