Код: Выделить всё
diff -u /usr/lib/libDrakX/fs.orig/format.pm /usr/lib/libDrakX/fs/format.pm
--- /usr/lib/libDrakX/fs.orig/format.pm 2015-11-19 13:21:34.000000000 +1000
+++ /usr/lib/libDrakX/fs/format.pm 2016-03-28 21:51:36.000000000 +1000
@@ -25,6 +25,7 @@
'ntfs-3g' => [ 'ntfsprogs', 'mkntfs', '--fast' ],
btrfs => [ 'btrfs-progs', 'mkfs.btrfs', '-f' ],
nilfs2 => [ 'nilfs-utils', 'mkfs.nilfs2' ],
+ f2fs => [ 'f2fs-tools', 'mkfs.f2fs' ],
);
my %LABELs = ( #- option, length, handled_by_mount
@@ -42,6 +43,7 @@
'ntfs-3g' => [ '-L', 128, 0 ],
btrfs => [ '-L', 256, 1 ],
nilfs2 => [ '-L', 16, 1],
+# f2fs => [ 'f2fs-tools', 'mkfs.f2fs', '-l', '512' ],
);
my %edit_LABEL = ( # package, command, option
@@ -61,6 +63,7 @@
'ntfs-3g' => [ 'ntfsprogs', 'ntfslabel' ],
btrfs => [ 'btrfs-progs', 'btrfs', 'filesystem', 'label' ],
nilfs2 => [ 'nilfs-utils', 'nilfs-tune', '-L' ],
+# f2fs => [ 'f2fs-tools', 'mkfs.f2fs', '-l' ],
);
# Preserve UUID on fs where we couldn't enforce it while formatting
@@ -72,7 +75,7 @@
);
# List of file systems without support for bad blocks checking
-our @no_bad_blocks_check = ('reiserfs', 'xfs', 'hfs', 'ntfs', 'ntfs-3g', 'btrfs');
+our @no_bad_blocks_check = ('reiserfs', 'xfs', 'hfs', 'ntfs', 'ntfs-3g', 'btrfs', 'f2fs');
sub package_needed_for_partition_type {
my ($part) = @_;
diff -u /usr/lib/libDrakX/fs.orig/mount_options.pm /usr/lib/libDrakX/fs/mount_options.pm
--- /usr/lib/libDrakX/fs.orig/mount_options.pm 2015-11-19 13:21:34.000000000 +1000
+++ /usr/lib/libDrakX/fs/mount_options.pm 2016-03-28 21:58:13.000000000 +1000
@@ -35,7 +35,7 @@
reiserfs => [ 'notail' ],
);
push @{$per_fs{$_}}, 'usrquota', 'grpquota' foreach 'ext2', 'ext3', 'ext4', 'xfs';
- push @{$per_fs{$_}}, 'acl' foreach 'ext2', 'ext3', 'ext4', 'reiserfs';
+ push @{$per_fs{$_}}, 'acl' foreach 'ext2', 'ext3', 'ext4', 'reiserfs', 'f2fs';
while (my ($fs, $l) = each %per_fs) {
$part->{fs_type} eq $fs || $part->{fs_type} eq 'auto' && member($fs, @auto_fs) or next;
diff -u /usr/lib/libDrakX/fs.orig/mount.pm /usr/lib/libDrakX/fs/mount.pm
--- /usr/lib/libDrakX/fs.orig/mount.pm 2015-11-19 13:21:34.000000000 +1000
+++ /usr/lib/libDrakX/fs/mount.pm 2016-03-28 21:46:15.000000000 +1000
@@ -35,7 +35,7 @@
$fs or log::l("not mounting $dev partition"), return;
{
- my @fs_modules = qw(btrfs ext3 ext4 hfs jfs nilfs2 nfs ntfs romfs reiserfs ufs xfs vfat);
+ my @fs_modules = qw(btrfs ext3 ext4 hfs jfs nilfs2 nfs ntfs romfs reiserfs ufs xfs vfat f2fs);
# for kernel 3.5 and upper
my @types = (qw(ext2 proc sysfs iso9660 devpts auto ntfs-3g), @fs_modules);
# my @types = (qw(ext2 proc sysfs usbfs usbdevfs iso9660 devpts auto ntfs-3g), @fs_modules);
diff -u /usr/lib/libDrakX/fs.orig/type.pm /usr/lib/libDrakX/fs/type.pm
--- /usr/lib/libDrakX/fs.orig/type.pm 2015-11-19 13:21:34.000000000 +1000
+++ /usr/lib/libDrakX/fs/type.pm 2016-03-28 21:54:38.000000000 +1000
@@ -25,6 +25,7 @@
0x83 => 'ext3', 'Journalised FS: ext3',
0x83 => 'ext4', 'Journalised FS: ext4',
0x83 => 'reiserfs', 'Journalised FS: ReiserFS',
+ 0xba => 'f2fs', 'Fast Flash FS',
if_(arch() =~ /ppc|i.86|ia64|x86_64/,
0x83 => 'xfs', 'Journalised FS: XFS',
),
@@ -314,7 +315,7 @@
sub defaultFS() { 'ext4' }
-sub true_local_fs_types() { qw(btrfs ext3 ext2 ext4 reiserfs xfs jfs) }
+sub true_local_fs_types() { qw(btrfs ext3 ext2 ext4 reiserfs xfs jfs f2fs) }
sub isEmpty { !$_[0]{fs_type} && $_[0]{pt_type} == 0 }
sub isEfi { $_[0]{pt_type} == 0xef }
Понравилось, что пакет f2fs-tools загружается и устанавливается автоматически, после соответствующего запроса. Однако, по завершению выдаётся сообщение "Обязательный пакет f2fs-tools отсутствует". Тем не менее, утилита оказывается в системе и работает.
Что не ясно. После пары перезагрузок система начинает зависать на сообщении systemd: Started Load/Save RF kill Switch status... Приходится разрешать запись в корневую ФС
Код: Выделить всё
linux /vmlinuz-4.4.4-nrj-laptop-1rosa-i586 root=/dev/mmcblk0p6 rw