首页 > TAG信息列表 > block-device
无需在Linux中安装即可阻止设备信息
我试图在C中获取linux中块设备的一些信息(特别是块大小).是否可以在不安装设备的情况下获取设备的块大小,并且可能无需查看动态文件(如/ sys中的文件),但仅限系统调用. 我正在尝试使用stat,但如果我询问/ dev / sdb2,它会返回有关/ dev filesystem的数据. 如果系统调用不可能,我应android – devicePolicyManager.lockNow()不适用于Motorola Tablets
public final static void lockDevice() { try { if (devicePolicyManager.isAdminActive(adminComponent)) { devicePolicyManager.lockNow(); } } catch (final Exception ex)编程一个由Linux中的几个文件组成的环回设备
HEJ, 在Linux中使用losetup使用文件来模拟块设备相对容易: > http://www.walkernews.net/2007/07/01/create-linux-loopback-file-system-on-disk-file/ 任何人都可以给我一个提示,看看我想要编程我自己的块设备,这是基于我正在从内容的几个文件?为了您的理解,我想让文件1中的字节1-5linux – 什么可能导致块设备以某种方式小于其分区?
我正在尝试擦除IOSafe外部驱动器,我遇到了一个主要问题.当我运行dd来擦除整个磁盘(/ dev / sdb)时,它会在1.8GB标记处出错(它是一个2TB磁盘),说设备上没有剩余空间. sudo dd if=/dev/zero of=/dev/sdb bs=4M status=progress 当我去擦除/ dev / sdb1(分区,奇怪的是,甚至不应该存linux – 给定一个块设备,如何检测分区名称是否必须包含“p”?
我想用sfdisk自动分区块设备.这可能是SD卡,硬盘,SATA或NVME设备. 最初我认为sfdisk需要这些名称,因此我希望正确生成它们,但显然无论如何都可以将它们排除在外.linux – 如何从/ sys或/ proc测试块设备是否为只读?
在CentOS6系统上,我有/ dev / block / sr0(只读)和/ dev / block / sda(读/写).如何以编程方式找出哪些设备是只读的?那里有一个ro文件,但两个设备都是’0′. 我可以使用一些黑客(比较名称^ sr vs ^ sd,寻找设备节点的cdrom所有权),但我想要一个通用的解决方案.解决方法:如果/ sys /将事件添加到Udev事件队列
我的一个udev规则运行了一个删除USB存储设备的脚本.此脚本执行一些常规清理并删除存储设备的挂载点目录.问题是我希望能够以编程方式从我的C应用程序中触发此逻辑(而不是当usb闪存驱动器被热插拔移除时,这似乎为时已晚). 实现此目的的正确方法似乎是直接在udev事件队列中添加事件.linux – 无法编辑/ sys / block / sdX / device / queue_depth文件
我正在尝试使用以下命令增加SSD的队列深度值: echo 64 > /sys/block/sda/device/queue_depth 但是我收到以下错误: bash: echo: write error: Invalid argument 我尝试使用tee甚至像vim和nano这样的编辑器,但仍然看到这个错误.此服务器上有4个SSD(sd [a-d]),并且所有这些都会发生linux – blktrace如何工作?
我正在尝试理解Linux阻止层,所以我正在写一篇关于它的博客:http://www.linuxintro.org/wiki/blktrAce.当这样调用blktrace时: blktrace -d /dev/sdg -o - | blkparse -i - 我看到,例如输出 8,96 4 695 430.080106382 2356 I N 0 (00 ..) [kworker/4:2] 8,96 3linux – 只写Delta时用图像更新块设备,是否可能?
我广泛使用dd作为软件配置控制的手段.这些映像通常部署在闪存盘上以更新设备.我发现我经常对图像文件进行小的增量更新,然后必须将整个图像重新复制到块设备上.这相当耗时,因为图像的大小通常为8GB.为了解决问题,图像(一旦组装)不是易于安装的格式.换句话说,不可能直接在块上进行更CentOS7上的设备上没有剩余空间
我的机器操作系统是CentOS7,必须将50G数据备份到MySQL中.但是,设备上没有剩余空间.但是/ home上有很多空间.如何让用户有足够的空间让MySQL存储数据.我认为/ dev / mapper / centos-root中没有空格,如何将空间从/ home移动到/. $df -h Filesystem Size Used Availlinux – 为什么blktrace只写8块?
我想了解数据库写入磁盘的I / O模式,以决定使用多少磁盘以获得最佳性能.要分析我想要使用blktrace的I / O模式,我必须首先解决它.这是我在这里尝试的. 我有一个USB棒,我连接到我的电脑,它变成/ dev / sdd.现在我开始吧 dd if=/dev/sdd of=/dev/null 在一个单独的窗口我开始 blktlinux – 如何获取包含特定分区的磁盘名称
如果我知道分区是例如/ dev / sda1,我如何获得包含该分区的磁盘名称(在这种情况下为/ dev / sda)? >输出应该只是磁盘的路径(如/ dev / sda).>它不应该要求字符串操作,因为我需要它来处理不同的磁盘类型.解决方法:您可以在/ sys中查看块设备的给定分区名称.例如,/ dev / sda1: $ls -linux – 获取块设备父级
给定一个块设备,我怎样才能得到它的“父”? 一个例子是LUKS虚拟解密设备(/ dev / mapper / decrypted),其父级将是加密块设备(/ dev / sdb)解决方法:对于非交互式工作,可以使用dmsetup deps来完成,它列出了块设备的依赖关系.默认情况下,它将返回主要:次要设备编号,但您可以提供其他选linux – 从df设备名称到物理驱动器名称(供应商/类型)
通过df查看设备名称,是否可以将其解析为物理驱动器名称,例如供应商/类型. /dev/sda3 915.4G 34.9G 880.0G 4% /share/HDA_DATA /dev/sdd3 1.8T 668.1G 1.1T 36% /share/HDD_DATA 我了解到我在sys/block中找到了一些信息,但我没linux – 如何判断SCSI设备是否可移动?
在DMESG中,我看到: [sdb]附加的SCSI可移动磁盘 > Linux如何确定哪些是可移动的而不是可移动的? >如果设备是“可移动的”或者不是日志以外的其他设备,我有没有办法查找,例如某些设备在/ sys或/ proc中?解决方法:所有块设备都具有可移动属性,其中包括block device attributes.这些属性linux – 了解特定设备是否为USB海量存储
上下文 我正在从现有的dd工厂图像中自动化SD卡成像. SD卡始终通过外部USB读卡器连接,因此在系统中显示为SCSI块设备/ dev / sd *. 目前我的命令的语法是:write-image DEVICE其中DEVICE是SD卡块设备,例如.的/ dev / SDD. 问题 我已经在对DEVICE进行基本检查以验证它的格式是/ dev / slinux – mc上的bcache或bcache上的md
bcache allows one or more fast disk drives such as flash-based solid state drives (SSDs) to act as a cache for one or more slower hard disk drives. 如果我理解正确, >可以分配SSD *来缓存多个后备硬盘,然后可以使用mdadm对生成的缓存设备进行RAID操作 要么>多个硬盘驱动为什么Linux将SCSI驱动程序用于非SCSI设备?
参见英文答案 > Why do my SATA devices show up under /proc/scsi/scsi? 1个 看看像lsblk或blkid这样的块设备命令返回它似乎linux硬盘支持SCSI驱动程序,无论设备的类型如何,如lsblk命令中的USB闪存驱动linux – 为设备授予特定用户权限,而不授予其他用户访问权限
我在/ dev / sdb上附带了一个读卡器. 我所做的是使用以下方式向所有者,团体和世界其他地方授予所有权限: sudo chmod 777 /dev/sdb 我可以只使用其他组合,只允许所有者(我)使用读卡器吗? 只有一个用户帐户.解决方法:有多种方法可以实现这一点. 1.将您的用户添加到拥有该设备的组 通linux – 使磁盘/磁盘复制速度变慢
有没有一种方法可以减慢Linux上的复制过程? 我有一个大文件,比如10GB,我想将它复制到另一个目录,但我不想全速复制它.假设我想以1mb / s的速度复制它,而不是更快.我想使用标准的Linux cp命令. 这可能吗? (如果是,怎么样?) 编辑:所以,我将为我想要实现的目标添加更多上下文. 当通过USB复linux – 如何使用dd用特定的char填充磁盘?
我知道我可以像这样用0x0填充整个磁盘: dd if=/dev/zero of=/dev/sda bs=4k conv=notrunc 有没有办法用我选择的字符填充整个磁盘?解决方法:这个怎么样: yes "<char>" | dd of=/dev/sda bs=4k conv=notrunc 用你选择的角色代替.使用多个线程并发写入文件
我有一个userlevel程序,它使用标志O_WRONLY | O_SYNC打开一个文件.该程序创建256个线程,尝试将256个或更多字节的数据写入文件.我希望总共有1280000个请求,总共大约300 MB的数据.一旦1280000个请求完成,程序就结束了. 我使用pthread_spin_trylock()来递增一个变量,该变量跟踪已完成使用块特殊文件/设备来实现文件系统
我使用FUSE实现了basic filesystem,实现了所有可预见的POSIX功能[自然我甚至还没有进行过分析;)].目前我能够在常规文件(st_mode & S_IFREG)上运行文件系统,但开发的下一步是将其托管在实际的块设备上.按原样运行我的代码,在设备上调用fstat后立即读取st_size失败.当然我不希望问题