小编Udo*_*o G的帖子

如何在不使用 btrfs 复制其数据的情况下复制文件?

我没有使用 btrfs 的经验,但它被宣传为能够对文件进行重复数据删除。

在我的应用程序中,我需要复制整个目录树。

据我了解,btrfs 仅在某些后期扫描中进行重复数据删除,而不是立即删除。即使只是使用cp似乎也不会触发任何重复数据删除(至少,df显示复制文件大小的磁盘使用量增加)。

我可以完全避免移动数据并btrfs直接告诉在另一个位置复制文件,基本上只是克隆其元数据吗?

本质上,类似于硬链接,但具有独立的元数据(权限、修改次数等)。

cp file-copy btrfs deduplication

15
推荐指数
1
解决办法
3507
查看次数

如何在网络开始之前启动 systemd 服务?

我正在尝试设置一个新服务(在 Debian Jessie 下),它需要设置一些存储网络配置的安装,因此该服务必须在 network.service 启动之前完成

我尝试了以下方法:

[Unit]
Description=mount/repair remaining filesystems (all persistent fs beyond "/")
#Before=network-pre.target
Before=networking.service

[Service]
Type=oneshot
ExecStart=/opt/intermodul-mounts/start.sh
TimeoutSec=0
RemainAfterExit=yes

[Install]
RequiredBy=networking.service
Run Code Online (Sandbox Code Playgroud)

使用systemd-analyze plot我可以看到我的服务启动,但networking.service启动大约提前 3 秒:

在此处输入图片说明

显然我的配置是错误的,但我很难找到问题......非常感谢任何帮助......

更新

我目前通过将服务配置更改为之前启动local-fs.target而不是networking.service

[Unit]
DefaultDependencies=no
Description=mount/repair remaining filesystems (all persistent fs beyond "/")
Before=local-fs.target

[Service]
Type=oneshot
ExecStart=/opt/intermodul-mounts/start.sh
TimeoutSec=0
RemainAfterExit=yes

[Install]
RequiredBy=local-fs.target
Run Code Online (Sandbox Code Playgroud)

不过,我想了解为什么我的第一个配置没有按预期工作......?

systemd

12
推荐指数
1
解决办法
3万
查看次数

在哪里下载 Chrome 32 位?

Google 已停止使用 32 位版本的 Chrome,因此在 32 位 Debian 机器上无法再更新 APT 存储库:

W: Failed to fetch http://dl.google.com/linux/chrome/deb/dists/stable/Release  Unable to find expected entry 'main/binary-i386/Packages' in Release file (Wrong sources.list entry or malformed file)
Run Code Online (Sandbox Code Playgroud)

似乎还从 Google 服务器中删除了 .deb 文件。

有没有其他地方可以.deb下载最新版本(46?)?

原因:对于自动 Debian 构建系统(debootstrap基于),我迫切需要一种安装 Google Chrome 32bit v46(或类似版本)的方法。目前,切换到另一个浏览器(包括 Chromium)对我来说还不够快。

debian chrome 32bit

11
推荐指数
2
解决办法
14万
查看次数

如何让 Gnu/Linux 信任 Windows 开箱即用的证书?

如此 SSL 检查报告的那样,存在一个 SSL 链损坏的服务器:

SSL检查报告

我知道这是一个应该在服务器本身上解决的问题,但有时这很难解决(我不是服务器的管理员)。

问题是,Windows 上的 Chrome/Mozilla/Edge无论如何都信任站点证书

在此处输入图片说明

但是,在 Gnu/Linux 部署(Docker 中的 Ubuntu 18.04)中,证书不受信任:

curl: (60) SSL certificate problem: unable to get local issuer certificate
Run Code Online (Sandbox Code Playgroud)

我尝试update-ca-certificates甚至导入了 Globalsign 根证书。update-ca-certificates在这种情况下报告了重复的证书。无论如何,没有任何作用。

如何繁殖

使用 Docker:

docker run -it ubuntu:18.04

# within container:
apt-get update
apt-get -y install curl
curl https://betriebsheft.vog.it  # <---- "unable to get local issuer certificate"
Run Code Online (Sandbox Code Playgroud)

我怎样才能让 Gnu/Linux 信任这个证书?

PS:在另一台服务器上正确部署了相同的证书。

ssl openssl curl certificates

11
推荐指数
1
解决办法
3717
查看次数

/dev/watchdog 和 /dev/watchdog[0-9] 的区别?

在我的(嵌入式)系统上,我有多个看门狗字符设备:

# ls -al /dev/watchdog*
crw------- 1 imp  root  10, 130 Apr 26 07:43 /dev/watchdog
crw------- 1 root root 253,   0 Apr 26 07:44 /dev/watchdog0
crw------- 1 root root 253,   1 Apr 26 07:44 /dev/watchdog1

# dmesg | grep -i watchdog
[    2.342104] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
[    6.713125] softdog: Software Watchdog Timer: 0.08 initialized. soft_noboot=0 soft_margin=120 sec soft_panic=0 (nowayout=1)
Run Code Online (Sandbox Code Playgroud)

我很确定这/dev/watchdog0是硬件看门狗和/dev/watchdog1软件看门狗,但为什么还有一个/dev/watchdog

背景:软件看门狗配置了nowayout标志,因此,一旦被馈送,它就不会再停止,直到重新启动。但是,写入/dev/watchdog …

watchdog

7
推荐指数
1
解决办法
7967
查看次数

AUFS 如何存储已删除的文件?

当我更改AUFS挂载中的文件时,该更改会以某种方式存储在 rw 层中。

很清楚新的/更改的文件是如何存储在 rw 层中的,但是如何在那里记住已删除的文件呢?

aufs

5
推荐指数
1
解决办法
843
查看次数

如何在构建时将设备树覆盖合并到单个 .dtb?

我的板子通过 U-Boot 和 AFAIK 引导,引导加载程序不支持设备树覆盖,所以我可能被迫生成一个单一的、静态的, .dtb所有相关的覆盖(和设置??)已经应用于它。原则上这对我来说没问题,但是怎么做呢?

是否有一些命令行工具可以接收.dtb.dtbo文件。.dts.dtsi文件并将它们组合成一个.dtb/ .dts?

dtc 似乎没有做那份工作。

最终目标是让 I²C 在通过 U-Boot 启动的 Raspberry B+ 上工作

kernel device-tree

5
推荐指数
1
解决办法
4970
查看次数