Автор Тема: копиране с dd  (Прочетена 2204 пъти)

console

  • Напреднали
  • *****
  • Публикации: 243
    • Профил
    • WWW
копиране с dd
« -: Dec 08, 2008, 15:27 »
Искам да копирам един диск върху друг с dd.
Ще има ли някакав проблем за диска от които копирам без да използвам Live CD?
« Последна редакция: Dec 12, 2008, 00:07 от neter »
Активен

“Ever tried. Ever failed. No matter. Try again. Fail again. Fail Better.”

sverdlov

  • Напреднали
  • *****
  • Публикации: 351
    • Профил
Re: копиране с dd
« Отговор #1 -: Dec 08, 2008, 15:57 »
не, няма проблем.


И още нещо, можеш да използваш един доста бърз хак:

Диск 1 - sda - този от който копираш
диск 2 - sdb - този върху който копираш

dd if=/dev/sda bs=1M | of=/dev/sdb bs=1M

това ще ускори дд-то поне 7 пъти
« Последна редакция: Dec 12, 2008, 00:07 от neter »
Активен

dvbb

  • Напреднали
  • *****
  • Публикации: 207
  • Nothing else!
    • Профил
Re: копиране с dd
« Отговор #2 -: Dec 09, 2008, 10:24 »
И още нещо, можеш да използваш един доста бърз хак:
:D  :D  :D
« Последна редакция: Dec 12, 2008, 00:07 от neter »
Активен

sverdlov

  • Напреднали
  • *****
  • Публикации: 351
    • Профил
Re: копиране с dd
« Отговор #3 -: Dec 09, 2008, 12:26 »
dvbb сподели вица да се посмеем и ние? ако нямаш нещо умно да кажеш, нещо с което да помогнеш на човека, к`во се обаждаш изобщо?

hack - 1. A clever or elegant technical accomplishment, especially one with a playful or prankish bent. A clever routine in a computer program, especially one which uses tools for purposes other than those for which they were intended, might be considered a hack. Students at technical universities, such as MIT, are famous for performing elaborate hacks, such as disassembling the dean's car and then reassembling it inside his house, or turning a fourteen-story building into a giant Tetris game by placing computer-controlled lighting panels in its windows.

пайп-ването на дд иф в дд оф ускорява процеса многократно... това ли е смешното или просто се смееш на простотията си
« Последна редакция: Dec 12, 2008, 00:08 от neter »
Активен

romeo_ninov

  • Напреднали
  • *****
  • Публикации: 2155
    • Профил
Re: копиране с dd
« Отговор #4 -: Dec 09, 2008, 12:50 »
не, няма проблем.


И още нещо, можеш да използваш един доста бърз хак:

Диск 1 - sda - този от който копираш
диск 2 - sdb - този върху който копираш

dd if=/dev/sda bs=1M | of=/dev/sdb bs=1M

това ще ускори дд-то поне 7 пъти
Да, има проблем, защото в този момент операционната система пише нещо върху диска!
Да не говорим че командата е:
Код:
dd if=/dev/sda of=/dev/sdb bs=1M

П.П. Така че не се чуди че хората се смеят
П.П.П. И коментирай това:
Код:
[root@localhost ~]# ls -l
total 1955088
-rw------- 1 root root       1103 Dec  3 16:26 anaconda-ks.cfg
-rw-r--r-- 1 root root 1000000000 Dec  9 14:07 i
-rw-r--r-- 1 root root      18222 Dec  3 16:25 install.log
-rw-r--r-- 1 root root       3944 Dec  3 16:25 install.log.syslog
-rw-r--r-- 1 root root 1000000000 Dec  9 14:08 o
[root@localhost ~]# time dd if=i of=o bs=1M
953+1 records in
953+1 records out
1000000000 bytes (1.0 GB) copied, 13.1459 seconds, 76.1 MB/s

real    0m13.793s
user    0m0.004s
sys     0m9.438s
[root@localhost ~]# time dd if=i bs=1M|dd of=o bs=1M
953+1 records in
953+1 records out
1000000000 bytes (1.0 GB) copied953+1 records in
953+1 records out
1000000000 bytes (1.0 GB) copied, 17.1379 seconds, 58.4 MB/s
, 16.3879 seconds, 61.0 MB/s

real    0m17.305s
user    0m0.007s
sys     0m12.204s
« Последна редакция: Dec 12, 2008, 00:08 от neter »
Активен

0x2B|~0x2B

sverdlov

  • Напреднали
  • *****
  • Публикации: 351
    • Профил
Re: копиране с dd
« Отговор #5 -: Dec 09, 2008, 14:39 »
той доколкото разбрах иска да пише от един дист (устройство) в друг диск (устройство)

А не от своя диск върху същия - няма логика да ползва дд? Нали така

Скоростта при запис в единия и в другия случай, от устройство диск върху усб или от усб върху диск, или от диск в диск, е много по-голяма използвайки piped дд

прочети много много внимателно първия пост и си отговори на въпроса "има ли проблем" отново.
Още по-добре ще е да си представиш какво се случва на по-ниско ниво когато копираш от диск в диск, в двата случая... как текат данните - при първия имаш четене - буфер - запис - във втория имаш един процес който чете втори който записва... когато устройствата са две, кой вариант ще е по-добър? хора, мислете преди да се смеете, моля ви се

Втори едит - значи, bs=1M може да забави малко нещата за по-бавни дискове с по-малки буфери - в такъв случай bs=64k ще свърши доста по-добра работа

А- ромео нинов мерси - че ме подсети на лични за изпуснатото второ дд - малкия мозък ми подсказваше че съм изпуснал нещо ама на -
dd if=/dev/sda bs=1M | dd of=/dev/sdb bs=1M
« Последна редакция: Dec 12, 2008, 00:08 от neter »
Активен

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Re: копиране с dd
« Отговор #6 -: Dec 09, 2008, 15:07 »
Това е твърде вероятно, но само ако имаш повече от един процесор или ядро - не за друго, а заради конкурентността. На еднопроцесорна машина, четенето от pipe-a е блокираща операция (т.е когато програмата я срещне, преминава в sleeping състояние и на процесора се schedule-ира нов процес от runqueue). Когато се schedule-не "пишещият" dd процес, той изписва там малко данни (което пък "събужда" четящият процес). И така....ядрото постоянно "превключва" между "пишещия" dd и "четящият" dd. Превключването е малко скъпа операция, изчистват се кешове и т.н. Освен което минаването през pipe-a има известен overhead (състоящ се от copy_to_user()/copy_from_user() в ядрото). И най-вече на еднопроцесорна система може да се schedule-ира трети процес или да се вдигне хардуерно прекъсване, което пък прекъсва и писането и четенето.

Та мисълта ми е че на еднопроцесорна машина твоето твърдение е малко съмнително, без значение дали копираш от един диск на друг или два файла на един и същ диск. Но твърде вероятно на SMP машина нещата стоят по различен начин - там конкурентността е много по-голяма.
« Последна редакция: Dec 12, 2008, 00:08 от neter »
Активен

"Knowledge is power" - France is Bacon

sverdlov

  • Напреднали
  • *****
  • Публикации: 351
    • Профил
Re: копиране с dd
« Отговор #7 -: Dec 09, 2008, 15:19 »
дори на еднопроцесорната ми машинка с процесор Виа (HP2133), резултата е многократно ускорение. Има малка разлика заради това че е само един процесор, но по-скоро зависи от кеша и скоростта на диска
« Последна редакция: Dec 12, 2008, 00:08 от neter »
Активен

romeo_ninov

  • Напреднали
  • *****
  • Публикации: 2155
    • Профил
Re: копиране с dd
« Отговор #8 -: Dec 09, 2008, 16:25 »
Имам чувство че всички изпускате проблема с пускането на работеща система и въпроса за живото СД. 1000% съм сигурен че единствения резултат от пускането му на работеща система ще е една неконсистентна система на втория диск

Заради горното: ДА, ИМА ПРОБЛЕМ, ПОЛЗВАЙ ЖИВО СД!!!
« Последна редакция: Dec 12, 2008, 00:08 от neter »
Активен

0x2B|~0x2B

nedpetko

  • Напреднали
  • *****
  • Публикации: 445
  • Distribution: Debian GNU/Linux
  • Window Manager: KDE
    • Профил
Re: копиране с dd
« Отговор #9 -: Dec 09, 2008, 22:13 »
Тук съм съгласен с romeo_ninov, но ако му позволява конфигурацията може и само да го размонтира.
« Последна редакция: Dec 12, 2008, 00:09 от neter »
Активен

Debian amd64 squeeze/sid

console

  • Напреднали
  • *****
  • Публикации: 243
    • Профил
    • WWW
Re: копиране с dd
« Отговор #10 -: Dec 11, 2008, 10:32 »
Благодаря за отговорите,

За да бъдя по-точен процеса е следния.

Искам да копирам хард диска на едно работещо ПЦ върху друго.
« Последна редакция: Dec 12, 2008, 00:09 от neter »
Активен

“Ever tried. Ever failed. No matter. Try again. Fail again. Fail Better.”

sverdlov

  • Напреднали
  • *****
  • Публикации: 351
    • Профил
Re: копиране с dd
« Отговор #11 -: Dec 11, 2008, 10:53 »
гледай пц-тата да са що-годе идентични, хардовете да са с еднакъв размер и марка, тогава дд-то няма да ти направи проблем.

В противен случай, просто тарни системата и я разархивирай на другия хард, след като направиш партиции, това е един друг, малко по-бавен но по-щадяш метод за харда и партиците му...
« Последна редакция: Dec 12, 2008, 00:09 от neter »
Активен

arda_kj

  • Напреднали
  • *****
  • Публикации: 631
  • Distribution: Debian Sid/Unstable; Ubuntu 12.04
  • Window Manager: Gnome/KDE
    • Профил
Re: копиране с dd
« Отговор #12 -: Dec 11, 2008, 23:59 »
Може ли и аз да се намеся. Добре де, ами ако вместо Live CD просто се логне в конзолата без графична среда и монтира на ново диска/партицията само, че read-only няма ли да е възможно да копира консистентно това, което иска да копира (малее много сложно изречение казах :)).

ПС (Към модераторите): Няма ли някой модератор да оправи това заглавие, че в момента това "кпиране" изглежда много зле, а пък и при търсене на по-късен етап ще се намира по-лесно.
« Последна редакция: Dec 12, 2008, 00:09 от neter »
Активен

Debian Sid/Unstable; Ubuntu 12.04
"За да открием истината, е нужно поне веднъж в живота си да подложим всичко на съмнение" - Р. Декарт

neter

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 3408
  • Distribution: Debian, SailfishOS, CentOS
  • Window Manager: LXDE, Lipstick
    • Профил
    • WWW
Re: копиране с dd
« Отговор #13 -: Dec 12, 2008, 00:11 »
//offtopic

Когато отговаряте на някоя тема, в името на която има някаква грешка, можете да я поправите във вашите постове в полето "Заглавие", за да не редактирам и вашите постове, и да се чудите защо са редактирани ;)
Активен

"Да си добре приспособен към болно общество не е признак за добро здраве" - Джиду Кришнамурти