Make-initrd development discussion
 help / color / mirror / Atom feed
From: "Антон Мидюков" <antohami@basealt.ru>
To: make-initrd@lists.altlinux.org
Subject: Re: [make-initrd] Расширение раздела с корнем
Date: Fri, 29 Nov 2024 21:13:39 +0300
Message-ID: <383e0064-3633-4410-bc86-4035084e4260@basealt.ru> (raw)
In-Reply-To: <Z0ntLVVu87KUVjuF@example.org>

29.11.2024 19:34, Alexey Gladkov пишет:
> On Fri, Nov 29, 2024 at 07:17:29PM +0300, Антон Мидюков wrote:
>> 29.11.2024 19:07, Alexey Gladkov пишет:
>>> On Fri, Nov 29, 2024 at 05:01:58PM +0100, Alexey Gladkov wrote:
>>>> On Fri, Nov 29, 2024 at 06:15:12PM +0300, Антон Мидюков wrote:
>>>>> 28.11.2024 16:04, Alexey Gladkov пишет:
>>>>>> On Wed, Nov 27, 2024 at 03:32:02PM +0100, Alexey Gladkov wrote:
>>>>>>> On Tue, Nov 26, 2024 at 05:47:15PM +0100, Alexey Gladkov wrote:
>>>>>>>>> И тому подобное бесконечно.
>>>>>>>>> Я так понимаю, неправильно обрабатывает.
>>>>>>>>> На них номер раздела буквой p отделяются от имени устройства.
>>>>>>>>> Но код пока не изучал.
>>>>>>>>
>>>>>>>> Ясно. Предположу, что у вас только mmc карта, тогда ясно почему мы висим.
>>>>>>>> kickstart ждёт блочные устройства, которые понимает.
>>>>>>>>
>>>>>>>> Вот так, думаю, будет работать:
>>>>>>>>
>>>>>>>> diff --git a/features/kickstart/data/bin/kickstart b/features/kickstart/data/bin/kickstart
>>>>>>>> index 360c485b..291b12d6 100755
>>>>>>>> --- a/features/kickstart/data/bin/kickstart
>>>>>>>> +++ b/features/kickstart/data/bin/kickstart
>>>>>>>> @@ -190,7 +190,7 @@ ks_block_devices()
>>>>>>>>                 blocktype="$(get_device_type "$maj")"
>>>>>>>>
>>>>>>>>                 case "$blocktype" in
>>>>>>>> -                       sd|virtblk)
>>>>>>>> +                       sd|virtblk|mmc)
>>>>>>>>                                 ;;
>>>>>>>>                         *)
>>>>>>>>                                 continue
>>>>>>>
>>>>>>> Весь этот код был выдуман, чтобы отфильтровать именно блочные устройства с
>>>>>>> дисками, а не все подряд. Я решил _пока_ сделать вот такой белый список.
>>>>>>>
>>>>>>> Можно смотреть на partscan, но атрибут появился только в этом году [1].
>>>>>>>
>>>>>>> $ grep ^ /sys/block/*/partscan
>>>>>>> /sys/block/loop0/partscan:0
>>>>>>> /sys/block/loop1/partscan:0
>>>>>>> /sys/block/loop2/partscan:0
>>>>>>> /sys/block/nvme0n1/partscan:1
>>>>>>>
>>>>>>> В принципе можно посмотреть на systemd [2], где решается, кажется похожая
>>>>>>> задача.
>>>>>>>
>>>>>>> [1] https://lore.kernel.org/all/20240502130033.1958492-1-hch@lst.de/
>>>>>>> [2] https://github.com/systemd/systemd/blob/main/src/shared/blockdev-util.c#L359
>>>>>>
>>>>>> Антон, не мог бы ты, если будет время, проверить изменения в for-master ?
>>>>>> Я попробовал переписать этот кусок а-ля systemd.
>>>>>>
>>>>>
>>>>> На aarch64 при загрузке с SD-карты, когда файловая система корня ext4, резайц файловой системы происходит только при второй загрузке.
>>>>> kicstart_not_resizefs.txt первая загрузка. Раздел увеличился.
>>>>> kicstart_resizefs_success.txt вторая загрузка. Файловая система увеличилась.
>>>>
>>>> А без патчей из for-master работает или проблема есть и в master ?
>>>
>>> Понятно. Это общая проблема:
>>>
>>> Из kicstart_not_resizefs.txt:
>>>
>>> ++ e2fsck -yf /dev/mmcblk1p2
>>> e2fsck 1.47.1 (20-May-2024)
>>> Pass 1: Checking inodes, blocks, and sizes
>>> Pass 2: Checking directory structure
>>> Pass 3: Checking directory connectivity
>>> Pass 4: Checking reference counts
>>> Pass 5: Checking group summary information
>>> /dev/mmcblk1p2: 36511/263472 files (0.3% non-contiguous), 603579/1051904 blocks
>>> ++ resize2fs /dev/mmcblk1p2
>>> resize2fs 1.47.1 (20-May-2024)
>>> Please run 'e2fsck -f /dev/mmcblk1p2' first.
>>>
>>> ++ ret=1
>>> ++ return 1
>>>
>>>
>>> Из kicstart_resizefs_success.txt:
>>>
>>> ++ e2fsck -yf /dev/mmcblk1p2
>>> e2fsck 1.47.1 (20-May-2024)
>>> Pass 1: Checking inodes, blocks, and sizes
>>> Pass 2: Checking directory structure
>>> Pass 3: Checking directory connectivity
>>> Pass 4: Checking reference counts
>>> Pass 5: Checking group summary information
>>> /dev/mmcblk1p2: 36535/263472 files (0.3% non-contiguous), 605515/1051904 blocks
>>> ++ resize2fs /dev/mmcblk1p2
>>> resize2fs 1.47.1 (20-May-2024)
>>> Resizing the filesystem on /dev/mmcblk1p2 to 7567872 (4k) blocks.
>>> The filesystem on /dev/mmcblk1p2 is now 7567872 (4k) blocks long.
>>>
>>> ++ return 0
>>>
>>
>> А что можно с этим поделать?
> 
> Я запушил в for-master исправление. Теперь должно работать.
> 
> https://github.com/osboot/make-initrd/commit/932f55f062e6cf7f7355b61c4da99d85f664b487
> 

Не помогло.

++ printf '%s\n' 'kickstart: Increase filesystem to partition size: /dev/mmcblk1p2'
kickstart: Increase filesystem to partition size: /dev/mmcblk1p2
++ case "$fs" in
++ e2fsck -y -p -f /dev/mmcblk1p2
/dev/mmcblk1p2: 36511/263472 files (0.3% non-contiguous), 603585/1051904 blocks
++ '[' 0 -le 2 ']'
++ resize2fs /dev/mmcblk1p2
resize2fs 1.47.1 (20-May-2024)
Please run 'e2fsck -f /dev/mmcblk1p2' first.

++ ret=1
++ return 1
+ rc=1


-- 
С уважением, Антон Мидюков <antohami@basealt.ru>


  reply	other threads:[~2024-11-29 18:13 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-16  5:23 Egor Shestakov
2024-11-16 13:28 ` Alexey Gladkov
2024-11-23 14:18   ` Антон Мидюков
2024-11-23 17:59     ` Alexey Gladkov
2024-11-24 10:34       ` Антон Мидюков
2024-11-24 12:51         ` Alexey Gladkov
2024-11-24 13:00           ` Антон Мидюков
2024-11-24 15:36           ` Антон Мидюков
2024-11-24 17:17             ` Alexey Gladkov
2024-11-24 17:29               ` Антон Мидюков
2024-11-25 19:02                 ` Антон Мидюков
2024-11-26 16:01                   ` Alexey Gladkov
2024-11-26 16:06                     ` Антон Мидюков
2024-11-26 16:32                       ` Alexey Gladkov
2024-11-26 16:47                       ` Alexey Gladkov
2024-11-26 17:22                         ` Антон Мидюков
2024-11-26 17:32                           ` Alexey Gladkov
2024-11-26 17:44                             ` Alexey Gladkov
2024-11-26 17:56                               ` Антон Мидюков
2024-11-26 18:16                                 ` Alexey Gladkov
2024-11-27 14:32                         ` Alexey Gladkov
2024-11-28 13:04                           ` Alexey Gladkov
2024-11-28 13:07                             ` Антон Мидюков
2024-11-29 15:15                             ` Антон Мидюков
2024-11-29 16:01                               ` Alexey Gladkov
2024-11-29 16:07                                 ` Alexey Gladkov
2024-11-29 16:17                                   ` Антон Мидюков
2024-11-29 16:34                                     ` Alexey Gladkov
2024-11-29 18:13                                       ` Антон Мидюков [this message]
2024-11-29 19:00                                         ` Alexey Gladkov
2024-11-29 20:10                                           ` Антон Мидюков
2024-11-29 21:39                                             ` Alexey Gladkov
2024-11-24 13:21         ` Alexey Gladkov
2024-11-24 13:22           ` Антон Мидюков
2024-11-24 13:34             ` Alexey Gladkov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=383e0064-3633-4410-bc86-4035084e4260@basealt.ru \
    --to=antohami@basealt.ru \
    --cc=make-initrd@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Make-initrd development discussion

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/make-initrd/0 make-initrd/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 make-initrd make-initrd/ http://lore.altlinux.org/make-initrd \
		make-initrd@lists.altlinux.org make-initrd@lists.altlinux.ru make-initrd@lists.altlinux.com
	public-inbox-index make-initrd

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.make-initrd


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git