diff options
Diffstat (limited to 'perl-install/fs/mount_options.pm')
-rw-r--r-- | perl-install/fs/mount_options.pm | 38 |
1 files changed, 20 insertions, 18 deletions
diff --git a/perl-install/fs/mount_options.pm b/perl-install/fs/mount_options.pm index 9e3f5e767..0b63f7260 100644 --- a/perl-install/fs/mount_options.pm +++ b/perl-install/fs/mount_options.pm @@ -1,4 +1,4 @@ -package fs::mount_options; # $Id$ +package fs::mount_options; use diagnostics; use strict; @@ -35,14 +35,14 @@ sub unpack { reiserfs => [ 'notail' ], ); push @{$per_fs{$_}}, 'usrquota', 'grpquota' foreach 'ext2', 'ext3', 'ext4', 'xfs'; + push @{$per_fs{$_}}, 'acl' foreach 'ext2', 'ext3', 'ext4', 'reiserfs'; while (my ($fs, $l) = each %per_fs) { - $part->{fs_type} eq $fs || $part->{fs_type} eq 'auto' && member($fs, @auto_fs) or next; + member($part->{fs_type}, $fs, 'auto') && member($fs, @auto_fs) or next; $non_defaults->{$_} = 1 foreach @$l; } $non_defaults->{relatime} = 1 if isTrueLocalFS($part) || $part->{fs_type} eq 'ntfs-3g'; - $non_defaults->{encrypted} = 1; my $defaults = { reverse %$non_defaults }; my %options = map { $_ => '' } keys %$non_defaults; @@ -103,6 +103,7 @@ sub pack_ { } sub pack { my ($part, $options, $unknown) = @_; + $unknown =~ s/ /,/g; $part->{options} = pack_($part, $options, $unknown) || 'defaults'; noreturn(); } @@ -110,39 +111,38 @@ sub pack { # update me on each util-linux new release: sub help() { ( - - 'encrypted' => N("Use an encrypted file system"), + 'acl' => N("Enable POSIX Access Control Lists"), 'flush' => N("Flush write cache on file close"), 'grpquota' => N("Enable group disk quota accounting and optionally enforce limits"), - 'noatime' => N("Do not update inode access times on this file system + 'noatime' => N("Do not update inode access times on this filesystem (e.g, for faster access on the news spool to speed up news servers)."), 'relatime' => N("Update inode access times on this filesystem in a more efficient way (e.g, for faster access on the news spool to speed up news servers)."), 'noauto' => N("Can only be mounted explicitly (i.e., -the -a option will not cause the file system to be mounted)."), +the -a option will not cause the filesystem to be mounted)."), - 'nodev' => N("Do not interpret character or block special devices on the file system."), + 'nodev' => N("Do not interpret character or block special devices on the filesystem."), 'noexec' => N("Do not allow execution of any binaries on the mounted -file system. This option might be useful for a server that has file systems +filesystem. This option might be useful for a server that has filesystems containing binaries for architectures other than its own."), 'nosuid' => N("Do not allow set-user-identifier or set-group-identifier bits to take effect. (This seems safe, but is in fact rather unsafe if you have suidperl(1) installed.)"), - 'ro' => N("Mount the file system read-only."), + 'ro' => N("Mount the filesystem read-only."), - 'sync' => N("All I/O to the file system should be done synchronously."), + 'sync' => N("All I/O to the filesystem should be done synchronously."), - 'users' => N("Allow every user to mount and umount the file system."), + 'users' => N("Allow every user to mount and umount the filesystem."), - 'user' => N("Allow an ordinary user to mount the file system."), + 'user' => N("Allow an ordinary user to mount the filesystem."), 'usrquota' => N("Enable user disk quota accounting, and optionally enforce limits"), @@ -187,7 +187,6 @@ sub set_default { if (!$opts{ignore_is_removable} && $part->{is_removable} && !member($part->{mntpoint}, fs::type::directories_needed_to_boot()) && (!$part->{fs_type} || $part->{fs_type} eq 'auto' || $part->{fs_type} =~ /:/)) { - $options->{supermount} = 0; #- always disable supermount $part->{fs_type} = 'auto'; $options->{flush} = 1 if $part->{media_type} ne 'cdrom'; } @@ -205,10 +204,10 @@ sub set_default { #- noatime on laptops (do not wake up the hd) #- otherwise relatime (wake up the hd less often / better performances) #- Do not update inode access times on this - #- file system (e.g, for faster access on the + #- filesystem (e.g, for faster access on the #- news spool to speed up news servers). $options->{relatime} = $options->{noatime} = 0; - $options->{detect_devices::isLaptop() ? 'noatime': 'relatime'} = 1 if !$opts{force_atime}; + $options->{ detect_devices::isLaptop() ? 'noatime' : 'relatime' } = 1 if !$opts{force_atime}; } if ($part->{fs_type} eq 'nfs') { put_in_hash($options, { @@ -225,13 +224,13 @@ sub set_default { }) if $part->{is_removable}; put_in_hash($options, { - 'umask=0' => $opts{security} <= 3, + 'umask=0' => $opts{security} <= 1 && !isESP($part), 'iocharset=' => $opts{iocharset}, 'codepage=' => $opts{codepage}, }); } if ($part->{fs_type} eq 'ntfs') { put_in_hash($options, { ro => 1, 'nls=' => $opts{iocharset}, - 'umask=0' => $opts{security} < 3, 'umask=0022' => $opts{security} < 4, + 'umask=0' => $opts{security} < 1, 'umask=0022' => $opts{security} < 2, }); } if (fs::type::can_be_this_fs_type($part, 'iso9660')) { @@ -241,6 +240,9 @@ sub set_default { $options->{notail} = 1; $options->{user_xattr} = 1; } + if (member($part->{fs_type}, qw(ext2 ext3 ext4))) { + $options->{acl} = 1; + } if (isLoopback($part) && !isSwap($part)) { #- no need for loop option for swap files $options->{loop} = 1; } |