handler Опубликовано 7 августа, 2009 Жалоба Поделиться Опубликовано 7 августа, 2009 Здравствуйте! OS - Fedora10 Имеем жесткий диск /dev/sda 320 Gb , на нем раздел sda8 с файлами Задача: скопировать файлы на флешку, переформатировать винт и скопировать ФАЙЛЫ (НЕ РАЗДЕЛ!) во вновь созданный раздел. Задача усложняется тем, что кодировка текущей системы не совпадает с кодировкой файлов, а так я не могу перенести файлы простым копированием. Решено перенести раздел командой dd, только как потом вернуть содержимое раздела? Вот тип исходного раздела [root@server genesis]# df -T Filesystem Type 1K-blocks Used Available Use% Mounted on /dev/sda8 xfs 195222868 195222848 20 100% /asp Я создал раздел 200Гб на /dev/sdc (sdc1), затем создал на нем файловую систему: [root@server genesis]# mkfs -t ext3 /dev/sdc1 mke2fs 1.41.3 (12-Oct-2008) /dev/sdc1 is mounted; will not make a filesystem here! [root@server genesis]# umount /media/disk/ [root@server genesis]# mkfs -t ext3 /dev/sdc1 mke2fs 1.41.3 (12-Oct-2008) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) 13115392 inodes, 52430127 blocks 2621506 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=0 1601 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872 Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 34 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. затем смонтировал: [root@server genesis]# mount /dev/sdc1 /mnt затем скопировал исходный раздел : [root@server genesis]# dd if=/dev/sda8 of=/mnt/1 bs=4K 48829559+1 records in 48829559+1 records out 200005876224 bytes (200 GB) copied, 6243.35 s, 32.0 MB/s Теперь он лежит у меня одним файлом, а как его распаковать обратно с sdc на sda (после того, как последний будет переразбит и размеры разделов не будут совпадать)? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
gogi Опубликовано 7 августа, 2009 Жалоба Поделиться Опубликовано 7 августа, 2009 Цитата: [root@server genesis]# dd if=/dev/sda8 of=/mnt/1 bs=4K Вы скопировали раздел в файл, что не есть плохо, но это не то, чего вы добивались. Перед тем, как выполнять какие-либо действия, выяснили бы для себя что такое раздел и что делает команда mount. Да и различия в кодировке не помешали бы сделать резервную комию, например таром и потом восстановить. Если же хотите продолжать начатое, то смонтируйте получившийся файл как раздел # mount -t xfs -o loop /mnt/1 точка_монтирования и копируйте файлы оттуда во вновь созданный раздел. Если же хотите восстановить не файлы, а раздел целиком, то создайте раздел (сосдавать фс и монтировать не надо) и обратное dd. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
cppmm Опубликовано 8 августа, 2009 Жалоба Поделиться Опубликовано 8 августа, 2009 А зачем такие сложности? 1. Скопируйте файлы на флешку. 2. На новой системе смонтируйте флешку с указанием текущей локали(man mount, пункты про опции монтирования вашей фс). Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
gogi Опубликовано 8 августа, 2009 Жалоба Поделиться Опубликовано 8 августа, 2009 Цитата: А зачем такие сложности? Сложности (если это сложности) я привел автору больше в образовательных целях. Стандартное решение тоже было указано - tar. Цитата: 2. На новой системе смонтируйте флешку с указанием текущей локkали(man mount, пункты про опции монтирования вашей фс). Параметры перекодирования можно указать только при монтировании чужеродных фс (vfat, ntfs, iso, ...), а также иногда jfs. В родных ext[234], reiserfs, xfs и т.д.... перекодирование не производится и имена файлов пишутся и читаются в кодировке текущей локали. PS. Не понятна фраза автора Цитата: Задача усложняется тем, что кодировка текущей системы не совпадает с кодировкой файлов, а так я не могу перенести файлы простым копированием. Если автор имел в виду, что на новой системе будет другая локаль, то совет cppmm, с флэшкой (напр. vfat) - действительно, самое простое решение. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
cppmm Опубликовано 9 августа, 2009 Жалоба Поделиться Опубликовано 9 августа, 2009 Цитата: Если автор имел в виду, что на новой системе будет другая локаль, то совет cppmm, с флэшкой (напр. vfat) - действительно, самое простое решение. Именно этот вариант я и имел ввиду. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
handler Опубликовано 16 августа, 2009 Автор Жалоба Поделиться Опубликовано 16 августа, 2009 Ответ прост - тар-архив все запаковал на внешний винт, переразбил винт и распаковал назад и кодировка не помешала, а то копированием нельзя скопировать файлы с кодировкой, отличающейся от кодировки системы. только странно что винт был 320гектар а после переразбивки стал 298гектар. Делал сначала fdisk -> mkfs -t ext3 /dev/sda1 -> mnt /dev/sda1 /mnt неужели 20 гектар ушло под журналы? fdisk показал полный объем Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Ineu Опубликовано 16 августа, 2009 Жалоба Поделиться Опубликовано 16 августа, 2009 Алексей писал(а) Sun, 16 August 2009 13:28 только странно что винт был 320гектар а после переразбивки стал 298гектар. неужели 20 гектар ушло под журналы? Нет, 20 гектар ушло под маркетинг. На винтах нынче пишут десятичные гигабайты, а не двоичные. В результате получается: 320*1000**3/1024**3 = 298 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
handler Опубликовано 23 августа, 2009 Автор Жалоба Поделиться Опубликовано 23 августа, 2009 но fdisk почему-то показал 320? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Ineu Опубликовано 23 августа, 2009 Жалоба Поделиться Опубликовано 23 августа, 2009 Алексей писал(а) Sun, 23 August 2009 12:18 но fdisk почему-то показал 320? ineu@ineu ~ % sudo fdisk /dev/sdb The number of cylinders for this disk is set to 38913. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Command (m for help): p Disk /dev/sdb: 320.1 GB, 320072933376 bytes 255 heads, 63 sectors/track, 38913 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x8849fbd7 Device Boot Start End Blocks Id System /dev/sdb1 1 38913 312568641 83 Linux Считаем: >>> 320072933376/2**30 298 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
handler Опубликовано 23 августа, 2009 Автор Жалоба Поделиться Опубликовано 23 августа, 2009 убедил Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.