什么是“绑定挂载”?我怎么做一个?到底有什么好处呢?
有人告诉我要为某些东西使用绑定安装,但我不明白它是什么或如何使用它。
运行时umount /path我得到:
umount: /path: device is busy.
Run Code Online (Sandbox Code Playgroud)
文件系统很大,所以lsof +D /path不是一个现实的选择。
lsof /path, lsof +f -- /path, 并且fuser /path都没有返回。fuser -v /path给出:
USER PID ACCESS COMMAND
/path: root kernel mount /path
Run Code Online (Sandbox Code Playgroud)
这对于所有未使用的挂载文件系统来说是正常的。
umount -l而umount -f不是我的情况不够好。
我如何弄清楚为什么内核认为这个文件系统很忙?
我通常mount用来检查挂载了哪些文件系统。我也知道mount和之间存在某种联系,/etc/mtab但我不确定细节。阅读如何检查 /proc/ 是否已安装后,我变得更加困惑。
我的问题是:如何获得最精确的已挂载文件系统列表?我应该只使用mount,还是阅读 的内容/etc/mtab,还是 的内容/proc/mounts?什么会给出最值得信赖的结果?
我可以访问 cifs 网络驱动器。当我将它安装在我的 OSX 机器下时,我可以读取和写入它。
当我在 ubuntu 中安装驱动器时,使用:
sudo mount -t cifs -o username=${USER},password=${PASSWORD} //server-address/folder /mount/path/on/ubuntu
Run Code Online (Sandbox Code Playgroud)
我无法写入网络驱动器,但可以从中读取。我检查了挂载文件夹的权限和所有者,它们看起来像:
4.0K drwxr-xr-x 4 root root 0 Nov 12 2010 Mounted_folder
Run Code Online (Sandbox Code Playgroud)
我无法更改所有者,因为我收到错误消息:
chown: changing ownership of `/Volumes/Mounted_folder': Not a directory
Run Code Online (Sandbox Code Playgroud)
当我深入网络驱动器并更改那里的所有权时,我收到错误消息,即我无权更改文件夹的所有者。
我应该怎么做才能激活我的写权限?
我/dev/sdb向 Ubuntu Server 16添加了一个新硬盘驱动器 ( ),运行parted /dev/sdb mklabel gpt并运行sudo parted /dev/sdb mkpart primary ext4 0G 1074GB. 一切顺利。然后我尝试挂载驱动器
mkdir /mnt/storage2
mount /dev/sdb1 /mnt/storage2
Run Code Online (Sandbox Code Playgroud)
结果导致
mount: wrong fs type, bad option, bad superblock on /dev/sdb1,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so.
Run Code Online (Sandbox Code Playgroud)
我尝试mount -t ext4 /dev/sdb1 /mnt/storage2了相同的结果。我以前做过很多次这样的事情,从来没有遇到过这样的事情。我已经读过这个安装:错误的 fs 类型,错误的选项,错误的超级块在 CentOS 6.0 上的 /dev/sdb 上无济于事。
关于驱动器的 …
现在里面/tmp有一些临时文件。当我将硬盘驱动器 ( /dev/sdc1)安装在 之上时/tmp,我可以看到硬盘驱动器上的文件。/tmp当我的硬盘被挂载时,实际内容会发生什么变化?是否可以在/tmp安装硬盘驱动器时对实际内容执行 r/w 操作?
python@lanix / $ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 286G 43G 229G 16% /
none 4.0K 0 4.0K 0% /sys/fs/cgroup
udev 3.8G 4.0K 3.8G 1% /dev
tmpfs 766M 1.4M 765M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 3.8G 38M 3.8G 1% /run/shm
none 100M 24K 100M 1% /run/user
/dev/sdb1 7.5G 2.7G 4.9G 35% /mnt
/dev/sdc1 932G 242G 691G 26% …Run Code Online (Sandbox Code Playgroud) 谁能解释为什么将 Linux 设计为单个目录树?
而在 Windows 中,我们可以有多个驱动器,例如C:\, 和D:\,而在 Unix 中只有一个根。有什么具体原因吗?
我阅读了一些关于在 Linux 上挂载设备的 mount 命令的资源,但没有一个足够清楚(至少对我来说)。
总的来说,大多数指南指出:
$ mount
(lists all currently mounted devices)
$ mount -t type device directory
(mounts that device)
for example (to mount a USB drive):
$ mount -t vfat /dev/sdb1 /media/disk
Run Code Online (Sandbox Code Playgroud)
我不清楚的是:
我怎么知道用什么来表示“设备” $ mount -t type device directory?也就是说,我怎么知道我应该在这个命令中使用“/dev/sdb1”$ mount -t vfat /dev/sdb1 /media/disk来挂载我的 USB 驱动器?
“-t”参数在这里定义了什么?类型?
我读$ man mount了几次手册页 ( ),但我仍然可能遗漏了一些东西。请说清楚。
在 Linux 中提到设备时,我听说过“挂载”这个词。它的实际意义是什么?与旧版本不同,它现在如何处理?
我没有通过命令行手动完成。你能给出在 Linux 中挂载一个简单设备的步骤(命令)吗?
我喜欢在第一次备份系统时创建映像备份。在第一次之后,我使用 rsync 进行增量备份。
我平时的镜像备份如下:
安装并清零空白空间:
dd if=/dev/zero of=temp.dd bs=1M
rm temp.dd
在压缩驱动器的同时卸载并添加驱动器
dd if=/dev/hda conv=sync,noerror bs=64K | gzip -c > /mnt/sda1/hda.ddimg.gz
为了让系统恢复正常,我通常会做一个
gunzip -c /mnt/sda1/hda.img.gz | dd of=/dev/hda conv=sync,noerror bs=64K
这真的很简单,允许我保存“整个驱动器”,但实际上只是节省了已用空间。
这是问题所在。假设我执行了上述操作,但不是在干净的系统上执行,并且没有足够快地进行 rsync 备份,并且我想访问映像上的文件。假设我没有存储空间来实际解压缩图像并将其 dd 到驱动器,但想挂载图像以从中获取单个文件......这可能吗?
通常情况下,人们不会压缩 dd 图像,这将允许您仅使用-o loop...挂载图像,但这不是我的情况...
有什么建议可以即时安装压缩的 img 吗?
是否会使用AVFS来“挂载”gz 文件然后挂载内部 dd.img 工作(我不这么认为......但需要验证......)?
mount ×10
linux ×4
filesystems ×3
backup ×1
bind-mount ×1
chown ×1
cifs ×1
command-line ×1
compression ×1
dd ×1
fdisk ×1
permissions ×1
tmp ×1
ubuntu ×1