小编pka*_*mol的帖子

ip 与 ifconfig 命令的优缺点

在某些时候,在我遇到的一些关于 Linux 的教学材料(来自 Linux Foundation)中,提到了以下内容:

ipcommand 比ifconfig因为它使用netlink套接字而不是ioctl系统调用更通用和更有效。

任何人都可以详细说明这一点,因为我无法理解引擎盖下发生了什么?

PS 我知道关于这些工具的这个主题,但它没有解决它们如何操作的具体差异

linux networking ip ifconfig

36
推荐指数
2
解决办法
8588
查看次数

让systemd服务继承/etc/profile.d中的环境变量

我有一个systemd服务在特定用户下运行。

我错误地认为该服务可以访问所有用户从脚本/导出继承的环境变量/etc/profile.d

有没有一种方法可以完成此任务,而无需手动复制systemd单元文件定义中的变量。

例如,我有以下内容

$ cat /etc/profile.d/somexports

export VAR1=VALUE1
export VAR2=VALUE2
Run Code Online (Sandbox Code Playgroud)

这可以传递/导出到systemd服务吗?

environment-variables systemd

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

未压缩文件估计错误?

我有一个大(~60G)的压缩文件(tar.gz)。

我曾经split把它分成 4 部分,然后cat将它们重新连接在一起。

但是,现在,当我尝试估计未压缩文件的大小时,结果发现它比原始文件小?这怎么可能?

$ gzip -l myfile.tar.gz 
         compressed        uncompressed  ratio uncompressed_name
        60680003101          3985780736 -1422.4% myfile.tar
Run Code Online (Sandbox Code Playgroud)

compression gzip split

10
推荐指数
1
解决办法
1988
查看次数

Linux 系统上的最大 tcp 连接数

我知道这/etc/security/limits.conf为几个值提供了持久的软限制和硬限制。

但是,在相关列表中没有说明对以下方面施加的限制:

a) 并发打开的 tcp 连接

b) Unix 域套接字的数量

任何人都可以在哪里以及如何设置/获取这些?

这些价值观是否以某种方式相互关联?

security limit tcp socket

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

awk 意外地从字符串中删除了点

我想在文件中添加一列(第二位),.csv并且我希望该列的值是字符串并被引用;

以下命令确实添加了列,但没有引号:

awk -F"," 'BEGIN { OFS = "," } {$2="2.4.0"; print}' test.csv > output.csv
Run Code Online (Sandbox Code Playgroud)

以下方法确实包含引号,但出于某种原因,它.从值中删除了最后一个(点)

awk -F"," 'BEGIN { OFS = "," } {$2="\""2.4.0"\""; print}' test.csv > output.csv
Run Code Online (Sandbox Code Playgroud)

所以我的价值观最终是“2.40”。

我应该怎么做?

awk csv

9
推荐指数
1
解决办法
869
查看次数

ps 命令中无法识别的进程状态输出

ps aux在运行中Ubuntu 18.04我看到一些进程具有 state I,如...

root         1  0.0  0.0 225520  9144 ?        Ss   10:36   0:02 /sbin/init splash
root         2  0.0  0.0      0     0 ?        S    10:36   0:00 [kthreadd]
root         4  0.0  0.0      0     0 ?        I<   10:36   0:00 [kworker/0:0H]
root         6  0.0  0.0      0     0 ?        I<   10:36   0:00 [mm_percpu_wq]
Run Code Online (Sandbox Code Playgroud)

但是,ps联机帮助页中未提及此状态:

进程状态代码 以下是 s、stat 和 state 输出说明符(标题“STAT”或“S”)将显示的不同值来描述进程的状态:

           D    uninterruptible sleep (usually IO)
           R    running or runnable (on run queue)
           S    interruptible sleep (waiting for …
Run Code Online (Sandbox Code Playgroud)

process ps

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

losetup --detach 不删除环回设备

我正在尝试分离环回设备。

推测losetup --detach可能成功(没有错误消息和返回代码 0),但设备仍然存在。

有任何想法吗?

root@Cassiopeia:~# losetup -a
/dev/loop1: [2053]:5243868 (/var/lib/snapd/snaps/core_6034.snap)
/dev/loop6: [2053]:19401380 (/tmp/imagefile)
/dev/loop4: [2053]:5249290 (/var/lib/snapd/snaps/canonical-livepatch_49.snap)
/dev/loop2: [2053]:5243293 (/var/lib/snapd/snaps/canonical-livepatch_50.snap)
/dev/loop0: [2053]:5249134 (/var/lib/snapd/snaps/core_5897.snap)
/dev/loop5: [2053]:5249130 (/var/lib/snapd/snaps/core_6130.snap)
/dev/loop3: [2053]:5244442 (/var/lib/snapd/snaps/canonical-livepatch_54.snap)
root@Cassiopeia:~# losetup --detach /dev/loop6
root@Cassiopeia:~# echo $?
0
root@Cassiopeia:~# losetup -a
/dev/loop1: [2053]:5243868 (/var/lib/snapd/snaps/core_6034.snap)
/dev/loop6: [2053]:19401380 (/tmp/imagefile)
/dev/loop4: [2053]:5249290 (/var/lib/snapd/snaps/canonical-livepatch_49.snap)
/dev/loop2: [2053]:5243293 (/var/lib/snapd/snaps/canonical-livepatch_50.snap)
/dev/loop0: [2053]:5249134 (/var/lib/snapd/snaps/core_5897.snap)
/dev/loop5: [2053]:5249130 (/var/lib/snapd/snaps/core_6130.snap)
/dev/loop3: [2053]:5244442 (/var/lib/snapd/snaps/canonical-livepatch_54.snap)
Run Code Online (Sandbox Code Playgroud)

loop-device

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

将用户添加到 sudo 组与创建 sudoers 文件

之间的实际区别是什么:

对比

sudo

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

apt 的解释取决于输出

运行apt depends命令示例时,例如

$ apt depends nginx
nginx
 |Depends: nginx-core (<< 1.14.0-0ubuntu1.2.1~)
 |Depends: nginx-full (<< 1.14.0-0ubuntu1.2.1~)
 |Depends: nginx-light (<< 1.14.0-0ubuntu1.2.1~)
  Depends: nginx-extras (<< 1.14.0-0ubuntu1.2.1~)
 |Depends: nginx-core (>= 1.14.0-0ubuntu1.2)
 |Depends: nginx-full (>= 1.14.0-0ubuntu1.2)
 |Depends: nginx-light (>= 1.14.0-0ubuntu1.2)
  Depends: nginx-extras (>= 1.14.0-0ubuntu1.2)
Run Code Online (Sandbox Code Playgroud)

|某些列出的依赖项开头的符号是什么意思?

apt

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

/etc/environment 中的环境变量不是全局可见的?

我正在尝试创建一个systemd服务;

该服务有一个脚本,应该使用一些环境变量;

所以我创建了这个:

cat /etc/systemd/system/atlantis-server.service 
[Service]
ExecStart=/usr/local/bin/atlantis-server.sh
Run Code Online (Sandbox Code Playgroud)

哪个指向这个

pkara@atlantis-server:~$ cat /usr/local/bin/atlantis-server.sh 
#!/bin/bash
source /etc/environment
atlantis server --atlantis-url="$URL" --gitlab-user="$USERNAME" --gitlab-token="$TOKEN" --gitlab-webhook-secret="$SECRET" --gitlab-hostname="$HOSTNAME" --repo-whitelist="$REPO_WHITELIST"
Run Code Online (Sandbox Code Playgroud)

我注意到(在我的systemd日志中出现一些错误之后)是我必须明确source /etc/environment

(这是声明上述变量的地方)。

为什么需要这个?

它们不是全局可见的吗?

编辑:将此添加到服务定义并没有解决问题

Environment=/etc/environment
Run Code Online (Sandbox Code Playgroud)

environment-variables systemd

5
推荐指数
2
解决办法
6831
查看次数