Bug 8694 - Linux swap partition may be shown as NTFS or XFS
Summary: Linux swap partition may be shown as NTFS or XFS
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: libblkid (show other bugs)
Version: unstable
Hardware: all Linux
: P2 normal
Assignee: Alexey Gladkov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-12-21 16:55 MSK by Michael Shigorin
Modified: 2013-08-15 20:31 MSK (History)
9 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Shigorin 2005-12-21 16:55:13 MSK
3.0rc10: раздел hda1 типа 82 (Linux swap) в диалоге разбиения дисков показан как
NTFS
Comment 1 Sergey V Turchin 2005-12-26 17:29:23 MSK
А файловая система на нем какая? 
Comment 2 Michael Shigorin 2005-12-26 20:42:39 MSK
Хороший вопрос; Лёша, вспомнишь?

(вообще _кажется_ -- swap ;)
Comment 3 Michael Shigorin 2007-03-31 13:31:13 MSD
Неактуально.
Comment 4 Michael Shigorin 2007-03-31 17:15:25 MSD
Или актуально?

--- azol@
2. при первой загрузке после установки получил
Mounting local filesystems
mount: mount piont swap does not exist
при этом в /etc/fstab

2а. /dev/hda1       swap    ntfs    defaults        0       0
что кажется не совсем правильно.
Comment 5 Michael Shigorin 2007-03-31 17:15:58 MSD
reassign
Comment 6 Sergey Bolshakov 2007-03-31 18:15:13 MSD
я не представляю, как этого добиться.

Comment 7 Artem Zolochevskiy 2007-03-31 18:23:08 MSD
(In reply to comment #6)
> я не представляю, как этого добиться.
> 
> 

добиться чего?

Comment 8 Sergey Bolshakov 2007-03-31 20:59:22 MSD
вот этого:
/dev/hda1       swap    ntfs    defaults        0       0
/vm там uuid пишет.
Comment 9 Artem Zolochevskiy 2007-04-01 00:13:47 MSD
(In reply to comment #8)
> вот этого:
> /dev/hda1       swap    ntfs    defaults        0       0
> /vm там uuid пишет.
> 

это "добивается" весьма просто 
берём последний server (20070330) и устанавливаемся :-)
после чего глядим в /etc/fstab

на стадии разбивки был выбран вариант server -
руками более ничего не трогалось.
Comment 10 Sergey Bolshakov 2007-04-01 01:25:08 MSD
как устанавливаемся, куда ? что было на диске до установки ?
использовался ли режим 'clear all' ?
Comment 11 Artem Zolochevskiy 2007-04-01 01:40:46 MSD
(In reply to comment #10)
> как устанавливаемся, куда ?
c СDROM на HD :-)

>что было на диске до установки ?
ничего - пустой диск (без таблицы)

> использовался ли режим 'clear all' ?
> 
нет кажется
Comment 12 Sergey Bolshakov 2007-04-01 01:48:53 MSD
а что говорит blkid на /dev/hda1 ?
Comment 13 Artem Zolochevskiy 2007-04-01 01:55:58 MSD
(In reply to comment #12)
> а что говорит blkid на /dev/hda1 ?
# blkid /dev/hda1
/dev/hda1: TYPE="ntfs"
Comment 14 Sergey Bolshakov 2007-04-01 01:58:28 MSD
восхитительно
Comment 15 Dmitry V. Levin 2007-04-01 18:58:58 MSD
Такое бывает, когда swap создаётся на месте ntfs.
Дело в том что у ntfs magic находится в самом начале раздела, а у swapfs --
далеко от начала, так что при создании swapfs на месте nfs magic последнего
сохраняется.
Тем же свойством, что и ntfs, обладают и некоторые другие fs, в т.ч.
xfs и некоторые разновидности vfat.

Пример:
# dd if=/dev/zero of=./xfs.img bs=1k count=16k
16384+0 records in
16384+0 records out
16777216 bytes (17 MB) copied, 0.102962 seconds, 163 MB/s
# losetup /dev/loop0 ./xfs.img
# mkfs.xfs /dev/loop0
meta-data=/dev/loop0             isize=256    agcount=1, agsize=4096 blks
         =                       sectsz=512  
data     =                       bsize=4096   blocks=4096, imaxpct=25
         =                       sunit=0      swidth=0 blks, unwritten=1
naming   =version 2              bsize=4096  
log      =internal log           bsize=4096   blocks=1200, version=1
         =                       sectsz=512   sunit=0 blks
realtime =none                   extsz=65536  blocks=0, rtextents=0
[root@nomad local]# mkswap /dev/loop0
Setting up swapspace version 1, size = 16773 kB
no label, UUID=ded387ed-7195-4581-b3b7-cbc5c1dd5836
[root@nomad local]# rm -f /etc/blkid.tab*
[root@nomad local]# blkid /dev/loop0
/dev/loop0: UUID="86cde600-237f-4637-86c0-c7d937e727da" TYPE="xfs" 

Вероятно, библиотека blkid для надёжного определения fs должна использовать
более точные тесты.
Comment 16 Sergey Vlasov 2007-04-01 20:14:29 MSD
В libvolume_id swap стоит раньше всех прочих типов ФС, поэтому в данном случае
vol_id выдаст ID_FS_TYPE=swap.  Ещё раньше стоят raid и lvm.
Comment 17 Dmitry V. Levin 2010-03-02 02:11:25 MSK
Тем временем библиотека libblkid переехала в util-linux-ng.
Comment 18 Alexey Gladkov 2010-03-05 00:54:02 MSK
В процессе детекта сделано много изменений.
Прошу подтвердить на libblkid-2.17.1-alt1
Comment 19 Michael Shigorin 2013-08-15 20:31:06 MSK
(В ответ на комментарий №18)
> В процессе детекта сделано много изменений.
> Прошу подтвердить на libblkid-2.17.1-alt1
Добрался до 2.22.1.

Эта бага исправилась, зато добавилась симметричная ей.  Попытался воспроизвести не в виртуалке, а на loop-файлике -- не ловится (в виртуалке blkid после mkfs.ntfs опять вернуло TYPE="swap"):

# dd if=/dev/zero of=test.img bs=1M count=100
100+0 записей получено
100+0 записей отправлено
 скопировано 104857600 байт (105 MB), 0,0261124 c, 4,0 GB/c
# losetup /dev/loop0 test.img 
# mkswap /dev/loop0
Setting up swapspace version 1, size = 102396 KiB
без метки, UUID=e95860be-5d04-43bf-8608-ae65a4c2f244
# blkid /dev/loop0
/dev/loop0: UUID="e95860be-5d04-43bf-8608-ae65a4c2f244" TYPE="swap" 
# mkfs.ntfs /dev/loop0
The partition start sector was not specified for /dev/loop0 and it could not be obtained automatically.  It has been set to 0.
The number of sectors per track was not specified for /dev/loop0 and it could not be obtained automatically.  It has been set to 0.
The number of heads was not specified for /dev/loop0 and it could not be obtained automatically.  It has been set to 0.
Cluster size has been automatically set to 4096 bytes.
To boot from a device, Windows needs the 'partition start sector', the 'sectors per track' and the 'number of heads' to be set.
Windows will not be able to boot from this device.
Initializing device with zeroes: 100% - Done.
Creating NTFS volume structures.
mkntfs completed successfully. Have a nice day.
# blkid /dev/loop0    
/dev/loop0: UUID="7E61F92246E5223F" TYPE="ntfs" 
# _

Поскольку изначально озвученная проблема решена, эту багу закрываю; спасибо!