1

我有一个 Debian Linux 服务器,上面连接了两个 eSATA 驱动器(NTFS,bleh)。它们目前安装良好,并且具有正确的 fstab 条目设置(使用 UUID,而不是 /dev 位置)。

我得出的结论是,我需要添加“noauto”挂载选项,以便在服务器启动时不会挂载它们(以防止服务器在它们不存在时挂起。我确实计划将它们放在偶尔出游)。

但是,一旦系统启动,我应该如何设置一个初始化脚本来挂载它们?我可以做 a mount /mount/location,但我更愿意在做之前检查它们的存在(以防止抛出错误)。另外,我是否只需将此脚本放入/etc/init.d/目录中即可工作?(我对 Debian 很陌生)

4

2 回答 2

1

blkid显示块设备列表。

于 2011-06-06T23:29:23.140 回答
0

谢谢你提供的详情。AutoFS 和 Udev 是研究解决我这个问题的正确方法。

此外,blkid即使没有挂载,该命令也会正确显示块设备列表。以此推断,这是一个(容易出错的)基本脚本,用于处理不依赖 AutoFS 和 Udev 的挂载块设备(只是一个临时解决方案):

#!/usr/bin/env php
<?php
define('DRIVE1',    '7E088E5B088E11F7');
define('DRIVE2',    '4A841A75841A63AB');
$devices = `/sbin/blkid`;

if (strpos($devices, DRIVE1) !== FALSE) {
    $output = `mount /storage/drive1`;
    $output = trim($output);
    echo "Mounting /storage/drive1... $output\n";
} else {
    echo "Not Mounting: /storage/drive1\n";
}
if (strpos($devices, DRIVE2) !== FALSE) {
    $output = `mount /storage/drive2`;
    $output = trim($output);
    echo "Mounting /storage/drive2... $output\n";
} else {
    echo "Not Mounting: /storage/drive2\n";
}
于 2011-06-07T02:03:40.520 回答