小编Gra*_*ent的帖子

i3wm:当 i3 启动时在特定工作区启动应用程序

启动时如何在 i3 中的特定工作区上启动应用程序?

为什么这在我的配置文件中不起作用?:

workspace 1; exec firefox; workspace 2; exec chromium; workspace 1
Run Code Online (Sandbox Code Playgroud)

startup window-manager i3

75
推荐指数
4
解决办法
14万
查看次数

为什么要在 Bridge 接口上分配 MAC 和 IP 地址

说我创造(Linux上的桥接口br0),并添加到它的一些接口(eth0tap0,等)。我的理解是这个接口就像一个虚拟交换机,我添加了它的所有接口/端口。

为该接口分配 MAC 和 IP 地址是什么意思?该接口是否充当交换机/网桥上的附加端口,允许其他端口访问主机?

我已经看到一些页面谈到为网桥分配 IP 地址。MAC 分配是否隐含(或自动)?

linux ip bridge mac-address

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

为什么重启、关机和关机符号链接到 systemctl?

在Arch Linux的,如果我做ls -l/sbin,我可以看到rebootshutdown而且poweroff都是符号连接/usr/bin/systemctl。但是发出reboot,shutdownsystemctl命令显然并不都具有相同的行为。

ls -l不是向我展示有关符号链接的完整信息?例如,我如何知道真正的符号链接reboot是什么?

ls arch-linux symlink ln reboot

31
推荐指数
1
解决办法
1万
查看次数

了解主机名和 /etc/hosts

在 /etc/hostname 中,我有myname.

在 /etc/hosts 中,我有:

127.0.0.1   localhost.localdomain   localhost myname
::1     localhost.localdomain   localhost myname
Run Code Online (Sandbox Code Playgroud)

我对什么是真正的主机名以及它的用途有一个模糊的理解。

这些更精确的问题可以帮助我更好地理解它:

  1. 在上面的例子中我的主机名到底是什么?myname或者是其他东西?如果我改为myname.domain.comin /etc/hostname,那么我真正的主机名会是什么?

  2. 在示例中,命令hostname返回myname,而命令hostname -f返回localhost.localdomain。我记得这/etc/hosts只是名称和 IP 地址之间的映射。它似乎在这里提供了另一个功能。什么是 fqdn,它的用途是什么?它是如何检索的?为什么localhost.localdomain

  3. 如果我改为myname.domain.comin /etc/hostnamehostname -f就会返回myname.domain.com。为什么?

  4. 为什么 fqdn 在这些文件中不以点结尾?

  5. hostname -ddnsmydomain等价的吗?

  6. 我可以在什么情况下使用我的主机名 ( myname) 以及什么时候必须使用我的 fqdn ( localhost.localdomain)?

hostname hosts

20
推荐指数
3
解决办法
7万
查看次数

使用 glob 模式 cp 隐藏文件

情况 :

$ mkdir foo && touch foo/.test
$ cp foo/* .
zsh: no matches found: foo/*
(or bash : cp: cannot stat ‘foo/*’: No such file or directory)
Run Code Online (Sandbox Code Playgroud)

我有一个充满隐藏文件夹和文件的目录。发生了什么,解决方案是什么?

zsh cp wildcards dot-files

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

xdg-open 默认应用程序行为

当我没有defaults.listand 时mimeapps.listxdg-open打开text/plainwith gvim。但是,当我创建defaults.list/usr/share/applications/,并添加以下几行:

[Default Applications]
text/plain=emacs.desktop
Run Code Online (Sandbox Code Playgroud)

它用 Firefox 打开文本文件。

但是,如果我移动/usr/share/applications/defaults.list~/.local/share/applications/mimeapps.list,它会emacs按预期打开文本文件。

我的问题:

  1. xdg-open当没有defaults.listand时如何确定要启动哪个应用程序mimeapps.list
  2. 为什么xdg-open在我简单地写时使用 Firefox /usr/share/applications/defaults.list

我正在使用 Arch Linux。

arch-linux defaults freedesktop

16
推荐指数
1
解决办法
1万
查看次数

Arch linux:chroot 时 pacman 不起作用

我的电脑上安装了 Ubuntu。我决定安装 Arch linux,但我跳过了关于 Grub 安装的部分,因为它已经安装了。看到 Arch 没有出现在 Grub 的菜单列表中,我决定在 Arch 中安装它。我在 Ubuntu 中安装了 Arch 的分区,然后 chroot 到它。我发出命令pacman -S grub-bios并得到以下信息:

error: could not open file: /etc/mtab: No such file or directory
error: could not determine filesystem mount points
error: failed to commit transaction (unexpected error)
Errors occurred, no packages were upgraded.
Run Code Online (Sandbox Code Playgroud)

/etc/mtab是指向 的符号链接/proc/self/mounts,但/proc文件夹中没有任何内容。

我究竟做错了什么?

作为补充,我是否朝着正确的方向让 Arch 出现在 Grub 的列表中?编辑:我是能够使拱门出现在GRUB的名单从Ubuntu的做sudo mount /dev/sdaX与Arch的分区号替换X之前)sudo update-grub

arch-linux pacman grub2 proc

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

命令未在 cron 中运行(systemctl 挂起)

我有这个 cronjob 集:

* * * * * /usr/bin/systemctl suspend
Run Code Online (Sandbox Code Playgroud)

它不工作。但是我可以在 shell 中运行它并且它可以工作。我不明白什么可能不起作用。

编辑 重定向错误输出/tmp/error给出了这个:

Failed to issue method call: Access denied
Failed to issue method call: Access denied
Run Code Online (Sandbox Code Playgroud)

我的问题是:cronjobs 是否以特殊用户身份运行(cron例如),这将解释我的用户可以运行命令,但不能运行cron它本身?

补充说明:

  • 这是显示我在脚本中遇到的问题的最小示例(这比此处提供的单个命令更有意义)

  • systemctl是 的一部分systemd。我认为重启、关机、挂起是与非 root 用户一起使用的systemd。无论如何,它正在我的系统上运行。

  • 最后,我使用 Arch Linux /bin/usr/sbin,/sbin都是/usr/bin.

cron suspend systemd

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

在 systemd 中,什么启动了生成器生成的单元?

在我的机器(Arch linux)上,systemd-generator 生成了一些单元文件/run/systemd/generator/,它们似乎在启动时以某种方式启动。什么是启动它们?

例如,boot.mount是由 systemd 生成的。systemctl list-dependencies --all显示它链接到local-fs.target(未生成)。它们是如何联系在一起的?这两个单元中似乎没有任何东西可以触发boot.mount. 嗯,在 中boot.mount,有Before=local-fs.target,但这不会启动服务,是吗?

systemd

14
推荐指数
1
解决办法
1万
查看次数

OpenBSD:如何关注 -current?

这个问题类似于这一个,但更具体。


  1. 我有一台 -stable OpenBSD 机器,我想开始关注 -current。我知道从一个版本到另一个版本的升级过程。如何从发布到最新快照?我可以简单地从最新快照的 bsd.rd 启动并遵循升级过程,但是“升级前步骤”和“配置步骤”呢?从 -stable 到最新快照时是否有任何应用?

  2. 当我得到一个 -current 系统并且我想再次更新它时,程序是什么?我应该从源代码构建还是再次使用最新快照的 bsd.rd?无论如何,是否涉及任何“配置步骤”,如上面的链接所示?

openbsd

11
推荐指数
1
解决办法
5198
查看次数