开机后通过USB启动会留下哪些痕迹?

1. 一个可启动的Ubuntu USB驱动器是不是真的不允许任何东西被写入到计算机的硬盘上?
2. 如果是这样的话,像我的这台装有SSD硬盘的电脑,也会在使用可启动USB会话后不留下任何痕迹吗?
6个回答

许多硬盘存储着一个开机次数计数器,可以通过SMART读取。(例如,在Windows中可以使用CrystalDiskInfo - 在所有这些截图中,您可以在窗口的右侧读到“Power On Count”https://www.google.com/search?q=crystaldiskinfo&source=lnms&tbm=isch)。)
这个计数器对于从不同的硬盘启动会很敏感,但它不会具体指定(计数器也会增加,当进入BIOS设置屏幕时,或者在加载操作系统之前再次关机的情况下)。
由于这个计数器由驱动器的电子设备控制,Ubuntu USB闪存上的软件无法阻止它更新。在某些情况下可能有可能清除或重新写入计数器,但这将取决于硬盘型号/固件版本,并且清除计数器仍然是可以检测到的。
一些系统BIOS还会记录系统事件的日志。我还没有见过记录从可移动介质启动的日志,但这显然是可行的。
当然,您也可以在USB端口本身留下物理痕迹,例如扰乱氧化层。

这个计数器是由驱动器的电子设备精确控制的,具体来说是磁盘固件。 - heemayl
当然需要循环使用,重新启动不算吗? - mckenzm
2根据电源系统的设计,重新启动可能涉及暂时断开外设(如磁盘)的电源,而根据磁盘控制器的设计,可能存在足够的电容来支持短暂的断电。 - Ben Voigt

一个可启动的Ubuntu USB驱动器不允许任何东西被写入计算机硬盘,这是真的吗?
不是。你可以挂载磁盘并在上面写任何东西。毕竟,USB存储设备是Ubuntu用户第一次安装Ubuntu的主要方式。
但默认情况下,Ubuntu不会挂载您没有告诉它的任何内容。
因此,如果您没有挂载"C:"实际上所在的分区,它将不会留下任何已启动到Ubuntu的痕迹。

6如果SATA硬盘上有可用的交换分区,这个说法是否仍然成立? - kasperd
1@kasperd:systemd-gpt-auto-generator会检查GPT并自动检测交换分区,但它只检查“根磁盘”。如果系统意外地使用了可移动卷的交换空间,那将是相当糟糕的。但您可以依赖于根卷是不可移动的。 - MSalters
@MSalters 这是否意味着它只在与根文件系统相同的磁盘上查找交换分区,而不在其他任何磁盘上查找? - kasperd
@kasperd:这至少是我阅读文档的方式。但请记住,在引导过程中使用 initramfsswitch_root(或者 initrdpivot_root)时,会有一些技巧,对于某些基于USB的发行版可能会稍有不同。 - MSalters
6我在一台安装了Ubuntu 16.04(64位,UEFI模式)的虚拟机上进行了测试,该虚拟机有一个独立的4GB交换分区。从16.04 iso镜像(安装/实时DVD)引导该虚拟机将会得到一个实时系统,其中磁盘的交换分区会被自动挂载和激活。我不知道实时系统是如何决定挂载哪个交换分区的,但它确实有时会这样做。 - Byte Commander
@Bytecommander在服务器上以及lubuntu备用和迷你命令行安装。当您安装时,它会要求卸载已经在使用的驱动器,因此它确实会使用它。 - ianorlin
1如果它使用了交换分区,那么如果休眠数据存储在其中,那就太糟糕了。 - mckenzm
我的理解是,持久/实时安装会从sda开始寻找casper-rw分区,然后按字母顺序逐个查找,我相信交换分区也是如此。 - C.S.Cameron
1关于交换(swap)的信息(警告)应该编辑到答案中。 - Jonas Schäfer

回答1:

Ubuntu USB启动通常不会挂载您系统的硬盘/固态硬盘(HDD/SSD),如果挂载了,它也是只读的,除非您告诉Ubuntu将其视为可读写。

回答2:

除非您向您的硬盘/固态硬盘(HDD/SSD)写入数据(参见回答1),否则不会留下任何USB会话的痕迹。


我从这些好的答案中理解到,SSD驱动器在通过USB引导时与HDD驱动器一样免疫不必要的痕迹。很好知道。 - Seeker
如果你把东西写入固态硬盘(SSD)的话,也可能会留下痕迹。虽然我觉得这是不言而喻的,但我会相应地更新我的回答。 - Videonauth
4我认为SSD和HDD在对不需要的痕迹的免疫性方面没有区别。 - Soren A

非常小心这个页面上的一些答案,使用Live或Persistent闪存驱动器时,很容易写入和/或破坏您内部驱动器上的数据。
我正在使用闪存驱动器安装来编写此文,当我查看Unity时,我看到所有的内部分区都已挂载。
如果我打开gparted并想修改、格式化或删除分区,则通常需要先卸载该分区。
在gparted中,创建新的分区表并清除内部驱动器时,不需要卸载任何内容。
从闪存驱动器使用dd也可能非常危险,一个非常小的错误就可以擦除任何驱动器上的所有内容。
对于大多数Live和Persistent USB驱动器,不需要密码即可获取root权限。
Live和persistent安装足够安全,但请了解风险。

一个使用Ubuntu USB启动的实时会话在计算机的硬盘上不留下任何痕迹,除非从实时USB会话中安装了Ubuntu到硬盘上,而且从Ubuntu实时USB安装Ubuntu或对计算机的硬盘进行更改并非必需,只是可选项。

6你可以挂载和写入本地磁盘,而无需安装Ubuntu,所以你的回答是错误的。 - Soren A
当我启动一个Live或持久的闪存驱动器时,计算机上的几乎所有分区都已经挂载。在gparted中,在删除、格式化或缩小之前,需要卸载大多数分区。但是,为了创建新的分区表和擦除内部驱动器,不需要卸载任何内容。 - C.S.Cameron
1事实上,安装一个实时发行版的流行原因之一是从克隆或主盘重新映像内部磁盘,如果是Windows磁盘,则删除或重命名特定文件。然而,完全不留痕迹也是可能的。如果有疑问,打开机箱并拔掉硬盘即可。 - mckenzm

我发现这个页面上的答案差异令人困惑,于是决定在Ubuntu 16.04.1 64位桌面版上快速比较可启动的USB安装类型:
- 使用Ubiquity进行完整安装。 - 使用Startup Disk Creator进行Live syslinux安装。 - 使用mkusb / dus进行Persistent grub2安装。
Live和Persistent安装具有相同的特点,除非另有说明。
完整安装(FS)与Live/Persistent安装(L/P)之间的区别如下:
- USB操作系统自动挂载所有分区* - 完整安装 - 是,L/P - 是 - 内部分区无需SU即可写入 - 完整安装 - 是,L/P - 否 - 内部分区需要SU才能写入 - 完整安装 - 是,L/P - 是 - 超级用户需要密码 - 完整安装 - 是,L/P - 否 - Gparted需要密码 - 完整安装 - 是,L/P - 否 - 安装到内部驱动器需要密码 - 完整安装 - 不适用,L/P - 否 - 使用内部驱动器的交换空间(如果可用) - 完整安装 - 是,L/P - 是
使用内部驱动器的casper-rw分区(如果可用)- 完全 - 不适用,实时 - 否,持久性 - 是。
只要计算机没有交换分区、casper-rw分区,您在保存东西时要小心,不使用gparted、boot-repair,不点击安装图标,不输入“sudo”或“dd”,也不尝试备份任何内容,那么应该没问题。如果是一个实时USB(没有持久性),而且内部驱动器是Windows系统,只需不输入“sudo”或使用任何工具即可。
此评估中的所有结果都可以轻松复制。
ISO9660分区被挂载,但只能读取映像文件,就像cdrom文件夹一样。

请问您能否把这个翻译成通俗易懂的语言?我所寻求回答的问题,现在根据这一连串的回答来说,就是简单地问:如果我在USB上运行Ubuntu,并且不做任何操作来访问计算机的硬盘或固态硬盘,我的活动是否会留下任何痕迹? - Seeker
2只要计算机没有交换分区、casper-rw分区,你小心保存文件的位置,不使用gparted、boot-repair,不点击安装图标,不输入“sudo”或“dd”,也不尝试备份任何东西,那么你应该没问题。如果它是一个Live USB(没有持久性),而内部驱动器是Windows,就不要输入“sudo”或使用任何实用程序。 - C.S.Cameron
1@C.S.Cameron你上面的评论是实际答案:只要没有交换空间或casper-rw,并且没有其他东西被显式或无意中挂载,一个live session不会触碰内部驱动器。否则,它可能会,可能是关键词。即使如此,交换空间也不会被保留,而在live session期间的任何使用痕迹对除了法证专家之外的任何人都是“不可见的”。 - user589808
OP的第一个问题的答案是,不,这是不正确的,Ubuntu确实允许将东西写入计算机的硬盘。第二个问题也是不正确的,计算机可能会留下许多USB会话的痕迹,包括一个新的操作系统。OP已经对他的问题进行了限定,新的答案是,只要用户小心并且知道自己在做什么,内部驱动器是安全的。我一个月前就在一台工作电脑上清除了硬盘,但我不够小心,喜欢尝试新事物。 - C.S.Cameron
谢谢CelticWarrior,我已经将那个评论添加到我的回答中。 - C.S.Cameron