[UBK dev] btrfs

Kiss Attila attus at enterpriseforever.com
2017. Feb. 14., K, 17:08:02 CET



2017-02-14 12:48 keltezéssel, Kiss Attila írta:
> a telepítőnkbe bele kellene gyógyítani a btrfs lehetőségét
Nézegetem, lehet, hogy nem is túl nagy ügy.

Csak haladók telepítenek más fájlrendszerekre, az easy mód maradhat úgy, 
ahogy van új GPT -vel és ext4 -el.

Ez a rész formáz a haladó módban:

_system 'mkfs.'.$_->{fs}->get_active_text, 
$_->{disk}->get_model->get($_->{disk}->get_active_iter, 0

Szerencsére a mkfs.btrfs parancs is létezik, nem csak a mkfs.ext típusúak.

Az {fs} elemeket meg előtte határozza meg a halandó egy választékból, 
ezt a választékot kell kibővíteni.

A 350.sorban van itt a $table_rows tömb feltöltése, ha jól látom:

     my $i = 0;
     my @fs_types = qw(ext4 swap ext3 xfs ext2 jfs);
     @fs_types = qw(ext4 ext2 ext3 swap) if ($live); # live mode
     for (@fs_types) {
         $table_rows->[$row]->{fs}->append_text($_);
         if ($_ eq $fs) {
             $table_rows->[$row]->{fs}->set_active($i);
         }
         $i++;

Itt nem értem igazán, hogy miért van két @fs_types értékadás, és hogy 
melyikbe kellne beszúrni a btrfs -t.


A 428. -ban biztosan bele kell szúrni: |jfs|xfs|btrfs/)

         } elsif ($install_type eq 'expert' and $path eq '/' and 
$rows->{fs}->get_active_text =~ /ext[234]|jfs|xfs/) {


Egy ellenőrzésbe kell beszúrni a btrfs -t a 471. sorba: ($fs = 
"ext(2,3,4), jfs, xfs, btrfs" if ($install_type eq 'expert');)

     unless ($has_root) {
         my $fs = "ext4";
         $fs = "ext(2,3,4), jfs, xfs" if ($install_type eq 'expert');
         popup('error', _("You must have a / mount point!"), _('Error'));
         return;


A fstabot haladó módban meg a 802. sortól terjedő rész hozza létre:

                 my $depth = length($path);
                 $depth = 0 if $path eq '/';
                 if ($depth == $cd) {
                     # XXX FIXME TODO /mnt helyett rendes temp dir
                     if ($fs eq 'swap') {
                         $fstab .= "$dev $fs $fs defaults 0 0\n";
                     } else {
                         push @$umounts, [$dev, '/mnt/'.$_];
                         $fstab .= "$dev $_ $fs defaults 1 1\n"
                     }
                     delete $mounts->{$_};
                 }

Ebből  is ez a rész:  $fstab .= "$dev $_ $fs defaults 1 1\n"

Ha a btrfs -nek a defaults nem jó, akkor egy újabb feltételt kell 
csinálni, hasonlóan a swap -hoz, ha jó, akkor maradhat.

És ezt a nyomorult módosított uhu_installer perl szkriptet ki is kell 
próbálni...



More information about the dev mailing list