标签: block-device

有没有办法只同步一个分区?

有没有办法只同步一个分区而不是所有分区?

类似于“同步/dev/sdc1”。

filesystems cache buffer synchronization block-device

18
推荐指数
3
解决办法
6351
查看次数

从脚本中查找未挂载分区的文件系统

我正在使用 AIF(Arch 安装框架)编写自定义自动安装,我需要在给定分区的分区上找到文件系统。

到目前为止,我有这个:

grok_partitions () {
    local partitions=
    for label in `ls /dev/disk/by-label | grep "Arch"`
    do
        if [ $label == "Arch" ]
        then
            mount_point="/"
        else
            IFS="-" read base mount <<< "${label}"
            mount_point="/${mount}"
        fi

        local partition=$(readlink -f /dev/disk/by-label/${label})
        local part_no=$(echo ${partition} | grep -Po '\d+')
        local fs=$(parted -mls | grep "^${part_no}" | cut -d: -f5)
        partitions+="${partition} raw ${label} ${fs};yes;${mount_point};target;no_opts;${label};no_params\n"
    done

    # do the swap
    if [ -e /dev/disk/by-label/swap ]
    then
        local partition=$(readlink -f /dev/disk/by-label/swap)
        partitions+="$partition raw swap swap;yes;no_mountpoint;target;no_opts;swap;no_params"
    else …
Run Code Online (Sandbox Code Playgroud)

command-line filesystems system-installation block-device

18
推荐指数
3
解决办法
8228
查看次数

如何读取/dev/sda 的内存(内核)分区表?

我不小心用 GParted 覆盖了我的 /dev/sda 分区表(AskUbuntu 上的完整故事)。由于我还没有重新启动并且我的文件系统仍然完全可用,我被告知我可能能够从内核内存中恢复分区表。那可能吗?如果是这样,我如何恢复它并恢复它?

在此处输入图片说明

linux partition kernel block-device

17
推荐指数
2
解决办法
2万
查看次数

如何从分区设备名称中获取块设备名称?

我正在寻找一种可移植的方式来获取/dev/sda给定分区设备名称(例如/dev/sda1)的父块设备名称(例如)。我知道我可以删除最后一个字符,但在某些情况下不起作用:

  • MMC 读卡器的名称通常类似于/dev/mmcblk0,而它们的分区名称则类似于/dev/mmcblk0p1(注意额外的p)。
  • 可选:一些块设备根本没有任何分区表,并且被格式化为单个分​​区。在这种情况下,分区设备和父块设备是相同的。

LVM 卷是完全不同的鱼。我现在不需要支持他们,但如果考虑到他们需要一点额外的努力,我不会介意。

partition shell-script block-device

17
推荐指数
2
解决办法
1万
查看次数

防止 USB 外部硬盘驱动器休眠

有谁知道是否有一种优雅的方法可以告诉外部 USB 驱动器在一段时间不活动后不要减速?我见过基于 cron 的解决方案每分钟写入一个文件,但没有任何东西散发出unixey 优雅的气息。必须有一个 hdparm 或 scsi 命令,我可以向驱动器发出(通过 OpenBSD 中的 sd 驱动程序访问 USB 驱动器)来告诉它不要休眠。恐怕这可能是机箱控制器内置的一个功能,因此除了将驱动器从机箱中取出并直接放入机器之外,没有太多可以改变它,但我想我会问,在关闭的机会。

理想情况下,我正在寻找 OpenBSD 解决方案,但我知道还有其他解决方案存在同样的问题,因此将考虑任何解决方案作为答案。

drivers openbsd scsi hard-disk block-device

16
推荐指数
5
解决办法
4万
查看次数

持久块开发 setra 预读设置

我有一些固态硬盘安装起来就/dev/sda1/dev/sdb1一个SLES 11 SP2服务器上,而我能调整的预读设置有blockdev --setra

sudo blockdev --setra 4096 /dev/sda
sudo blockdev --setra 4096 /dev/sdb
sudo blockdev --getra /dev/sda
4096
sudo blockdev --getra /dev/sdb
4096
Run Code Online (Sandbox Code Playgroud)

如何在启动时保留此设置?具体来说,sysctl.conf.

ssd block-device sles

15
推荐指数
3
解决办法
5万
查看次数

创建写入 /dev/null 的虚拟块设备

我想在设置中测试一些物理链接。我可以用来测试这个的软件工具需要一个块设备来读/写。我可用的块设备无法使物理链路饱和,因此我无法对其进行全面测试。

我知道我可以设置一个由文件支持的虚拟块设备。所以我的想法是以某种方式将虚拟块设备设置为 /dev/null 但问题当然是我无法从中读取。有没有一种方法可以设置一个写入 /dev/null 但在读取时总是返回零的虚拟块设备?

感谢您的任何帮助!

linux networking block-device null

15
推荐指数
2
解决办法
1700
查看次数

GNU/Linux:覆盖块设备/可堆叠块设备

GNU/Linux 具有覆盖目录的联合挂载。因此,您可以在只读目录之上安装可写目录。当可写目录被卸载时,只读目录保持不变。

我正在为块设备寻找相同的功能 - 最好将可写部分存储在文件中。所以我想运行类似的东西:

device-setup /dev/newdevice /dev/read-only-device overlayfile
Run Code Online (Sandbox Code Playgroud)

如果我写入 /dev/newdevice 更改应该存储在覆盖文件中。如果我读取写入的扇区,我应该从覆盖文件中获取数据。如果我读取未写入的扇区,我应该从 /dev/read-only-device 获取数据。

有这样的工具吗?

block-device loop-device snapshot

14
推荐指数
1
解决办法
6245
查看次数

为什么 Linux 对非 SCSI 设备使用 SCSI 驱动程序?

看看块设备命令喜欢什么lsblkblkid返回什么,似乎linux HDD支持SCSI驱动程序而不管设备的类型,就像一个USB闪存驱动程序,在lsblk命令中显示如下:

...
    sdb               8:16   1    30G  0 disk 
    ??sdb1            8:17   1    30G  0 part /run/media/user/HP v224w
...
Run Code Online (Sandbox Code Playgroud)

为什么 sdb 和 sda 驱动程序被称为 SCSI 驱动程序?这个术语有什么关系Small Computer System Interface

linux scsi usb-drive block-device

14
推荐指数
1
解决办法
2477
查看次数

原始块设备的比较

是否有一个实用程序(或一些 shell 魔法)可以让我比较两个块设备?

详细信息:我有一个大型 (0.5 TB) RAID 设备,我已使用 dd 将其备份到稍大的 SATA 设备。该设备上有多个分区,但是我从“父”设备而不是分区设备节点复制(例如,我复制 /dev/hda 而不是 /dev/hda1)。

我想验证备份是否良好/正确。

我曾考虑过在每个设备上运行 md5sum,但是这不会给我一个准确的结果,因为第二个设备比第一个设备稍大,因此额外的字节会改变散列。

dd hard-disk block-device

13
推荐指数
1
解决办法
2万
查看次数