Могу ли я сделать изображение с диска, начиная с адреса x?

Убедитесь, что вы выбрали File-> Save as

. Более интуитивно понятный File-> Save as не предоставляет возможность выбора типа файла.

[Я потерял часы, пытаясь выяснить, почему я не могу выбрать тип файла при попытке экспорта ...]

0
задан 19 December 2017 в 09:14

6 ответов

dd имеет параметр skip, позволяющий пропустить часть в начале ввода.

Thing is, dd считывает блок за раз, считывая блок в память, а затем записывая этот блок на выход, затем повторяется. Если количество байтов, которое вы хотите пропустить, не кратно размеру блока по умолчанию (512), тогда вам нужно будет установить размер блока. Следующие действия будут работать:

dd if=/dev/sda1 bs=1 skip=3666411519 count=22390 of=/some/file

В этом случае вы устанавливаете размер блока на один байт (потому что ваше значение пропуска произвольное и не кратное чему-либо в частности).

Использование размера блока в 1 байт будет относительно медленным, но если вы читаете только около 22 КБ, это не является большой проблемой.

0
ответ дан 22 May 2018 в 16:54
  • 1
    для меня это более ясно, но все же есть некоторые моменты, если мне нужно начать dd с определенного адреса, как начать там? преобразование между пропуском и адресами, во-вторых, если мне нужно около 1 КБ, как это указать? – Aziz 19 December 2017 в 09:40
  • 2
    Адрес, который у вас начинался с 0x, был в шестнадцатеричном формате. Преобразуйте в десятичное число с помощью этого инструмента . 1kB - 1024 байта. – thomasrutter 20 December 2017 в 02:27

dd имеет параметр skip, позволяющий пропустить часть в начале ввода.

Thing is, dd считывает блок за раз, считывая блок в память, а затем записывая этот блок на выход, затем повторяется. Если количество байтов, которое вы хотите пропустить, не кратно размеру блока по умолчанию (512), тогда вам нужно будет установить размер блока. Следующие действия будут работать:

dd if=/dev/sda1 bs=1 skip=3666411519 count=22390 of=/some/file

В этом случае вы устанавливаете размер блока на один байт (потому что ваше значение пропуска произвольное и не кратное чему-либо в частности).

Использование размера блока в 1 байт будет относительно медленным, но если вы читаете только около 22 КБ, это не является большой проблемой.

0
ответ дан 18 July 2018 в 00:53

dd имеет параметр skip, позволяющий пропустить часть в начале ввода.

Thing is, dd считывает блок за раз, считывая блок в память, а затем записывая этот блок на выход, затем повторяется. Если количество байтов, которое вы хотите пропустить, не кратно размеру блока по умолчанию (512), тогда вам нужно будет установить размер блока. Следующие действия будут работать:

dd if=/dev/sda1 bs=1 skip=3666411519 count=22390 of=/some/file

В этом случае вы устанавливаете размер блока на один байт (потому что ваше значение пропуска произвольное и не кратное чему-либо в частности).

Использование размера блока в 1 байт будет относительно медленным, но если вы читаете только около 22 КБ, это не является большой проблемой.

0
ответ дан 24 July 2018 в 17:17

dd имеет флаг skip:

skip=N skip N ibs-sized blocks at start of input

Но тогда адрес должен быть N * ibs. Но 0x00000000DA88FFFF = 3 × 1222137173, что не кажется разумной отправной точкой. В общем, вы можете сделать:

dd ibs=X start=Y count=Z if=/some/disk

Копировать Z*X байт, начиная с Y*X.

0
ответ дан 22 May 2018 в 16:54
  • 1
    Что такое ibs? входные байты? и подсчет будет указывать номер байта? это более ясно, но до сих пор не знаю, как поместить адрес в начало ? как его преобразовать? конвертировать его в какой? в этот момент я потерялся – Aziz 19 December 2017 в 09:51
  • 2
    @Aziz см. Manpage: manpages.ubuntu.com/manpages/zesty/en/man1/dd.1.html Как я уже сказал, если start=Y и ibs=X, то он начинает чтение из байтов [F3]. Какая часть этого неясно? – Olorin 19 December 2017 в 10:13
  • 3
    start = Y (например, Y = 0x00000000DA88FFFF), следует ли положить его в эту форму? и для ibs = 1b, просто адрес, как его поместить? – Aziz 19 December 2017 в 10:23
  • 4
    @ Азиз, вы не сказали, что ваш адрес на самом деле, и вы даже не знаете, что это такое или что он должен подразумевать, так как я могу ответить на это? – Olorin 19 December 2017 в 10:29
  • 5
    неважно, спасибо за ваше время – Aziz 19 December 2017 в 11:34

dd имеет флаг skip:

skip=N skip N ibs-sized blocks at start of input

Но тогда адрес должен быть N * ibs. Но 0x00000000DA88FFFF = 3 × 1222137173, что не кажется разумной отправной точкой. В общем, вы можете сделать:

dd ibs=X start=Y count=Z if=/some/disk

Копировать Z*X байт, начиная с Y*X.

0
ответ дан 18 July 2018 в 00:53

dd имеет флаг skip:

skip=N skip N ibs-sized blocks at start of input

Но тогда адрес должен быть N * ibs. Но 0x00000000DA88FFFF = 3 × 1222137173, что не кажется разумной отправной точкой. В общем, вы можете сделать:

dd ibs=X start=Y count=Z if=/some/disk

Копировать Z*X байт, начиная с Y*X.

0
ответ дан 24 July 2018 в 17:17
  • 1
    Что такое ibs? входные байты? и подсчет будет указывать номер байта? это более ясно, но до сих пор не знаю, как поместить адрес в начало ? как его преобразовать? конвертировать его в какой? в этот момент я потерялся – Aziz 19 December 2017 в 09:51
  • 2
    @Aziz см. Manpage: manpages.ubuntu.com/manpages/zesty/en/man1/dd.1.html Как я уже сказал, если start=Y и ibs=X, то он начинает чтение из байтов [F3]. Какая часть этого неясно? – Olorin 19 December 2017 в 10:13
  • 3
    start = Y (например, Y = 0x00000000DA88FFFF), следует ли положить его в эту форму? и для ibs = 1b, просто адрес, как его поместить? – Aziz 19 December 2017 в 10:23
  • 4
    @ Азиз, вы не сказали, что ваш адрес на самом деле, и вы даже не знаете, что это такое или что он должен подразумевать, так как я могу ответить на это? – Olorin 19 December 2017 в 10:29
  • 5
    неважно, спасибо за ваше время – Aziz 19 December 2017 в 11:34

Другие вопросы по тегам:

Похожие вопросы: