From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on sa.local.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,RP_MATCHES_RCVD autolearn=ham autolearn_force=no version=3.4.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1732468641; bh=2tq89hhm5QdHHtUhErbO1cGHp8H9rZQbfVp77Rkl/iU=; h=Date:From:To:Subject:References:In-Reply-To:From; b=a3ybd66xcfKkPnrjI+wDgBCqG5WA22S+pK3UGcjj1wVDYAG9Wl9Us1tR8RcWAhwQz pbt3f96ZHGF4g5/ytdf4LAs4sqhxdYmVDM60gvwKn8dG0x5Lrl1DFQYjMqI/EoOd+3 NjwKlHm/MOaUq/7MCu5RmYzv2gAvA/OBCZll+va02CBF2cYj/5bbTOqmkfKwOH+y9L 8skNe8seiEecgpUrBbIjByxzV6V4wBB6BZ2/Jf4J2jNAh+hpiaImWpCq7yMCgjm5xB Gev0zv3HkdZcAUkdJjQ6q1zwT+PTOgAbgcYX1NYoNlMkvMDkU1Qh+qk+B7uMSNuLvQ FJotZDhMMbsuw== Date: Sun, 24 Nov 2024 18:17:17 +0100 From: Alexey Gladkov To: make-initrd@lists.altlinux.org Message-ID: References: <20241116122309.df5fdad73578af49341206ad@basealt.ru> <8a849bcc-e792-40e5-a558-6c8693935278@basealt.ru> <27e1acdc-8776-4089-831d-693dedc642cd@basealt.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: Subject: Re: [make-initrd] =?utf-8?b?0KDQsNGB0YjQuNGA0LXQvdC40LUg0YDQsNC30LQ=?= =?utf-8?b?0LXQu9CwINGBINC60L7RgNC90LXQvA==?= X-BeenThere: make-initrd@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: make-initrd@lists.altlinux.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 Nov 2024 17:17:26 -0000 Archived-At: List-Archive: On Sun, Nov 24, 2024 at 06:36:23PM +0300, Антон Мидюков wrote: > 24.11.2024 15:51, Alexey Gladkov пишет: > > On Sun, Nov 24, 2024 at 01:34:46PM +0300, Антон Мидюков wrote: > >> 23.11.2024 20:59, Alexey Gladkov пишет: > >>> On Sat, Nov 23, 2024 at 05:18:28PM +0300, Антон Мидюков wrote: > >>>> 3. Раздел увеличивается, но файловая система нет. Так и должно быть? Или > >>>> я что-то делаю не так. Сразу не заметил, так как в /etc/fstab был > >>>> указан параметр монтирования x-systemd.growfs, благодаря чему файловая > >>>> система расширялась systemd. > >>> > >>> Я это не реализовал так как в тот момент мне это не было нужно. Но считаю, > >>> что раз возникла потребность, то это стоит сделать. Правда пока не не знаю > >>> несколько это будет хлопотно. > >>> > >> > >> В принципе, пока можно и с x-systemd.growfs жить. Но он привязан к > >> systemd и не поддерживает, к примеру, f2fs, которая хорошо подходит для > >> флешек (что акутально для планшетов, смартфонов, одноплатников). > > > > Сначала хотел привести относительно простой патч для поддержки, но беглое > > чтение документации превратило патч вот в это: > > > > Для ext4 утилита называется не resizefs, а resize2fs. > И перед тем, как делать резайц, требуется выполнить: > e2fsck -f "$1" Да, я ошибся. Я не пробовал этот код. > Также нужно будет сделать добавление утилит в initrd. Да. Сделаешь патч ? > > diff --git a/features/kickstart/data/bin/kickstart-sh-storage b/features/kickstart/data/bin/kickstart-sh-storage > > index 2cd7b12c..5e794586 100644 > > --- a/features/kickstart/data/bin/kickstart-sh-storage > > +++ b/features/kickstart/data/bin/kickstart-sh-storage > > @@ -539,6 +539,59 @@ ks_get_dev_id() > > printf '%s\n' "$1" > > } > > > > +ks_requires_ext4=("resizefs") > > +ks_requires_xfs=("xfs_growfs") > > +ks_requires_f2fs=("resize.f2fs") > > +ks_growfs() > > +{ > > + local PROG > > + local fs="" requires="" ret=0 > > + > > + PROG="kickstart" > > + message "command: ${FUNCNAME[0]} $*" > > + > > + fs="$(blkid --output value --match-tag TYPE -c /dev/null "$1")" || > > + return 0 > > + > > + case "$fs" in > > + ext*) requires="ks_growfs_ext4" ;; > > + xfs) requires="ks_growfs_xfs" ;; > > + f2fs) requires="ks_growfs_f2fs" ;; > > + *) > > + # resize unsupported. > > + return 0 > > + ;; > > + esac > > + > > + ks_check_requires "$requires" || > > + return 1 > > + > > + verbose "Increase filesystem to partition size: $1" > > + > > + case "$fs" in > > + ext*) > > Не > > > + resizefs "$1" || > > а > > + e2fsck -f "$1" && resize2fs "$1" || > > + ret=1 > > + ;; > > + xfs) > > + mount -n -o rw,X-mount.mkdir \ > > + "$1" \ > > + "$ks_datadir/xfs.dir" > > + xfs_growfs \ > > + "$ks_datadir/xfs.dir" || > > + ret=1 > > + umount -f \ > > + "$ks_datadir/xfs.dir" > > + ;; > > + f2fs) > > + resize.f2fs "$1" || > > + ret=1 > > + ;; > > + esac > > + > > + return $ret > > +} > > + > > ks_requires_part=("numfmt" "sfdisk") > > part() > > { > > @@ -828,6 +881,8 @@ part() > > > > printf ', %s\n' "$size" | > > sfdisk -q -N "$partnum" "/dev/$dev" > > + > > + ks_growfs "/dev/$dev$partnum" > > fi > > > > if [ -n "$encrypted" ]; then > > > > > > > -- > С уважением, Антон Мидюков > _______________________________________________ > Make-initrd mailing list > Make-initrd@lists.altlinux.org > https://lists.altlinux.org/mailman/listinfo/make-initrd -- Rgrds, legion