我正在尝试制作一些文件/目录的副本,但在我所知道的几种方法中,似乎都不是最佳的。
例如,btrfs 可以与使用一起cp --reflink=auto
快速生成文件副本。
我尝试过的:
zfs send/receive
并启用重复数据删除,将数据集复制到新数据集:这避免了使用克隆的父/子关系,但仍然不必要地创建另一个数据集,并且仍然受到必须100%读取文件所涉及的缓慢和再次引用而不是写入的块。zfs 发送/接收和物理复制或 rsyncing 的缓慢进一步加剧,因为大多数东西都是压缩存储的,并且必须在读取期间解压缩,然后在 dedup 开始引用重复块之前进行压缩。
在我所有的研究中,我没有找到任何与 btrfs 中 --reflink 的简单性相似的东西。
那么,有没有办法在 ZFS 中创建文件副本?还是“物理”复制并让重复数据删除完成其工作是唯一真正的选择?
从我使用 Windows 开始,我已经积累了大量保留的文件系统副本以及系统和数据驱动器的存档。我试图将它们提炼成可用的部分,同时丢弃所有可能毫无价值的东西。
从观看一堆上述文件在复制时滚动,再一次,从一个固定驱动器到一个工作驱动器,我想我已经开始了一个“好”和“无用”文件的启动列表,但我想知道是否有应该立即丢弃无用的任何权威类型的文件列表(来自以前的 Windows 环境)?
获胜者:(我知道如果做出任何努力使其全面,这份清单可能会变得一团糟,所以这些不是我要找的,除非他们可能被垃圾包围,可能会无意中将他们摧毁) (编辑:如果唯一的方法是基于白名单的超级全面的方法,那就这样吧。如果不是这种情况,我更愿意,但乞丐不能成为选择者……大多数时候。 )
*.tar.*, *.rar, *.zip
*.mp(e)g, *.avi, *.mkv, *.wmv, *.asf
Run Code Online (Sandbox Code Playgroud)
失败者:( 这些才是我真正想要的)
*.exe, *.bat, *.dll, *.com, *.lnk
Run Code Online (Sandbox Code Playgroud)
我也知道会有例外。像安装程序 .exe 文件,用于在 Wine 中安装某些东西。就这个问题而言,这种担忧不是一个。所有有问题的文件都是副本(副本,可能还有更多副本),因此我真正想要保留的安装程序位于不错、安全且可能受写保护的地方。
在~/.ssh/config
您LocalCommand
通过 SSH 连接到远程机器时,您可以使用该指令来执行本地命令。但是当我退出SSH 连接时如何执行命令?似乎 *.bashrc/.bash_profile* 文件在连接结束或关闭时不是来源。
当我尝试以 root 身份使用 raid 时,我的系统出现混乱。
我想在恐慌之前阅读内核输出,但无法向上滚动。在谷歌搜索了一下之后,我想尝试 netconsole。但我在第二台机器上根本没有输出
我当前 grub.conf 的相关部分
title Gentoo Linux 3.0.6
root (hd0,0)
kernel /boot/linux-3.0.6-gentoo root=/dev/md3
title Gentoo Linux 3.0.6 (debug netconsole)
root (hd0,0)
kernel /boot/linux-3.0.6-gentoo-debug root=/dev/md3 netconsole=@/,6666@192.168.0.27/00:18:f3:a8:09:61
#kernel /boot/linux-3.0.6-gentoo-debug root=/dev/md3 netconsole=6665@192.168.0.26/eth0,6666@192.168.0.27/00:18:f3:a8:09:61
title Gentoo Linux 3.0.6 (no root/auto root)
root (hd0,0)
kernel /boot/linux-3.0.6-gentoo
Run Code Online (Sandbox Code Playgroud)
另一台计算机正在运行我启动的 Kubuntu LiveCD nc -u -l 6666
。
如果我用第三个 grub 选项启动(第一台)计算机,我可以运行nc -u 192.168.0.27 6666
以与第二台计算机进行通信。
/boot/linux-3.0.6-gentoo
和之间的区别/boot/linux-3.0.6-gentoo-debug
是我启用了:
Linux 实例如何确定自己的 IP 地址?
也就是说,不是 127.0.0.1。
这是存储在文件中还是 ifconfig 在每次调用时以某种方式计算它?
我设法解决了它,只是为了表明我付出了努力,但这并不是我在认真的申请中投入的任何东西:
sudo ifconfig | head -n 2 | tail -n 1 | tr -s " " | tr " " ":" | cut -d":" -f 4
Run Code Online (Sandbox Code Playgroud) 偶尔(通常是很长一段时间),我在执行一个完全搞砸 Linux 机器的命令时遇到困难。
最近,我不小心再次安装了根分区(认为这是我刚刚格式化的新 USB 驱动器),然后继续递归地将分区 chown 给自己(再次,只是试图授予自己用户访问 USB 驱动器的权限) )。一旦我意识到我做了什么(在进行中),我就放弃了它,但损害已经造成。许多核心程序不再是 root 拥有的,因此机器基本上处于僵尸状态。一些用户功能(ssh、rsync)仍然有效,但管理级别的东西被完全锁定。无法挂载、卸载、重新附加到屏幕会话、重新启动等。
如果机器和我一起在客厅里,“修理”它(重新安装)会很容易。但事实并非如此。它在我弟弟的家里。他对我带他进行维修/重新安装并不感兴趣,我理解这一点。所以,我将在几天后修复我所做的损坏(并希望安装一些更能抵抗管理员螺丝钉的东西)。
我说这一切是为了问一个问题:针对管理员的反抗强化安装的推荐方法是什么?
未考虑或考虑并迅速下降的事项:
我考虑过的事情:
就目前情况而言,我可能会使用选项 4 来安装一个比我一直使用的完整 Debian 安装更有限的系统。但作为一个文件服务器和 torrent 客户端,它应该可以正常工作,而作为一台远程机器,保护机器免受我自己的攻击是一项相当大的资产。
我输入命令:
$ ls -lasrt
Run Code Online (Sandbox Code Playgroud)
并且输出包括(有更多结果,这些是让我困惑的结果):
4 drwxr-xr-x 5 tuc40953 stdchem 4096 Jul 3 17:48 ..
4 drwxr-xr-x 2 tuc40953 stdchem 4096 Jul 5 10:03 .
Run Code Online (Sandbox Code Playgroud)
这是否意味着最后写入的内容在上一个目录中?