我目前正在为 Ubuntu 18.04 服务器构建预配置的磁盘映像。虽然硬件基本相同,但设备之间有一些不同的网络接口(有些是虚拟机而不是裸机)。因此,我不知道事先会出现哪些网络设备或它们将被称为什么(有些有一个称为 ens33 的单一设备,其他有多个称为 eno1、eno2 等)。
systemd-networkd 不会自动打开接口,它们必须在配置文件中明确指定。
我目前正在通过使用 NetworkManager 而不是 networkd 来绕过它,因为它会自动调出它找到的任何接口,但考虑到 Ubuntu 安装程序似乎会自动将它找到的任何接口添加到 netplan 的配置中,我认为必须有一种方法来设置一个服务或在启动时做同样事情的东西。有人知道这样做的方法吗?
duplicate-cnduplicate-cn我打开 .ovpn 文件,我可以看到
# Extra user-defined configuration
duplicate-cn
Run Code Online (Sandbox Code Playgroud)我使用 iPad 连接到 VPN
当一个进程登录到 systemd 时,它的进程名称被记录并显示为 journalctl 输出中的标识符。
$ systemd-cat echo "test"
$ journalctl -f
-- Logs begin at Sat 2018-02-24 12:13:24 CET. --
...
Jul 25 13:52:26 mycomputer echo[25098]: test
Run Code Online (Sandbox Code Playgroud)
但是,过滤该名称似乎不起作用。
$ journalctl -f -t echo
-- Logs begin at Sat 2018-02-24 12:13:24 CET. --
$ journalctl -f -u echo
-- Logs begin at Sat 2018-02-24 12:13:24 CET. --
Run Code Online (Sandbox Code Playgroud)
当我手动指定标识符时,会显示标识符而不是进程名称并且过滤工作。
$ systemd-cat -t myapp echo "test"
$ journalctl -f
-- Logs begin at Sat 2018-02-24 12:13:24 CET. --
Jul 25 13:56:08 mycomputer …Run Code Online (Sandbox Code Playgroud) 我了解队列深度,即存储控制器可以处理的未完成 I/O 请求的数量(https://www.tomshardware.com/reviews/ssd-gaming-performance,2991-3.html)即,这是对处理 I/O 请求并将命令发送到磁盘 (r/w) 的存储控制器的限制,如果有超过它可以处理的请求(将由客户端重新提交),它(不严格?)会丢弃请求想必)。
并且具有高过期 I/O 请求的原因可能是多个客户端连接请求 I/O 或多个进程甚至来自请求 I/O 的单个主机(我认为,但似乎操作系统使用 I/O 调度程序合并 I/O O 请求 - 在执行定期或按需同步时源自缓冲区,并且仅发送固定数量的过期请求,以便它不会使存储设备过载?)
现在,来到 fio 手册页中 iodepth 的定义:
要针对文件保持运行的 I/O 单元数。请注意,将 iodepth 增加到 1 以上不会影响同步 ioengines(使用 verify_async 时的小度数除外)。
这符合我对队列深度的理解。如果 IO 是同步的(阻塞 IO),我们只能有一个队列。
即使是异步引擎也可能施加操作系统限制,导致无法实现所需的深度。在 Linux 上使用 libaio 并且未设置“direct=1”时可能会发生这种情况,因为缓冲 I/O 在该操作系统上不是异步的。
对这整个声明感到困惑。
密切关注 fio 输出中的 I/O 深度分布,以验证实现的深度是否符合预期。默认值:1。
我为每种 iodepth 和设备类型运行了多个测试,有 22 个并行作业,因为 CPU 数量为 24,并且使用 rwtype:顺序读取和顺序写入。Iodepths 是 1,16,256,1024,32768(我知道 32 或 64 应该是最大限制,我只是想尝试一下)。
对于所有深度和所有磁盘(RAID 6 SSD、NVME 和 NFS),结果几乎相同:除了在 32768 深度的 NVME 磁盘上顺序读取。
IO …Run Code Online (Sandbox Code Playgroud) 具有内核 4.4 的 Ubuntu 16.04.5 曾经按预期工作:IPv4 是默认值。自从更改为内核 (hwe) 4.15 以来,它默认使用 IPv6。
它通过 Tunnelbroker 提供 IPv6,由路由器广播。
现在默认为 IPv6:curl ifconfig.co返回计算机的 IPv6。仅curl -4 ifconfig.co返回所需的 IPv4 地址。(curl -6 ifconfig.co如预期返回 IPv6)
$ ip rule list
0: from all lookup local
32766: from all lookup main
32767: from all lookup default
$ ip -6 rule list
0: from all lookup local
32766: from all lookup main
$ ip route list
default via 192.168.1.1 dev eth0
192.168.1.0/24 dev eth0 proto kernel …Run Code Online (Sandbox Code Playgroud) 我在一堆服务器上将服务从禁用状态更改为运行状态,启动类型为自动,并且我在网上寻找如何远程执行此操作,并使用 Set-Service 作为远程启动类型工作,但出于某种原因做一个Get-Service | 启动服务给了我一个错误。我找到了一个网站,上面说您需要执行 Set-Service -Status Running 操作,并且确实有效,但这真的启动了服务吗?那样做和在本地做启动服务有区别吗?
这是我的最终命令,因为该站点还让我了解了如何执行 1-liner:
Get-Service -ComputerName SERVER -Name "SERVICE*" | Set-Service -StartupType Automatic -PassThru | Set-Service -Status Running
Run Code Online (Sandbox Code Playgroud)
我喜欢这样,但似乎需要几秒钟才能使用 Start-Service 命令启动的服务会立即设置为使用 Set-Service 命令运行,这意味着它可能实际上并未启动服务。
我确定没问题,但我很偏执,想确定一下。
我们有一个托管在 AWS RDS 上的 PostgreSQL 数据库。当使用cloudformation创建它时,我将其设置为加密,但没有设置加密密钥。因此,它被设置为使用默认加密密钥。
此后我被告知,有一个公司标准,所有 RDS 实例都应该有自己的密钥。
我已经使用 cloudformation 创建了新密钥并将其与 RDS 实例关联,但是当我部署此模板时,它想要删除并重新创建数据库。
我不太熟悉这一切是如何工作的,并且我正在寻找一个不会导致我们丢失数据的程序。如果需要的话,一点停机时间不会对我们造成伤害。
amazon-web-services amazon-rds amazon-cloudformation amazon-kms
我在 Elasticsearch 5.6.3 日志中经常看到这些。这是我应该扩大规模并添加更多 RAM 的信号吗?或者这只是 ElasticSearch 的正常操作?
[GC (Allocation Failure) [ParNew
Desired survivor size 11141120 bytes, new threshold 15 (max 15)
- age 1: 1761848 bytes, 1761848 total
- age 2: 126464 bytes, 1888312 total
- age 3: 165056 bytes, 2053368 total
- age 4: 50584 bytes, 2103952 total
- age 5: 105120 bytes, 2209072 total
- age 6: 99072 bytes, 2308144 total
- age 7: 2024 bytes, 2310168 total
- age 8: 95632 bytes, 2405800 total
- age …Run Code Online (Sandbox Code Playgroud) database java database-administration database-performance elasticsearch
有谁知道我如何或者是否可以将 Windows 域帐户设置为“非交互式”用户。
我想将特定的 Windows 域服务帐户设置为“非交互式”,以便它们只能运行分配给它们的应用程序,因为无论如何您都不应该使用所述帐户登录 GUI 桌面。
active-directory user-management user-permissions user-accounts windows-server-2012-r2
如果电子邮件在转发时包含多个 DKIM 签名,DMARC 如何处理 DKIM 对齐检查?
任何传递 DKIM 签名 d= 参数都必须匹配 Header From 吗?
或者
第一个(或最后一个)DKIM 签名 d= 参数是否必须与 Header From 匹配?
或者
“身份验证结果”中指示的单个 DKIM 是否必须通过(可能总是最后一个?)?
这不是放松与严格的问题。
谢谢!
alignment ×1
amazon-kms ×1
amazon-rds ×1
database ×1
dkim ×1
dmarc ×1
io ×1
ip ×1
ip-routing ×1
ipv4 ×1
ipv6 ×1
java ×1
journalctl ×1
journald ×1
logging ×1
nvme ×1
openvpn ×1
powershell ×1
routing ×1
service ×1
systemd ×1
ubuntu ×1
windows ×1