LINUX.ORG.RU

Linux, дисковое безобразие


0

2

Суть. Имеется флеш-накопитель, на который пишется загрузочная система. Предположим, беру образ OpenSuse. Беру консоль, гружу gparted - вычищаю весь dev/sdb. dd - пишу образ на накопитель. Образ работает, сюзя грузится. Подключаю данный накопитель к компьютеру - вижу ДВА (!) диска. Нет нет, я различаю устройства и разделы. При подключении флеш-драйва fdisk отображает два диска /dev/sdb и dev/sdc. Gparted видит и работает только с устройством /dev/sdb. Parted видит то же, что и gparted.

Самое весёлое. C помощью gparted выполняем полную очистку /dev/sdb (раздел которого отображается как 24Гб при 8ГБ физического объёма накопителя) и что получаем? Правильно, х** с маслом. Наш накопитель всё равно состоит из чистого /dev/sdb и /dev/sdc, который содержит образ загрузочного диска. Ах, именно его, dev/sdc видит наутил, монтирует даже. Но сделать с ним ничего нельзя.

Спасает, не поверите - офтопик. Именно его некошерная diskpart двумя командами sel disk 1 и clean превращает накопитель в девственно чистый, без единого раздела и который опять отображается как единственный /dev/sdb.

Гугл мычит, отвечает ссылками на бубунтушные хомякофорумы с решением установить гуёвую unetbootin, что не является решением. Сия г-утилита не работает со шляпами и прочими сюзями, иногда дебилана пишет нормальным. Федорина liveusb creator, кхм, г-но, флешки не грузятся. Cюзевская утилита... ну вы поняли.

Нужен хотя бы аналог clean офтопичного diskpart под линухой, а ещё лучше с объяснениями, а то я... создам свою(ТМ) ультрановую фичастую систему с нескучными обоями (R) и поддержкой кутэ, гетика, вынь и апле приложений из коробки со встроенным крузисом.

Вопрос - это я дурак? Или сани не едут? Что вообще происходит?


Ответ на: комментарий от darkenshvein

Дело не в сюзе, федорка то делает то же самое.

Glaci ()
Ответ на: комментарий от darkenshvein

Флешку специально выбирал без быдлозащитных систем, была чистая при покупке. Записал образ fedora через dd. После него накопитель отображается как одно устройство, но после полной очистки диска gparted и parted остаётся злосчастный «неизвестный диск». Вот выхлоп mount:

[root@Fedora-PC ~]# mount
... (тут ненужная бурда)
/dev/sdb on /run/media/glaci/Fedora 20 x86_64 type iso9660 (ro,nosuid,nodev,relatime,uid=1000,gid=1000,iocharset=utf8,mode=0400,dmode=0500,uhelper=udisks2)

Листинг fdisk:

[root@Fedora-PC ~]# fdisk -l

Disk /dev/sda: 465,8 GiB, 500107862016 bytes, 976773168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x000b3fd9

Устр-во   Загрузочный     Start Конец    Blocks  Id System
... (не нужно)
Disk /dev/sdb: 7,5 GiB, 8011120640 bytes, 15646720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x000b36ed

Наутил: http://i57.fastpic.ru/big/2014/0111/69/96650d06b41d25b12e19275c3382c869.jpeg

Gparted: http://i60.fastpic.ru/big/2014/0111/7d/231f20d4f4c09f4b1765ab8fba4cdf7d.jpeg

Этот «раздел» (или что это?) отображается как iso9660, тоесть оптический диск. Lolwut?

Glaci ()
Ответ на: комментарий от Glaci

Этот «раздел» (или что это?) отображается как iso9660, тоесть оптический диск.

Ну как вы хотите, что бы он отображался ? Вы на накопитель переносите посекторно iso образ с файловой системой iso9660, как ни странно, с чего бы это ...

Ну и нужно пользоваться ни какими там liveusb creator или прочим.

Создайте на флеш накопителе раздел, сделайте его активным, на нём файловую систему FAT32, установите в качестве загрузчика syslinux или grub.

И создайте конфиг, с примерно таким содержимым:

title Fedora 19-1 KDE x86
kernel /boot/Fedora/kde/vmlinuz0 root=live:UUID=116D-ED1C rootfstype=auto ro rd.live.image quiet  rhgb rd.luks=0 rd.md=0 rd.dm=0 rd.live.dir=boot/Fedora/kde rd.live.overlay=LABEL=LIVE net.ifname=0
initrd /boot/Fedora/kde/initrd0.img 

title Fedora 19-1 Gnome x86
kernel /boot/Fedora/Gnome/vmlinuz0 root=live:UUID=116D-ED1C rootfstype=auto ro rd.live.image quiet  rhgb rd.luks=0 rd.md=0 rd.dm=0 rd.live.dir=boot/Fedora/Gnome net.ifname=0
initrd /boot/Fedora/Gnome/initrd0.img 

title Fedora 19-1 Xfce x86
kernel /boot/Fedora/xfce/vmlinuz0 root=live:UUID=116D-ED1C rootfstype=auto ro rd.live.image quiet  rhgb rd.luks=0 rd.md=0 rd.dm=0 rd.live.dir=boot/Fedora/xfce net.ifname=0
initrd /boot/Fedora/xfce/initrd0.img 

title Fedora 20-1 KDE x86
kernel /boot/Fedora/20/kde/vmlinuz0 root=live:UUID=116D-ED1C rootfstype=auto ro rd.live.image quiet  rhgb rd.luks=0 rd.md=0 rd.dm=0 rd.live.dir=boot/Fedora/20/kde rd.live.overlay=LABEL=LIVE net.ifname=0
initrd /boot/Fedora/20/kde/initrd0.img 

title Fedora 20-1 Gnome x86
kernel /boot/Fedora/20/Gnome/vmlinuz0 root=live:UUID=116D-ED1C rootfstype=auto ro rd.live.image quiet  rhgb rd.luks=0 rd.md=0 rd.dm=0 rd.live.dir=boot/Fedora/20/Gnome net.ifname=0
initrd /boot/Fedora/20/Gnome/initrd0.img
Это конфиг для grub.

Файлы с образа в примерах поместите в boot/Fedora/20/kde или boot/Fedora/20/Gnome, по аналогии.

Файлы нужны вот эти:

initrd0.img
osmin.img
vmlinuz0
squashfs.img
osmin.img можно не копировать.

Для syslinux делайте конфиг по аналогии.

kostik87 ★★★★★ ()
Ответ на: комментарий от kostik87

Понимаю, что посекторно, но интересует другой вопрос. Каким образом это чудо отображается при отсутствующей главной записи диска? Хотя.. Умеет ли хоть одна из утилит gparted или parted удалять mbr? Именно это делает команда clean у diskpart. Здесь же я выполняю mktable - это ведь должно быть аналогом той команды? Эксперимент. Отмонтировал /dev/sdb, на чистой (по словам gparted) создаю таблицу gpt, потом таблицу mbr и создаю раздел fat32. Только таким бубном исчез проклятый iso9660 с накопителя, хотя от него осталась метка, которая, опять же, не убирается очисткой раздела - новый созданный раздел без указания метки всё равно будет иметь метку «Fedora x86-64..» Я в а*уе..

Glaci ()
Ответ на: комментарий от kostik87

Или мне нужно ждать овер9000 часов, чтобы записать нулями весь накопитель? Я ведь даже не знаю точного кол-ва байт на нём x_x

Glaci ()
Ответ на: комментарий от Andrew

Таблица то как раз существует и помещается во все мои 512 байт, на разделы же места нет.

Glaci ()
Ответ на: комментарий от Glaci

Нужно стереть и gpt таблицу.

Тут я вам особо не подскажу, но думаю попробуйте затереть первые 128 секторов:

dd if=/dev/zero of=/dev/sdb bs=512 count=128
И 128 последних, для этого в начале посмотрите сколько секторов на вашем диске, воспользуйтесь fdisk -l ну и затрите последдние 128:
dd if=/dev/zero of=/dev/sdb bs=512 seek=число_секторо минус 128
После переподключите накопитель и дайте команду partprobe.

kostik87 ★★★★★ ()
Ответ на: комментарий от Spider_xp

Он вроде бы уже был.

Disk /dev/sdb: 512 B, 512 bytes, 1 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x000d9f02

Glaci ()
Ответ на: комментарий от Glaci

Disk /dev/sdb: 512 B, 512 bytes, 1 sectors

Фигня какая-то, вот и нет у вас места для создания разделов средствами fdisk, т.к. /dev/sdb у вас размером всего один сектор.

kostik87 ★★★★★ ()
Ответ на: комментарий от kostik87

По какой-то незримой причине размер накопителя становится таким же, сколько секторов прописывается dd. Соответственно, после count=128 и 512б секторе моя флешка стала 64 килобайтной. В конце ничего прописать не могу - fdisk гарантирует, что на устройстве только 128 секторов.

Glaci ()
Ответ на: комментарий от Glaci

Ну значит либо контроллер вашей флешки там себя специфически ведёт, в особенности после применения LiveUSB Creator`а, либо сбоит ваш Linux.

Вы команду partprobe делали ?

Ну на крайний случае воспользуйтесь опять Windows, удалите всё.

Ну а затем средствами fdisk в Linux создайте один раздел и следуйте написанному выше. Ну и не нужно создавать gpt таблицу.

kostik87 ★★★★★ ()
Ответ на: комментарий от kostik87

Причём я уверен, что если доберусь сейчас до офтопика и напишу там clean в терминале консоли - все проблемы исчезнут. Такое на уме крутится: этот накопитель обладает некой сверхмегановым нескучным контролером, который специально заточен под форточки, но выдрючивается тут. Возможно ли такое?

Glaci ()

C помощью gparted выполняем полную очистку /dev/sdb

Скриншоты это, конечно, удел вендусятников, но тут не промахнешься.

http://4put.ru/pictures/max/826/2537944.jpg

После того как на флешку алью бубунту через dd, этим ее и вычищаю.

А ТС ниосилятор.

roman77 ★★★★★ ()
Последнее исправление: roman77 (всего исправлений: 1)
Ответ на: комментарий от Glaci

Ну значит, воспользуйтесь Windows для возвращения накопителю первоначального вида.

Ну а потом ни конда не пользуйтесь всяким Creator`ами. Возможно есть нюанс в самом гибридном образе и какой-либо опции ядра.

Для более точных ответов можете изучить код используемого вам Creator`а, что бы понять что он делает.

kostik87 ★★★★★ ()
Ответ на: комментарий от Glaci

Тред не читал, сразу написал.

Данный способ работает, хотя иногда коряво.

Можно еще mkfs.ext2 -i (или l) /dev/sdb, потом (через gparted) создать нужный раздел,

roman77 ★★★★★ ()
Ответ на: комментарий от kostik87

Креаторы.. Самый нормальный кретор это unetbootin. Он, как я понял, копирует образы на файловую систему раздела и вставляет свой syslinux, тоесть он не дёргает mbr. Fedora live usb creator то же, кстати ,не дёргает, только вот созданная с его помощью флешка не грузится ( как и с помощью unetbootin). Утилита сюзевская совсем печальная - пишет только в RAW раздел. Не понимаю, почему нормальный дистрибутив Debian грузиться простым копированием на флешку (что делает unetbootin), а федоры и сюзи так не умеют. Мне выше описывали ручной способ создания загрузочной флешки - ведь именно это и делает unetbootin, только не grub, а syslinux.

Glaci ()
Ответ на: комментарий от Glaci

Всегда флешку после dd реанимировал через gparted.

1) Вставляешь флешку, не монтируешь.

http://i58.fastpic.ru/big/2014/0111/ab/a0c2b0ff48c708425df33dc862e9f9ab.png

2) Запускаешь gparted, он начинает срать кирпичами, жмёшь нет или игнорировать.

http://i58.fastpic.ru/big/2014/0111/54/3aafd763fedfb4891cc3036def2f9e54.png

3) Находишь флешку в gparted.

http://i60.fastpic.ru/big/2014/0111/6e/d5bca691621b0da7417d7f0ceeca716e.png

4) В меню устройство жмёшь создать таблицу разделов, gparted опять начинает срать, жмёшь нет.

http://i58.fastpic.ru/big/2014/0111/8d/e9abd7e480ad81e7ad803adccaf1b88d.png

5) Далее, создать раздел к примеру fat32

http://i58.fastpic.ru/big/2014/0111/af/cfa9772073d74c6cc27beac1c9e0cfaf.png

6) Когда операция завершится, нужно закрыть gparted и не заходя ни куда выдрать флешку из компа и заного воткнуть.

7) Profit

http://i58.fastpic.ru/big/2014/0111/c0/a33d6093c3045bf705e9dfe022c256c0.png

sergio1204 ★★ ()
Ответ на: комментарий от Glaci

unetbootin. Он, как я понял, копирует образы на файловую систему раздела и вставляет свой syslinux

Если образ копируется посекторно, по аналогии с dd, то ставить syslinux уже не нужно, а если копируются файлы на созданный fat32 раздел, то уже затем нужно ставить syslinux.

тоесть он не дёргает mbr

См. выше.

Не понимаю, почему нормальный дистрибутив Debian грузиться простым копированием на флешку (что делает unetbootin), а федоры и сюзи так не умеют.

Ну видимо потому, что у Debian гибридный образ, а у Fedora и Suse нет, возможно ещё своё влияние оказывает GPT и UEFI, если у вас они, но это предположение.

Мне выше описывали ручной способ создания загрузочной флешки - ведь именно это и делает unetbootin, только не grub, а syslinux.

Не знаю точно, что там делают эти Creator`ы, предпочитаю делать способом, который я описал выше. Вы же можете поступать как хотите, сношаться с Creator`ами и ломать голову или сделать так, как я вам написал. Тем более это копия с моего LiveUSB накоптеля, который сделан описанным способом, на нём ещё несколько систем и прочих утилит.

kostik87 ★★★★★ ()
Ответ на: комментарий от sergio1204

После п.4 у меня 64 кб размер диска. Хочу Ваши шрифты.

Вывод:

у меня очередной быдлодевайс. Заипали, чеслово. Выбрал более менее нормальный бук из многочисленного г-на. Маленький, производительный, нормальная клавиатура, интеловское видео (что решает все проблемы, был бы нормальный и не проприетарный драйвер). Всё хорошо, только... я не хочу, блдаж, платить за форточки, ещё и профессиональной версии. Не хочу(!) платить за ОСь, которой не буду пользоваться. Компутер явно был бы дешевле более чем на 100 зелёных. Получается, что с тегом bsd/linux/meego/безОС идут буки для африк, а более менее нормальные с форточками.

Glaci ()
Ответ на: комментарий от Glaci

Хочу Ваши шрифты.

Dejavu sans / сглаживание включено / стиль хитинга полный.

sergio1204 ★★ ()
Ответ на: комментарий от kostik87

Вообще для этих целей хороши тёплые и ламповые диски. Помню когда пришёл на эти ваши линуксы очень много бегал по разным дистрибутивам и постоянно возвращался к дебиану. Запаривало тогда постоянно переписывать флешку. Писал бы дистры на диски - не было бы проблем. Сегодня же давно определён - федорка работает, тьфу тьфу, необходимости в наличии дистрибутива под рукой нет (кроме одного лайва для исключительных случаев). Так что поставлю федору человеку, которого перевёл на сторону бобра и на этом прекращу сношение и издевательства над накопителем.

Glaci ()
Ответ на: комментарий от roman77

Простое создание MBR не очищает «оставшийся» раздел образа, там нужно записать нулями для надежности несколько мб.

bhfq ★★★★★ ()
Ответ на: комментарий от Glaci

Вообще для этих целей хороши тёплые и ламповые диски.

Но занимают куда больше места и скорость считывания с них меньше, как следствие медленнее загрузка Live системы и установка. Опять же требует времени на запись диска. Если диске не перезаписываемый, то в случае выхода новой версии дистрибутива вы вынуждены записывать новый диск. Если диске перезаписываемый, то вы вынуждены тратить время на стирания диска и медленную запись.

Помню когда пришёл на эти ваши линуксы очень много бегал по разным дистрибутивам и постоянно возвращался к дебиану.

Debian был моим первым дистрибутивом, все прочие Fedora, Ubuntu, Suse, прочее были отметены. Debian был выбран за свою стабильность, лаконичность, следование традициям, в том плане, что в нём мало, что меняется. Затем я перешёл на Gentoo, прочие дистрибутивы были опять же отметены из-за ограничения свободы и трудности в устранинии возникающих проблем. И того Debian - 4 года использования и Gentoo уже тоже где-то года 4, если не больше.

Сегодня же давно определён - федорка работает, тьфу тьфу,

Работает-то она работает, только у Fedora последнее время идёт тенденция упрощения утилиты установки и жёсткое ограничение пользователя. В том плане, что хотя бы даже выбор места установки и контейнеров размещения файловых систем жёско ограничен, не считая уже всё прочее. Опять же в любой момент времени может слететь всё, что угодно: перестать запускаться xorg-server, к примеру из-за проблемы в mesa, перезаписи после обновления библиотек, проблемы с загрузчиком, установки новой версии ядра, прочего. Нет, я ставил Fedora на ноутбук, нужно быстро развернуть систему, но столкнулся с описанными выше проблемами после первого же обновления, я их, конечно устранил, довольно быстро, минут 10, но это благодаря тому, что есть уже некоторый опыт использования Linux, уже знал какие логи и где смотреть. В итоге причиной оказался mesa, который не до обновился и не работал с новой версией xorg-server`а, пришлось переустанавливать все пакеты, имеющие отношение к mesa. Загрузчик так же довольно быстро восстановил в chroot. Но я решил, что мне не нужна система, которая после обновления приходит в нерабостоспособное состояние. В итоге сейчас на ноутбуке стоит Gentoo и с ней нет этих проблем, она как ни странно вам может показаться куда более стабильно себя ведёт.

Так что поставлю федору человеку, которого перевёл на сторону бобра и на этом прекращу сношение и издевательства над накопителем.

Вот поэтому у меня и установлен Grub на флешку и я без особых проблем добавляю, удаляю, обновляю на флешке дистрибутивы. В особенности не пользуюсь Creator`ами, которые создают куда больше проблем и не использую диски. Чего и вам желаю.

kostik87 ★★★★★ ()
Ответ на: комментарий от bhfq

Зачем ? Просто создаёте запись с новым разделом в таблице разделов и создаёте на разделе файловую систему.

kostik87 ★★★★★ ()
Ответ на: вредные советы от BMX

Тогда уж для ускорения перезаписывания всей флешке хотя бы укажите размер блока для записи побольше, скажем 4Мб:

dd if=/dev/zero of=/dev/sdb bs=4M

kostik87 ★★★★★ ()
Ответ на: комментарий от kostik87

Новости. Dd, по идее, можно передать любое кол-во байт на запись. Скормил ему 8G. Что Вы думаете? Он уперся на 2935849, «На устройстве не осталось свободного места». Таким образом, моя флешка на 1.4 Гиб, прогрес на лицо.

Glaci ()
Ответ на: комментарий от kostik87

Согласен с Вами, для разметки перед установкой использовал gparted, а не anaconda. Почему то эта змея делает хомяк первым на диске, даже если создавать системный раздел первым. В результате, имеем системный раздел в конце диска со скоростью чтения в раза два меньше, чем у файлопомоечного раздела.

Glaci ()
Ответ на: комментарий от Glaci

Скормил ему 8G

Не надо так делать. Укажите 4М (4 мегабайта) и подождите минуты 2.

В параметре bs указывается размер блоков, которые будут записываться на устройство.

В count - число блоков, которое будет записано. Если он не указан, то блоки будут записываться до тех пор, пока на приёмнике не закончится место.

kostik87 ★★★★★ ()
Последнее исправление: kostik87 (всего исправлений: 1)
Ответ на: комментарий от Glaci

Флешку специально выбирал без быдлозащитных систем, была чистая при покупке. Записал образ fedora через dd. После него накопитель отображается как одно устройство, но после полной очистки диска gparted и parted остаётся злосчастный «неизвестный диск».

Боже, я думал что-то серьезное. А ТС-то не знает, как очищать флешечку после dd. Заюзай fdisk, очисти там все лишнее, переподключи флешку обратно и пересоздай ФС с помощью mkfs.

Я сам так лечил.

RedEyedMan3 ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.