我对 Linux 不是很熟悉,但是,周围有很多信息,所以我通常可以学到我需要的东西。但是,我从来不明白 Linux 中的“安装”是什么意思。在使用 Windows 时,我只需插入某个东西(例如,USB 闪存盘),然后 Windows 就会问我“嘿,你想浏览它吗?”,显然 Windows 做了一些我应该知道如何做的事情,但我并不完全理解。
我有一块较旧的加密硬盘,但我忘记了密码,当时我只是忽略了它,因为我需要的一切实际上都在其他地方安全地保存着,但现在我想再次将该硬盘用于其他目的,换句话说,我想格式化该硬盘。
然后我尝试使用 SystemRescueCd 来执行此操作,因为我已经尝试从它启动并且可以成功安装 HD。问题是,要安装某些东西(请注意,是复制和粘贴)
mount /dev/fd0 /mnt/FolderIJustCreated
但是,这次它不起作用,因为它无法识别硬盘类型,我无法通过输入 -t 来帮助它,因为我也不知道硬盘类型是什么。我的意思是,它应该是 fat32,但我认为加密会破坏它。那么,我该如何安装这种无类型的硬盘呢?
此外,我从来不明白“/dev/fd0”部分来自哪里,这是否意味着我正在安装的东西已经在我的系统上的文件夹 /dev/ 中?
答案1
我对 Linux 不是很熟悉,但是,周围有很多信息,所以我通常可以学到我需要的东西。但是,我从来不明白 Linux 中的“安装”是什么意思。在使用 Windows 时,我只需插入某个东西(例如,USB 闪存盘),然后 Windows 就会问我“嘿,你想浏览它吗?”,显然 Windows 做了一些我应该知道如何做的事情,但我并不完全理解。
如果您使用过 Zip 或 RAR 档案,那么安装磁盘与打开此类档案有些相似。最大的区别在于它由操作系统本身完成(而不是由单独的程序完成)。
- 当您打开一个档案时,您基本上告诉某个程序读取 .zip 文件的内容并允许访问里面的存档文件。
- 当您安装磁盘时,您告诉操作系统读取磁盘的内容并允许访问里面的文件。
Windows 主要是桌面操作系统,并且完全集成了“桌面”部分,它会自动安装磁盘。在 Linux 上,在大多数桌面环境中,它也是自动的,但 Linux 只是允许根据需要剥离“桌面”及其所有自动化。(Linux 只是内核,其他一切都已经作为单独的组件提供。)例如,它用于没有或不需要 USB 端口的服务器、路由器、电视、手机……各种“救援”CD,如 SystemRescueCd,也避免自动安装,因为可能存在风险——例如,如果有人试图从损坏的磁盘中恢复数据,那么尝试安装它可能会进一步损坏它。
问题是,为了安装我做的某件事(请注意,复制和粘贴)
mount /dev/fd0 /mnt/FolderIJustCreated
但是,这次它不起作用,因为它无法识别硬盘类型,我无法通过输入 -t 来帮助它,因为我也不知道硬盘类型是什么。我的意思是,它应该是 fat32,但我认为加密会破坏它。那么,我该如何安装这种无类型的硬盘呢?
首先确保你将其指向 HD。/dev/fd0
始终表示第零软盘。硬盘通常命名为/dev/sda
, /dev/sdb
... (在较旧的 Linux 版本中,它们是/dev/hda
, /dev/hdb
, ... – 我不知道 SystemRescueCd 有多旧。)
此外,大多数时候你需要指向mount
一个特定的分割在该磁盘上。即使只有一个分区,它仍然有一个单独的设备节点:如果整个磁盘是/dev/sda
,那么它的分区将是/dev/sda1
、/dev/sda2
等等。整个硬盘没有“类型”;相反,每个分区都有。或者更准确地说,文件系统每个分区中都存在 FAT32 或 ext2 等类型。
其次,是的,如果磁盘已加密,则无法直接安装它:必须先将其解锁。如何做到这一点没有唯一的答案,因为你没有说明使用哪个程序对其进行了加密 - BitLocker?TrueCrypt?LUKS?完全不同的东西?其中一些也仅适用于 Windows。
但是,如果您只想丢弃磁盘上的所有现有数据并重新格式化,则无论如何都不需要挂载。您可以使用 创建一个新的空文件系统(换句话说,格式化磁盘)mkfs
;见下文。
在执行此操作之前,您可能需要删除所有分区并创建一个新的空分区。不过,这并非在所有情况下都是必要的——如果下面的p
命令print
只显示一个分区覆盖整个磁盘空间,则可以跳过其他步骤,并直接格式化分区。但某些磁盘加密程序可能以不寻常的方式更改了分区表。
如果 SystemRescueCd 运行图形界面,则菜单中可能有 GParted。
使用
parted
:- 跑步
parted /dev/sda
。 - 用于
print free
检查分区表的内容。 - 用于
mktable msdos
创建新的分区表。 - 用于
mkpart primary fat32 1 100%
创建一个新的分区(如果需要可以用 替换-fat32
与ntfs
fdisk 的“类型”相同,这实际上并不影响该分区将包含的文件系统)。 - 出口分开和
quit
。
- 跑步
使用
fdisk
:- 运行
fdisk /dev/sda
(赋予整个 HD 的设备名称)。 - 用于
p
查看分区表的内容。 - 您可以使用
q
退出磁盘管理,如果它已经只显示一个分区。 - 使用该
o
命令创建一个新的、空的分区表。 - 用于
n
创建新分区。对于所有问题按 Enter 键即可,但作为参考,应给出以下答案:p
对于“primary”,按类型、1
按编号、2048
按第一个扇区,当询问最后一个扇区时,只需按 Enter 键 - 它将占用整个磁盘。 - 用于
t
更改分区的“类型”。0c
如果您计划在磁盘上使用 FAT32 文件系统,或者07
如果您计划使用 NTFS,请提供该选项。(但是,分区类型只是一个数字,并不能真正决定分区的内容说实话,我不知道 Windows 是否关心0c
和之间的区别07
。Linux 肯定不关心。) - 用于
w
将更改实际写入磁盘。
- 运行
此后,您应该会得到一个磁盘,其中有一个分区覆盖整个磁盘空间。如果磁盘是/dev/sda
,则此分区将是/dev/sda1
。它目前只有垃圾(加密数据的残留),因此请使用以下命令之一创建文件系统mkfs
:
要创建 FAT32 文件系统,请运行
mkfs.vfat /dev/sda1
。要创建 NTFS 文件系统,请运行
mkfs.ntfs /dev/sda1
。或者,如果 SystemRescueCd 没有
mkfs.ntfs
,请将磁盘连接到 Windows 计算机并使用那里的“格式化”选项。
NTFS 在 Linux 上使用起来可能有点困难,甚至在 Windows 上使用 USB 驱动器时也会出现问题。另一方面,它比 FAT32 可靠得多,尤其是在大磁盘上。
完成此步骤后,/dev/sda1
即可安装使用。
此外,我从来不明白“/dev/fd0”部分来自哪里,这是否意味着我正在安装的东西已经在我的系统上的文件夹 /dev/ 中?
是的。在 Linux 上,许多设备都可以通过 /dev/ 中的特殊文件(设备节点)访问 - 如果程序从 读取/dev/fd0
,它将看到存储在软盘中的原始数据(绕过任何文件系统);同样,它可以通过 访问 HD 的内容/dev/sda
(以及诸如 的分区/dev/sda1
),通过 控制计算机的时钟,通过 /dev/fb0 /dev/snd/pcmC0D0p 访问/dev/rtc0
屏幕的内容。, play audio by writing to
、fdisk
和parted
程序mkfs.*
使用它来编辑分区表或创建新的文件系统。
(在 Windows 上,许多设备也有类似的名称 - 例如\\.\Device\Harddisk0\Partition0
- 但它们之间的区别更大,并且在任何文件夹中都看不到。)
由于设备节点以文件的形式出现,它们通常被这样使用 - 例如/dev/zero
被用作零字节的无限源,/dev/(u)random
作为随机数据源,并且/dev/null
丢弃写入其中的所有内容。