Forum » Operacijski sistemi » [Linux] loop naprava in virtualni disk
[Linux] loop naprava in virtualni disk
poweroff ::
Torej, zadeva je taka: rad bi si naredil eno datoteko, ki bo jo lahko priklopil (mountal) kot virtualno diskovno napravo.
Rečem:
dd if=/dev/zero of=sparsefile.img bs=1 seek=100M count=0
Nato:
mke2fs sparsefile.img
Ter:
sudo mount -o loop sparsefile.img /mnt/
TODA!
Če rečem:
dd if=/dev/zero of=virtual-hd.img bs=1k count=100MB
mi NE naredi 100 Mb velike datoteke, pač pa se le-ta povečuje v neskončnost.
Kje bi bil problem? Uporabljam Ubuntu 7.04...
Rečem:
dd if=/dev/zero of=sparsefile.img bs=1 seek=100M count=0
Nato:
mke2fs sparsefile.img
Ter:
sudo mount -o loop sparsefile.img /mnt/
TODA!
Če rečem:
dd if=/dev/zero of=virtual-hd.img bs=1k count=100MB
mi NE naredi 100 Mb velike datoteke, pač pa se le-ta povečuje v neskončnost.
Kje bi bil problem? Uporabljam Ubuntu 7.04...
sudo poweroff
- spremenilo: CCfly ()
poweroff ::
Jup, dela.
Očitno se množi, jaz sem pa glup da nisem pomislil na to.
Tnx.
OK, naslednje vprašanje... kako bi gor dodal crypto layer? luksformat ne dela, javi napako.
Očitno se množi, jaz sem pa glup da nisem pomislil na to.
Tnx.
OK, naslednje vprašanje... kako bi gor dodal crypto layer? luksformat ne dela, javi napako.
sudo poweroff
Poldi112 ::
Where all think alike, no one thinks very much.
Walter Lippmann, leta 1922, o predpogoju za demokracijo.
Walter Lippmann, leta 1922, o predpogoju za demokracijo.
Brane2 ::
Ni mi jasno, zakaj imaš Byteje v countu. Ta samo pove kolikokrat naj se ponovi "bs" ali blocksize in nima nič z bytei.
On the journey of life, I chose the psycho path.
Zgodovina sprememb…
- spremenil: Brane2 ()
BigWhale ::
What he said.
BS je block size, to das v bytih, count pa stevilo blokov.
torej za en GB
bs=1GB count=1
?
BS je block size, to das v bytih, count pa stevilo blokov.
torej za en GB
bs=1GB count=1
?
Quikee ::
sudo mount -o loop sparsefile.img /mnt/
Namesto tega lahko narediš "loop block device" nad datoteko, ki se bo vedel enako kot kateri koli drugi "block device", kar je malo bolj elegantno kot tvoja rešitev. Z "losetup /dev/loopX file" povežeš "loop device" z datoteko - poglej si uporabo "losetup".
Verjetno zato luks ne dela ker rabi "block device" (če se ne motim luks deluje z uporabo device mapperja) in ne mountano loop datoteko.
Namesto tega lahko narediš "loop block device" nad datoteko, ki se bo vedel enako kot kateri koli drugi "block device", kar je malo bolj elegantno kot tvoja rešitev. Z "losetup /dev/loopX file" povežeš "loop device" z datoteko - poglej si uporabo "losetup".
Verjetno zato luks ne dela ker rabi "block device" (če se ne motim luks deluje z uporabo device mapperja) in ne mountano loop datoteko.
Brane2 ::
"mount -o loop" naredi to bolj elegantno, vse v enem koraku.
Sam rezervira nov loop, ga zapopana na datoteko in se z druge strani zmounta...
Sam rezervira nov loop, ga zapopana na datoteko in se z druge strani zmounta...
On the journey of life, I chose the psycho path.
Quikee ::
Sam rezervira nov loop, ga zapopana na datoteko in se z druge strani zmounta...
Ja samo "mount -o loop" ti naredi en korak preveč - Ti hočeš preko "block device" torej /dev/loopX naredit en dodaten zakodiran sloj (z device mapperjem) in potem na tega dat "file system". Ali se motim?
Sam sem že z device mapperjem delal ročne "snapshote" in "nepersistentne sloje", enkripcije pa še ne.
Ja samo "mount -o loop" ti naredi en korak preveč - Ti hočeš preko "block device" torej /dev/loopX naredit en dodaten zakodiran sloj (z device mapperjem) in potem na tega dat "file system". Ali se motim?
Sam sem že z device mapperjem delal ročne "snapshote" in "nepersistentne sloje", enkripcije pa še ne.
Brane2 ::
On je filesistem že dal gor z mke2fs dirrekt na fajl, ki ga je naredil z "dd if=... etc"
"mount -o loop" pa rezervira loop, ga pripopa na ta fajl, drugo stran loopa pa zmounta na zahtevani direktorij, kot bi sicer zmountal navaden blockevice.
Kateri korak naj bi bil tu odvečen ?
"mount -o loop" pa rezervira loop, ga pripopa na ta fajl, drugo stran loopa pa zmounta na zahtevani direktorij, kot bi sicer zmountal navaden blockevice.
Kateri korak naj bi bil tu odvečen ?
On the journey of life, I chose the psycho path.
Quikee ::
Trik je, da luks (kolko jaz vem) ni na nivoju file systema ampak na "vmesnem" blokovnem nivoju in se tudi izvaja nad bloki in ne direktno datotekami.
Torej kako si jaz predstavljam, da takšna enkripcija deluje:
block dev. z zakodiranimi podatki -> vmesni nivo za katerega skrbi device mapper za odkodiranje blokov -> file system
Torej kreira se nekako tole:
/dev/loop0 (zakodirani blokovni podatki) -> /dev/mapper/some_volume (vmesni transparenti nivo, kjer se "on demand" odkodirajo podatki iz "/dev/loop0") -> create/mount file system
Na tak način dosežeš enkripcijo, ki je neodvisna od file systema.
Zdaj pa: kot izvršiš "mount -o loop" popolnoma preskočiš vmesno sekcijo z device mapperjem.
Seveda obstajajo še drugi načini enkripcije, ki so bolj na nivoju samega datotečnega sistema (recimo reiser4 ima že vgrajeno transparentno enkripcijo). Tam bi tvoj način popolnoma zadostoval.
Torej kako si jaz predstavljam, da takšna enkripcija deluje:
block dev. z zakodiranimi podatki -> vmesni nivo za katerega skrbi device mapper za odkodiranje blokov -> file system
Torej kreira se nekako tole:
/dev/loop0 (zakodirani blokovni podatki) -> /dev/mapper/some_volume (vmesni transparenti nivo, kjer se "on demand" odkodirajo podatki iz "/dev/loop0") -> create/mount file system
Na tak način dosežeš enkripcijo, ki je neodvisna od file systema.
Zdaj pa: kot izvršiš "mount -o loop" popolnoma preskočiš vmesno sekcijo z device mapperjem.
Seveda obstajajo še drugi načini enkripcije, ki so bolj na nivoju samega datotečnega sistema (recimo reiser4 ima že vgrajeno transparentno enkripcijo). Tam bi tvoj način popolnoma zadostoval.
Brane2 ::
Kar se Reiserja4 tiče, se ravno sedaj ukvarjam s tem. Rad bi enkriptirane določene stvari na disku, ne pa celotnega diska, da ne bi trpela hitrost prenosa in CPU useage...
Pa je crypto plugin za Reiser4 že končan ?
Pa je crypto plugin za Reiser4 že končan ?
On the journey of life, I chose the psycho path.
Quikee ::
Ampak tu tip ni aktiviral enkripcije...
Res je.. zdaj vidim, da je spraševal za "crypto layer" kasneje.
Kar se Reiserja4 tiče, se ravno sedaj ukvarjam s tem. Rad bi enkriptirane določene stvari na disku, ne pa celotnega diska, da ne bi trpela hitrost prenosa in CPU useage...
Pa je crypto plugin za Reiser4 že končan ?
Koliko je kaj končano/stabilno pri reiser4 je težko rečt, saj ni nekih rednih informacij o cryptcompress oz. o stanju reiser4 nasplošno (ali pa jaz nisem našel).
Je pa alternativa tudi recimo fuse encfs.. odvisno od tega za kaj točno rabiš.
Res je.. zdaj vidim, da je spraševal za "crypto layer" kasneje.
Kar se Reiserja4 tiče, se ravno sedaj ukvarjam s tem. Rad bi enkriptirane določene stvari na disku, ne pa celotnega diska, da ne bi trpela hitrost prenosa in CPU useage...
Pa je crypto plugin za Reiser4 že končan ?
Koliko je kaj končano/stabilno pri reiser4 je težko rečt, saj ni nekih rednih informacij o cryptcompress oz. o stanju reiser4 nasplošno (ali pa jaz nisem našel).
Je pa alternativa tudi recimo fuse encfs.. odvisno od tega za kaj točno rabiš.
poweroff ::
V bistvu rabim zadevo točno tako, kot je povedal Quikee. Najprej moram mountati image na loop, potem loop preko cryptsetup na /dev/mapper in potem to napravo na recimo /mnt, gor je pa recimo ext3.
Torej imam:
image.img -> loop device -> crypto device -> filesystem mount point
OK, zdaj sem pa naletel na eno čudno zadevo...
Imam dva kriptirana diska (s cryptsetup).Enega mi normalno automounta, drugega pa ne. Sicer me vpraša za geslo in mi naredi novo napravo na /dev/mapper, venar le-te potem noče mountat na /media. Lahko pa jo ročno mountam na /mnt.
Če rečem:
sudo mount -a
Dobim:
fusermount: mount failed: Device or resource busy
FUSE mount point creation failed
Unmounting /dev/disk/by-uuid/3234D4E934D4B159 ()
Ne vem sicer če ima to kaj veze, ampak sem šel gledat /dev/disk in tole je primerjava med diskom, ki ga automounta in diskom, ki ga ne):
ls -lha /dev/disk/by-label
NOT MOUNTED:
lrwxrwxrwx 1 root root 61 2007-06-14 13:33 USB-crypt320 -> ../../mapper/luks_crypto_699da152-b6e8-447e-bdbc-ec44413b703f
MOUNTED NORMALLY
lrwxrwxrwx 1 root root 61 2007-06-14 13:37 USB-crypt500 -> ../../mapper/luks_crypto_221e9736-353e-4814-8553-1e055d9f635c
ls -lha /dev/disk/by-path
NOT MOUNTED:
lrwxrwxrwx 1 root root 9 2007-06-14 13:33 pci-0000:00:1d.7-usb-0:7:1.0-scsi-0:0:0:0 -> ../../sdc
MOUNTED NORMALLY
lrwxrwxrwx 1 root root 9 2007-06-14 13:37 pci-0000:00:1d.7-usb-0:8:1.0-scsi-0:0:0:0 -> ../../sdd
lrwxrwxrwx 1 root root 10 2007-06-14 13:37 pci-0000:00:1d.7-usb-0:8:1.0-scsi-0:0:0:0-part1 -> ../../sdd1
ls -lha /dev/disk/by-id
NOT MOUNTED:
lrwxrwxrwx 1 root root 9 2007-06-14 13:33 usb-WD_3200JB_External_57442D5743414D5233393538313437-0:0 -> ../../sdc
MOUNTED NORMALLY
lrwxrwxrwx 1 root root 9 2007-06-14 13:37 usb-WD_5000AAJS_Externa_57442D574341505731313439373633-0:0 -> ../../sdd
lrwxrwxrwx 1 root root 10 2007-06-14 13:37 usb-WD_5000AAJS_Externa_57442D574341505731313439373633-0:0-part1 -> ../../sdd1
ls -lha /dev/disk/by-uuid
NOT MOUNTED:
lrwxrwxrwx 1 root root 61 2007-06-14 13:33 a87dcb74-c852-4eb8-bb2c-86a7f4f6221f -> ../../mapper/luks_crypto_699da152-b6e8-447e-bdbc-ec44413b703f
MOUNTED NORMALLY:
lrwxrwxrwx 1 root root 61 2007-06-14 13:37 c58fa8e8-0e9d-41e2-b2bf-7999c54c5a4c -> ../../mapper/luks_crypto_221e9736-353e-4814-8553-1e055d9f635c
Kakšna ideja kaj bi bilo narobe?
Torej imam:
image.img -> loop device -> crypto device -> filesystem mount point
OK, zdaj sem pa naletel na eno čudno zadevo...
Imam dva kriptirana diska (s cryptsetup).Enega mi normalno automounta, drugega pa ne. Sicer me vpraša za geslo in mi naredi novo napravo na /dev/mapper, venar le-te potem noče mountat na /media. Lahko pa jo ročno mountam na /mnt.
Če rečem:
sudo mount -a
Dobim:
fusermount: mount failed: Device or resource busy
FUSE mount point creation failed
Unmounting /dev/disk/by-uuid/3234D4E934D4B159 ()
Ne vem sicer če ima to kaj veze, ampak sem šel gledat /dev/disk in tole je primerjava med diskom, ki ga automounta in diskom, ki ga ne):
ls -lha /dev/disk/by-label
NOT MOUNTED:
lrwxrwxrwx 1 root root 61 2007-06-14 13:33 USB-crypt320 -> ../../mapper/luks_crypto_699da152-b6e8-447e-bdbc-ec44413b703f
MOUNTED NORMALLY
lrwxrwxrwx 1 root root 61 2007-06-14 13:37 USB-crypt500 -> ../../mapper/luks_crypto_221e9736-353e-4814-8553-1e055d9f635c
ls -lha /dev/disk/by-path
NOT MOUNTED:
lrwxrwxrwx 1 root root 9 2007-06-14 13:33 pci-0000:00:1d.7-usb-0:7:1.0-scsi-0:0:0:0 -> ../../sdc
MOUNTED NORMALLY
lrwxrwxrwx 1 root root 9 2007-06-14 13:37 pci-0000:00:1d.7-usb-0:8:1.0-scsi-0:0:0:0 -> ../../sdd
lrwxrwxrwx 1 root root 10 2007-06-14 13:37 pci-0000:00:1d.7-usb-0:8:1.0-scsi-0:0:0:0-part1 -> ../../sdd1
ls -lha /dev/disk/by-id
NOT MOUNTED:
lrwxrwxrwx 1 root root 9 2007-06-14 13:33 usb-WD_3200JB_External_57442D5743414D5233393538313437-0:0 -> ../../sdc
MOUNTED NORMALLY
lrwxrwxrwx 1 root root 9 2007-06-14 13:37 usb-WD_5000AAJS_Externa_57442D574341505731313439373633-0:0 -> ../../sdd
lrwxrwxrwx 1 root root 10 2007-06-14 13:37 usb-WD_5000AAJS_Externa_57442D574341505731313439373633-0:0-part1 -> ../../sdd1
ls -lha /dev/disk/by-uuid
NOT MOUNTED:
lrwxrwxrwx 1 root root 61 2007-06-14 13:33 a87dcb74-c852-4eb8-bb2c-86a7f4f6221f -> ../../mapper/luks_crypto_699da152-b6e8-447e-bdbc-ec44413b703f
MOUNTED NORMALLY:
lrwxrwxrwx 1 root root 61 2007-06-14 13:37 c58fa8e8-0e9d-41e2-b2bf-7999c54c5a4c -> ../../mapper/luks_crypto_221e9736-353e-4814-8553-1e055d9f635c
Kakšna ideja kaj bi bilo narobe?
sudo poweroff
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Linux Lubuntu - pomoč pri inštalaciji dmsetupOddelek: Operacijski sistemi | 1933 (1481) | diler515 |
» | Grub Error 15: File not foundOddelek: Operacijski sistemi | 1693 (1635) | poweroff |
» | [Linux] Tezave z zvocnim cipomOddelek: Operacijski sistemi | 1840 (1556) | MarkoSan |
» | [Gentoo] Kernel upgrade (strani: 1 2 )Oddelek: Operacijski sistemi | 4906 (4432) | Trubadur |
» | mrežna karticaOddelek: Omrežja in internet | 1423 (1248) | ta_pridna |