我必须找出我的arch linux系统的linux内核的压缩类型,但我找不到比理论更多的方法:现在是bzip2(bz),以前是gzip(z)。
在我的电脑上,我运行命令:
$ file /boot/vmlinuz-linux
/boot/vmlinuz-linux: Linux kernel x86 boot executable bzImage, version 5.3.11-arch1-1 (linux@archlinux) #1 SMP PREEMPT Tue, 12 Nov 2019 22:19:48 +0000, RO-rootFS, swap_dev 0x5, Normal VGA
Run Code Online (Sandbox Code Playgroud)
看理论,我看到bzImage必须被压缩gzip (z),但我无法证明:
bzImage 使用 gzip 压缩,直到 Linux 2.6.30 引入了更多算法。虽然有流行的误解,认为 bz 前缀意味着使用 bzip2 压缩(bzip2 包中经常带有以 bz 为前缀的工具,例如 bzless、bzcat 等),但事实并非如此。
有什么办法可以在我自己的机器上证明吗?或者在这种情况下,理论本身是“经验性的”?
在 Linux 机器上,我有一系列命令提供不同传感器状态的数值。
这些命令的调用类似于以下内容:
$ command1
5647
$ command2
76
$ command3
8754
Run Code Online (Sandbox Code Playgroud)
这些值实时变化,每次我想检查其中一个的状态时,我都必须重新启动命令......这对我没有任何好处,因为我需要双手来操作硬件。
我的目标是制作一个简单的 Bash 脚本来调用这些命令并保持值更新(实时异步或每 x 秒刷新一次值),如下所示:
$ ./myScript.sh
command1: x
command2: y
command3: z
command4: v
Run Code Online (Sandbox Code Playgroud)
其中x,y,z和v正在变化值。
Bash 允许这简单有效吗?还是我应该选择用另一种语言来做,比如 Python?
更新更多信息:
我目前的脚本是:
#!/bin/bash
echo "Célula calibrada: " $(npe ?AI1)
echo "Anemómetro: " $(npe ?AI2)
echo "Célula temperatura: " $(npe ?AI3)
echo "Célula temperatura: " $(npe ?AI4)
Run Code Online (Sandbox Code Playgroud)
npe作为返回数值的示例命令。我期待这样的输出:
我用命令得到的这个输出watch -n x ./myScript.sh,其中x是秒的刷新值。如果我像这样编辑我的脚本:
#!/bin/bash
while sleep …Run Code Online (Sandbox Code Playgroud) 我很难弄清楚这一点。据说,nmap可以通过使用-sA或 ACK 扫描来区分有状态防火墙和无状态防火墙,但我不知道如何从nmapACK 扫描的输出中辨别这一事实。
据我所知,nmap将 ACK 标记的数据包发送到目标,目标将根据某些标准响应或不响应。
如果是这样,那么 \xc2\xb4nmap\xc2\xb4 将报告任何响应 RST 的端口为unfiltered,并将所有其他端口报告为filtered。这看起来像这样......(使用IPTABLES具有无状态规则的防火墙)
$ sudo nmap -sA -T4 192.168.219.135\n\n\nStarting Nmap 7.12 ( https://nmap.org ) at 2016-06-28 16:35 EDT \nNmap scan report for metasploitable (192.168.219.135) \nHost is up (0.00027s latency). \nNot shown: 994 filtered ports \nPORT STATE SERVICE \n22/tcp unfiltered ssh \n25/tcp unfiltered smtp …Run Code Online (Sandbox Code Playgroud) 我是 Arch 新手,因此非常感谢有关此主题的任何帮助。我一直在尝试在 manjaro 上安装 yaourt,但这是我收到的错误消息。
[manjaro@manjaro-pc ~]$ sudo pacman -S yaourt
error: target not found: yaourt
Run Code Online (Sandbox Code Playgroud) 显然,在生产服务器上出现了一些问题,有人删除了该/var文件夹的内容。
这导致了一些错误,我一直在使用各种服务作为 Web 服务器来解决这些错误。
我遇到的问题apt是不允许我更新、删除或安装软件包。
例如我想重新安装数据库服务器mariadb-server,但它告诉我系统中没有安装该软件包(这是错误的,我亲自安装了它):
root# apt remove mariadb-server
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package 'mariadb-server' is not installed, so not removed
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
chkconfig : Depends: perl but it is not going to be installed
Recommends: insserv but it is not going to be installed
libboost-chrono1.50.0 : Depends: libgcc1 (>= 1:4.4.0) …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一系列带有大括号扩展的文件。fileA1我想创建具有所有可能组合的文件fileZ100(类似于touch file[A..Z][1..100])。
如果我运行命令,touch $(printf "file%d " {1..100})输出正常:
file1 file15 file21 file28 file34 file40 file47 file53 file6 file66 file72 file79 file85 file91 file98
file10 file16 file22 file29 file35 file41 file48 file54 file60 file67 file73 file8 file86 file92 file99
file100 file17 file23 file3 file36 file42 file49 file55 file61 file68 file74 file80 file87 file93
file11 file18 file24 file30 file37 file43 file5 file56 file62 file69 file75 file81 file88 file94
file12 file19 file25 file31 file38 file44 file50 …Run Code Online (Sandbox Code Playgroud) 我有以下命令行,它应该返回值1,以防万一,通过nc检查与相关 IP 和端口的通信:
/bin/nc -z 10.102.10.22 10003 > /dev/null && if [ $? -eq 0 ]; then echo 1; else echo 0; fi
Run Code Online (Sandbox Code Playgroud)
结果令人满意,我得到了价值1。但是当没有与端口或 IP 通信时,命令会“等待”,不会获得任何形式的价值。
在经过特定时间(例如 10 秒)后返回值0(else语句)的正确方法是什么。
该命令的结果每隔很短的时间就会被监视以绘制通信图,因此知道什么时候会很有趣0。
bash ×3
linux ×2
shell ×2
apt ×1
arch-linux ×1
compression ×1
iptables ×1
linux-kernel ×1
manjaro ×1
nc ×1
nmap ×1
pacman ×1
printf ×1
raspbian ×1
scripting ×1
shell-script ×1
touch ×1
yaourt ×1