最喜欢的分区和安装技巧

Fal*_*rri 15 mount

我们都知道将新分区挂载为 /home 或 /boot 非常有用。或者将远程目录挂载为 /opt 可以很好地共享系统工具。是否还有其他更深奥的用途可用于额外分区或硬盘驱动器或安装外部卷的绝妙方法?也许即使有人也有 Windows 机器*不寒而栗*,发布一些涉及分区和硬盘驱动器安装的很酷的技巧。

Gil*_*il' 12

FUSE(用户空间中的文件系统)允许许多东西可以作为普通文件访问(无论如何都不是一个详尽的列表):

还有许多 FUSE 文件系统显示另一个文件系统的视图,其中包含过滤、重命名或修改的元数据或内容:

  • 使用copyfswaybackfs,...保留所有过去版本文件的副本
  • loggedfs记录每一个动作
  • 使用encfs透明地加密文件
  • 使用mp3fs转换音频内容
  • 使用bindfs查看只读视图或更改权限
  • 查看带有rofs 过滤的部分只读视图
  • 使用convvfs转换文件名字符集
  • 使用ciopfs获取不区分大小写的视图

FUSE 网站和其他地方的更多可能性。您还可以轻松地在 ErlangHaskellLispLuaOcamlPerlPython、...


Gil*_*il' 10

大多数 unice 都有一个逻辑卷管理器。用它。

  • 文件系统现在由有意义的名称(如/dev/mapper/darkstar-home)而不是通过驱动器号(如/dev/sda1,哎呀,现在/dev/sdb1是因为我插入了外部磁盘启动)或安全但无意义的 UUID 来指定。

  • 想要将文件系统移动到不同的磁盘?在新磁盘上创建一个物理卷,将其添加到卷组中,并将逻辑卷移动到新的物理卷上。全部完成,无需停机,无需卸载。

  • 进行备份时,拍摄磁盘快照并从快照运行备份。这样,备份是文件系统的一致视图(即,确实存在文件系统处于该状态的时间点)。这不适用于原始备份(例如,备份文件 A,然后程序首先修改 A,然后修改 B,然后备份 B:备份具有新的 B 和旧的 A)。

  • 需要扩大文件系统?逻辑卷不需要是连续的,所以你只需要足够的可用空间,不管在哪里。


Ric*_*way 8

你有一个人只能通过 ftp 访问你的服务器并且被限制在他们的主目录中,但你意识到他们需要访问不在他们主文件夹中的其他目录。

例如,bob 可以通过 ftp 访问您的 Web 服务器,但您还想让他查看 /var/logs/httpd/vhosts/bobssite.com/ 中的日志文件。重新配置所有内容很麻烦,以便 apache 将 bobssite.com 的日志写入 bob 主文件夹,但您可以使用绑定选项重新安装文件夹,如下所示

mkdir /home/bob/logs
mount --bind /var/logs/httpd/vhosts/bobssite.com /home/bob/logs/
Run Code Online (Sandbox Code Playgroud)

可以在此处找到更多信息

  • 您还可以使用 [bindfs](http://code.google.com/p/bindfs),它更灵活:您无需成为 root 用户即可使用它,并且可以即时更改所有权和权限. (3认同)

Gil*_*il' 7

大多数 unice 会/tmp在启动时清洁。如果这样做,首先将 的内容存储/tmp在磁盘上没有多大意义。许多 unice 允许将文件系统存储在内存中(如有必要,数据将写入交换中)。出于某种原因,即使 Linux 有tmpfs此功能,大多数发行版也不会挂载/tmptmpfs. 用一行很容易补救/etc/fstab

tmpfs  /tmp  tmpfs  mode=1777
Run Code Online (Sandbox Code Playgroud)

默认情况下,文件系统可以增长到您 RAM 的一半。如果您有大量交换,您可能希望允许它包含更大的文件,例如最多允许 2 GB:

tmpfs  /tmp  tmpfs  mode=1777,2g
Run Code Online (Sandbox Code Playgroud)

(使文件系统更大的开销可以忽略不计;虚拟内存使用量根据需要增加。设置限制仍然是一个好主意,因为失控的程序可能会非常快地填充它,并且用完/tmp比用完内存要好可用于进程。)


Gil*_*il' 5

如果您的操作系统支持它,请将所有文件系统制作在 RAID 1 阵列上,即使它们没有被复制。这样,如果您需要将文件系统传输到不同的磁盘,您可以通过将第二个磁盘上的分区添加到阵列、重建阵列并移除第一个磁盘来在线快速完成。

一些LVM系统可以镜像卷,因此您不需要其他层。ZFS无需任何外部帮助即可完成。


max*_*zig 2

性能相关:

避免文件访问时写入:

-o noatime
Run Code Online (Sandbox Code Playgroud)

可用性相关:

您可以使用替代设备名称,例如标签或uuid。

例如,为了识别我的 MP3 播放器,我在 fstab 中使用此设备名称:

UUID=0C9F-6901
Run Code Online (Sandbox Code Playgroud)

您可以通过 blkid 命令打印已连接设备的 uuid。

与此类似,您可以在 mkfs 时或更晚通过 e2fstune 和类似工具设置标签。然后你可以使用

LABEL=mylabel
Run Code Online (Sandbox Code Playgroud)

在 fstab 或命令行中。