我可以在没有 fdisk 或 lsblk 的情况下列出未安装的驱动器吗?

我可以在没有 fdisk 或 lsblk 的情况下列出未安装的驱动器吗?

我有一个 Inteno dg200 路由器,运行一些 Iopsys linux 版本(我相信内核 3.14 左右)

我在使用 USB 端口和外部硬盘运行文件共享时遇到了一些问题。系统支持。但无论我放入什么,它都不会自动挂载。因此,今天我决定以 root 身份 ssh 进入系统,而不是使用基于 Web 的控制面板。

令我惊讶的是,该系统不支持在已连接的未安装驱动器上查找信息的常用方法。请允许我详细说明一下:

# fdisk -l
-ash: fdisk: not found

很好,那么让我们尝试其他方法:

# lsblk
-ash: lsblk: not found

于是我开始遇到麻烦。根据我在网上了解到的情况,当人们遇到这个问题时,通常是fdisk因为/sbin,这不在他们的路径中,因为他们不是 root。好吧,我是这里的 root,但为了确定我检查了两者/sbin/usr/sbin,但无济于事。两个目录都不包含任何名为fdisk或 的内容lsblk,该命令也find找不到任何名为 的内容fdisk

有没有其他方法可以从 CLI 找出到底要安装什么,或者我可以安装fdisk在路由器上吗?

答案1

当内核寻找可能的设备时,它会查看

cat /proc/partitions

示例输出:

major minor  #blocks  name

   8        0  488386584 sda
   8        1  472382464 sda1
   8        2          1 sda2
   8        5   16001024 sda5
  11        0    1048575 sr0

已经安装的设备可以用

mount | grep ^/

示例输出:

/dev/sda1 on / type ext3 (rw,noatime,errors=remount-ro,data=ordered)

如果你没有这个mount命令

cat /etc/mtab

或者

cat /proc/mounts

答案2

从你的评论来看:

cat /proc/partitions 给了我

major minor #blocks name 
31 0 5120 mtdblock0 
31 1 5120 mtdblock1 
31 2 384 mtdblock2 
31 3 128 mtdblock3 
31 4 119296 mtdblock4 
31 5 52224 mtdblock5 
31 6 67072 mtdblock6 
31 7 55056 mtdblock7 
31 8 55056 mtdblock8 

我不确定这有什么用。

这表明路由器正在使用内存技术设备作为其系统磁盘等效项 - 如果 USB HDD 当前已插入,则 USB 存储驱动程序可能尚未加载。

你需要先做一些类似的事情modprobe usb-storage。如果成功,则 USB HDD 的分区应添加到 中的列表中/proc/partitions

相关内容