AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-24141

Tim's questions

Martin Hope
Tim
Asked: 2019-01-26 20:56:48 +0800 CST

使用 exec 3> 保持命名管道打开

  • 7

当写入管道的进程完成写入(发送 EOF)时,从命名管道读取的进程通常会终止。在某些情况下,您可能有不同的进程间歇性地写入管道,并希望单个进程连续从管道中读取。为此,您可以设置一个“虚拟”编写器来打开管道但不写入:

$ mkfifo myPipe
$ cat > myPipe &

虚拟编写器保持命名管道打开 - 无需向其中输入数据或关闭。因此,读取器进程能够接收来自所有(其他)合法写入器的输入,而无需终止并且必须重新启动。

我见过一些人使用exec 3>而不是cat作为保持命名管道打开的一种方式。

$ mkfifo myPipe
$ cat < myPipe &
[1] 10796
$ exec 3> myPipe
$ echo "blah" > myPipe
blah

这种方法似乎有效,而且您无需担心(或清理)后台的虚拟作家,因此我喜欢它。问题是我真的不明白。

如何exec 3>在没有要执行的实际文件或可见(后台)进程的情况下完成保持命名管道打开的任务,这种方法有什么缺点吗?

(我知道它最终必须打开命名管道的输入文件描述符以进行写入,所以我对这exec 3部分exec 3>正在做什么特别感兴趣。)

fifo exec
  • 1 个回答
  • 4503 Views
Martin Hope
Tim
Asked: 2018-04-30 14:05:02 +0800 CST

Duplicity 是否在备份时修改时间?

  • 1

我的数据位于 SSD 上,并且由于重写和写入放大,对 atime 的任何修改不仅会导致 inode 被修改,而且它所在的整个块都被擦除和重写。这显然是不受欢迎的,因为它会导致驱动器出现大量不必要的磨损。

Duplicity在备份文件时,是否修改了进程中源文件的atime属性?

如果它确实修改了 atime,它是在初始(完整)备份、增量备份还是两者上都这样做?

backup ssd
  • 2 个回答
  • 366 Views
Martin Hope
Tim
Asked: 2018-04-30 00:10:53 +0800 CST

备份到本地 SSD 花费的时间比预期的要长

  • 1

在一个全新的 Ubuntu 18.04 系统上,我决定试一试 Deja-Dup。它只是 Duplicity 的 GUI(使用 rsync)。大约需要备份 850GB 的数据。源 SSD 是 NVMe。目标 SSD 是 SATA。初始(完整)备份大约需要 7 个小时。

第二天,在再次运行 Deja-Dup 之前,我只检查了邮件并安装了一个应用程序(增加了大约 230MB)。

Deja-Dup 运行了约 39 分钟,在整个持续时间内以 35–70% 的速度加载单个内核。

Duplicity 被调用了 3 次:

  • 扫描阶段将核心以 100% 的速度固定 18 分钟。
  • 备份阶段将核心以 100% 的速度固定 16 分钟。
  • 验证阶段将核心以 100% 的速度固定 5 分钟。

这是在具有大量 RAM 的新计算机上。备份未加密。

现在,我预计初始(完整)备份需要一段时间,这很好。我没想到的是,大约 230MB 的新数据需要大约 39 分钟的时间来备份(并消耗超过一个核心小时的 CPU 时间)。

有什么问题或损坏了吗?几百兆字节的增量备份是否应该花费那么多时间来执行? 我期待不到 5 分钟,而不是 39 分钟。 为什么需要这么长时间?

(如果我有一个备用的 1TB SATA SSD,我会把它连接起来,然后直接同步数据,看看是否明显更快——但不幸的是我没有。)

更新 1:在微不足道的更改(几 KB 的新邮件)之后,我运行了手动备份,所用时间相同(约 39 分钟)。因此,所花费的时间似乎与需要备份的新数据量无关。

更新 2:使用 iotop 监控显示扫描阶段从驱动器读取 7.36GB。现在这显然不是整个 850GB……但是如果将源驱动器上的文件数 (1174000) 乘以块/集群大小 (4096) 即 4.81GB,它与您得到的数字相差不远。如果是这种情况,不确定如何计算剩余的 2.5GB。

backup rsync
  • 1 个回答
  • 1441 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve