Fórumok
Sziasztok!
Pontos másolatot szeretnék létrehozni a / partíciómról egy másik vinyóra.
Igy próbáltam:
init 1; mount -t reiserfs /dev/hdb3 /mnt/masolat -o acl,user_xattr; cd /
find . -xdev -depth -print0 | cpio -pdmv0 /mnt/masolat
A probléma az, hogy a /dev könyvtárból egyetlen nyiszlett fájl sem másolódik át a /mnt/masolat/dev-be. (Ennél már volt jobb; egy kicsit más cpio opciókkal legalább egy fájl; a /dev/null átment).
De milyen paranccsal lehetne pontos másolatot készíteni; beleértve a /dev könyvtár teljes tartalmát is? (Vinyó csere után u.i. ez a másolat lenne az új / partícióm.)
Hozzászólások
Live cd-ről boot-olás.
cd /ahova_tenni_akarod
tar -czvf masolando_particio.tgz /mnt/masolando_particio
Majd ha a tgz file kész, akkor a végleges helyén kicsomi....
Persze lehet dd-vel is...
Nincs live cd-m, és még az install dvd-t sem találom. :-(
De menni kellene ennek init 1-ben is.
Amúgy a dd sem jó, mert nem azonos méretűek a partíciók.
A find/cpio párossal soxor másoltam már partíciókat BSD-n sikeresen; mennie kellene linuxon is...
---
Mondjon le!
Hát ha a parancssori cuccossokkal nem boldogulsz, akkor partimage csomag lesz a te jó barátod.
---------
Nem a zsömle kicsi, a pofátok nagy...
Ez picit szebb...:
mount /dev/amitakarsz /oldroot
mount /dev/ahovaakarod /masolat
cd /oldroot; tar cf - . | ( cd /masolat; tar xvf - )
A tömörítés oda/vissza csak viszi az időt...
hmm... igy nem lenne szebb?
tar cf - . -C /oldroot | tar xvfp - -C /masolat
--
The Internet has evolved from smart people in front of dumb terminals to dumb people in front of smart terminals.
pP, hamárhomár :-) ráadásul ha posix, akkor meg pax, és nem tar...
jaja, ott a pont :)
--
The Internet has evolved from smart people in front of dumb terminals to dumb people in front of smart terminals.
szerintem ilyen esetben folosleges a -z, de en is tar-ral szoktam koltoni (egyetlen normalis modszer kulonbozo rendszerek kozott atmenteni cuccokat, tar es fel egy fat32 particiora darabolva) :)
--
The Internet has evolved from smart people in front of dumb terminals to dumb people in front of smart terminals.
Nem baj. A /dev vagy udev, devfs, vagy éppen a nap állása szerinti névvel illetett megoldás által kezelt valami, ergo a tartalma nem a root fájlrendszernek otthont adó eszközön található, ahogy ezt a find xdev (helyesebben -mount) kapcsolóját használva ki is derül.
Vagyis a megoldás?
---
Mondjon le!
boot-olj be úgy, hogy a másolatot tartalmazó partíciód a root :-P és meglátod. Szerintem...
Hasonlót próbáltam:
#chroot /mnt/masolat
#mount -t reiserfs /dev/hdb1 /boot
No such block device: /dev/hdb1
#ls /dev
Vagyis tiszta szopás, mert a másolatra "átchrootolás" után nem tudok semmit becsatolni, mivel a /dev üres.
---
Mondjon le!
Így próbáld meg:
mount -t proc none /mnt/masolat/proc
mount -o bind /dev /mnt/masolat/dev
chroot /mnt/masolat /bin/bash
Az említett könyvtárakat (/dev /proc) először szintén fel kell mountolni neki. Legalábbis Gentoo telepítésnél ezek alap parancsok amikor a livecd-ről átchrootolsz. ;-)
"if it moves, compile it."
Ez az! Ezer köszönet!
Most már mindjárt máshogy viselkedett a rendszer a chroot után: még a grub-install is simán végigment a /dev/hdb-re.
A vinyó csere után bootol is a gép az új root partícióról.
Egy gond maradt csak: nem megy semmi, aminek köze van az udevd-hez. Nincs hálózat (még lo se). Valami még mindig nincs rendben a /dev könyvtár másolata körül :-(.
Szerkesztés:
Ez is megoldva. Nem a /dev-el volt gondja, hanem a /sys könyvtár hiányzott neki a /-ről. (a /sys könyvtárat kitiltottam a másolásból, mert a cpio belefagyott; de arra nem gondoltam, hogy egy üres /sys azért kell majd a kernelnek a sysfs felcsatolásához).
Egy apróság azért még zavar: nem tudom, honnan a halálból szedi a grub, hogy a root a (hd0,1), mikor a /boot/grub/menu.lst-ben már rég ki van javítva (hd0,0)-ra.
Úgyhogy egyelőre minden indításkor javítgatni kell ezt a boot paramétert...
Viszont ezt a hozzászólást már a másolt rendszerről írom, úgyhogy csaknem teljes siker boot cd nélkül is :-)
---
Mondjon le!
Eddig is a hdb-ről bootoltál be, vagy egyéb helyről? Arra gondoltam így hirtelen (ha valóban átírtad a grub.conf-od bejegyzéseit) hogy elfelejtetted átállítani a biosban a merevlemezek bootolási sorrendjét.
"if it moves, compile it."
Nem, ez egy rendszer áttelepítés volt egy új vinyóra, egy kicsit nagyobb partíciókra.
Az új vinyót hdb-ként raktam be; init 1-ben áttettem rá a rendszer partícióit meg grub-ot; aztán kivettem a régi vinyót, áttettem az újat hda-ba, és róla indítottam a rendszert.
Amúgy bocs, de egy másik üzenet ágon írtam már, hogy ez is megoldva: csak figyelmetlenül olvastam el a hibaüzenetet, azt hittem még mindig a root-ot kifogásolja, pedig most már csak a graphics fájlt kereste a (hd0,1)-en. Jogosan, mert azt tényleg elfelejtettem átírni. De most már minden rendben.
A Gentoo-os ihletásű ötleted nélkül viszont nem sikerült volna feléleszteni az új root partíciót.
Köszi a segítséget!
---
Mondjon le!
Örülök hogy sikerült, nincsmit. :-)
"if it moves, compile it."
http://hup.hu/node/38223
sima cp miert nem jo? :)
azt hiszem gnu cp-ben siman eleg egy "-a" utana
--
The Internet has evolved from smart people in front of dumb terminals to dumb people in front of smart terminals.
Eddig mindenhol azt olvastam, hogy a cpio a korrektebb.
Változott a helyzet?
---
Mondjon le!
szerintem folosleges, nem tudom miert lenne jobb a cpio
--
The Internet has evolved from smart people in front of dumb terminals to dumb people in front of smart terminals.
Mert cp -a nagy eséllyel nem POSIX-compliant megoldás, és lehet, hogy Linux alatt műx, de máshol már használhatatlan.
Csak az alap problémát ez sem oldja meg: mint írtad a /dev tartalma másik fájlrendszeren van. :-(
Abból, amit írtatok, úgy tűnik nekem, hogy talán még az lenne a legjobb, ha először minden felesleges partíciót lecsatolnék, és csak utána esnék neki a másolásnak a "cp -a"-val, vagy egy "-xdev" nélküli cpio paranccsal.
---
Mondjon le!
Nem változott, csak tudod vannak, akik a GNU-s eszközökön kívül mást nem ismernek, és magasrol tojnak arra, hogy kompatibilitás.
A gnu cp, meg gnu find, meg hasonló cucujkák spec. kapcsolói/fícsörei max. addig hasznosak, amíg nem kell production környezetben más *NIX-on megcsinálni valamit, az ott rendszeresített eszközökkel (lásd még POSIX.1, Part 3: Shell and Utilities).
linuxon kerdezte, kit erdekel, hogy az -a nem posix? nem mindegy?
ha majd olyan rendszeren lesz, akkor hasznal majd cp -Rp -t vagy ami jol esik
piszkald* inkabb azokat, akik bash scriptet irnak, ok megerdemlik a pokol tuzet :P
szerk: *kimoderaltam a csunyaszot belole :)
--
The Internet has evolved from smart people in front of dumb terminals to dumb people in front of smart terminals.
Csak az vele a gond, hogy utána jönnek azzal, hogy sz@r az AIX, HP-UX, Solaris, meg minden, merthogy a GNUS- sz@raiknak a totál elvarázsolt (egyébként soxor hasznos) kapcsolóit nem eszik meg, és jobb esetben kiszédül a scriptjük, rosszabb esetben marhaságot csinál. Ha lehet szabványos megoldást adni, akkor miért ne...?
jo, hat a gnu userland agybajai kozismertek ez teny. :D
meg hat ha valaki komoly unix kozelebe kerul es azzal indit, hogy bash meg mc, akkor annak magyarazhatod, ugy sem erti...
amugy igazad van
--
The Internet has evolved from smart people in front of dumb terminals to dumb people in front of smart terminals.
Azért kényelmesebb egy
tar xzvf anyamtyukja.tar.gz
mint
gunzip -c anyamtyukja.tar.gz | tar xvf -
--
A nyúl egy igazi jellem. Ott ül a fűben, de akkor sem szívja!
Ez nem jó?
rsync -av /* /valahol/másikpartició
vissza, vagy bárhova klónozás céllal.
rsync -av /valahol/másikpartició/* /dev/hdxy
----------------------------------------------------------------
"Értem én hogy villanymotor, de mi hajtja!?
én is ezt használom, bár egy x kapcsoló elfér még oda...
rsync -avx / /ahova/masolod/
üdv: pomm
a cp biztos nem elég, a "cp -a" parancs sem a legtökéletesebb
ha jól emléxem, akkor a socket és named pipe-okkal meggyűlik a baja (bár lehet, már nem igaz)
mindenképp' a "find . -xdev | cpio -pm <célkönyvtár>" megoldás a preferált
"Egy apróság azért még zavar: nem tudom, honnan a halálból szedi a grub, hogy a root a (hd0,1), mikor a /boot/grub/menu.lst-ben már rég ki van javítva (hd0,0)-ra."
/boot/grub/device.map ?
----------------------------------------------------------------
"Értem én hogy villanymotor, de mi hajtja!?
Ehh.
Nem vettem észre, hogy másodjára már csak a graphics fájlt kereste rossz helyen; azt pedig tényleg elfelejtettem átjavítani.
Bocs, hogy hülyeségemmel félrevezettelek :-(
Aműgy most már minden pöpec; köszönet a segítséget mindenkinek; különös tekintettel egmont, masterminds és zeller kollégákra; mert mindegyikőjüktől tanultam valami újat, ami közelebb vitt a megoldáshoz! :-)
---
Mondjon le!