Hva er i et UNIX Sti?

UNIX er et multitasking operativsystem - et operativsystem som kan kjøre mer enn ett program om gangen - skrevet av Ken Thompson og Dennis Ritchie i 1969. UNIX holder kjørprogramfiler på mange forskjellige steder, og et UNIX banenavnet forteller operasjons hvor du skal lete når du ber om et bestemt program.

Absolutte og relative banenavn

En UNIX banenavn beskriver plasseringen av en fil eller katalog i et UNIX filsystem. Den banenavn består av en serie av katalognavn atskilt med skråstreker og avgrenset med kolon. En absolutt banenavn er et banenavn som starter med en skråstrek karakter og starter på den øverste katalogen på filsystemet, kjent som rotkatalogen. En relativ banenavn, på den annen side, ikke starter med en skråstrek og starter fra den gjeldende arbeidskatalog.

PATH variabel

En UNIX banenavn er definert av en miljøvariabel som heter "PATH", og du kan finne sin nåværende verdi ved å skrive "echo $ PATH" på UNIX shell ledeteksten. En UNIX banenavn inneholder vanligvis navnene på bare to eller tre kataloger, for eksempel "/ bin, / usr / bin" og "/ usr / local / bin." Økende antall kataloger i stien reduserer sannsynligheten for "kommandoen ikke funnet" -feil, men kan øke sannsynligheten for å aktivere en ondsinnet dataprogram som kalles en trojan.

program Utførelse

Når du ber om et bestemt program, UNIX shell - kommandoen programmeringsspråk som gir et grensesnitt til operativsystemet - kontrollerer om alle tegn i kommandoen er en skråstrek karakter. Hvis det er, antar shell kommandoen er en filsti og utfører det tilsvarende. Hvis ikke, prefiksene skallet kommandoen med det første katalognavn i søkebanen, etterfulgt av en skråstrek, og prøver å kjøre den. Skallet gjentar denne prosessen for hver katalog i banenavn og utfører den første tilsvarende program den finner.

forholdsregler

Trojanske hester er vanligvis introdusert til et UNIX-system av brukere, heller enn system ansatte, slik at brukerne beskytte seg ved å sette PATH nøye. For å redusere sannsynligheten for å aktivere en trojaner, kjøre alle programmer som ikke er et UNIX-system program ved å angi full, absolutt banenavn. Tilsvarende vil ikke inkludere kataloger som kan skrives til av alle i banenavn, hvis det er mulig. Hvis du må inkludere slike kataloger, sørg for at de følger kataloger som inneholder systemprogrammer i banenavn; tidligere oppføringer i stien går foran tidligere. Til slutt, ikke inkluderer katalogen "." i stien, som UNIX shell tolker det som gjeldende arbeidskatalog.