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

somega's questions

Martin Hope
zomega
Asked: 2024-03-04 22:33:11 +0800 CST

Linux如何在不支持多任务的CPU上实现多任务?

  • 5

有人告诉我Linux可以在不支持多任务的CPU上运行。

但如果只有一个核心,不支持多任务,那么Linux如何实现多任务呢?

假设我想运行两个程序,每个程序都需要 1 小时才能终止。Linux 如何在约 100 毫秒后暂停第一个程序以切换到第二个程序?

我能想到的有两种情况:

  • 不可能同时运行多个任务。
  • Linux 使用硬件定时器来中断正在运行的进程。
linux
  • 1 个回答
  • 46 Views
Martin Hope
zomega
Asked: 2023-12-13 01:39:37 +0800 CST

使用reboot命令时如何选择冷重启和热重启?

  • 5

维基百科区分了冷重启和热重启。

那么在Linux上使用reboot命令时如何选择热重启和冷重启呢?

编辑:维基百科提到了 Linux 上的第三种重启模式。那么这三种模式该如何选择呢?

linux
  • 2 个回答
  • 41 Views
Martin Hope
zomega
Asked: 2023-11-11 17:20:46 +0800 CST

如何在 Linux 上调整 GPT 分区表本身的大小?

  • 8

我已使用dd.

但GPT的大小仍然是1GB。例如,辅助(备份)GPT 仍然位于 1GB(必须移至磁盘末尾)。

另外,我认为主 GPT 内的两个字段(偏移量 32 和 48)必须更新。

我已经调查过gdisk但找不到任何东西。

debian
  • 2 个回答
  • 224 Views
Martin Hope
zomega
Asked: 2023-10-03 03:22:50 +0800 CST

设置 CONFIG_STRICT_DEVMEM=y 安全吗?

  • 5

我正在尝试/dev/mem并发现即使作为 root 用户,如果CONFIG_STRICT_DEVMEM=y.

对我来说,有一些机制可以阻止 root 用户做他喜欢做的事情,这对我来说是新的。

但作为 root,我可以简单地更改 Linux 内核映像并重新启动(以禁用限制)。如果内核映像文件受到某种保护,我仍然可以写入/dev/sda主磁盘或任何主磁盘。

所以我的问题是设置是否CONFIG_STRICT_DEVMEM=y安全或者 root 用户是否可以轻松绕过?

linux
  • 1 个回答
  • 33 Views
Martin Hope
zomega
Asked: 2023-09-15 16:21:25 +0800 CST

如何获取 Linux 上 Windows 资源管理器报告的文件夹大小?

  • 5

在 Windows 上,当您查看文件夹的属性时,大小计算如下(递归):

  • 对于文件,内容的长度很重要
  • 符号链接计数为零
  • 文件夹本身计数为零

在此输入图像描述

在Linux命令行上是否可以得到相同的结果?

以下是我已经尝试过的各种 SE 帖子中的一些命令:

du -s -B 1 folder
du -sb folder
du -sh --apparent-size folder
ncdu
tree folder -s

问题是文件夹的大小都是 4k。有人有主意吗?

files
  • 1 个回答
  • 20 Views
Martin Hope
zomega
Asked: 2023-05-05 22:43:08 +0800 CST

是否可以检查 LUKS 设备是否已被外国人损坏?

  • 6

假设我丢失了一个 LUKS 加密的 USB 笔式驱动器。我认为文件系统类型 (ext4/fat32/...) 不起作用。一个外国人发现了它。当然他不能访问我的数据,因为他没有密码。但他可以更改“原始”数据中间的单个字节,从而损坏数据。

U盘退还给我后,是否可以验证我的数据是否损坏?

我认为读取整个映射器设备会导致 I/O 错误,但不幸的是它不会。我也检查过dmesg。

# create an all zero 100MiB file
dd if=/dev/zero of=moh bs=100M count=1

# format it as LUKS device
/usr/sbin/cryptsetup luksFormat moh

# map it to /dev/mapper/moh
sudo cryptsetup luksOpen moh moh

# initialize mapper file to zero
sudo dd if=/dev/zero of=/dev/mapper/moh

# close LUKS device
sudo cryptsetup luksClose moh

# overwrite 1MiB with zeroes at offset 10MiB. After this the LUKS device is damaged.
sudo dd if=/dev/zero of=moh conv=notrunc bs=1M seek=10 count=1

# open LUKS device and see if it complains
sudo cryptsetup luksOpen moh moh

# read all data to see if it complains
sudo dd if=/dev/mapper/moh of=/dev/null

上述命令证明打开和读取损坏的 LUKS 设备不会产生任何错误。

请注意,我不想执行任何文件系统检查。相反,我想验证 LUKS 设备的加密级别是否未受影响。

因为我正在寻找一个单一的命令来验证 luks 设备我希望你明白这不是一个更适合 SO 的编程问题。

encryption
  • 1 个回答
  • 44 Views
Martin Hope
zomega
Asked: 2023-03-08 17:27:41 +0800 CST

如何grep“find -print0”输出?

  • 5

我试过这个:

find /usr/lib -print0 | grep zip | xargs -0 -I{} echo "found file: {}"
find /usr/lib -print0 | grep --null zip | xargs -0 -I{} echo "found file: {}"

但它不起作用,因为 grep 只说有一个二进制文件匹配。我希望 grep 输出空终止行。

是否可以在不更改整个命令的情况下解决此问题?我知道可以使用find -name ... -exec .... 但是,如果我现有的命令可以被修复,那就太好了。

linux
  • 1 个回答
  • 36 Views
Martin Hope
zomega
Asked: 2023-02-25 22:13:05 +0800 CST

本地套接字 IPC 如何在多 CPU 系统上工作?

  • 5

有 Supermicro X10DAi 主板,手册在这里。在第 1-11 页,您可以看到每个 CPU 都有自己的 RAM。

假设program A是通过本地套接字提供 API /var/run/socketapi。该程序在 CPU 1 上启动。

然后program B连接到这个套接字,它在 CPU 2 上启动。

当program B向套接字写入命令时,内核通常会将数据从 的内存空间复制program B到 的内存空间program A。

但是因为程序运行在不同的 CPU 上,CPU 之间不共享内存,所以出现了问题。

在最近的 Linux 下如何解决这个问题?也许 CPU 1 的整个内存都使用手册中显示的 QPI 接口内存映射到 CPU 2?

或者程序 IPC 无法运行并发生错误?

请提供一些对 Linux 源代码或文档的参考。

linux
  • 1 个回答
  • 20 Views
Martin Hope
zomega
Asked: 2023-01-19 10:46:17 +0800 CST

如果 dd 时钟的滴答声非常缓慢(仅每 12 秒一次),这意味着什么?

  • 5

我这里有一个 Intenso 外置 1TB 2.5" HDD。它有点故障(在 Windows 上随机断开连接)所以我决定运行这个命令来检查它:

dd if=/dev/sdb of=/dev/null bs=4M status=progress

运行时的输出如下所示:

715099471872 Bytes (715 GB, 666 GiB) kopiert, 16115 s, 44,4 MB/s

除了 44.4 MB/s 对于 USB3 磁盘来说太慢之外,奇怪的是时钟仅每 12 秒滴答一次。(“16115 s”是 dd 时钟。)在健康的磁盘上运行相同的命令时,它每秒滴答作响。

我试着strace看看为什么它会阻塞这么久,但它似乎是通过内存映射读取磁盘的,所以我什么也看不到。

磁盘在读取时也不可能只阻塞 12s。因为速度是 44.4 MB/s,块大小是 4 MB。所以 dd 每秒有 11 次机会更新时钟。

那么这里到底发生了什么?

(我对磁盘出了什么问题不感兴趣,而是想知道为什么 dd 时钟滴答得这么慢。所以我希望我在 SE Unix 上是对的。)

hard-disk
  • 1 个回答
  • 46 Views
Martin Hope
zomega
Asked: 2023-01-08 12:10:48 +0800 CST

ext5 何时到来或 ext4 何时更新以支持大型(巨大)SSD?

  • 16

已经有Nimbus ExaDrive 100TB SSD,200TB SSD即将推出。正如您在此处所读到的, ext4 最多支持 256 TB。硬件达到这个限制只是时间问题。

他们会更新 ext4 还是会有 ext5?会发生什么?

ext4
  • 4 个回答
  • 4613 Views
Martin Hope
zomega
Asked: 2023-01-06 00:39:29 +0800 CST

为什么即使我将交换映射器文件从 /etc/crypttab 中删除,它仍会创建?

  • 5

我的交换分区在 /etc/crypttab 中有这一行:

luks-4205519b-f3fe-468f-b05e-44f25f6882a4 UUID=4205519b-f3fe-468f-b05e-44f25f6882a4     /crypto_keyfile.bin luks,keyscript=/bin/cat

我把它注释掉了,所以它现在看起来像这样:

# luks-4205519b-f3fe-468f-b05e-44f25f6882a4 UUID=4205519b-f3fe-468f-b05e-44f25f6882a4     /crypto_keyfile.bin luks,keyscript=/bin/cat

我重新启动但映射器文件/dev/mapper/luks-4205519b-f3fe-468f-b05e-44f25f6882a4仍然被创建。为什么?

debian
  • 1 个回答
  • 19 Views
Martin Hope
zomega
Asked: 2023-01-05 10:28:36 +0800 CST

是否可以在 Linux 上使用休眠而不使用交换?

  • 5

在 Windows 上,可以在不使用任何交换的情况下使用休眠。

我想知道这在 Linux 上是否可行?

因为在我的 Debian 11 上,我在 /etc/default/grub 中找到了这一行

GRUB_CMDLINE_LINUX_DEFAULT="... resume=/dev/mapper/luks-4205519b-f3fe-468f-b05e-44f25f6882a4"

如您所见,“resume=”选项指定用于休眠的交换分区。

现在,如果我删除这个交换分区(以禁用交换),我要在 /etc/default/grub 中写入什么?

是否可以像在 Windows 上一样使用休眠文件?

因为我有 32GB RAM,如果我只将 32GB 交换分区用于休眠,那就是浪费空间。

grub
  • 1 个回答
  • 35 Views
Martin Hope
zomega
Asked: 2022-12-26 11:11:00 +0800 CST

如何在 Linux 上确定 CD 的彩虹书颜色?

  • 16

我已将 CD 放入我的驱动器中。我如何在 Linux 上找到彩虹书的颜色(红皮书/黄皮书/蓝皮书/...)?

linux
  • 1 个回答
  • 1394 Views
Martin Hope
zomega
Asked: 2022-12-25 10:00:42 +0800 CST

将随机数据写入磁盘时如何计算校验和?

  • 5

我有一个可能坏了的磁盘。我想将随机数据写入磁盘,稍后验证 md5 校验和。

我这样写到磁盘:

dd if=/dev/urandom of=/dev/sda bs=4M status=progress

如何在同时写入磁盘的同时创建 md5 校验和?我想在 dd 完成时查看写入的随机数据的 md5 校验和。我也想在写入磁盘时查看进度。

我读过这篇文章并创建了这个命令:

pv /dev/urandom >(md5sum) > /dev/sdXXX

问题是它填满了我的整个内存。我有 32GB 内存。

hard-disk
  • 1 个回答
  • 37 Views
Martin Hope
zomega
Asked: 2022-12-22 01:43:17 +0800 CST

我应该使用哪个“大小”文件来获取磁盘大小?

  • 5

我的磁盘是 sda,我有这些大小的文件:

/sys/dev/block/8:0/size
/sys/class/block/sda/size
/sys/block/sda/size

我应该使用哪一个?第一个被使用lsblk。有什么不同吗?

disk
  • 3 个回答
  • 35 Views
Martin Hope
zomega
Asked: 2022-12-21 10:05:48 +0800 CST

lsblk 是如何获取扇区大小的?

  • 7

我的盘是sda。有大小文件/sys/dev/block/8:0/size。它的单位是扇区。当我运行时,strace lsblk我可以看到它正在读取这个文件。

但是 lsblk 如何获得扇区大小以便稍后以字节为单位显示总磁盘大小?因为我看不到 lsblk 正在读取文件hw_sector_size,也看不到physical_block_size.

lsblk
  • 1 个回答
  • 49 Views
Martin Hope
somega
Asked: 2022-11-29 11:40:11 +0800 CST

为什么 pumount 关闭它没有打开的 luks 设备?

  • 6

我有一个 luks 设备,它在启动时由 /etc/crypttab 打开。lsblk 看起来像这样:

sdc                                             8:32   1 114,6G  0 disk  
└─luks-672dcc74-d002-47dc-b61b-525baf91dc7c   253:2    0 114,6G  0 crypt 

我像这样安装设备:

pmount /dev/mapper/luks-672dcc74-d002-47dc-b61b-525baf91dc7c

我这样卸载它(两者都有效):

pumount /dev/mapper/luks-672dcc74-d002-47dc-b61b-525baf91dc7c
pumount /media/mapper_luks-672dcc74-d002-47dc-b61b-525baf91dc7c

但是在 pumount lsblk 之后看起来像这样:

sdc                                             8:32   1 114,6G  0 disk

为什么 pumount 关闭了 luks 设备?从 pumount 的手册页上说:

Normally, pumount will not luksClose (see cryptsetup(1)) a device pmount did not open.

luks 设备在启动时由 /etc/crypttab 打开,而不是由 pmount 打开!为什么 pumount 会关闭 luks 设备?这是一个错误吗?

我在 debian 靶心上。

debian
  • 1 个回答
  • 35 Views
Martin Hope
somega
Asked: 2022-11-28 10:06:17 +0800 CST

无法从 debian 上的 ppa 下载 cdemu

  • 5

我尝试了以下内容:

user1@debian-desktop:/home/user1$ sudo add-apt-repository ppa:cdemu/ppa
Unofficial CDEmu packages
More info: https://launchpad.net/~cdemu/+archive/ubuntu/ppa
Press [ENTER] to continue or ctrl-c to cancel adding it

gpg: Die "Keybox" `/tmp/tmpknhcngga/pubring.gpg' wurde erstellt
gpg: /tmp/tmpknhcngga/trustdb.gpg: trust-db erzeugt
gpg: Schlüssel 423A2125D782A00F: Öffentlicher Schlüssel "Launchpad PPA for CDEmu" importiert
gpg: Anzahl insgesamt bearbeiteter Schlüssel: 1
gpg:                              importiert: 1
Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)).
gpg: Keine gültigen OpenPGP-Daten gefunden.
user1@debian-desktop:/home/user1$ sudo apt-get update
....         
Ign:5 http://ppa.launchpad.net/cdemu/ppa/ubuntu lunar InRelease
Fehl:6 http://ppa.launchpad.net/cdemu/ppa/ubuntu lunar Release
404  Not Found [IP: 2620:2d:4000:1::3e 80]
Paketlisten werden gelesen… Fertig                        
E: Das Depot »http://ppa.launchpad.net/cdemu/ppa/ubuntu lunar Release« enthält keine Release-Datei.
N: Eine Aktualisierung von solch einem Depot kann nicht auf eine sichere Art durchgeführt werden, daher ist es standardmäßig deaktiviert.
N: Weitere Details zur Erzeugung von Paketdepots sowie zu deren Benutzerkonfiguration finden Sie in der Handbuchseite apt-secure(8).

我认为重要的是:

404  Not Found [IP: 2620:2d:4000:1::3e 80]

为什么会出现此错误?

apt
  • 1 个回答
  • 15 Views
Martin Hope
somega
Asked: 2022-11-19 08:16:39 +0800 CST

cd-info 曲目列表中的 LSN 是什么?

  • 6

当我运行 cd-info 时,曲目列表如下所示:

CD-ROM Track List (1 - 1)
  #: MSF       LSN    Type   Green? Copy?
  1: 00:02:00  000000 data   false  no   
170: 68:17:27  307152 leadout (688 MB raw, 599 MB formatted)

LSN 是什么意思,它代表什么?我检查了手册页和谷歌,一无所获!

data-cd
  • 1 个回答
  • 13 Views
Martin Hope
somega
Asked: 2022-07-07 01:30:39 +0800 CST

用于检测应用程序执行逻辑中的错误的工具

  • 5

我想检测应用程序执行逻辑中的错误。例如:

  • 忘记调用free()返回的地址malloc()
  • 没有关闭由返回的文件句柄open()
  • 传递给的无效标志open()
  • 传递给的无效文件句柄poll()
  • write()调用了未打开写入的 fd
  • 将无效标志传递给open()例如 open("/etc/fstab", 4)
  • 调用close()无效的 fd
  • ...

我认为还有数百个。

也许该工具可以类似于ftraceor运行strace,但包含错误调用的内核日志也足够了。

debugging programming
  • 3 个回答
  • 796 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