我有一个我正在处理的项目,它涉及一个 USB 存储设备和一个 boo.table 版本的 linux。这个项目的组合方式是,我在 USB 驱动器上有多个分区,需要在启动时安装,以便加载适当的资源。
我的计划是fstab使用它们的 UUID将条目添加到,但是,我不确定这是否适用于我的最终目标。我目前让它们按标签挂载,但如果更改标签,系统将无法启动。
最终,完成后,该映像将被克隆,并用于对许多其他 USB 设备进行映像。
我的问题是,当克隆驱动器(使用dd)时,每个分区的 UUID 会改变吗?它们是特定于硬件的吗?还是克隆它也会保持相同的 UUID?如果系统检测到两个具有相同 UUID 的设备会发生什么?
在 Linux 中,可以通过 UUID 或标签挂载设备(磁盘)。我使用 UUID 已经有一段时间了,主要是因为我在 IRC 上看到了一个关于按标签安装是一个非常糟糕的想法的讨论。
如果选择一个非常独特的标签名称,如 6581_var、6502_root、8580_home、DFF180_usr、68030_boot、BFEC01_WD_Disk05,我不明白为什么按标签安装会是一个坏主意。等等.... ;)
所以我的问题是:
我有一个图像文件:kali-linux-1.0.9a-armhf.img. 这是 的图像Kali Linux ARMH build。
我试图提取图像的内容,但无济于事。我尝试挂载映像,但一直收到文件系统类型错误的错误消息。
我试过:
sudo mount -o loop -t iso9660 kali-linux-1.0.9a-armhf.img /mnt/kali
sudo mount -o loop -t ext3 kali-linux-1.0.9a-armhf.img /mnt/kali
sudo mount -o loop -t ext4 kali-linux-1.0.9a-armhf.img /mnt/kali
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
mount: wrong fs type, bad option, bad superblock on /dev/loop0
Run Code Online (Sandbox Code Playgroud)
这是因为我试图挂载为不同架构创建的映像吗?
唯一接近工作的命令是安装为iso9660. 该命令输出:
mount: block device /mnt/hgfs/Downloads/kali-linux-1.0.9a-armhf/kali-linux-1.0.9a-armhf.img is write protected, mounting read only
mount: wrong fs type, bad option, bad superblock on /dev/loop0
Run Code Online (Sandbox Code Playgroud)
所以它似乎挂载了,但它没有挂载,然后我收到一个错误。当使用除iso9660我以外的文件系统时,只会收到警告。
提取此图像的内容有哪些选项?
有什么方法可以让 linux 放弃尝试重新连接 nfs 共享?我目前在 fstab 中有它们。我希望他们在启动时尝试挂载,然后仅尝试手动重新连接。它在下面抱怨的共享是在一台没有一直打开的机器上。
$ tail /var/log/syslog
Mar 17 10:13:26 Inspiron kernel: [429184.924089] nfs: server 192.168.1.200 not responding, timed out
Mar 17 10:13:30 Inspiron kernel: [429189.132255] nfs: server 192.168.1.200 not responding, timed out
Mar 17 10:13:37 Inspiron kernel: [429196.156051] nfs: server 192.168.1.200 not responding, timed out
Mar 17 10:13:37 Inspiron kernel: [429196.156072] nfs: server 192.168.1.200 not responding, timed out
Mar 17 10:13:42 Inspiron kernel: [429200.364084] nfs: server 192.168.1.200 not responding, timed out
Mar 17 10:13:46 Inspiron kernel: …Run Code Online (Sandbox Code Playgroud) 我收到以下错误消息:
Metadata kept in Windows cache, refused to mount.
Failed to mount '/dev/mapper/veracrypt8': Operation not permitted
The NTFS partition is in an unsafe state. Please resume and shutdown
Windows fully (no hibernation or fast restarting), or mount the volume
read-only with the 'ro' mount option.
Run Code Online (Sandbox Code Playgroud)
我知道这个问题与Windows的休眠/快速启动有关,类似于这个问答:https : //askubuntu.com/questions/145902/unable-to-mount-windows-ntfs-文件系统由于休眠/。但是,我已经尝试过这些解决方案,但没有成功。我可以在 Windows 中很好地挂载分区,我可以在 Linux 中以只读模式挂载它。
我安装了 Windows 10 和 Linux Mint 18。有问题的分区上没有操作系统,并且是其磁盘上的唯一分区。
我试过的:
powercfg /h off …这是非常令人沮丧的。我一直找不到其他有类似问题的人。
首先,我的预装 Windows PC 停止工作,我无法再打开它,我将它送去维修。但首先我想卸下硬盘驱动器并将其连接到另一台 PC,这样我就可以恢复其中的一些数据。
所以我将这个硬盘连接到另一台装有 Ubuntu 的 PC,但它没有自动挂载。所以接下来我尝试使用以下命令查看分区fdisk -l:
Disk /dev/sdb: 931.5 GiB, 1000204886016 bytes, 244190646 sectors
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x00000000
Device Boot Start End Sectors Size Id Type
/dev/sdb1 1 4294967295 4294967295 16T ee GPT
Run Code Online (Sandbox Code Playgroud)
好的,那里没问题。接下来我尝试手动挂载分区:
$ sudo mount -t ntfs /dev/sdb1 /windows
ntfs-3g: Failed to access volume …Run Code Online (Sandbox Code Playgroud) 当我在 Chromebook 的 shell 上编译我的 C++ 代码时,我收到错误bash: ./a.out: Permission denied. 即使我使用 sudo: 运行也会发生这种情况sudo: unable to execute ./a.out: Permission denied。为什么会发生这种情况?
此链接解释了noexec在使用mount. 但是它列出了一个限制——如果我有一个 Perl/Python/shell 脚本或一个以#!并试图执行它的文件——我将能够这样做,无论我是否提供了该选项。
有没有办法阻止这种执行?即是否有noexec我可以提供的附加选项并且脚本的执行将无法执行?
我pmount习惯以普通用户身份挂载 USB。但是如何使用 pmount 以便我也可以写入设备,而不仅仅是从中读取?我试过了,pmount -w /dev/sdb1但它不起作用,/media/sdb1除了 root 之外,任何人仍然无法写入。USB 分区的文件系统是ext4.
在 Linux 中,pCloud是一个 appimage。当我们运行应用程序时,它会在 /tmp 中创建一个挂载点
/tmp/.mount_pcloudjUJB13$ ls
app AppRun pcloud.desktop pcloud.png usr
Run Code Online (Sandbox Code Playgroud)
并创建一些文件和文件夹:
/home/user/.pcloud
/home/user/pCloudDrive
/home/user/.config/pcloud
/home/user/.config/autostart/pcloud.desktop
etc...
Run Code Online (Sandbox Code Playgroud)
它显示了存储在云中的内容 /home/user/pCloudDrive
~/pCloudDrive$ ls
My Music My Pictures My Videos
Run Code Online (Sandbox Code Playgroud)
如何通过命令行运行 pcloud 并更改 pCloudDrive 文件夹的默认挂载点(以挂载到我想要的位置)?
PD:由于这个限制,我目前使用 rclone 来挂载 pcloud 驱动器
mount ×10
linux ×8
debian ×2
filesystems ×2
uuid ×2
bash ×1
chromebook ×1
command-line ×1
fstab ×1
gpt ×1
hard-drive ×1
images ×1
label ×1
nfs ×1
partitioning ×1
sudo ×1
usb ×1
veracrypt ×1
windows ×1