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

Arkaik's questions

Martin Hope
Arkaik
Asked: 2022-12-23 12:13:03 +0800 CST

仅在达到突发限制后才触发 Service OnFailure

  • 6

我正在使用 systemd 单元文件来控制在服务器上运行的 python 进程(使用 systemd v247)。

此进程必须在退出后 60 秒重新启动,无论是失败还是成功,除非它在 ​​600 秒内失败 5 次。

该单元文件链接另一个服务,以便通过电子邮件通知故障。

/etc/systemd/system/python-test.service

[Unit]
After=network.target
OnFailure=mailer@%n.service

[Service]
Type=simple

ExecStart=/home/debian/tmp.py

# Any exit status different than 0 is considered as an error
SuccessExitStatus=0

StandardOutput=append:/var/log/python-test.log
StandardError=append:/var/log/python-test.log

# Always restart service 60sec after exit
Restart=always
RestartSec=60

# Stop restarting service after 5 consecutive fail in 600sec interval
StartLimitInterval=600
StartLimitBurst=5

[Install]
WantedBy=multi-user.target

/etc/systemd/system/[email protected]

[Unit]
After=network.target

[Service]
Type=oneshot

ExecStart=/home/debian/mailer.py --to "[email protected]" --subject "Systemd service %I failed" --message "A systemd service failed %I on %H"

[Install]
WantedBy=multi-user.target

在基本测试期间,触发OnFailure工作得很好。但是,当我将以下部分添加到单元文件中时,OnFailure仅在连续 5 次失败时触发。

StartLimitInterval=600
StartLimitBurst=5

这不是我想要的行为,因为我希望每次进程失败时都能收到通知,即使尚未达到突发限制。


检查进程状态时,未达到突发限制时输出不同

● python-test.service
     Loaded: loaded (/etc/systemd/system/python-test.service; disabled; vendor preset: enabled)
     Active: activating (auto-restart) (Result: exit-code) since Thu 2022-12-22 19:51:23 UTC; 2s ago
    Process: 1421600 ExecStart=/home/debian/tmp.py (code=exited, status=1/FAILURE)
   Main PID: 1421600 (code=exited, status=1/FAILURE)
        CPU: 31ms

Dec 22 19:51:23 test-vps systemd[1]: python-test.service: Failed with result 'exit-code'.

比当它是

● python-test.service
     Loaded: loaded (/etc/systemd/system/python-test.service; disabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Thu 2022-12-22 19:52:02 UTC; 24s ago
    Process: 1421609 ExecStart=/home/debian/tmp.py (code=exited, status=1/FAILURE)
   Main PID: 1421609 (code=exited, status=1/FAILURE)
        CPU: 31ms

Dec 22 19:51:56 test-vps systemd[1]: python-test.service: Failed with result 'exit-code'.
Dec 22 19:52:02 test-vps systemd[1]: python-test.service: Scheduled restart job, restart counter is at 5.
Dec 22 19:52:02 test-vps systemd[1]: Stopped python-test.service.
Dec 22 19:52:02 test-vps systemd[1]: python-test.service: Start request repeated too quickly.
Dec 22 19:52:02 test-vps systemd[1]: python-test.service: Failed with result 'exit-code'.
Dec 22 19:52:02 test-vps systemd[1]: Failed to start python-test.service.
Dec 22 19:52:02 test-vps systemd[1]: python-test.service: Triggering OnFailure= dependencies.

我找不到任何解释如何OnFailure在单元文件中修改触发的内容。

有没有办法在每次进程失败时通知邮件并仍然保持突发限制?

linux
  • 1 个回答
  • 56 Views
Martin Hope
Arkaik
Asked: 2019-04-05 08:50:27 +0800 CST

从 udev 安装时未应用 umask

  • 0

我有一个 udev 规则,它在连接时自动安装 USB 设备

规则如下:

# cat /etc/udev/rules.d/10-usbdetectd.rules 
KERNEL!="sd[a-z]*", GOTO="media_by_label_auto_mount_end"
# Import FS infos
IMPORT{program}="/sbin/blkid -o udev -p %N"
# Global mount options
ACTION=="add", ENV{mount_options}="relatime"
# Filesystem-specific mount options
ACTION=="add", ENV{ID_FS_TYPE}=="vfat|ntfs", ENV{mount_options}="$env{mount_options},utf8,uid=1000,gid=1000,umask=022"
# Mount the device
ACTION=="add", RUN+="/bin/mount -o $env{mount_options} /dev/%k /media/usb"
# Clean up after removal
ACTION=="remove", RUN+="/bin/umount -l /media/usb" 
# Exit
LABEL="media_by_label_auto_mount_end"

此规则运行良好,但是,我想以完全权限安装设备。为此,我必须设置 umask=000

当我手动尝试时,它按预期工作

# ls -dl /media/usb/
drwxr-xr-x    2 root     root          4096 Jan 29  2019 /media/usb/

# mount -o relatime,utf8,uid=1000,gid=1000,umask=000 /dev/sda1 /media/usb/

# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/root              6643016     86356   6199492   1% /
devtmpfs                223204         0    223204   0% /dev
tmpfs                   256484         0    256484   0% /dev/shm
tmpfs                   256484        48    256436   0% /tmp
tmpfs                   256484       132    256352   0% /run
/dev/mmcblk0p1           20185      2854     17331  14% /boot
/dev/sda1              1957600        96   1957504   0% /media/usb

# ls -dl /media/usb/
drwxrwxrwx    2 user    user        16384 Jan  1  1970 /media/usb/

但是,当安装由 udev 完成时,不会应用掩码

# ls -dl /media/usb/
drwxr-xr-x    2 root     root          4096 Jan 29  2019 /media/usb/

[USB drive plug]

# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/root              6643016     86356   6199492   1% /
devtmpfs                223204         0    223204   0% /dev
tmpfs                   256484         0    256484   0% /dev/shm
tmpfs                   256484        52    256432   0% /tmp
tmpfs                   256484       132    256352   0% /run
/dev/mmcblk0p1           20185      2854     17331  14% /boot
/dev/sda1              1957600        96   1957504   0% /media/usb

# ls -dl /media/usb/
drwxr-xr-x    2 root     root         16384 Jan  1  1970 /media/usb/

似乎当安装由 udev 完成时,没有应用任何安装选项。

uid=1000 和 gid=1000 对应我的用户

# cat /etc/passwd 
[...]
user:x:1000:1000:- Standard user:/home/user:/bin/bash
[...]
mount udev
  • 1 个回答
  • 455 Views
Martin Hope
Arkaik
Asked: 2018-08-04 06:25:04 +0800 CST

在没有 kermit 和 lrzsz 的情况下通过串行检索文件

  • 9

我在定制板上有一个嵌入式 Linux,我想通过其串行端口发送和接收文件。

与此设备通信的唯一方法是通过串行端口,并且该设备在此串行端口上提供了一个控制台。

这块板kermit既没有busybox rx也没有lrzsz。

- 发送文件到远程

我能够按照这个线程将文件发送到董事会。

Host side                              Remote side

cat file | base64 > file_b64
                                       cat > file_b64
minicom's ctrlA-S => send 'file_b64'
                                       cat file_b64 | base64 --decode > file

- 从远程获取文件

现在我想从远程系统中检索一个文件。

Minicom 有一个用于接收文件的工具,但由于我只有串行端口的控制台,使用 minicom 在远程端发出命令,我找不到如何去做。

我曾尝试在主机端使用 kermit,但似乎我还需要在远程端使用 kermit。


编辑:

我也尝试反转发送方法,但没有成功,因为我没有从主机端的串行端口收到任何东西。

Host side                              Remote side

                                       cat file | base64 > file_b64
                                       (sleep 10; cat file_b64 > /dev/ttyS0) &
                                       minicom's ctrlA-X => exit minicom
cat /dev/ttyUSB0 > file_b64

不能使用 minicom 的接收工具,因为它只支持xmodem, ymodem,zmodem和kermit传输,不支持 ascii。


有没有办法从远程检索文件而无需在其控制台中键入命令?

serial-port file-transfer
  • 2 个回答
  • 11219 Views
Martin Hope
Arkaik
Asked: 2018-04-18 02:18:31 +0800 CST

检查磁盘映像文件系统类型

  • 8

如何检查磁盘映像的文件系统格式?

我知道我可以使用file命令进行检查,但我想自动化该行为。

$ file img.raw
img.raw:   data

$ file img.ext4
img.raw:   Linux rev 1.0 ext4 filesystem data, UUID=346712e7-1a56-442b-a5bb-90ba4c6cc663 (extents) (64bit) (large files) (huge files)

$ file img.vfat
img.vfat:  DOS/MBR boot sector, code offset 0x3c+2, OEM-ID "mkfs.fat", sectors/cluster 16, reserved sectors 16, root entries 512, Media descriptor 0xf8, sectors/FAT 256, sectors/track 32, heads 64, sectors 1024000 (volumes > 32 MB) , serial number 0x4b5e9a12, unlabeled, FAT (16 bit)

我想检查给定的映像磁盘是否以给定的格式格式化。

例如checkfs <image> <format>,如果图像包含“格式”文件系统,则返回 0,否则返回另一个值。

我想过做类似file <image> | grep <format>的事情并检查返回码,但是对于 vfat 文件系统,'vfat' 没有出现在file's 的输出中。

我也可以编写一个脚本来执行此操作,但我找不到允许我获取磁盘映像的文件系统格式的工具。

我还尝试过使用以下工具:fdisk、parted和df.

是否有一种工具可以让我检查磁盘映像文件系统格式并适用于最常用的文件系统格式?

linux filesystems
  • 1 个回答
  • 9997 Views
Martin Hope
Arkaik
Asked: 2018-04-17 05:44:37 +0800 CST

Qemu - 模拟自己的系统来测试内核模块

  • 0

我目前正在通过实现块设备驱动程序开始内核编程。我能够进行“简单”的实现,并且我想进一步了解块子系统提供的功能。

为此,我想使用 qemu 模拟我自己的操作系统,以避免每次我在内核设备代码中出错时使我的开发操作系统崩溃。

主机系统配置

在我的工作站上,我使用的是运行内核 4.9.0 的 Debian 9。

$ uname -a
Linux PC325 4.9.0-6-amd64 #1 SMP Debian 4.9.82-1+deb9u3 (2018-03-02) x86_64 GNU/Linux

镜像磁盘创建

为了创建虚拟机,我创建了一个 500M 的原始图像dd if=/dev/zero of=vm-image.raw bs=1M count=512

然后将其格式化为 ext4 使用mkfs.ext4 vm-image.raw


@meuh 评论后更新:
然后我填充了磁盘映像,如下所示:

mount vm-image.raw /mnt
mkdir /mnt/dev /mnt/lib /mnt/proc /mnt/root /mnt/run /mnt/sbin /mnt/sys
cp -r /etc /mnt/
cp -r /lib/systemd /mnt/lib
ln -s /lib/systemd/systemd /mnt/sbin/init

我现在正在尝试启动模拟操作系统,但在配置它时遇到了一些问题。

运行命令

$ qemu-system-x86_64 -k fr -kernel /boot/vmlinuz-$(uname -r) -initrd /boot/initrd.img-$(uname -r) -hda vm/vm-image.raw -append "initrd=/boot/initrd.img-$(uname -r) root=/dev/sda rw console=ttyS0" -nographic

引导跟踪

[...] Kernel boot sequence [...]

Begin: Loading essential drivers ... done.
Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Running /scripts/local-premount ... [    2.015241] tsc: Refined TSC clocksource calibration: 3392.292 MHz
[    2.016768] clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x30e5dd94d34, max_idle_ns: 440795304975 ns
[    2.895630] random: fast init done
Begin: Waiting for suspend/resume device ... Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
[   11.111765] random: crng init done
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
Begin: Running /scripts/local-block ... done.
done.
Gave up waiting for suspend/resume device
done.
Begin: Will now check root file system ... fsck from util-linux 2.29.2
[/sbin/fsck.ext4 (1) -- /dev/sda] fsck.ext4 -a -C0 /dev/sda 
/dev/sda: clean, 3607/32768 files, 12617/131072 blocks
done.
[   35.528453] EXT4-fs (sda): mounted filesystem with ordered data mode. Opts: (null)
done.
Begin: Running /scripts/local-bottom ... done.
Begin: Running /scripts/init-bottom ... done.
run-init: /sbin/init: No such file or directory
[   35.569247] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000100
[   35.569247] 
[   35.570469] CPU: 0 PID: 1 Comm: run-init Not tainted 4.9.0-6-amd64 #1 Debian 4.9.82-1+deb9u3
[   35.571599] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
[   35.572695]  0000000000000000 ffffffff9792e074 ffff974c05e14d00 ffffa66e8003feb8
[   35.573741]  ffffffff9777cfbd ffff974c00000010 ffffa66e8003fec8 ffffa66e8003fe60
[   35.574780]  a4112d94e56af84a ffff974c05e14d80 0000000000000100 ffff974c05e84490
[   35.575793] Call Trace:
[   35.576132]  [<ffffffff9792e074>] ? dump_stack+0x5c/0x78
[   35.576815]  [<ffffffff9777cfbd>] ? panic+0xe4/0x23f
[   35.577453]  [<ffffffff9767c2de>] ? do_exit+0xade/0xae0
[   35.578136]  [<ffffffff978058b4>] ? vfs_write+0x144/0x190
[   35.578830]  [<ffffffff9767c313>] ? SyS_exit+0x13/0x20
[   35.579510]  [<ffffffff97603b7f>] ? do_syscall_64+0x8f/0xf0
[   35.580223]  [<ffffffff97c113b8>] ? entry_SYSCALL_64_after_swapgs+0x42/0xb0
[   35.581209] Kernel Offset: 0x16600000 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbfffffff)
[   35.582584] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000100
[   35.582584] 

问题

1 - 试图读取软盘设备

在启动时,内核似乎试图从不存在或不可读的软盘设备中读取。内核在 30 次尝试后放弃了,所以这不是一个关键问题,但它会使引导序列减慢 30 秒。

我尝试使用-no-fd-bootchk选项运行 qemu,但它没有改变任何东西


更新:
精确地作为 1ko-fda floppy.img的floppy.img原始归零图像可以抑制软盘相关的错误消息,并在启动时最多节省 20 秒。但是,正如您在引导跟踪中看到的那样,/scripts/local-block它仍然会运行几次,并且在传递到下一步之前最多需要 10 秒。


2 - 无法初始化系统


@meuh 评论后更新:

内核似乎无法找到有效的初始化脚本。但是/sbin/init,它存在于磁盘映像上,并且是指向/lib/systemd/systemd.

我正在经历内核恐慌,但我不知道是什么原因造成的。


问题

我对 qemu 很陌生,我认为我离让我的模拟系统工作不远了,但我无法走得更远。

我尝试使用参数,但找不到能够完全启动并使用 bash 提示而不是 initramdisk 提示的解决方案。

@meuh 评论后更新:
我应该将什么复制到磁盘映像才能初始化系统?

linux linux-kernel
  • 1 个回答
  • 1675 Views
Martin Hope
Arkaik
Asked: 2018-02-15 04:57:27 +0800 CST

无法连接到 PAN 蓝牙接入点

  • 6

我目前正在尝试在两个板之间通过蓝牙实现 PAN 连接。

第一个板是 Raspberry Pi Zero,第二个板是基于 Atmel Sama5d2 的定制板。
主板分别运行 Linux 4.9.75+ 和 Linux 4.9.30 并使用 BlueZ v5.43 和 BlueZ v5.46。

我可以使用bt-pan脚本连接到我手机的蓝牙连接与两个板。

这是连接到我手机的系留连接的痕迹

# bt-pan --debug client 60:45:CB:2F:C6:4C --wait
DEBUG:root:Using local device (addr: B8:27:EB:20:54:45): /org/bluez/hci0
DEBUG:root:Using remote device (addr: 60:45:CB:2F:C6:4C): /org/bluez/hci0/dev_60_45_CB_2F_C6_4C
DEBUG:root:Connected to network (dev_remote: /org/bluez/hci0/dev_60_45_CB_2F_C6_4C, addr: 60:45:CB:2F:C6:4C) uuid 'nap' with iface: bnep0

这是我到目前为止所做的(使用 rpi 作为客户端,使用自定义板作为服务器):

板是配对的

服务器端

[bluetooth]# paired-devices
Device B8:27:EB:20:54:45 raspberrypi[/code]

客户端

[bluetooth]# paired-devices
Device 00:16:A4:0A:15:13 BlueZ 5.46

在服务器端设置桥接接口

#brctl addbr bnep0
#brctl setfd bnep0 0
#brctl stp bnep0 off
#ip addr add 10.5.0.5/255.255.0.0 dev bnep0
#ip link set bnep0 up

在服务器端启动 bt-pan 脚本作为服务器

#bt-pan --debug server bnep0
DEBUG:root:Using local device (addr: 00:16:A4:0A:15:13): /org/bluez/hci0
DEBUG:root:Registered uuid 'nap' with bridge/dev: bnep0 / 00:16:A4:0A:15:13

在客户端启动 bt-pan 脚本作为客户端

# bt-pan --debug client 00:16:A4:0A:15:13 --wait
DEBUG:root:Using local device (addr: B8:27:EB:20:54:45): /org/bluez/hci0
DEBUG:root:Using remote device (addr: 00:16:A4:0A:15:13): /org/bluez/hci0/dev_00_16_A4_0A_15_13
Traceback (most recent call last):
  File "/usr/bin/bt-pan", line 238, in <module>
    if __name__ == '__main__': sys.exit(main())
  File "/usr/bin/bt-pan", line 210, in main
    try: iface = net.Connect(opts.uuid)
  File "/usr/lib/python3/dist-packages/dbus/proxies.py", line 145, in __call__
    **keywords)
  File "/usr/lib/python3/dist-packages/dbus/connection.py", line 651, in call_blocking
    message, timeout)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.UnknownMethod: Method "Connect" with signature "s" on interface "org.bluez.Network1" doesn't exist

据我了解,我的蓝牙设备似乎没有导出Connect接口的方法org.bluez.Network1

有谁知道为什么不支持网络配置文件?
有解决此错误的解决方法吗?

linux networking
  • 1 个回答
  • 2506 Views
Martin Hope
Arkaik
Asked: 2018-01-19 05:33:56 +0800 CST

Posix shell 脚本 - 将多行命令输出保存到变量

  • 0

当我将包含多行变量的命令输出直接保存到终端中时,我得到以下结果:

$ dirs=$(ls -1d /mnt/*/)
$ echo $dirs
/mnt/ext4/ /mnt/local/ /mnt/remote/ /mnt/test/
$ echo "$dirs"
/mnt/ext4/
/mnt/local/
/mnt/remote/
/mnt/test/

但是,当从 posix shell 脚本中使用它时,结果是不同的。这是脚本

#!/bin/sh

dirs=$(ls -1d $1)
echo "inline"
echo $dirs
echo "multiline"
echo "$dirs"

这是脚本输出

$ ./test.sh /mnt/*/
inline
/mnt/ext4/
multiline
/mnt/ext4/

即使我使用 bash 而不是 sh,也会发生这种情况。

有谁知道我如何将输出保存ls -1d /mnt/*/到保持完整输出的变量中?
我想在 for 循环中解析四个目录路径中的每一个。

shell-script shell
  • 1 个回答
  • 4868 Views
Martin Hope
Arkaik
Asked: 2017-12-14 03:06:25 +0800 CST

脚本处理 systemd 服务的返回码

  • 1

我正在编写一个可以使用 systemctl 命令启动或停止的 systemd 服务。

然而,这个程序也可以返回几个返回码,我想处理这些返回码。

例如,如果服务被停止,systemctl stop <service>它应该什么都不做。但是,如果它没有被 systemctl 杀死并自行返回,我想运行一个 post 脚本,我可以在该脚本上获取返回码并根据其值执行操作。


在@NarūnasK 回答之后修改
当系统版本 >= v232 时,@NarūnasK 回答没问题


但是,当没有好的 systemd 版本时,怎么办?

我虽然关于做类似的事情

ExecStart=/bin/sh -c '<service> -C /etc/<service_conf_file>; [ $? -eq 1 ] && { <action> }'
linux systemd
  • 1 个回答
  • 14628 Views
Martin Hope
Arkaik
Asked: 2017-11-23 07:19:40 +0800 CST

通过标签将根文件系统传递给linux内核

  • 2

如何通过标签传递 rootfs 分区从 u-boot 引导 linux rootfs?

我使用 u-boot 作为引导加载程序,该卡是 RedPitaya。linux 是基于卡可用的稳定 ubuntu 映像定制的 Linux。

U-boot 在 sd 卡的第一个分区中刷入 linux 内核和设备树。我正在尝试在外部 USB 硬盘上启动根文件系统

我准确地说,如果我使用“经典”/dev/sdxn 命名约定,我可以启动硬盘。


我已经尝试过使用以下参数,但它们都失败了:

console=ttyPS0,115200 root=/dev/disk/by-label/ROOTFS rw rootfstype=ext4 earlyprintk rootwait isolcpus=1

console=ttyPS0,115200 root=LABEL=ROOTFS rw rootfstype=ext4 earlyprintk rootwait isolcpus=1

根据我在研究中的理解, /dev/disk/by-label 由 udev 填充,因此在将引导参数传递给 linux 内核时,它在 u-boot 中不可用。

我还发现从标签启动的功能没有集成到 linux 内核中,正如您在函数定义之前的文件do_mounts.c中看到的那样。dev_t name_to_dev_t(const char *name)

因此,从现在开始,我想找到一种方法来引导标记为ROOTFS外部 USB 硬盘上的分区。


我在那里看到两种不同的解决方案:

1 - 通过添加类似的东西在 linux 内核中集成标签引导功能

if (strncmp(name, "LABEL=", 6) == 0) {
        name += 6;
        res = devt_from_label(name);
        if (!res)
            goto fail;
        goto done;
}

进入do_mounts.c并实现功能devt_from_label。

2 - 在 sd 卡的第二个分区上使用小型 rootfs 从其标签中解析设备名称,并使用替换的设备名称重新启动内核引导。

你怎么看待这件事 ?哪一个是实施起来“最简单”的?

也许我忘记了一些重要的事情,或者有人已经成功地做了同样的事情。

无论如何,我很高兴能得到一些帮助来实现它

linux kernel
  • 1 个回答
  • 3005 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