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-524752

Daniel T's questions

Martin Hope
Daniel T
Asked: 2025-04-14 06:44:54 +0800 CST

如何优先驱逐 SSD 页面缓存而不是速度较慢的 HDD?

  • 7

我有一块大容量、慢速的 HDD 和一块小容量、快速的 SSD。这关乎读取操作,而非RAID。我的电脑在 SSD 上加载(重新/卸载)了超过 12 GiB 的 Linux 内核构建树和总共 39 GiB 的不同 LLM 文件后,切换回 Firefox 或查看手册页时,桌面几乎卡死,而我的内存只有 31 GiB:

$ free -h
               total        used        free      shared  buff/cache   available
Mem:            31Gi        10Gi       2.4Gi       1.0Gi        19Gi        20Gi
Swap:             0B          0B          0B
$ lsblk
NAME                  MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINTS
sda                     8:0    0   1.8T  0 disk  
├─sda1                  8:1    0   512M  0 part  /boot/efi
├─sda2                  8:2    0   1.7G  0 part  /boot
└─sda3                  8:3    0   1.8T  0 part  
  └─sda3_crypt        254:0    0   1.8T  0 crypt 
    ├─vgubuntu-root   254:1    0   1.8T  0 lvm   /
    └─vgubuntu-swap_1 254:2    0   1.9G  0 lvm   
nvme0n1               259:0    0 953.9G  0 disk  
└─nvme0n1p1           259:1    0   100G  0 part  
  └─luks-...          254:3    0   100G  0 crypt /media/...
$ sysctl vm.swappiness
vm.swappiness = 60

SSD 速度很快,所以我宁愿 Linux 先清除 SSD 的页面缓存文件。反正它的非缓存读取时间也得几秒。应该停止的是清除/usr或下的任何文件/home。我的man bash和dpkg -S bin/bash会立即从页面缓存中返回,但如果没有缓存,它们在退出 LLM 后需要半分钟才能返回。更严重的是,Firefox 需要我的~/.mozilla文件夹来保存历史记录和缓存;如果没有缓存,等待地址栏显示需要几分钟。

我正在寻找一个配置选项。systemd-run可以设置 MemoryMax 为ktorrent,但我经常重启llama-server以在大约 6 GiB 的 LLM 之间切换,而且我不希望使用单独的守护进程来保持 cgroup 处于活动状态。一旦我解决了担忧,将我的 迁移到 SSD 后,man和 的dpkg问题将得到解决;与此同时,会导致可用内存不足,并且过于复杂。LLM 工作负载可以(但不应该)重新挂载 SSD 作为解决方法。这使得d 内核构建工作负载仍然会清除我的 Web 浏览器缓存。/fscrypt/usrtmpfsoverlayfsnice

我查看了相关/sys/block配置,但没找到合适的。Cgroups v2有针对每个设备的选项,但仅适用于并行写入工作负载(io.max),而无法控制顺序工作负载如何影响缓存。2011年的补丁和2023 年的问题都没有找到任何用户空间接口。哪个设置可以强制 SSD 的页面缓存先于 HDD 的页面缓存被清除?

linux
  • 1 个回答
  • 39 Views
Martin Hope
Daniel T
Asked: 2024-02-24 10:25:12 +0800 CST

在 SSHFP 十六进制和 ssh-keygen SHA256 Base64 之间转换的最简单方法是什么?

  • 5

我正在尝试验证 GitLab 服务器的 SSH 指纹。它发布的指纹是错误的,可能是由于负载平衡造成的。VerifyHostKeyDNS=yes没有错误,但我不相信看不到指纹,并且希望在不连接的情况下这样做。

SSHFP SHA1 和 SHA256 为十六进制。我还希望将“4 2”等数字 ID 转换为“SHA256 (ED25519)”等英文名称。

$ resolvectl query -t sshfp ssh.gitlab.gnome.org
ssh.gitlab.gnome.org IN SSHFP 1 1 9d319c15965b939bc2086cbebca96d8bbb89e9a3 -- link: enp39s0
ssh.gitlab.gnome.org IN SSHFP 1 2 591469a16a3bb33333c2591815e2e88f4508b665477c023eafe845833c060118 -- link: enp39s0
ssh.gitlab.gnome.org IN SSHFP 3 1 17b29179778339d7c91cb2c281b7afa2798c61d5 -- link: enp39s0
ssh.gitlab.gnome.org IN SSHFP 3 2 4e203da68ea73ba8c5b28ef040dcb8c4b96d875d2521f8efd5dc6e0da6d522ac -- link: enp39s0
ssh.gitlab.gnome.org IN SSHFP 4 1 457e9cb0d575697e27fe8b2185580df5d45ce46b -- link: enp39s0
ssh.gitlab.gnome.org IN SSHFP 4 2 63d1b87568887e2e772d1dc89c95ac21bbf895e9141e89eafc7aea4d39bfadcc -- link: enp39s0

-- Information acquired via protocol DNS in 1.1133s.
-- Data is authenticated: yes; Data was acquired via local or encrypted transport: yes
-- Data from: network

但是,ssh-keyscan为我提供了 SHA1 和 SHA256 的 Base64。只有 SSHFP 中缺少的 MD5 才是十六进制。SHA256 Base64也是连接时提示我的格式git。我的用例是手动检查指纹,然后以某种方式将其信任到~/.ssh/known_hosts. 为简单起见,我只关心 ED25519。

$ ssh-keyscan ssh.gitlab.gnome.org | tee gnome.pub
# ssh.gitlab.gnome.org:22 SSH-2.0-OpenSSH_8.0
ssh.gitlab.gnome.org ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHG6b3deoYMPwKEu9Sj+y6MBHYYUKQiAnta/go3aNv7R
# ssh.gitlab.gnome.org:22 SSH-2.0-OpenSSH_8.0
ssh.gitlab.gnome.org ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCmUnZ33O26kvhcmc6k1T8xlL3yJjeNt3gphvW9/5u/CO0z5G8PGr2km4jUhStuPJR9m77LrdCF5Ywm26hsBnoxK+1zMs7YTjriiGt4r0Q5btQS5J5zFAV6aYJEmCbQz/23n8+w9Jx3hPVS8A3VE9Vd52S+5DMeIQY8QR3LPpROyCIpkR425sN0D0VjRUAH0hn61zS8N1+Pw5te2ULbBriBB9cub2n1GBCsZ2ErX1ernwKffOz/fbi5mpGbGLlJabLBm81/AiNk6NLZWTAZiNZjztxRySZFSpSzGF54kttIePxNC1x9AtW4KMaIzjVK2DIrFONyZYiEX47ox5TXlc7VQaBICUoTrR91wpb5xl2HPKP4MvFqUAzubU2V8r91ISXrnJyfwDrSB7L9Jwg6B6pN+acIttC4gOFGTJg9qanmLxtonSpwv/NaLehI1+D4LR9Or+e8jjtKSc6vu8+ghqAni3XHoT9uSmt1UPd89dOhqbpk8Hc3KTubUC3WIjGnotE=
# ssh.gitlab.gnome.org:22 SSH-2.0-OpenSSH_8.0
ssh.gitlab.gnome.org ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBH8NuGQ3ArFGochlv6TKXhMhsgIwG743e93pLkAQTzfgds0g0k6QBimb40zavVjITjytiSaQsf+KncJgUjYd98o=
# ssh.gitlab.gnome.org:22 SSH-2.0-OpenSSH_8.0
# ssh.gitlab.gnome.org:22 SSH-2.0-OpenSSH_8.0
$ <gnome.pub ssh-keygen -lf -
3072 SHA256:WRRpoWo7szMzwlkYFeLoj0UItmVHfAI+r+hFgzwGARg ssh.gitlab.gnome.org (RSA)
256 SHA256:TiA9po6nO6jFso7wQNy4xLlth10lIfjv1dxuDabVIqw ssh.gitlab.gnome.org (ECDSA)
256 SHA256:Y9G4dWiIfi53LR3InJWsIbv4lekUHonq/HrqTTm/rcw ssh.gitlab.gnome.org (ED25519)

如何协调这两种格式?理想情况下,我想要传递一些标志ssh-*或其他命令。

以下命令可能会给出正确的答案,但不可接受,因为它们太长而难以记住/键入,并且格式很糟糕。我的用例是在设置新计算机时运行一次,因此.bashrc不会出现别名。

(x="$(<gnome.pub)"; for y in sha1 sha256; do echo "$x" | ssh-keygen -lf - -E "$y"; done) | xargs -d\\n -n1 bash -c "echo \"\$0\"; echo \"\$0\" | sed 's/[^:]\+:\([^ ]\+\).*/\1=/' | base64 -d | xxd -p -c 32"
resolvectl query -t sshfp ssh.gitlab.gnome.org | grep ' IN SSHFP ' | xargs -n1 -d\\n bash -c 'echo "$0"; echo "$0" | cut -d\  -f 6 | xxd -p -r | base64'
grep -v \# gnome.pub | cut -d\  -f2- | xargs -n1 -d\\n bash -c 'ssh-keygen -r ssh.gitlab.gnome.org -f <(echo "$0")'
ssh
  • 1 个回答
  • 30 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