小编dar*_*nir的帖子

如何在 Arch Linux 中使用 .local 主机名?

如果我使用的是 Ubuntu 或 Linux Mint(我尝试过并且知道肯定有效的仅有的两种版本),我可以运行这样的程序:

wayne@myhost$ ssh wayne@otherhost.local
Run Code Online (Sandbox Code Playgroud)

并且该名称会自动解析为我本地网络上其他主机的任何 IP。

我决定开始扩展到其他发行版,并且我的笔记本电脑上运行了 Arch - 但是如果我尝试使用之前的命令,我会得到 Could not resolve hostname otherhost.local: Name or service not known

获得这种自动名称解析(?)需要什么?

networking arch-linux hostname

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

DE 如何调用 ACPI 函数?

好的,首先,这不是我面临的问题,但我想更好地理解这一点。

如果我想从命令行关闭/重启我的机器,我需要调用:

$ sudo poweroff
$ sudo reboot
Run Code Online (Sandbox Code Playgroud)

也就是说,我需要 root 权限才能进行这些 ACPI 调用。

但是,我启动了我的 DE,(我使用 XFCE)而不授予它 root 权限:$ startxfce4 --with-ck-launch

现在,我知道该--with-ck-launch参数有助于 XFCE 关闭/重新启动我的系统,但我不明白如何。

什么允许 ConsoleKit 在没有 root 权限的情况下关闭?它如何在没有超级用户权限的情况下更改运行级别?既然有可能,我如何在没有 root 权限的情况下从控制台关闭我的机器?

linux shutdown not-root-user privileges consolekit

6
推荐指数
1
解决办法
536
查看次数

检测 HDMI 监视器是否关闭

我有一台显示器通过 HDMI 连接到我的机器。
现在,如果有人要关闭显示器,通过其上的软按钮或移除电源线,我希望收到通知并运行 Shell 脚本。

我尝试了多种方法来识别显示器何时打开或关闭(它始终处于连接状态)。唯一接近的技术是:

# ddccontrol -p

当外接显示器连接时,这将返回有关显示器的各种详细信息。我可以编写一个脚本来解析输出。然而,对于无监督的使用,这似乎是一种不可靠的技术。

有什么方法可以让我获得有关显示器是否打开/关闭的“是/否”答案?

编辑:如果我能收到有关状态更改的消息,那就更好了。由于这将连续运行数天,我不想轮询监视器的状态。相反,如果它被关闭,我希望通过消息获得通知。

monitoring hardware multi-monitor hdmi

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

Bash:@() 上的语法错误

我的.bashrc文件中有以下功能:

extract() {
    local c e i

    (($#)) || return

    for i; do
        c=''
        e=1

        if [[ ! -r $i ]]; then
            echo "$0: file is unreadable: \`$i'" >&2
            continue
        fi

        case $i in
        *.t@(gz|lz|xz|b@(2|z?(2))|a@(z|r?(.@(Z|bz?(2)|gz|lzma|xz)))))
               c='bsdtar xvf';;
        *.7z)  c='7z x';;
        *.Z)   c='uncompress';;
        *.bz2) c='bunzip2';;
        *.exe) c='cabextract';;
        *.gz)  c='gunzip';;
        *.rar) c='unrar x';;
        *.xz)  c='unxz';;
        *.zip) c='unzip';;
        *)     echo "$0: unrecognized file extension: \`$i'" >&2
               continue;;
        esac

        command $c "$i"
        e=$?
    done

    return $e
}
Run Code Online (Sandbox Code Playgroud)

现在这在我当前的 Arch Linux 系统上对我来说非常有效。最近,我安装了新的 void-linux …

bash wildcards

2
推荐指数
1
解决办法
754
查看次数