禁用USB闪存驱动器用于启动


3

有没有办法让重启时检测不到USB闪存盘,以避免PC试图用它来启动?假设您只能控制闪存驱动器而不管理PC。我知道你可以从PC上禁用它,并且有办法让闪存驱动器启动操作系统。

我的问题是,我有一个便携式应用程序驱动器充满了有用的东西,但是当我重新启动时,我必须拔掉插头,或者我正在处理的任何PC挂起。

软件解决方案是最好的,但是如果有人知道USB设备只在启动后的某个时间启动,那么这也很有趣。

Answers:


3

摘要

开机进入Linux(Live或安装),然后运行sudo grub-install /dev/sdX其中sdX是连接到您的USB驱动器的文件。要查找USB驱动器的使用位置sudo parted -lsudo fdisk -l [1](我不确定这将如何与UEFI固件一起使用)

主要

我的问题是我有一个便携式USB硬盘,我用它来备份。我将BIOS设置为首先从USB启动,因为有时我必须从USB启动实时操作系统映像。当我重新启动系统时,系统会尝试启动便携式硬盘并挂起。

  • 首先,我尝试清除分区的启动标志。引导标志没有任何效果,因为大多数现代引导加载程序对它无动于衷,它主要由传统操作系统使用。[2]
  • 其次,我尝试将USB驱动器的前446个字节清零,希望BIOS什么也看不见,只是转到下一个驱动器。[3]原来BIOS无法正常工作。尽管我可以告诉您,您(用户)在BIOS配置中设置了启动顺序。如果BIOS检测到您告诉它的媒体,它将“连接”到设备,将第一个扇区(512字节)复制到ram并开始执行代码。如果该区域归零,则机器将挂起。
  • 最后,我尝试了摘要部分中详述的方法。grub-install能够找到我的所有操作系统,现在我不需要拔掉USB来启动。


[1] https://askubuntu.com/q/180023
[2] https://unix.stackexchange.com/a/23588/183350
[3]第一个扇区(512字节)是主引导记录(MBR) 。MBR有两个部分:主分区表和主引导代码。主引导代码从字节0-446开始,包含系统用于引导指定分区的代码。字节447-512包含实际的分区表。如果此损坏或归零,系统可能无法读取分区。http://www.dewassoc.com/kbase/hard_drives/master_boot_record.htm
[4] https://unix.stackexchange.com/questions/259143/how-does-grub-stage1-exactly-access-load-stage- 2


2
当你不小心擦掉主驱动器上的引导扇区时,将USB与你的引导加载程序放在一起也很方便。
cmwt 2016年

1

如果计算机尝试从它启动,即使它没有可启动分区,那么您无法做任何事情来改变这一事实。

关于你的第二种可能性,如果计算机已经启动它只会启动,这是不可能的。USB驱动器在机器需要时启动,而不是任何其他时间。

对不起,但看起来你将不得不每次启动都把它拉出来(因为人们已经在一些硬件上使用了软盘和CD一段时间)。

注意:这假设您无法访问BIOS(因为我从您只控制闪存驱动器而不是计算机的问题推断)。


我不同意,硬件解决方案就像延迟交换机一样简单。就像PC和闪存驱动器之间的设备一样,只是说“如果我在PC上看到的电压超过30秒,则只连接闪存驱动器”。所有这一切都说我没有用万用表给我的电脑5伏电压轨看看它是否真的在软件重启时掉线了。
丹尼尔

1
绝对不是你能做的。这完全由bios控制。只需更改BIOS设置和中提琴!
马特H

1
@MattH,以及借调他的不知名的人。他明确表示他不能对计算机做任何事情。
soandos

我正准备测试USB电压会发生什么,并意识到我不需要拿出万用表,重新启动电脑并观察光学鼠标上的小红灯,它会再次关闭然后再打开!我知道这可能与机器有关,如果你之间有一个有源USB集线器,它可能会混淆事情,但我猜测大量的PC设置方式与我的相同,并说PC重启会重启电源USB设备不是一个巨大的假设。
丹尼尔

好吧它可能或者它可能没有(那里的机器根本无法从USB启动),但是没有什么可以对你的驱动器做什么可以改变它。
soandos

1

好吧,它已经很好地记录了如何以其他方式做到这一点,但我怀疑你需要做的就是用一些像gparted这样的分区编辑器来关闭USB驱动器上的启动标志

与往常一样,在您执行任何操作之前备份驱动器,因为丢失所有信息的风险很小


这是第一个几乎有用的答案。我检查了驱动器上的标志,并且没有勾选引导标志。GParted看起来像一个很棒的工具,标志写入驱动器而不存储在机器上。似乎Windows操作系统只是忽略了启动标志,我还勾选了USB驱动器上隐藏的标志,它没有任何效果。
丹尼尔

0

您不需要更改任何BIOS设置。除非有密码锁定,否则您可以使用“选择引导设备”菜单从硬盘驱动器启动。这个菜单的常用键是F12

提示:如果太快的BIOS闪烁时,按Pause/Break暂停的BIOS。


他没有访问BIOS ...
soandos

密钥可以针对不同的BIOS进行更改。我桌面上的PC只有用于进入设置的删除键,没有用于选择引导设备的快速选项。
丹尼尔

0

如果由于某种原因BIOS设置没有为您切割它。您可以看一下在USB驱动器上实际安装启动加载程序。


它可能会出现这样一个启动加载器,只是说“启动C:”
丹尼尔

0

最简单的方法是更改​​BIOS中的引导顺序,以便HDD成为第一个。

一旦开始从HDD启动,计算机将不会查找其他可启动设备。

编辑:您现在提到您无法更改BIOS设置(或不想)。

它听起来甚至尝试启动过程是不寻常的。你在屏幕上看到的内容并不是很清楚。它不应该开始启动只有直接分区的闪存盘。我怀疑你有一个分区maked可启动和MBR或那里认为它应该从它启动的东西。您之前是否已将操作系统加载到其中。

否则,BIOS启动引导。计算机要做的第一件事就是运行BIOS固件。BIOS可能会查看闪存盘。如果它没有MBR记录,它应该通过它所以除非你指示BIOS不从闪存盘启动,否则你做的任何事情都没有任何区别。BIOS可能会查看磁盘以查看它是否具有MBR或类似功能,如果不是,则应跳过它移动到启动优先级中的下一个设备。

有人建议按键组合键选择首先启动的设备。然而,恕我直言,这与解锁驱动器并重新插入驱动器一样麻烦。

您是否可以检查驱动器没有标记为可引导的分区,并且尽管没有操作系统,但没有MBR?它应该只是一个直的分区。

EDIT2:由于计算机挂起“验证dmi池数据”。以下链接可能有益。

谷歌:“验证DMI池数据冻结”

这是一个非常普遍的问题。


2
是的,但这是我在其他人机器上使用的便携式USB驱动器。其他人不喜欢我在他们的BIOS设置中玩,如果我有一台新的4台机器,我必须在一周内工作,我更愿意更换一台USB设备而不是4台机器。
丹尼尔

@daniel,你没有在你的问题中提到这一点。您的问题现在也扩展到网络上的其他计算机。请更新。
马特H

或者至少不清楚“管理电脑”是什么意思。抱歉。请在我更新的答案中阅读我的评论。
马特H

我相当肯定MBR不是我的问题,如果BIOS的主要启动设备设置为USB并且没有可启动分区那么它只会挂起“验证DMI池数据”
daniel

@daniel - 看到这个链接可能会有所帮助:computerhope.com/issues/ch000474.htm
Matt H

0

引导扇区在偏移01FE处包含签名55AA。此签名表示IBM PC兼容的引导代码。要防止启动,您只需更改此签名即可。

如果你手头有一个磁盘编辑器,你只需使用它并将引导扇区的最后两个字节中的一个更改为不同的东西。

如果你有正确的驱动器,请看两次。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.