Filer og filsystemer i Linux

Like dokumenter
Filer i Linux og Bourne-again shell

Håndtering av filer og kataloger

Filsikkerhet i Linux

Filsystemet fra innsiden

Håndtering av filer og kataloger

Filer i Linux og Bourne-again shell

Filsystemet fra innsiden

Operativsystemer og nettverk

Generelt om permanent lagring og filsystemer

$ls -l $grep -i Olsen adresseliste.txt less #!/bin/sh $echo `ls` $chmod 755. Praktisk Linux. Grunnleggende skall kommandoer. Irene Ludvigsen Husa

Filterprogrammer og redirigering av I/O

Betinget eksekvering og logiske tester i shell

Linux distribusjoner

Filterprogrammer og redirigering av I/O

Oversikt. Beskrivelse Bash. 1 UNIX shell. 2 Kommandolinje som brukergrensesnitt. 3 Input og output. 4 Bash builtins. 5 Linux utilities.

Fjerninnlogging over Internett

Unix/Linux for litt viderekomne

Unix/Linux for litt viderekomne

Filer og kataloger, prosesser og jobber

EKSAMEN Innføring i Linux

Unix/Linux en annen måte å gjøre ting på

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring

EKSAMEN Innføring i Linux

Operativsystemer og nettverk

Håndtering av tekstfiler

Hva er en fil logisk sett?

Filhåndtering. Fysisk organisering av filer. Hva er en fil logisk sett? Eksempel: Post (record) orientert fil. Kjell Åge Bringsrud INF 103

Høgskoleni Østfold. Ny/utsatt EKSAMEN

Læringsmål og pensum. Oversikt. Systemprogramvare Operativsystemer Drivere og hjelpeprogrammer. To hovedtyper programvare

6105 Windows Server og datanett

6105 Windows Server og datanett

Håndtering av tekstfiler

Modul 01: introduksjon til linux

Innhold. Kommandoskallet i Linux

Kurset består av to relativt uavhengige deler. Foreleser: Hårek Haugerud, rom PS431

En harddisk består av et lite antall plater av et magnetisk materiale.

UNIX/Linux brukerveiledning

Høgskolen i Telemark Fakultet for allmennvitenskapelige fag

NSA mandag 4. oktober Brukerbehandling Systempolitikk Kontroll av resurser Om system logger Litt om cron og cfengine

6105 Windows Server og datanett

Nettverkstilgang - problemstilling

Oppgaver til forkurs i informatikk dag 1

Labbene skal være oppsatt med dual boot. Disse labene er satt opp med dual boot, dvs. at vi må velge Linux eller Windows under oppstart av maskin.

Datamaskinene ved Ifi (inkludert en kort intro til Unix/Linux)

Oppgaver til forkurs i informatikk dag 2

EKSAMEN. Dato: 7. desember 2016 Eksamenstid: 09:00 13:00

Høgskolen i Telemark Fakultet for allmennvitenskapelige fag

6105 Windows Server og datanett

1. Installasjon av Novell Netware 6 server

Linux forelesningsnotater. Hårek Haugerud TKD Høgskolen i Oslo og Akershus

EKSAMEN. Operativsystemer. 1. Læreboken "A Practical Guide to Red Hat Linux" av Mark Sobell 2. Maks. tre A-4 ark med selvskrevne notater.

Funksjonalitet og oppbygning av et OS (og litt mer om Linux)

Operativsystemer og grensesnitt

Hvordan jobber vi ved Ifi (inkludert en kort intro til Unix/Linux)

Generelt om operativsystemer

Linux-kommandolinje for nybegynnere. PVV-kurs

1 Diverse linuxtips. Innhold

Lynkurs i shellprogrammering under Linux

Nyttige Linux-kommandoer. Hvordan du kan jobbe mer effektivt Dag Langmyhr

Løsningsforslag til eksamen 24. november 2015

EKSAMEN. Om eksamensoppgavene. Vekting av oppgavene. Emnekode og -navn: ITF22515 Operativsystemer med Linux. Dato go tid: 7.12.

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring

Tildeling av minne til prosesser

Linux-programmer som bruker regulæruttrykk: grep, sed, awk

EKSAMEN. Operativsystemer. Kontroller at oppgaven er komplett før du begynner å besvare spørsmålene.

Oppgave 2: Gå til roten (/) av systemet. Finn minst tre forskjellige måter å gå tilbake til hjemmekatalogen din på.

Prøve- EKSAMEN. Operativsystemer med Linux

Høgskolen i Telemark Fakultet for allmennvitenskapelige fag

1. Introduksjon til operativsystemer

Om obligatoriske oppgave 2 Bakgrunn og tips

Harmonisert KS - ASAK Miljøstein AS

Svar: 1. "ls eller ls -l for lang utlisting, "ls -a" for å ta med skjulte filer 2. "ls t*" 3. "ls /etc/??.*"

En harddisk består av et lite antall plater av et magnetisk materiale.

D: Ingen trykte eller håndskrevne hjelpemiddel tillatt. Bestemt, enkel kalkulator tillatt.

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring

6105 Windows Server og datanett

6105 Windows Server og datanett

EKSAMENSFORSIDE Skriftlig eksamen med tilsyn

Veiledning i kryptering med Open PGP

6105 Windows Server og datanett Jon Kvisli, HSN Skriveradministrasjon - 1. Utskrift i nettverk

Definisjon av prosess

Beskrivelse for hvordan en kan digitalisere og importere musikk inn i Variations på TEST server EINER.UIB.NO (for installasjonen 17.

Nadine Pedersen GRIT Datamaskinen- kjenn din Mac

Dagens temaer. Kort repetisjon. Mer om cache (1) Mer om cache (2) Read hit. Read miss. Write hit. Hurtig minne. Cache

1 Diverse linuxtips. Innhold. 1.1 Klipp og lim med musen

6105 Windows Server og datanett

Symmetrisk En hemmelig nøkkel ( passord ) som brukes både ved kryptering og dekryptering.

Ny EKSAMEN. Operativsystemer og nettverk

Forkurs i informatikk - Onsdag

Tildeling av minne til prosesser

Flerveis søketrær og B-trær

Installasjonsveiledning for Ordnett Pluss

Dagens temaer. Fra kapittel 4 i Computer Organisation and Architecture. Kort om hurtigminne (RAM) Organisering av CPU: von Neuman-modellen

D: Ingen trykte eller håndskrevne hjelpemiddel tillatt. Bestemt, enkel kalkulator tillatt.

oppgavesett 4 INF1060 H15 Øystein Dale Hans Petter Taugbøl Kragset September 22, 2015 Institutt for informatikk, UiO

Installasjonsveiledning for Ordnett Pluss

Beskrivelse av elektronisk utveksling av anbudsgrunnlag for programanbud

TDT4110 Informasjonsteknologi grunnkurs: Kapittel 7 Filer og unntak ( exceptions ) Professor Alf Inge Wang Stipendiat Lars Bungum

Brukerveiledning for ArkN4

Temaer til terminalserverinstallasjon

Transkript:

Filer og filsystemer i Linux

Det globale filsystemet Alle Unix-lignende OS har et virtuelt filsystem som er globalt: Alle filer på hele systemet ser ut til å ligge i ett enkelt hierarkisk katalogtre Det er bare ett toppnivå (rotkatalogen) som kalles root og betegnes med '/' (tegnet slash ) Se innholdet av root: ls / eller tree L 1 / root kan ligge på et hvilket som helst device/hardwareenhet, inkludert RAM-disker og delte nettverksdisker Det globale filsystemet kan være satt sammen av flere mindre filsystemer på samme eller ulike device

Standard oppbygging av Linux filsystem Se f.eks. howtogeek.com for en gjennomgang av innholdet i toppnivåkatalogene i Linux

Montering (mount) av filsystemer Montering: Sette inn et nytt filsystem i det globale systemet. Gjøres ved oppstart/boot eller av sys.adm. Må angi katalogen i det globale katalogtreet der det nye filsystemet skal settes inn mountpoint Montering gjøres med kommandoen mount: mount t [type] [device] [dir] mount t vfat /dev/sdb1 /media/disk device er her en spesialfil som er et grensesnitt mot en device driver for f.eks. en disk eller CD-ROM Vanlige plug-ins som f.eks. minnepinner monteres automatisk for bruker når de kobles på, vanligvis med /media/brukernavn som mountpoint

df: Se alle filsystemene som er montert janh@freja:~$ df Filesystem 1K blocks Used Available Use% Mounted on rootfs 14705984 3183260 10775704 23% / udev 10240 0 10240 0% /dev tmpfs 406368 488 405880 1% /run /dev/disk/by uuid/a4c 14705984 3183260 10775704 23% / tmpfs 5120 0 5120 0% /run/lock tmpfs 1983860 0 1983860 0% /run/shm /dev/sda1 964500 67300 848204 8% /boot /dev/sda5 28834716 4420972 22949020 17% /var /dev/sdb1 309633052 270037040 23867576 92% /local /dev/sdc1 528444416 387502512 114098496 78% /files brage.hiof.no:/home 260075584 195796280 51172276 80% /home

Filbegrepet i Linux Tradisjonelt: En fil er en samling data/informasjon som utgjør en logisk enhet og som kan identifiseres entydig. I Linux: En fil er også en kilde hvor data kan leses fra eller (del av) et medium som data kan skrives til Gir fleksibilitet fordi alt er filer : Alle vanlige filer på disk Alle device (tastur, skjerm, mus, printer, porter..) representeres som en fil som angir grensesnittet for lesing og skriving mot device driveren Program i Linux kan derfor behandle lesing fra og utskrift til hva som helst på en enhetlig måte

Linux filtyper 1.Regulære filer (regular/ordinary files) Vanlige bruker-/systemfiler på disk/tape (data, program) 2.Kataloger (directory files) Inneholder en liste av filene (og underkatalogene) som ligger i denne katalogen muliggjør hierarkisk filsystem Lages og redigeres med bruk av Linux-kommandoer 3.Spesialfiler Block file device som leses/skrives i blokker via et buffer Character device file skriver/leser i en ustrukturert bytestrøm (Named) pipe file Buffer for FIFO-utveksling mellom prosesser Symbolic link file Lenke til en annen fil på systemet Socket file For kommunikasjon mellom prosesser

Se filtype: ls l * janh@janh laptop:~$ ls l total 44 rw r r 1 janh janh 39076 Sep 12 11:46 cc.jpg drwx 2 janh janh 4096 Sep 12 12:14 smuss - Regular file d Directory l c s Link Special file Socket p Named pipe b Block device * Eller ls F

inoder * En inode i Linux er datastrukturen som lagrer alle metadataene, unntatt filnavnet, om en fil i filsystemet Alle inodene ligger i en tabell som (oftest) har fast lengde, typisk én inode per 2-8 Kbytes med diskplass hvis inodetabellen er full er filsystemet fullt, selv om det er diskplass igjen (df i for å se antall inoder i filsystemene) inodenummeret til en fil er indeksen i inodetabellen Katalogfilene i Linux er lister som inneholder inodenummer og filnavn for hver fil i katalogen Linux-kommandoer som håndterer filer (og kataloger) finner filnavnet i katalogfilen og henter deretter informasjon om filen fra inodetabellen * inode er antagelig en forkortelse for index node

Innholdet i en inode (for regulære filer) Filstørrelse i antall bytes Device som filen ligger på Eier av filen, angitt som numerisk bruker-id (se man id) Filens brukergruppetilhørighet, angitt som numerisk gruppe-ud file mode: Et tall som angir filtype og hva slags tilgang (read/write/execute) hhv. filens eier, filens gruppe og alle andre har til filen Ytterligere informasjon om beskyttelse/restriksjoner på bruk og endring av filen Tidspunkter for siste endring av filen og av inoden for filen. Tidspunkt for siste gang filen ble brukt. Antallet link-filer som peker til denne inoden Adresse til blokkene der filen fysisk ligger lagret

stat: se innholdet i en inode janh@janh laptop:~$ stat test.java File: test.java Size: 399 Blocks: 8 IO Block: 4096 regular file Device: 801h/2049d Inode: 9182980 Links: 1 Access: (0775/ rwxrwxr x) Uid: ( 1000/ janh) Gid: ( 1000/ janh) Access: 2014 09 11 14:16:43.820309806 +0200 Modify: 2013 04 12 12:24:02.860470888 +0200 Change: 2014 08 25 23:01:48.297115849 +0200 Birth:

Absolutt: Stinavn (path names) i Linux /home/janh/musikk/cashmere_cat.mp3 Relativt (til stående katalog): musikk/cashmere_cat.mp3 Alle kataloger inneholder to spesialfiler (prøv ls a):. stående katalog.. forelderkatalogen cd [stinavn] bytt stående katalog pwd skriv ut stående katalog $PATH søkestien for shellet $HOME stien til brukers hjemmeområde

Filnavn i Linux Kan inneholde alle tegn untatt / og NULL-tegnet Lengde vanligvis opptil 255 tegn Ingen regler for extensions eller formatering Konvensjoner: Unngå whitespace Unngå spesialtegn for shell som $ * @! < > Unngå særtegn som f.eks. norske æ ø å Bruk: 0 9 a z A Z. _ Bruk i størst mulig grad små bokstaver

File name generation / expansion Kan angi samlinger med filnavn med spesialtegn/ jokernotasjon i shellet: * Matcher en vilkårlig tegnsekvens? Matcher et vilkårlig tegn [] Et av tegnene mellom firkantparantesene Eksempler: ls * ls a* ls a?.txt List alle filer i stående katalog Alle filnavn som begynner med a aa.txt ab.txt ac.txt a4.txt ls a[bc4].txt ab.txt ac.txt a4.txt

Håndtering av filer og kataloger ls se på innholdet av kataloger cp kopiere filer og kataloger mv flytte/omdøpe filer og kataloger rm slette (!) filer og kataloger rmdir slette tom katalog mkdir lage ny katalog

Beskyttelse og deling av filer Linux tilbyr filsikkerhet og fildeling på brukernivå Alle filer har en eier, som er en av de registrerte brukerne på systemet Alle brukerne tilhører en eller flere grupper av brukere, med ett eller flere gruppemedlemmer Alle filer har tilhørighet til en gruppe av brukere Tilgangsrettigheter settes separat for: u g o eier (user) gruppe (group) alle andre brukere (other)

Tilgang/rettigheter til filer og kataloger En bruker kan ha tre rettigheter til en fil: r Lesetilgang / read permission w Skrivetilgang / write permission x Kjøretilgang / execute permission For kataloger: r w x Kan liste filene i katalogen Kan lage, flytte og fjerne filer i katalogen Kan søke i katalogen etter data om filene * Mer presist: Tilgang til filenes inoder gjennom denne katalogfilen

Se på tilgangsrettighetene til en fil Rettigheter angis separat for eier (u), gruppen (g) og andre brukere (o): ls l a.cpp rwxr xr 1 janh janh 399 Apr 12 2013 a.cpp Angir at filtypen er regulærfil rwx Eier kan lese, skrive og kjøre filen r x Gruppen kan lese og kjøre filen, men ikke endre r Andre kan bare lese filen

Sette tilgangsrettighetene til en fil chmod change file mode janh@janh laptop:~$ ls l a.cpp rwxr xr 1 janh janh 0 Sep 12 14:56 a.cpp janh@janh laptop:~$ chmod o+x a.cpp janh@janh laptop:~$ ls l a.cpp rwxr xr x 1 janh janh 0 Sep 12 14:56 a.cpp janh@janh laptop:~$ chmod u w a.cpp janh@janh laptop:~$ ls l a.cpp r xr xr x 1 janh janh 0 Sep 12 14:56 a.cpp janh@janh laptop:~$ chmod oug+w a.cpp janh@janh laptop:~$ ls l a.cpp rwxrwxrwx 1 janh janh 0 Sep 12 14:56 a.cpp

file mode file mode er et oktalt tall der tre sifre brukes til å lagre rettighetene til brukerne: 1. siffer eier av filen u 2. siffer filens gruppe g 3. siffer andre brukere o Hver rettighet har en verdi: 4 read r 2 write w 1 execute x 0 ikke rettighet

Beregning av file mode Legger sammen rettighetene til brukerne og får et unikt tall for hver mulig kombinasjon av de tre rettighetene: 7 = 4+2+1 read/write/execute 6 = 4+2 read/write 5 = 4+1 read/execute 4 = 4 read 3 = 2+1 write/execute 2 = 2 write 1 = 1 execute

Bruk av chmod med file mode janh@janh laptop:~$ chmod 644 a.cpp janh@janh laptop:~$ ls l a.cpp rw r r 1 janh janh 0 Sep 12 14:56 a.cpp janh@janh laptop:~$ chmod 700 a.cpp janh@janh laptop:~$ ls l a.cpp rwx 1 janh janh 0 Sep 12 14:56 a.cpp janh@janh laptop:~$ chmod 521 a.cpp janh@janh laptop:~$ ls l a.cpp r x w x 1 janh janh 0 Sep 12 14:56 a.cpp janh@janh laptop:~$ chmod 400 a.cpp janh@janh laptop:~$ ls l a.cpp r 1 janh janh 0 Sep 12 14:56 a.cpp

Noen verktøy for arkivering/backup, komprimering og kryptering tar rsync Pakke filer og hele katalogtrær inn i en arkiv-/backupfil. Pakke opp igjen arkivfiler. Inkrementell backup av fil(systemer) gzip Komprimere filer (Lempel-Ziv koding) gunzip gpg Pakke opp igjen komprimerte filer GNU Privacy Guard, krypterer datafiler Det er vanlig å distribuere programvare for Linux som komprimerte tar-filer.