创建一个压缩文件并将其保存在 usb 上的命令,但无法在 linux 中检测到 usb

创建一个压缩文件并将其保存在 usb 上的命令,但无法在 linux 中检测到 usb

首先,我无法使用命令行在 Linux 上检测到 USB。我检查了目录 dev,但仍然找不到 usb。使用 df 命令检查了 usb。我插入并输入 df,然后拔下并再次输入 df,但没有任何变化。我们正在使用服务器 (telnet) 在 Windows 7 操作系统上使用 Linux 的命令行。

我遇到的第二个问题是如何执行我编写的 bash 脚本。似乎我无法将 .sh 文件放在 /usr/bin/ 中。我想让我的命令像普通命令一样在所有目录中可执行。抱歉,我在这方面还是新手。这是我长期使用 Windows 所导致的结果。

抱歉我的英语不好。提前谢谢您。

答案1

df 只会显示已安装的文件系统。您使用的 Linux 发行版可能会也可能不会自动安装 USB 驱动器。

在插入和移除 USB 驱动器时执行某些操作的正确方法是使用 udev 规则。请参阅http://reactivated.net/writing_udev_rules.html

您还可以使用 lsusb 命令查看 USB 总线上当前存在的内容。请参阅:http://linuxcommand.org/man_pages/lsusb8.html

哪种方法适合您的情况取决于您的具体用例。

答案2

由于您正在远程访问,因此它可能不会自动挂载,因为大多数“环境”上的桌面文件管理器是大多数系统上挂载这些媒体的工具。这很不幸,但这就是“用户友好”发行版的做法。

首先,你可以通过运行以下命令来检查 USB 是否正常工作:

/sbin/udevadm monitor

然后插入并拔出 USB 磁盘。您应该会看到一些事件被打印出来。插入后,查看 /dev/disk/by-id 并查看是否看到设备节点(符号链接)。

如果愿意的话,您可以像这样安装它:

mkdir /mnt/media1
mount -t auto /dev/disk/(fullpathtodevice) /mnt/media1

删除它之前你应该先卸载它。

您必须是超级用户(root)才能执行这些操作,或者由 root 和正确的组启用。

关于您的第二个问题,将自定义脚本用于主机范围的正确位置放在 中/usr/local/bin。同样,您必须是 root 才能执行此操作。

答案3

操作系统未提供的程序的正确存放位置是 /usr/local/bin。大多数 Linux 发行版的 PATH 变量中都包含 /usr/local/bin 目录。

答案4

gby 是正确的 - df 只会检测已安装的文件系统。

我建议使用一个简单的fstab规则,我在另一个答案中详细说明如何创建这里

当然,这需要你真正之后的文件系统 - 您的文件管理器(我使用 pcmanfm - 我知道 Thunar 也这样做)应该会检测到 fstab 中的这些行并将它们列为可挂载。如何挂载驱动器取决于文件管理器,但通常涉及右键单击图标并按Mount。使用完驱动器后,卸载也一样。

你也可以做mount /dev/insert-usb-device-here/umount /dev/insert-usb-device-here


毋庸置疑,在做这些事情之前你必须susudoroot。

相关内容