小编Mik*_*kov的帖子

带有 consolekit 的系统和没有它的系统有什么区别?

首先,我使用带有独立 Openbox 的 Debian 测试系统。我没有 systemd,只有 sysvinit,而且我当然不会使用 systemd。

昨天我的 Debian 机器开始返回如下消息:

Jun 14 18:08:10 morfikownia login[4722]: pam_unix(login:session): session opened for user morfik by LOGIN(uid=0)
Jun 14 18:08:10 morfikownia dbus[4391]: [system] Activating service name='org.freedesktop.ConsoleKit' (using servicehelper)
Jun 14 18:08:10 morfikownia dbus[4391]: [system] Activated service 'org.freedesktop.ConsoleKit' failed: Failed to execute program org.freedesktop.ConsoleKit: Success
...
Jun 14 18:08:19 morfikownia pulseaudio[4855]: [pulseaudio] sink.c: Default and alternate sample rates are the same.
Jun 14 18:08:19 morfikownia pulseaudio[4855]: [pulseaudio] source.c: Default and alternate sample rates are …
Run Code Online (Sandbox Code Playgroud)

login openbox debian consolekit

7
推荐指数
1
解决办法
5482
查看次数

NAT 反射(NAT 环回)如何工作?

我使用来自 OpenWRT 的自动生成规则作为 NAT 反射(NAT 环回)的示例。

所以让我们假设有一个网络 192.168.1.0/24 有两个主机(+ 路由器):192.168.1.100 和 192.168.1.200。路由器有两个接口 LAN(br-lan)和 WAN(eth0)。LAN 接口的 IP 为 192.168.1.1,WAN 接口的 IP 为 82.120.11.22(公共)。192.168.1.200 上有一个 www 服务器。我们想使用公共 IP 地址从 192.168.1.100 连接到 Web 服务器。

如果您想重定向 WAN->LAN 以便互联网上的人可以访问 Web 服务器,您可以将以下规则添加到 iptables:

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.1.200:80
Run Code Online (Sandbox Code Playgroud)

我知道规则是什么意思。但是还有另外两条规则负责 NAT 反射。其中之一对我来说不像上面的那么清楚。所以第一条规则是这样的:

iptables -t nat -A PREROUTING -i br-lan -s 192.168.1.0/24 -d 82.120.11.22/32 -p tcp -m …
Run Code Online (Sandbox Code Playgroud)

iptables openwrt nat

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

VeraCrypt 有什么问题吗?

我不知道该去哪里问这个问题,所以我决定在这里问。

我想你们都知道 TrueCrypt,不久前它发生了一些奇怪的事情。鉴于这些事件,至少创建了两个 TC 的分叉:VeraCryptZuluCrypt

使用 Debian 发行版的人都知道 TrueCrypt 从未进入官方 Debian 存储库。我真的不知道为什么,但是既然 TC 没有了,让我们专注于两个叉子。目前只有 ZuluCrypt 位于主 Debian 存储库中。但是 VeraCrypt 呢?新的包裹队列中没有 VeraCrypt 。所以看起来它根本不会被添加到存储库中,问题是为什么?软件有问题吗?

debian truecrypt

7
推荐指数
1
解决办法
3016
查看次数

linux 中 kvm、libvirt 和 libvirt-qemu 组的用途是什么

我想在我的 Debian 上玩一点 KVM,我安装了所需的工具。这三个组出现在/etc/group文件中:kvmlibvirtlibvirt-qemu。每个小组的目的是什么?

现在我知道该libvirt组允许普通用户(通过 policykit)连接到 libvirtd 守护进程而无需询问 root 密码,因此它允许创建/删除/配置/管理虚拟机。

我也知道,/dev/kvm设备已经设置了kvm组。当用户拥有此设备的读/写权限时,他可以做什么?我应该向这个组添加一个普通用户吗?如果是这样,为什么?

我真的不知道这个libvirt-qemu小组的目的是什么。看起来它是多余的,但是网络上的许多 HowTo 都建议将普通用户也添加到该组中。这是必需的吗?

kvm virtual-machine debian qemu libvirt

7
推荐指数
1
解决办法
2287
查看次数

守护进程如何工作?

如果用户想要执行命令,他必须首先登录到系统。但是系统中的一些用户在文件中已经/bin/false/sbin/nologin设置为默认shell /etc/password。如果我的用户更改/bin/bash/bin/false,我将无法登录系统,因此我也将无法运行命令。

但是无壳用户无论如何都会这样做:

# ps -eo "%mem,user,group,args" | grep -i dns
 0.0 dnscrypt dnscrypt /usr/sbin/dnscrypt-proxy --daemonize --user dnscrypt --local-address=127.0.0.1:53 --resolver-address=208.67.222.222:443 --provider-name=2.dnscrypt-cert.opendns.com --provider-key=B735:1140:206F:225D:3E2B:D822:D7FD:691E:A1C3:3CC8:D666:8D0C:BE04:BFAB:CA43:FB79

# cat /etc/passwd | grep -i dns
dnscrypt:x:113:121::/home/dnscrypt:/bin/false
Run Code Online (Sandbox Code Playgroud)

没有shell的用户如何执行命令?

users daemon

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

cgroups net_prio 模块中可以使用哪些优先级?

Cgroups 有一个名为 的模块net_prio,通过使用这个模块,我可以设置各种应用程序生成的网络流量的优先级。正如您在此处阅读的那样,这可以通过设置类似于以下内容来实现:

echo "eth0 5" > /sys/fs/cgroups/net_prio/iscsi/net_prio.ifpriomap
Run Code Online (Sandbox Code Playgroud)

但是没有关于我可以使用的优先级范围的信息。

假设我的系统中有一个程序应该具有最低的网络优先级。5的步调应该用什么?优先级是否与优先级相似nice

networking cgroups

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

如何更改ext4文件系统中的extent大小?

正如您在此处阅读的那样,ext4 文件系统具有将块分组为范围的范围功能。它们中的每一个最多可以有 128MiB 的连续空间。在 中e4defrag,有类似于以下内容的行:

[325842/327069]/file:  100%  extents: 100 -> 10   [ OK ]
Run Code Online (Sandbox Code Playgroud)

该文件的大小约为 150MiB。所以根据wiki页面,应该有2个范围而不是10个。

  1. 有谁知道为什么范围是 15MiB 而不是 128MiB?
  2. 有没有可以检查确切范围大小的工具?
  3. 如何更改大小使其为 128MiB?

filesystems ext4 defragmentation

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

ext4 文件系统的日志中存储了什么样的数据?

ext4文件系统有一个功能叫做has_journal。在dumpe2fs输出中,我们可以看到如下内容:

# dumpe2fs /dev/sda2 | grep -i journal
Journal inode:            8
Journal backup:           inode blocks
Journal features:         journal_incompat_revoke
Journal size:             32M
Journal length:           8192
Journal sequence:         0x00000662
Journal start:            1
Run Code Online (Sandbox Code Playgroud)

所以日志大小为32M,从文件系统的开头开始。我知道日志的大小取决于分区的大小。我现在不记得限制了,但它不是那么大的价值。那么日志中存储了什么样的数据呢?

我读过一次,如果你想从你的磁盘中安全地删除一个文件(通过shred),你必须考虑文件系统的日志,因为它可以存储一些关于被删除文件的信息。有没有办法检查日记中的内容?有什么工具可以显示信息吗?

filesystems security hard-disk

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

为什么在清除 conntrack 表的情况下“echo f”在 debian 上不起作用?

许多人在想要重新加载防火墙规则时不会清除 conntrack 表。当您有一些 ESTABLISHED 连接时,当您添加阻止某些相关连接(处于 NEW 状态)的规则时,所有会话都不会受到影响。确保这不会发生的唯一方法是通过清除 conntrack 表来终止所有会话。在这种情况下,所有数据包都将符合 INVALID 规则,您必须建立一个新连接,该连接现在通过iptables.

在 OpenWRT 中,您可以简单地执行以下操作:

# echo f > /proc/net/nf_conntrack
Run Code Online (Sandbox Code Playgroud)

但不幸的是,此解决方案不适用于 debian。

# echo f > /proc/net/nf_conntrack
echo: write error: Input/output error
Run Code Online (Sandbox Code Playgroud)

原因如下:

# ls -al /proc/net/nf_conntrack
-r--r----- 1 root root 0 2016-06-05 10:45:52 /proc/net/nf_conntrack
Run Code Online (Sandbox Code Playgroud)

在 debian 上,您必须安装该conntrack软件包,然后键入以下命令:

# conntrack -F
conntrack v1.4.3 (conntrack-tools): connection tracking table has been emptied.
Run Code Online (Sandbox Code Playgroud)

为什么echo f在 debian 上不起作用?有没有办法让它以某种方式工作,还是我被迫使用该conntrack工具?

networking firewall debian iptables

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

"#!/usr/bin/env xdg-open" 应该包含在 .desktop 文件中吗?

有些人将以下行添加到.desktop文件中:

#!/usr/bin/env xdg-open
Run Code Online (Sandbox Code Playgroud)

但是当我检查/usr/share/applications/debian sid下的文件时,没有包含这一行的文件。

所以问题很简单:应该添加还是不添加?

.desktop

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