Dd - copy & convert kopioi dataa ”raakana” tiedostorajoista välittämättä poikkeuksellinen syntaksi: dd keyword=value [keyword=value...] tärkeimmät optiot:

Slides:



Advertisements
Samankaltaiset esitykset
Tietokoneen käyttöjärjestelmä
Advertisements

Wikispace jatkokurssi Jarmo Heikkinen Karoliina Kemppainen Satu Kylmänen.
Active directory.
IBM WebSphere Application Server Mediatekniikan Seminaari Mikko Matilainen.
© 2010 IBM Corporation1 Sisältö  Uusi sisältö luodaan aina sisällönhallinnassa –Uusi -> Sisältö –Tallenna nimellä olemasta olevasta sisällöstä  Tavallinen.
Redundant Array of Inexpensive Disks (RAID) Matti Hämäläinen.
CD-ROM-asema mikrossa
Kiintolevyn osiointi.
Tärkeämpää kuin arvaatkaan
Ubuntuun LAMP server sekä Samba tiedostonjako palvelu.
C:\RI400 hakemistosta valitaan ExcelPDFConverter ja klikataan sitä.
Vapaa Ohjelmisto.  Vapaa ohjelmisto on ohjelmisto jota voi käyttää, tutkia, muuttaa ja jakaa eteenpäin vapaasti.  FLOSS (Free / Libre Open Source Software)
Auli Jaakkola 1 Palkkatiedustelun tietomallin mukaisen tilastovastauksen luonti Tässä esimerkissä tiedosto tuotetaan excelistä csv-muotoon. 1.Oletetaan,
Tekstiasiakirjan kirjoittaminen
@ Leena Lahtinen OHJELMAN OSITTAMINEN LUOKKA ATTRIBUUTIT METODIT.
Siirräntäjärjestelmät. 2 w Siirräntäjärjestelmä Tiedostojärjestelmä ja siirräntä keskusmuistin ja oheislaitteiden välillä w Voidaan käsitellä hierarkkisina.
Kotus : Rakennepaja Ongelmana luettavuus ja editointi, kun nimittäjänä ovat UTF-8 ja XSLT Jack Rueter
Kotisivukoulutus Ohjeet alasivujen tekoon ja kuvien lisäämiseen © SVS Länsi-Suomi.
 Tärkeämpää kuin arvaatkaan 1. Et ole ehkä koskaan tarvinnut varmistuksia, mutta… …ennemmin tai myöhemmin se tapahtuu sinullekin. 2PowerPoint harjoitus.
13. Hyvä ohjelmointitapa (osa 1)
Vapaa aihe Kysymykset.
Käyttöjärjestelmien käynnistyminen
GNU-ohjelmointityökalut Jussi Raunio TI09OHJ
Virtuaalisointi.
Ossi Rönnberg & Atte Koste OH5
© 2010 IBM Corporation1 Sivustoalue  Internet sivu rakentuu sivustoalueista, jotka yleensä on jaoteltuna toiminnoittain osa-alueisiin.  Sivustoalueella.
4. Attribuutit 4.1. Sisällys Yleistä attribuuteista. Näkyvyys luokan sisällä ja ulkopuolelta. Attribuuttien arvojen käsittely aksessoreilla. 4.2.
@ Leena Lahtinen OHJELMAN OSITTAMINEN LUOKKA ATTRIBUUTIT METODIT.
XHTML-perusteita Teppo Räisänen
Johdetun luokan olion alustus tMyn1 Johdetun luokan olion alustus määrätyillä arvoilla Kun ohjelmassa esiintyy johdetun luokan olion määrittely, järjestelmä.
DNS ja DHCP palvelut Linuxissa
RAID Teemu Reisbacka.
Moodlen opetus, projekti- ja intrakäyttö samassa organisaatiossa Pauliina Veräväinen, TaY.
Samba - perustietoja Samba on ilmainen ”Open Source” –ohjelma (GNU GPL). Sitä on kehitetty vuodesta 1992 alkaen. Toimii mm. tiedosto- ja tulostuspalvelimena.
Windows 2000 Jukka Stranden Marko Suhonen Käyttöjärjestelmät Seminaari 2006.
Ti Lähiverkot - erikoistyökurssi RAID Timo Rauta 2007.
Lähiverkot -erikoistyökurssi Linux -työ Network File System 22.4 Jarkko Pulli.
MapInfon tiedostot TAB – Tiedosto, jonka avulla tietokanta avataan MapInfossa. Tiedostossa tietoja kentistä ja koordinaattijärjestelmästä. DAT, XLS. TXT.
PADS –ohjelmiston asetukset: Ohjeet kirjaston luontia ja ylläpitoa varten sekä varmuuskopiointi HUOM !!!! Kaikki piirilevysuunnittelu uudella PADS –versiolla.
Varmuuskopiot. Muistutus tosiseikoista Finaglen laki: –“Anything that can go wrong, will”
SharePoint2010 ATK-seminaari Totti Nykvist.
JOPOX Uusi hallinta / Lomaketyökalu. Uuden lomakkeen luonti Lomakkeen rakentaminen alkaa klikkaamalla auki Lomakkeet. Oletusarvoisesti oman joukkueesi.
UML-luokkakaavio ● Luokkakaavio (class diagram) kuvaa järjestelmän luokkarakennetta ● Mitä luokkia on olemassa ● Minkälaisia luokat ovat ● Luokkien suhteet.
OFFICE 365 PERUSTEET MATTI LÄHTEVÄNOJA, KUOPION KASVUN JA OPPIMISEN PALVELUALUE, KALLAVEDEN LUKIO.
Linux työpöydällä -kurssi. Kansiohierarkia ● Toisin kuin Windowsissa, Linuxissa (ja muissa POSIX-pohjaisissa järjestelmissä) ei ole C:, D: jne... asemia.
Sivuston luominen oppilasryhmän käyttöön Matti Lähtevänoja.
Pasi Tuominen MARC21 -tietuejoukkojen deduplikointi.
OFFICE 365 PERUSTEET MATTI LÄHTEVÄNOJA, KUOPION KASVUN JA OPPIMISEN PALVELUALUE, KALLAVEDEN LUKIO.
Kuvien siirto nettigalleriaan
Päällekkäisyys ja AFO-ontologia Tulevaisuus? YSO + AFO  KOKO?
Varmuuskopiointi: image
Onnistuneen tietovarastoprojektin edellytykset
Uusien tilojen ja laitteiston hankinta
DNS ja DHCP-palvelut linuxissa
Tietoturva internetissä

Tietoturva Tiedon turvaamisen ja suojaamisen menetelmät
Ministeriömuutokset ja PTJ-asioiden siirron tarve
Tärkeämpää kuin arvaatkaan
[Otsikko] Lorem ipsum dolor sit amet, consectetuer adipiscing elit maecenas porttitor congue massa fusce [Vaihda seuraavat nimet ja tittelit oikeisiin.
Tärkeämpää kuin arvaatkaan
14. Hyvä ohjelmointitapa.
THL – SÄHKÖINEN JULKAISEMINEN MÄÄRITTELYTYÖPAJA
ioctl #include <sys/ioctl.h> int ioctl(int d, int request, ...);
Samba Tuukka Toropainen.
Tärkeämpää kuin arvaatkaan
Kokeile uutta Celianetiä testiympäristössä
Tärkeämpää kuin arvaatkaan
CLT132 Tehtävät (viikko 4).
Tärkeämpää kuin arvaatkaan
Esityksen transkriptio:

dd - copy & convert kopioi dataa ”raakana” tiedostorajoista välittämättä poikkeuksellinen syntaksi: dd keyword=value [keyword=value...] tärkeimmät optiot: if=syöttötiedosto of=tulostiedosto bs=lohkokoko (tavuja); myös ibs=... ja obs=... count=lohkomäärä (syötteestä) skip=ohitettava lohkomäärä syötteestä seek=ohitettava lohkomäärä tulostiedostossa oflags=... (joukko kopiointiin vaikuttavia asetuksia) conv=... (joukko harvoin tarvittavia konversio- optioita, big-endian vs. little-endian jne)

Esimerkki: monen partition muutos Levyllä kolme partitiota, root, swap ja /home. Suurennettava root-partitiota, levyä jo suurennettu ts. levyn lopussa on riittävästi tyhjää. Poistetaan swap ja /home käytöstä muutetaan partitiotaulua siirretään /home'n sisältö uuteen paikkaan dd:llä (useana palana jos osittain päällekkäin vanhan kanssa!), bootataan suurennetaan root-tiedostojärjestelmä luodaan swap uusiksi päivitetään boot loader ja initramdisk. Hidasta, vaikeaa ja virhealtista - uudelleenasennus voi olla parempi idea. Jos tällaista joutuu tekemään, ennakkosuunnittelu on epäonnistunut.

LVM: Logical Volume Manager Ratkaisu levyjen partitiointiongelmaan Yhdistää joukon ”fyysisiä levyjä” (physical volumes, PV) levyryhmäksi (volume group, VG), josta sitten jaetaan ”loogisia levyjä” (logical volumes, LV) kuten partitioita PV:tä voi lisätä ja poistaa, LV:tä ja VG:tä voi luoda ja hävittää ja niiden kokoa muuttaa ”lennosta”, konetta boottaamatta snapshots, striping & mirroring (RAID), clustering Jotkin tiedostojärjestelmät (zfs, brtfs) tarjoavat itse osin samaa toiminnallisuutta mutta eivät korvaa LVM:ää täysin Samassa koneessa voi olla sekä LVM että sen ulkopuolisia tiedostojärjestelmiä (usein /boot sen ulkopuolella)

LVM: PV-VG-LV Physical volumes hda hdb hdc Volume groups vg00 Logical volumes / /usr /var swap /home (unused) PV:t voivat olla oikeita fyysisiä levyjä, partitioita, RAID-pakkoja, iSCSI-levyjakoja, kryptattuja tiedostoja... ”whatever looks like a disk”, myös erilaisia sekaisin LV:t eivät välttämättä fyysisesti yhtenäisiä vaan niiden osat voivat olla eri puolilla VG:tä Samassa VG:ssä levyt, joita halutaan käsitellä kokonaisuutena (varautua siirtämään kerralla toiseen koneeseen tms)

LVM-esimerkki: uusi VG Esimerkki uuden VG:n käyttöönotosta: Alustetaan fyysiset levyt: pvcreate /dev/vdb /dev/vdc Luodaan levyryhmä: vgcreate vg00 /dev/vdb /dev/vdc Luodaan loogisia levyjä: lvcreate --size 2G --name lvhome2 vg00 lvcreate -L 3G -n lvhome3 vg00 Luodaan LV:lle tiedostojärjestelmät ja mountataan ne: mkfs -t ext4 /dev/vg00/lvhome2 mkdir /home2; mount /dev/vg00/lvhome2 /home2 # sama home3:lle

LVM: laitepolut Loogisen levyn laitepolku on perinteisesti /dev/<volume group>/<logical volume> siis esim. /dev/vg00/lvhome Nykyisissä Linuxeissa suositaan polkua /dev/mapper/<volume group>-<logical volume> siis esim. /dev/mapper/vg00-lvhome ja sitä on syytä käyttää /etc/fstab'issa. ”oikea” polku on tyyliä /dev/dm-0, edelliset luodaan symbolisina linkkeinä siihen; dm-laitetta ei yleensä koskaan pitäisi käyttää suoraan VG:n nimet historiallisesti vg* ja LV:n lv*, nykyisin useimmin suoraan kuvaavia (esim. VG koneen nimi, LV ”usr” jne)

VG:n luonti ja hävittäminen vgcreate [options] nimi PV [PV...] vähintään yksi PV paljon optioita mutta harvoin tarpeen, mm. -- maxlogicalvolumes, --maxphysicalvolumes, -- physicalextentsize, --metadatacopies, --clustered... vgremove [options] VGnimi [VGnimi...] jos VG ei ole tyhjä, varoittaa ja pyytää vahvistusta mutta suostuu poistamaan kuitenkin; LV:t voi myös poistaa yksitellen ensin ainoa yleinen optio -f (--force) pvremove poistaa metadatan PV:ltä, harvoin tarpeen (yleensä vgreduce hoitaa)

VG:n koon muuttaminen vgextend [options] VGnimi PVpath vgreduce [options] VGpath [PVpath] poistettavan PV:n oltava tyhjä (ks. pvmove) -a|--all poistaa kaikki tyhjät PVt --removemissing poistaa kadonneet (fyysisesti poistetut/särkyneet) PVt pvmove [options] sourcePVpath [destPVpath [destPVpath...]] siirtää PV:n sisällön vapaaseen paikkaan tai nimettyihin PV:hen -n LVname siirtää vain nimetyn LV:n sisällön toimii taustalla, ei estä samanaikaista käyttöä (hidastaa kyllä) voi keskeyttää (vaikka bootata), jatkuu automaattisesti pvresize [--setphysicalvolumesize koko] PVPath [PVPath...] Muuttaa PV:n koon (oletuksena maksimiin) vgmerge VG1 VG2 yhdistää VG2:n VG1:een; VG2 ei saa olla aktiivinen

VG:n siirtäminen vgexport [-a|--all] VGName [VGName...] poistaa VG:n määrittelyn järjestelmästä siirtoa varten vgimport [-a|--all] VGname [VGname...] palauttaa VG:n määrittelyn ts. ottaa sen käyttöön (mahdollisesti eri) järjestelmään vgscan etsii kaikilta levyiltä PV:t ja VG:t, usein tarpeen levyjen (PV:den) siirron jälkeen; vrt. myös pvscan, lvmdiskscan (eivät yleensä tarpeen) vgrename OldVG NewVG samassa koneessa ei saa olla kahta samannimistä VG:tä! vgcfgbackup, vgcfgrestore: VG:n metadatan backup ja palautus, yleensä automaattinen (ks. /etc/lvm/backup)

LV:n luonti ja hävittäminen lvcreate [optiot] volumegroup [PV[:PE[-PE]]...] yleisimmät optiot: -n|--name nimi -L|--size koko tavuina tai -l|--extents koko blokkeina tai prosentteina (koko VG:stä %VG, vapaasta tilasta %FREE, PV:stä %VPS) myös PV:n ja PE:t (physical extents) voi määrätä lvremove [f|--force] LVpath ensin tarvittaessa umount tai swapon

LV:n muuttaminen lvextend [-L|--size] [+]koko [-r|--resizefs] LVpath [PVpath] esim. lvextend -r -L 4G /dev/vg00/lvhome koon tai sen muutoksen voi ilmaista monella tavalla, esim. --extents 50%VG, -l 100%FREE jne tiedostojärjestelmä pitää laajentaa jälkeenpäin (resize2fs tms) tai käyttää -r -optiota (ei toimi aina) myös halutun PV:n voi määrätä lvreduce [-L|--size] koko [-r|--resizefs] LVpath tiedostojärjestelmä pitää pienentää ensin tai käyttää -r -optiota lvrename OldLV NewLV

LVM: statustietoa vgdisplay [options] [VGname...] VG:n status, erityisesti vapaan tilan määrä yleisin optio -v (--verbose); vrt. vgs lvdisplay [options] [LVName...] LV:n status; vrt. lvs pvdisplay [options] [PVPath] PV:n status; vrt. pvs

LVM: *change vgchange [options] VGName muuttaa VG:n attribuutteja (melkein kaikkea mitä vgcreate asetti) erityisesti VG:n aktiivisuus: vgchange -a [n|y] - yleensä tapahtuu automaattisesti mutta recovery- tilanteissa muuttaminen käsin joskus tarpeen, samoin vgmerge'n kanssa lvchange [options] LVPath [LVPath...] muuttaa LV:n attribuutteja, -a kuten yllä (mutta harvemmin tarpeen) pvchange [options] PVPath muuttaa PV:n attribuutteja, harvoin tarpeen pvchange -x n asettaa PV:n ”käyttökieltoon” esim. tulevaa poistoa ennakoiden

LVM snapshots lvcreate --snapshot -L size -n name […] OrigLV ”jäädytetty” kopio LV:stä luontihetkellä, sisäisesti tallettaa erot vie tilaa vain (koko ajan kasvavan) eron verran, mutta lakkaa toimimasta jos snapshot-LV tulee täyteen mahdollistaa koherentin varmuuskopion (kaikki snapshot-LV:n osat edustavat samaa ajanhetkeä), tärkeää etenkin tietokantojen kanssa voi käyttää yksinäänkin tilapäisenä varmuuskopiona (ennen jotain potentiaalisesti katastrofaalista kokeilua), palautus komennolla lvconvert --merge snapshot-LV-path snapshot-LV:tä ei normaalisti muuteta (mount -ro), mutta sitä voi muuttaa jos esim. halutaan säilyttää valikoituja muutoksia ennen palautusta yleensä hävitetään heti kun ei enää tarpeen (kun varmuuskopio tehty tms)

LVM RAID & clustering LVM sisältää (software-)RAID-toiminnallisuutta (striping & mirroring, nyttemmin myös RAID4/5/6), mutta sitä käytetään melko harvoin nykyisin: RAID yleensä toteutetaan erikseen mdadm:llä (monipuolisempi ja kypsempi, enemmän työkaluja) tai rauta-RAID-ohjaimella ja siten luotua RAID-laitetta käytetään PV:nä LVM:lle. Clustering (CLVM): Jos käytössä on jaettu levy (SAN tms), LV voidaan jakaa monelle koneelle yhtaikaa. Synkronoinnista huolehtii clvmd (cluster lvm daemon), mutta toiminta yleensä edellyttää, että sovellukset ovat ”cluster-aware”. High-Availability -ympäristöön on RedHatin HA- LVM, joka myös jakaa levyn kahdelle koneelle mutta aktiivisena vain toisessa; optimoitu failover- scenarioon, ei edellytä cluster-säätöä sovelluksilta.

LVM-esimerkki: FS täynnä Olkoon FS (tiedostojärjestelmä) /home (/dev/vg1/home) täynnä. Tarkistetaan onko VG:ssä tilaa: vgdisplay vg1 | grep Free #tai# vgs vg1 Jos on, laajennetaan /home: lvextend -L +1G -r /dev/vg1/home Jos -r -optio unohtui tai ei toiminut, laajennetaan tiedostojärjestelmä: resize2fs /dev/vg1/home

LVM-esimerkki: levyn lisäys Lisätään levy ensin ”fyysisesti” (virtuaalikoneelle vain virsh attach-disk tms), olkoon se /dev/sdb Alustetaan PV: pvcreate /dev/sdb Lisätään PV VG:hen: vgextend vg1 /dev/sdb Tarkistetaan tulos: vgdisplay -v vg1 #tai# vgs vg1

LVM-esimerkki: /usr/local erilleen Halutaan tehdä /usr/local'ista oma tiedostojärjestelmänsä. Oletetaan että VG:ssä on tilaa. Luodaan uusi LV ja alustetaan se: lvcreate -L 1G -n local vg1 mkfs -t ext4 /dev/vg1/local Lisätään määritys /etc/fstab'iin: echo ”/dev/mapper/vg1-local /usr/local ext4 defaults 0 2” >>/etc/fstab Siirretään data: mv /usr/local /usr/oldlocal; mkdir /usr/local; mount /usr/local; mv /usr/oldlocal/* /usr/local; rmdir /usr/oldlocal Edellyttää ettei /usr/local ole käytössä siirron aikana!

LVM-esimerkki: levyn vaihto Vaihdetaan kokonaan LVM-käytössä oleva levy (sdb) toiseen (sdc), koska se on on menossa rikki tai käynyt pieneksi tms. Kytketään uusi levy ”fyysisesti” (virsh attach-disk) Lisätään uusi levy VG:hen: pvcreate /dev/sdc vgextend vg1 /dev/sdc Tyhjennetään vanha levy: pvmove /dev/sdb Poistetaan vanha levy VG:stä: vgreduce -a vg1 Poistetaan vanha levy fyysisesti (virsh detach-disk)

LVM-esimerkki: levyn vaihto 2 Vaihdettava systeemilevy, jolla on sekä LVM:n ulkopuolinen partitio 1 (/dev/sda1, mountattuna /boot) että PV (/dev/sda2) ja boot loader (grub) Partitioidaan uusi levy (sdb) käsin niin että ensimmäinen (sdb1) alkaa samasta kohdasta kuin vanhassakin (ja koko sama ellei sitä ole tarvetta suurentaa), partx/kpartx/partprobe (tai boot) Mountataan /boot readonly-tilaan: mount -o remount,ro /boot Kopioidaan /boot dd:llä: dd if=/dev/sda1 of=/dev/sdb1 umount /boot; mount /dev/sdb1 /boot # tarkistetaan että OK Asennetaan boot loader uudelle levylle: grub-install /dev/sdb1 LVM-osan vaihto kuten edellä mutta laitteina PV- partitiot /dev/sda2 ja /dev/sdb2 Poistetaan vanha levy Bootataan mahdollisimman pian varmistuksen vuoksi - saattaa vaatia BIOSin tai VM:n määritysten muuttamista, mahdollisesti update-initramfs -u, /etc/fstab (jos levykirjainviittauksia)

Levykiintiöt apt-get install quota mount optiot (/etc/fstab): usrquota,grpquota journaled quota (ext3, ext4): usrjquota=aquota.user,grpjquota=aquota.group,jqfmt= vfsv0 mount -o remount /home checkquota -avugm setquota -u tt 20000000 30000000 500 1000 /home repquota -as uid-/gid-kohtainen - chown kiertää...

NFS palvelimella (tt2): apt-get install nfs-kernel-server /etc/exports: /home tt1(rw,sync,no_subtree_check,root_squash) exportfs -a jos virhe ”... not implemented”: service nfs-kernel-server restart asiakaskoneessa (tt1): apt-get install nfs-common mkdir /home2; mount tt1:/home /home2 /etc/fstab: tt2:/home /home2 nfs defaults 0 0