特殊:Badtitle/NS100:Fstab:修订间差异

来自Ubuntu中文
跳到导航跳到搜索
Wikibot留言 | 贡献
无编辑摘要
 
(未显示1个用户的7个中间版本)
第1行: 第1行:
{{From|https://help.ubuntu.com/community/Fstab}}
{{From|https://help.ubuntu.com/community/Fstab}}
{{Languages|UbuntuHelp:Fstab}}
{{Languages|UbuntuHelp:Fstab}}
== Introduction ==
== Introduction to fstab ==
The configuration file <code><nowiki>/etc/fstab</nowiki></code> contains the necessary information to ''mount'' the disk. This file comes read at the start of the system and can be modified only by [[UbuntuHelp:RootSudo|root]] user.
https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconDisks.png The configuration file <code><nowiki>/etc/fstab</nowiki></code> 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).
== Content of file ==
* 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.
It is possible to visualize this file with the following command:
<ol><li>Options for mount and fstab are similar.
</li><li>Partitions listed in fstab can be configured to automatically mount during the boot process.
</li><li>If a device/partition is not listed in fstab ONLY ROOT may mount the device/partition.
</li><li>Users may mount a device/partition if the device is in fstab with the proper options.</li></ol>
 
https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconSambaShares.png For usage with network shares, see [[UbuntuHelp:SettingUpNFSHowTo|SettingUpNFSHowTo]] , [[UbuntuHelp:SettingUpSamba|SettingUpSamba]] and [http://www.debuntu.org/2006/04/27/39-mounting-a-fuse-filesystem-form-etcfstab SSHFS].
== Fstab File Configuration ==
https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=info.png The syntax of a fstab entry is :
<pre><nowiki>
<pre><nowiki>
cat /etc/fstab </nowiki></pre>
[Device] [Mount Point] [File System Type] [Options] [Dump] [Pass]
or alt-f2 and enter:
</nowiki></pre>
{|border="1" cellspacing="0"
|'''fields''' ||'''description'''
|-
|  || The device/partition (by /dev location or UUID) that contain a file system.
|-
|  || The directory on your root file system (aka mount point) from which it will be possible to access the content of the device/partition (note: swap has no mount point).  Mount points should not have spaces in the names.
|-
|  || Type of file system  (see [[UbuntuHelp:LinuxFilesystemsExplained|LinuxFilesystemsExplained]]).
|-
|  || Mount options of access to the device/partition (see the man page for <code><nowiki>mount</nowiki></code>).
|-
|  || Enable or disable backing up of the device/partition (the command ''dump'').  This field is usually set to 0, which disables it.
|-
|  || Controls the order in which ''fsck'' checks the device/partition for errors at boot time. The root device should be 1. Other partitions should be 2, or 0 to disable checking.
|}
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 [http://en.wikipedia.org/wiki/UUID UUID] to identify partitions.
UUID=xxx.yyy.zzz
To list your devices by UUID use blkid
<pre><nowiki>
<pre><nowiki>
gksu gedit /etc/fstab </nowiki></pre>
sudo blkid
The result of the previous command will be similar to following:
</nowiki></pre>
Alternately syntax to refer to partitions :
* Device : /dev/sdxy
* 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
<pre><nowiki>
sudo mkdir /media/windows
</nowiki></pre>
=== 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.
Examples:
* auto
* vfat - used for FAT partitions.
* ntfs, ntfs-3g - used for ntfs partitions.
* ext2, ext3, jfs, reiserfs, etc.
* udf,iso9660 - for CD/DVD.
* swap.
That's way the bsteest answer so far!
 
=== 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.
Often a source of confusion, there are only 3 options :
* 0 == do not check.
* 1 == check this partition first.
* 2 == check this partition(s) next
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 ==
https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconEnvelope.png The contents of the file will look similar to following:
<pre><nowiki>
<pre><nowiki>
# /etc/fstab: static file system information.
# /etc/fstab: static file system information.
第16行: 第82行:
# <file system> <mount point>  <type>  <options>      <dump>  <pass>
# <file system> <mount point>  <type>  <options>      <dump>  <pass>


proc /proc proc defaults 0 0
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
</nowiki></pre>
<u>NOTE</u>: These network share examples (samba, nfs, and sshfs) assume you have already set up the appropriate server.
<pre><nowiki>
# 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
# /dev/hda1
UUID=12102C02102CEB83 /media/windows  ntfs     silent,umask=0,locale=it_IT.utf8       0       0
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


# /dev/hda2
# Data partition
UUID=cee15eca-5b2e-48ad-9735-eae5ac14bc90 none swap sw 0 0
# /dev/sda8
UUID=3f8c5321-7181-40b3-a867-9c04a6cd5f2f  /media/data  ext3  relatime,noexec  0 2


# /dev/hda3
# Samba
UUID=98E0-6D24 /media/dati vfat defaults,utf8,umask=007,uid=0,gid=46,auto,rw,nouser 0 0
//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)


# /dev/hda4
# NFS
UUID=0aa86c61-0df9-4f1a-8b0b-34abbee6b769 / ext3 nouser,defaults,errors=remount-ro,atime,auto,rw,dev,exec,suid 0 0
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


/dev/hdc /media/cdrom0 udf,iso9660 user,atime,noauto,rw,dev,exec,suid 0 0
#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
</nowiki></pre>
=== File System Specific Examples ===
https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=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=<some_id>, or LABEL=<some_label> can work.
==== ext2 and ext3 ====
The main difference between ext2 and ext3 is that ext3 has journaling which helps protect it from errors when the system crashes.
A root filesystem:
<pre><nowiki>
UUID=30fcb748-ad1e-4228-af2f-951e8e7b56df / ext3 defaults,errors=remount-ro,noatime 0 1
</nowiki></pre>
</nowiki></pre>
Each no-commented line is composed by six fields:
A non-root file system, ext2:
{|border="1" cellspacing="0"
<pre><nowiki>
|'''fields''' ||'''description'''
/dev/sdb1 /media/disk2 ext2 defaults 0 2
|-
</nowiki></pre>
| file system || it indicates the devices that contain a file system
==== fat16 and fat32 ====
|-
<pre><nowiki>
| mount point || it indicates the directory (or mount point) from which it will be possible to approach the content of the device (for the swap is not demanded the mount point)
/dev/hda2 /media/data1 vfat defaults,user,exec,uid=1000,gid=100,umask=000 0 0
|-
</nowiki></pre>
| type || type of file system
<pre><nowiki>
|-
/dev/sdb1 /media/data2 vfat defaults,user,dmask=027,fmask=137 0 0
| options || options of access to device (the command "mount")
</nowiki></pre>
|-
==== ntfs ====
| dump || turn ON/OFF the backup of file system (the command "dump"). This option is <u>obsolete</u>.
This example is perfect for a Windows partition.
|-
<pre><nowiki>
| pass || turn ON/OFF the control of coherence of the disc (tells the command "fsck" in which order to check the filesystems - the root device should be 1, all others 2, 0 = no fsck check, which is not advised)
/dev/hda2 /media/windows ntfs-3g defaults,locale=en_US.utf8 0 0
|}
</nowiki></pre>
To get a list of all the UUID's use this command:
For a list of locales available on your system, run
<pre><nowiki>
locale -a</nowiki></pre>
==== hfs+ ====
the hfs+ filesystem is generally used by Apple computers.
<pre><nowiki>
/dev/sdb1 /media/Macintosh_HD hfsplus rw,exec,auto,users 0 0
</nowiki></pre>
== Editing fstab ==
https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=PicDocs.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:
<pre><nowiki>
gksu gedit /etc/fstab
</nowiki></pre>
To edit the file in Kubuntu, run:
<pre><nowiki>
kdesu kate /etc/fstab
</nowiki></pre>
To edit the file directly in terminal, run:
<pre><nowiki>
sudo nano -Bw /etc/fstab
</nowiki></pre>
* -B = Backup origional fstab to /etc/fstab~ .
* -w = disable wrap of long lines.
Alternate:
<pre><nowiki>
sudo -e /etc/fstab
</nowiki></pre>
=== Useful Commands ===
https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconGNOMETerminal.png To view the contents of <code><nowiki>/etc/fstab</nowiki></code>, run the following terminal command:
<pre><nowiki>
cat /etc/fstab
</nowiki></pre>
To get a list of all the UUIDs, use one of the following two commands:
<pre><nowiki>
<pre><nowiki>
sudo blkid
ls -l /dev/disk/by-uuid
ls -l /dev/disk/by-uuid
</nowiki></pre>
</nowiki></pre>
== Other resources ==
To list the drives and relevant partitions that are attached to your system, run:
<pre><nowiki>
sudo fdisk -l
</nowiki></pre>
To mount all file systems in <code><nowiki>/etc/fstab</nowiki></code>, run:
<pre><nowiki>
sudo mount -a
</nowiki></pre>
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:
<pre><nowiki>
sudo mkdir /path/to/mountpoint
sudo mkdir /media/disk2
</nowiki></pre>
== Other Resources ==
https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconBook-small.png Here are some more links for your convenience:
* [[UbuntuHelp:UsingUUID|UUID]]
* [[UbuntuHelp:UsingUUID|UUID]]
* http://doc.gwos.org/doku.php/doc:hardware:fstab
* [http://ubuntuforums.org/showthread.php?t=283131 How to fstab] (from the Ubuntu Forums)
----
* http://en.wikipedia.org/wiki/Fstab
[[category:CategoryNeedsExpansion]]
* [[UbuntuHelp:SettingUpNFSHowTo|SettingUpNFSHowTo]]
* [[UbuntuHelp:SettingUpSamba|SettingUpSamba]]
* [[UbuntuHelp:LinuxFilesystemsExplained|LinuxFilesystemsExplained]]
* [[UbuntuHelp:AutomaticallyMountPartitions|AutomaticallyMountPartitions]]
* [[UbuntuHelp:HowtoPartition|HowtoPartition]]


[[category:UbuntuHelp]]
[[category:UbuntuHelp]]

2011年7月2日 (六) 21:50的最新版本

{{#ifexist: :Fstab/zh | | {{#ifexist: Fstab/zh | | {{#ifeq: {{#titleparts:Fstab|1|-1|}} | zh | | }} }} }} {{#ifeq: {{#titleparts:Fstab|1|-1|}} | zh | | }}

Introduction to fstab

IconsPage?action=AttachFile&do=get&target=IconDisks.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.
  1. Options for mount and fstab are similar.
  2. Partitions listed in fstab can be configured to automatically mount during the boot process.
  3. If a device/partition is not listed in fstab ONLY ROOT may mount the device/partition.
  4. Users may mount a device/partition if the device is in fstab with the proper options.

IconsPage?action=AttachFile&do=get&target=IconSambaShares.png For usage with network shares, see SettingUpNFSHowTo , SettingUpSamba and SSHFS.

Fstab File Configuration

IconsPage?action=AttachFile&do=get&target=info.png The syntax of a fstab entry is :

[Device] [Mount Point] [File System Type] [Options] [Dump] [Pass]
fields description
The device/partition (by /dev location or UUID) that contain a file system.
The directory on your root file system (aka mount point) from which it will be possible to access the content of the device/partition (note: swap has no mount point). Mount points should not have spaces in the names.
Type of file system (see LinuxFilesystemsExplained).
Mount options of access to the device/partition (see the man page for mount).
Enable or disable backing up of the device/partition (the command dump). This field is usually set to 0, which disables it.
Controls the order in which fsck checks the device/partition for errors at boot time. The root device should be 1. Other partitions should be 2, or 0 to disable checking.

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. UUID=xxx.yyy.zzz To list your devices by UUID use blkid

sudo blkid

Alternately syntax to refer to partitions :

  • Device : /dev/sdxy
  • 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

sudo mkdir /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. Examples:

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

That's way the bsteest answer so far!

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. Often a source of confusion, there are only 3 options :

  • 0 == do not check.
  • 1 == check this partition first.
  • 2 == check this partition(s) next

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?action=AttachFile&do=get&target=IconEnvelope.png The contents of the file will look similar to following:

# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>

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?action=AttachFile&do=get&target=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=<some_id>, or LABEL=<some_label> can work.

ext2 and ext3

The main difference between ext2 and ext3 is that ext3 has journaling which helps protect it from errors when the system crashes. A root filesystem:

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

fat16 and fat32

/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

ntfs

This example is perfect for a Windows partition.

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

For a list of locales available on your system, run

 locale -a

hfs+

the hfs+ filesystem is generally used by Apple computers.

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

Editing fstab

IconsPage?action=AttachFile&do=get&target=PicDocs.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:

gksu gedit /etc/fstab

To edit the file in Kubuntu, run:

kdesu kate /etc/fstab

To edit the file directly in terminal, run:

sudo nano -Bw /etc/fstab
  • -B = Backup origional fstab to /etc/fstab~ .
  • -w = disable wrap of long lines.

Alternate:

sudo -e /etc/fstab

Useful Commands

IconsPage?action=AttachFile&do=get&target=IconGNOMETerminal.png To view the contents of /etc/fstab, run the following terminal command:

cat /etc/fstab

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:

sudo fdisk -l

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

sudo mount -a

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?action=AttachFile&do=get&target=IconBook-small.png Here are some more links for your convenience: