Struct sys_mount::MountFlags
source · [−]pub struct MountFlags { /* private fields */ }
Expand description
Flags which may be specified when mounting a file system.
Implementations
sourceimpl MountFlags
impl MountFlags
sourcepub const BIND: Self
pub const BIND: Self
Perform a bind mount, making a file or a directory subtree visible at another point within a file system. Bind mounts may cross file system boundaries and span chroot(2) jails. The filesystemtype and data arguments are ignored. Up until Linux 2.6.26, mountflags was also ignored (the bind mount has the same mount options as the underlying mount point).
sourcepub const DIRSYNC: Self
pub const DIRSYNC: Self
Make directory changes on this file system synchronous.(This property can be obtained for individual directories or subtrees using chattr(1).)
sourcepub const MANDLOCK: Self
pub const MANDLOCK: Self
Permit mandatory locking on files in this file system. (Mandatory locking must still be enabled on a per-file basis, as described in fcntl(2).)
sourcepub const MOVE: Self
pub const MOVE: Self
Move a subtree. source specifies an existing mount point and target specifies the new location. The move is atomic: at no point is the subtree unmounted. The filesystemtype, mountflags, and data arguments are ignored.
sourcepub const NOATIME: Self
pub const NOATIME: Self
Do not update access times for (all types of) files on this file system.
sourcepub const NODIRATIME: Self
pub const NODIRATIME: Self
Do not update access times for directories on this file system. This flag provides a subset of the functionality provided by MS_NOATIME; that is, MS_NOATIME implies MS_NODIRATIME.
sourcepub const NOSUID: Self
pub const NOSUID: Self
Do not honor set-user-ID and set-group-ID bits when executing programs from this file system.
sourcepub const RELATIME: Self
pub const RELATIME: Self
When a file on this file system is accessed, only update the file’s last access time (atime) if the current value of atime is less than or equal to the file’s last modification time (mtime) or last status change time (ctime). This option is useful for programs, such as mutt(1), that need to know when a file has been read since it was last modified. Since Linux 2.6.30, the kernel defaults to the behavior provided by this flag (unless MS_NOATIME was specified), and the MS_STRICTATIME flag is required to obtain traditional semantics. In addition, since Linux 2.6.30, the file’s last access time is always updated if it is more than 1 day old.
sourcepub const REMOUNT: Self
pub const REMOUNT: Self
Remount an existing mount. This allows you to change the mountflags and data of an existing mount without having to unmount and remount the file system. target should be the same value specified in the initial mount() call; source and filesystemtype are ignored.
The following mountflags can be changed: MS_RDONLY, MS_SYNCHRONOUS, MS_MANDLOCK; before kernel 2.6.16, the following could also be changed: MS_NOATIME and MS_NODIRATIME; and, additionally, before kernel 2.4.10, the following could also be changed: MS_NOSUID, MS_NODEV, MS_NOEXEC.
sourcepub const SILENT: Self
pub const SILENT: Self
Suppress the display of certain (printk()) warning messages in the kernel log. This flag supersedes the misnamed and obsolete MS_VERBOSE flag (available since Linux 2.4.12), which has the same meaning.
sourcepub const STRICTATIME: Self
pub const STRICTATIME: Self
Always update the last access time (atime) when files on this file system are accessed. (This was the default behavior before Linux 2.6.30.) Specifying this flag overrides the effect of setting the MS_NOATIME and MS_RELATIME flags.
sourcepub const SYNCHRONOUS: Self
pub const SYNCHRONOUS: Self
Make writes on this file system synchronous (as though the O_SYNC flag to open(2) was specified for all file opens to this file system).
sourcepub const fn from_bits(bits: c_ulong) -> Option<Self>
pub const fn from_bits(bits: c_ulong) -> Option<Self>
Convert from underlying bit representation, unless that representation contains bits that do not correspond to a flag.
sourcepub const fn from_bits_truncate(bits: c_ulong) -> Self
pub const fn from_bits_truncate(bits: c_ulong) -> Self
Convert from underlying bit representation, dropping any bits that do not correspond to flags.
sourcepub const unsafe fn from_bits_unchecked(bits: c_ulong) -> Self
pub const unsafe fn from_bits_unchecked(bits: c_ulong) -> Self
Convert from underlying bit representation, preserving all bits (even those not corresponding to a defined flag).
Safety
The caller of the bitflags!
macro can chose to allow or
disallow extra bits for their bitflags type.
The caller of from_bits_unchecked()
has to ensure that
all bits correspond to a defined flag or that extra bits
are valid for this bitflags type.
sourcepub const fn intersects(&self, other: Self) -> bool
pub const fn intersects(&self, other: Self) -> bool
Returns true
if there are flags common to both self
and other
.
sourcepub const fn contains(&self, other: Self) -> bool
pub const fn contains(&self, other: Self) -> bool
Returns true
if all of the flags in other
are contained within self
.
sourcepub fn set(&mut self, other: Self, value: bool)
pub fn set(&mut self, other: Self, value: bool)
Inserts or removes the specified flags depending on the passed value.
sourcepub const fn intersection(self, other: Self) -> Self
pub const fn intersection(self, other: Self) -> Self
Returns the intersection between the flags in self
and
other
.
Specifically, the returned set contains only the flags which are
present in both self
and other
.
This is equivalent to using the &
operator (e.g.
ops::BitAnd
), as in flags & other
.
sourcepub const fn union(self, other: Self) -> Self
pub const fn union(self, other: Self) -> Self
Returns the union of between the flags in self
and other
.
Specifically, the returned set contains all flags which are
present in either self
or other
, including any which are
present in both (see Self::symmetric_difference
if that
is undesirable).
This is equivalent to using the |
operator (e.g.
ops::BitOr
), as in flags | other
.
sourcepub const fn difference(self, other: Self) -> Self
pub const fn difference(self, other: Self) -> Self
Returns the difference between the flags in self
and other
.
Specifically, the returned set contains all flags present in
self
, except for the ones present in other
.
It is also conceptually equivalent to the “bit-clear” operation:
flags & !other
(and this syntax is also supported).
This is equivalent to using the -
operator (e.g.
ops::Sub
), as in flags - other
.
sourcepub const fn symmetric_difference(self, other: Self) -> Self
pub const fn symmetric_difference(self, other: Self) -> Self
Returns the symmetric difference between the flags
in self
and other
.
Specifically, the returned set contains the flags present which
are present in self
or other
, but that are not present in
both. Equivalently, it contains the flags present in exactly
one of the sets self
and other
.
This is equivalent to using the ^
operator (e.g.
ops::BitXor
), as in flags ^ other
.
sourcepub const fn complement(self) -> Self
pub const fn complement(self) -> Self
Returns the complement of this set of flags.
Specifically, the returned set contains all the flags which are
not set in self
, but which are allowed for this type.
Alternatively, it can be thought of as the set difference
between Self::all()
and self
(e.g. Self::all() - self
)
This is equivalent to using the !
operator (e.g.
ops::Not
), as in !flags
.
Trait Implementations
sourceimpl Binary for MountFlags
impl Binary for MountFlags
sourceimpl BitAnd<MountFlags> for MountFlags
impl BitAnd<MountFlags> for MountFlags
sourceimpl BitAndAssign<MountFlags> for MountFlags
impl BitAndAssign<MountFlags> for MountFlags
sourcefn bitand_assign(&mut self, other: Self)
fn bitand_assign(&mut self, other: Self)
Disables all flags disabled in the set.
sourceimpl BitOr<MountFlags> for MountFlags
impl BitOr<MountFlags> for MountFlags
sourcefn bitor(self, other: MountFlags) -> Self
fn bitor(self, other: MountFlags) -> Self
Returns the union of the two sets of flags.
type Output = Self
type Output = Self
The resulting type after applying the |
operator.
sourceimpl BitOrAssign<MountFlags> for MountFlags
impl BitOrAssign<MountFlags> for MountFlags
sourcefn bitor_assign(&mut self, other: Self)
fn bitor_assign(&mut self, other: Self)
Adds the set of flags.
sourceimpl BitXor<MountFlags> for MountFlags
impl BitXor<MountFlags> for MountFlags
sourceimpl BitXorAssign<MountFlags> for MountFlags
impl BitXorAssign<MountFlags> for MountFlags
sourcefn bitxor_assign(&mut self, other: Self)
fn bitxor_assign(&mut self, other: Self)
Toggles the set of flags.
sourceimpl Clone for MountFlags
impl Clone for MountFlags
sourcefn clone(&self) -> MountFlags
fn clone(&self) -> MountFlags
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for MountFlags
impl Debug for MountFlags
sourceimpl Extend<MountFlags> for MountFlags
impl Extend<MountFlags> for MountFlags
sourcefn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
Extends a collection with the contents of an iterator. Read more
sourcefn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one
)Extends a collection with exactly one element.
sourcefn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one
)Reserves capacity in a collection for the given number of additional elements. Read more
sourceimpl FromIterator<MountFlags> for MountFlags
impl FromIterator<MountFlags> for MountFlags
sourcefn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
Creates a value from an iterator. Read more
sourceimpl Hash for MountFlags
impl Hash for MountFlags
sourceimpl LowerHex for MountFlags
impl LowerHex for MountFlags
sourceimpl Not for MountFlags
impl Not for MountFlags
sourceimpl Octal for MountFlags
impl Octal for MountFlags
sourceimpl Ord for MountFlags
impl Ord for MountFlags
sourceimpl PartialEq<MountFlags> for MountFlags
impl PartialEq<MountFlags> for MountFlags
sourcefn eq(&self, other: &MountFlags) -> bool
fn eq(&self, other: &MountFlags) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &MountFlags) -> bool
fn ne(&self, other: &MountFlags) -> bool
This method tests for !=
.
sourceimpl PartialOrd<MountFlags> for MountFlags
impl PartialOrd<MountFlags> for MountFlags
sourcefn partial_cmp(&self, other: &MountFlags) -> Option<Ordering>
fn partial_cmp(&self, other: &MountFlags) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
sourceimpl Sub<MountFlags> for MountFlags
impl Sub<MountFlags> for MountFlags
sourceimpl SubAssign<MountFlags> for MountFlags
impl SubAssign<MountFlags> for MountFlags
sourcefn sub_assign(&mut self, other: Self)
fn sub_assign(&mut self, other: Self)
Disables all flags enabled in the set.
sourceimpl UpperHex for MountFlags
impl UpperHex for MountFlags
impl Copy for MountFlags
impl Eq for MountFlags
impl StructuralEq for MountFlags
impl StructuralPartialEq for MountFlags
Auto Trait Implementations
impl RefUnwindSafe for MountFlags
impl Send for MountFlags
impl Sync for MountFlags
impl Unpin for MountFlags
impl UnwindSafe for MountFlags
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more