Mount disk in linux fstab

Как настроить автоматическое монтирование дисков в Linux

Обновлено

Обновлено: 09.02.2022 Опубликовано: 16.08.2016

Монтирование по имени диска

  • /dev/sda1 — диск, который мы монтируем
  • /db — каталог, в который монтируем диск
  • xfs — файловая система
  • defaults — стандартные опции. Полный их перечень можно посмотреть на Википеции.
  • 0 0 — первый отключает создание резервных копий при помощи утилиты dump, второй отключает проверку диска.

Теперь создаем каталог, в который монтируем диск (в данном примере, /db):

И монтируем вручную диск, чтобы проверить правильность настроек fstab:

Должен появиться новый диск. Это можно проверить следующей командой

Монтирование по идентификатору

Данный способ не сильно отличается от монтирования по имени диска — вместо имени мы указываем идентификатор. Такой подход считается более надежным, так как при переподключении дисков к другим портам материнской платы может поменяться приоритет и, как следствие, имя устройства — это может привести к проблемам монтирования. UUID диска не меняется и поэтому, данная проблема при таком монтировании не страшна.

И так, смотрим идентификатор диска командой:

Мы получим ответ на подобие:

/dev/sdb: UUID=»3e53fc7e-a417-4fa5-b034-b227bea2474c» BLOCK_SIZE=»4096″ TYPE=»ext4″
/dev/sda1: UUID=»358f032e-3efb-42ab-b3ba-05ddc82fedfd» BLOCK_SIZE=»512″ TYPE=»xfs» PARTUUID=»0beca126-01″

* допустим, диск который мы хотим примонтировать — sda1. Его идентификатор 358f032e-3efb-42ab-b3ba-05ddc82fedfd.

Открываем на редактирование следующий файл:

и добавляем в него следующую строчку:

UUID=358f032e-3efb-42ab-b3ba-05ddc82fedfd /db xfs defaults 0 0

Монтирование можно проверить командой:

Пример монтирования сетевого диска

//192.168.0.1/network /mnt cifs user,rw,noauto,credentials=/root/.smbclient 0 0

* в данном примере выполняется монтировние общей папки network на сервере с IP-адресом 192.168.0.1 в каталог /mnt. В качестве сетевой файловой системы используется cifs (протокол SMB: сервер samba или общая папка Windows). Параметры для подключения — user: позволяет выполнить монтирование любому пользователю, rw: с правом на чтение и запись, noauto: не монтировать автоматически при старте системы, credentials: файл, в котором написаны логин и пароль для подключения к общей папке.

Теперь создадим файл аутентификации (credentials):

и приведем его к следующему виду:

* username: имя пользоватля, password: пароль. Само собой, в вашем случае указываются свои данные.

Теперь вводим следующую команду:

Должна примонтироваться сетевая папка //192.168.0.1/network. Это можно проверить следующей командой:

Источник

Introduction to fstab

IconsPage/hdd.png

The configuration file /etc/fstab contains the necessary information to automate the process of mounting partitions. In a nutshell, mounting is the process where a raw (physical) partition is prepared for access and assigned a location on the file system tree (or mount point).

  • In general fstab is used for internal devices, CD/DVD devices, and network shares (samba/nfs/sshfs). Removable devices such as flash drives *can* be added to fstab, but are typically mounted by gnome-volume-manager and are beyond the scope of this document.
  • Options for mount and fstab are similar.
  • Partitions listed in fstab can be configured to automatically mount during the boot process.
  • If a device/partition is not listed in fstab ONLY ROOT may mount the device/partition.
  • Users may mount a device/partition if the device is in fstab with the proper options.
Читайте также:  Как установить linux с образа

IconsPage/tip.png

For usage with network shares, see SettingUpNFSHowTo , SettingUpSamba and SSHFS.

Fstab File Configuration

IconsPage/info.png

The syntax of a fstab entry is :

[Device] [Mount Point] [File System Type] [Options] [Dump] [Pass]

Please refer to the examples section for sample entries. We have provided you some detailed explanations of each field:

Device

By default, Ubuntu now uses UUID to identify partitions.

To list your devices by UUID use blkid

  • Label : LABEL=label
  • Network ID
    • Samba : //server/share
    • NFS : server:/share
    • SSHFS : sshfs#user@server:/share

    Mount point

    A mount point is a location on your directory tree to mount the partition. The default location is /media although you may use alternate locations such as /mnt or your home directory.

    You may use any name you wish for the mount point, but you must create the mount point before you mount the partition.

    For example : /media/windows

    File System Type

    You may either use auto or specify a file system. Auto will attempt to automatically detect the file system of the target file system and in general works well. In general auto is used for removable devices and a specific file system or network protocol for network shares.

    • auto
    • vfat — used for FAT partitions.
    • ntfs, ntfs-3g — used for ntfs partitions.
    • ext4, ext3, ext2, jfs, reiserfs, etc.
    • udf,iso9660 — for CD/DVD.
    • swap.

    Options

    Options are dependent on the file system.

    • Ubuntu 8.04 and later uses relatime as default for linux native file systems. You can find a discussion of relatime here : http://lwn.net/Articles/244829. This relates to when and how often the last access time of the current version of a file is updated, i.e. when it was last read.
    • defaults = rw, suid, dev, exec, auto, nouser, and async.
    • ntfs/vfat = permissions are set at the time of mounting the partition with umask, dmask, and fmask and can not be changed with commands such as chown or chmod.
      • I advise dmask=027,fmask=137 (using umask=000 will cause all your files to be executable). More permissive options would be dmask=000,fmask=111.
      • sync/async — All I/O to the file system should be done (a)synchronously.
      • auto — The filesystem can be mounted automatically (at bootup, or when mount is passed the -a option). This is really unnecessary as this is the default action of mount -a anyway.
      • noauto — The filesystem will NOT be automatically mounted at startup, or when mount passed -a. You must explicitly mount the filesystem.
      • dev/nodev — Interpret/Do not interpret character or block special devices on the file system.
      • exec / noexec — Permit/Prevent the execution of binaries from the filesystem.
      • suid/nosuid — Permit/Block the operation of suid, and sgid bits.
      • ro — Mount read-only.
      • rw — Mount read-write.
      • user — Permit any user to mount the filesystem. This automatically implies noexec, nosuid,nodev unless overridden.
      • nouser — Only permit root to mount the filesystem. This is also a default setting.
      • defaults — Use default settings. Equivalent to rw, suid, dev, exec, auto, nouser, async.
      • _netdev — this is a network device, mount it after bringing up the network. Only valid with fstype nfs.

      Dump

      This field sets whether the backup utility dump will backup file system. If set to «0» file system ignored, «1» file system is backed up.

      Dump is seldom used and if in doubt use 0.

      Pass (fsck order)

      Fsck order is to tell fsck what order to check the file systems, if set to «0» file system is ignored.

      In practice, use «1» for your root partition, / and 2 for the rest. All partitions marked with a «2» are checked in sequence and you do not need to specify an order.

      Use «0» to disable checking the file system at boot or for network shares.

      You may also «tune» or set the frequency of file checks (default is every 30 mounts) but in general these checks are designed to maintain the integrity of your file system and thus you should strongly consider keeping the default settings.

      Examples

      IconsPage/editor.png

      The contents of the file will look similar to following:

      # /etc/fstab: static file system information. # #      proc /proc proc defaults 0 0 # /dev/sda5 UUID=be35a709-c787-4198-a903-d5fdc80ab2f8 / ext3 relatime,errors=remount-ro 0 1 # /dev/sda6 UUID=cee15eca-5b2e-48ad-9735-eae5ac14bc90 none swap sw 0 0 /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0

      NOTE : These network share examples (samba, nfs, and sshfs) assume you have already set up the appropriate server.

      # FAT ~ Linux calls FAT file systems vfat) # /dev/hda1 UUID=12102C02102CEB83 /media/windows vfat auto,users,uid=1000,gid=100,dmask=027,fmask=137,utf8 0 0 # NTFS ~ Use ntfs-3g for write access (rw) # /dev/hda1 UUID=12102C02102CEB83 /media/windows ntfs-3g auto,users,uid=1000,gid=100,dmask=027,fmask=137,utf8 0 0 # Zip Drives ~ Linux recognizes ZIP drives as sdx'''4''' # Separate Home # /dev/sda7 UUID=413eee0c-61ff-4cb7-a299-89d12b075093 /home ext3 nodev,nosuid,relatime 0 2 # Data partition # /dev/sda8 UUID=3f8c5321-7181-40b3-a867-9c04a6cd5f2f /media/data ext3 relatime,noexec 0 2 # Samba //server/share /media/samba cifs user=user,uid=1000,gid=100 0 0 # "Server" = Samba server (by IP or name if you have an entry for the server in your hosts file # "share" = name of the shared directory # "user" = your samba user # This set up will ask for a password when mounting the samba share. If you do not want to enter a password, use a credentials file. # replace "user=user" with "credentials=/etc/samba/credentials" In the credentials file put two lines # username=user # password=password # make the file owned by root and ro by root (sudo chown root.root /etc/samba/credentials && sudo chmod 400 /etc/samba/credentials) # NFS Server:/share /media/nfs nfs rsize=8192 and wsize=8192,noexec,nosuid # "Server" = Samba server (by IP or name if you have an entry for the server in your hosts file # "share" = name of the shared directory #SSHFS sshfs#user@server:/share fuse user,allow_other 0 0 # "Server" = Samba server (by IP or name if you have an entry for the server in your hosts file # "share" = name of the shared directory

      File System Specific Examples

      IconsPage/example.png

      Here are a couple of basic examples for different file system types. I will use /dev/sdb1 or /dev/hda2 for simplicity, but remember that any /dev location, UUID=, or LABEL= can work.

      Extended file systems (ext)

      Specifically, these are the ext2, ext3, and ext4 filesystems that are common as root filesystems in Linux. The main difference between ext2 and ext3 is that ext3 has journaling which helps protect it from errors when the system crashes. The more modern ext4 supports larger volumes along with other improvements, and is backward compatible with ext3.

      UUID=30fcb748-ad1e-4228-af2f-951e8e7b56df / ext3 defaults,errors=remount-ro,noatime 0 1

      A non-root file system, ext2:

      /dev/sdb1 /media/disk2 ext2 defaults 0 2

      File Allocation Table (FAT)

      Specifically, fat16 and fat32, which are common for USB flash drives and flash cards for cameras and other devices.

      /dev/hda2 /media/data1 vfat defaults,user,exec,uid=1000,gid=100,umask=000 0 0
      /dev/sdb1 /media/data2 vfat defaults,user,dmask=027,fmask=137 0 0

      New Technology File System (NTFS)

      NTFS is typically used for a Windows partition.

      /dev/hda2 /media/windows ntfs-3g defaults,locale=en_US.utf8 0 0

      Hierarchical File System (HFS)

      HFS, or more commonly, HFS+, are filesystems generally used by Apple computers.

      /dev/sdb2 /media/Macintosh_HD hfsplus rw,exec,auto,users 0 0

      Note: if you want to write data on this partition, you must disable the journalization of this partition with diskutil under Mac OS.

      /dev/sda2 /media/Machintosh_HD hfsplus ro,defaults 0 2

      Note: if you want to have access to your files on Ubuntu, you must change the permission of the folders and contained files you want to access by doing in the apple terminal:

      «Staff» group should have appeared in this folder’s info. You can do this on Music and Movies to access these files from Ubuntu.

      Editing fstab

      IconsPage/editor.png

      Please, before you edit system files, make a backup. The -B flag with nano will make a backup automatically.

      To edit the file in Ubuntu, run:

      To edit the file in Kubuntu, run:

      To edit the file directly in terminal, run:

      Useful Commands

      IconsPage/terminal.png

      To view the contents of /etc/fstab, run the following terminal command:

      To get a list of all the UUIDs, use one of the following two commands:

      sudo blkid ls -l /dev/disk/by-uuid

      To list the drives and relevant partitions that are attached to your system, run:

      To mount all file systems in /etc/fstab, run:

      Remember that the mount point must already exist, otherwise the entry will not mount on the filesystem. To create a new mount point, use root privileges to create the mount point. Here is the generalization and an example:

      sudo mkdir /path/to/mountpoint sudo mkdir /media/disk2

      Other Resources

      IconsPage/resources.png

      Here are some more links for your convenience:

      • UsingUUID
      • How to fstab (from the Ubuntu Forums)
      • http://en.wikipedia.org/wiki/Fstab
      • SettingUpNFSHowTo
      • SettingUpSamba
      • LinuxFilesystemsExplained
      • AutomaticallyMountPartitions
      • HowtoPartition

      Fstab (последним исправлял пользователь ckimes 2017-08-21 18:03:58)

      The material on this wiki is available under a free license, see Copyright / License for details
      You can contribute to this wiki, see Wiki Guide for details

      Источник

Оцените статью
Adblock
detector