Bug 5302 - parted неверно определяет количество разделов на диске
: parted неверно определяет количество разделов на диске
Status: CLOSED FIXED
: Sisyphus
(All bugs in Sisyphus/parted)
: unstable
: all Linux
: P2 normal
Assigned To:
:
:
:
:
: 5305
  Show dependency tree
 
Reported: 2004-10-10 19:21 by
Modified: 2007-07-19 16:54 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2004-10-10 19:21:07
# fdisk -l /dev/sda

Disk /dev/sda: 16 MB, 16034304 bytes
1 heads, 31 sectors/track, 1010 cylinders
Units = cylinders of 31 * 512 = 15872 bytes

Disk /dev/sda doesn't contain a valid partition table

но при этом:
# parted /dev/sda
GNU Parted 1.6.15
Copyright (C) 1998 - 2004 Free Software Foundation, Inc.
This program is free software, covered by the GNU General Public License.

This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.  See the GNU General Public License for more details.

Using /dev/sda
(parted) p                                                                
Disk geometry for /dev/sda: 0.000-15.291 megabytes
Disk label type: loop
Minor    Start       End     Filesystem  Flags
1          0.000     15.291  ext3 

На диске же в реальности нет ни одного раздела - он сам весь из себя
представляет один раздел с одной файловой системой.


В итоге, например, qtparted отображает информацию об /dev/sda1, хотя такого нет
и в помине.
------- Comment #1 From 2004-10-10 19:22:13 -------
2inger: это грозит наличием в инсталлере ошибки.
------- Comment #2 From 2004-10-10 20:20:37 -------
ped_disk_get_primary_partition_count также вовзращает ошибочное количество
разделов. На устройстве нет вообще разделов, просто создана файловая система.
Возвращается один раздел ;-(
------- Comment #3 From 2004-10-11 12:35:52 -------
Ну что ж будем разбираться. Это флешка? 
Надо всё это по хорошему пробивать в upstream. 
Как доберёмся до этой стадии - посмотрим по подробнее чем можно исправить. 
 
------- Comment #4 From 2004-10-11 14:03:53 -------
(In reply to comment #3)
> Ну что ж будем разбираться. Это флешка? 
Да. Но с любыми другими block устройствами будет то-же самое.
> Надо всё это по хорошему пробивать в upstream. 
> Как доберёмся до этой стадии - посмотрим по подробнее чем можно исправить. 
>  

Вся проблема в том, что libparted оперирует разделами жесткого диска. При этом
похоже они сделали workaround для тех случаев, когда разделов как таковых нет
(нет таблицы разделов). Только вот как сделать правильно - совсем не понятно,
ибо кончается это тем, что архитектура libparted не позволяет работать с
устройствами без таблицы разделов.

------- Comment #5 From 2006-10-28 17:56:32 -------
reassign
------- Comment #6 From 2006-11-06 13:11:57 -------
(In reply to comment #5)
> reassign

проблема ещё актуальна?
------- Comment #7 From 2006-11-07 11:49:31 -------
наверное актуальна
2lioka: глянь плз.
------- Comment #8 From 2006-11-15 11:12:46 -------
(In reply to comment #0)

> # parted /dev/sda
............
> Using /dev/sda
> (parted) p                                                                
> Disk geometry for /dev/sda: 0.000-15.291 megabytes
> Disk label type: loop
> Minor    Start       End     Filesystem  Flags
> 1          0.000     15.291  ext3 
> 
> На диске же в реальности нет ни одного раздела - он сам весь из себя
> представляет один раздел с одной файловой системой.

Согласно parted.info, "Disk label type: loop" означает:
loop (raw disk access)

> В итоге, например, qtparted отображает информацию об /dev/sda1, хотя такого 
нет
> и в помине.

То, что qtparted неправильно (по-вашему мнению) обрабатывает информацию, 
предоставляемую parted'ом (а точнее - libparted'ом) - это уже проблема qtparted 
(и в gparted, похоже, та же ситуация).
Исходя из вышесказанно, повесте, пожалуйста, соответствующие баги на 
qtparted/gparted (закрыв текущую) с описание предполагаемого правильного их 
поведения в случае "Disk label type: loop"
------- Comment #9 From 2006-11-23 12:25:51 -------
Я так понял, что это уже никого не интересует, поэтому багу я закрываю, как 
несуществующую. То, что фронтэнды к libparted некорректно обрабатывают 
результаты функций libparted ИМХО вины последнего нет.
Перевешивайте баги на фронтэнды (qtparted/gparted/etc) - соотв. патч для 
qtparted я уже сделал.