web-dev-qa-db-ja.com

Linuxコマンド「mount -a」はどのように機能しますか?

/etc/fstabに新しいマウントポイントを追加した後、通常はmount -aを実行して変更を反映し(再起動をバイパスする場合)、df -khの出力に新しいマウントポイントが表示されます。

mount -aファイルを参照している/etc/fstabは、すでにマウントされたパーティションをどのように機能/影響しますか?それらのパーティションをアンマウントしてからマウントしますか、それともすでにマウントされているので無視しますか?

7
Rauf

すでにマウントされているものをスキップします。

https://github.com/karelzak/util-linux/blob/master/sys-utils/mount.c#L185-L19

while (mnt_context_next_mount(cxt, itr, &fs, &mntrc, &ignored) == 0) {

    const char *tgt = mnt_fs_get_target(fs);

    if (ignored) {
        if (mnt_context_is_verbose(cxt))
            printf(ignored == 1 ? _("%-25s: ignored\n") :
                          _("%-25s: already mounted\n"),
                   tgt);
    }
    // ...
}
15
steve

すでにマウントされているパーティションは無視されます。

同時に、mount -o remount /dev/xxxすでにマウントされているパーティションで、ユーザーがこのパーティションを使用していても問題は発生しません

5
darxmurf

より良いオプションは、新しいファイルシステムを手動でマウントし、新しいファイルシステムエントリを/ etc/fstabに追加して、このf/sが再起動のたびにマウントされるようにすることです。

上記のように、「mount -a」はすでにマウントされているファイルシステムを無視し、まだマウントされていないファイルシステム(新しいファイルシステム)のみをマウントします。

これがお役に立てば幸いです。