我刚刚编写了以下 bash 脚本来检查 Linux 机器列表上的 ping 访问:
for M in $list
do
ping -q -c 1 "$M" >/dev/null
if [[ $? -eq 0 ]]
then
echo "($C) $MACHINE CONNECTION OK"
else
echo "($C) $MACHINE CONNECTION FAIL"
fi
let C=$C+1
done
Run Code Online (Sandbox Code Playgroud)
这打印:
(1) linux643 CONNECTION OK
(2) linux72 CONNECTION OK
(3) linux862 CONNECTION OK
(4) linux12 CONNECTION OK
(5) linux88 CONNECTION OK
(6) Unix_machinetru64 CONNECTION OK
Run Code Online (Sandbox Code Playgroud)
如何printf在我的 bash 脚本中使用(或任何其他命令)来打印以下格式?
(1) linux643 ............ CONNECTION OK
(2) linux72 ............. CONNECTION OK …Run Code Online (Sandbox Code Playgroud) 如何在文件中找到两个连接的重复行
例如在这个文件中,我们只有两个串联的重复行
OQ-63/ECC/Global/MES/CZ/adWerum-CZ-Adapter
OQ-63/ECC/Global/MES/54/ECC-MRP-S05
OQ-63/ECC/Global/MES/CZ/adWerum-CZ-Adapter
OQ-63/ECC/Global/MES/54/ECC-MRP-S05.ear
OQ-63/ECC/Global/MES/CZ/adWerum-CZ-Adapter <--
OQ-63/ECC/Global/MES/CZ/adWerum-CZ-Adapter <--
OQ-63/ECC/Global/MES/54/ECC-MRP-S05.xml
Run Code Online (Sandbox Code Playgroud) 如何验证远程计算机是否是 Veritas 集群的一部分?
我刚刚创建了以下 ssh 命令来验证远程机器是 VRTS 集群还是 Linux 可用性 Red Hat 集群
LinuxTSR=198.23.12.5
ssh LinuxTSR "ls /usr/sbin/clustat /opt/VRTS 2>/dev/null" | wc -l
Run Code Online (Sandbox Code Playgroud)
如果我得到的数字不是 0,则它是 VRTS 或 Red Hat 集群。但是这种方法并不是那么优雅。请帮我找到更优雅的方法来验证远程机器是否在集群中。
when I run the atop -r /var/log/atop/...
I see from the atop screen this
PAG | scan 641376 | steal 635209 | stall
Run Code Online (Sandbox Code Playgroud)
the PAG is colored with red
can someone explain what PAG explain from the atop , and what this problem means ?
在/var/log/httpd文件夹下,创建的文件容量巨大!!!
我可以使用什么解决方案来自动压缩旧文件(可以logrotate处理这个问题)?
如果是,如何配置Linux机器以压缩该文件夹下的旧文件?
第二个问题:这些文件的含义是什么?
13:16:50 root@BillGates-Machine:/var/log/httpd # ls -ltr
-rw-r--r-- 1 root root 7612 Jan 30 05:51 ssl_error_log-20160131
-rw-r--r-- 1 root root 16170199 Jan 31 03:29 ssl_request_log-20160131
-rw-r--r-- 1 root root 14677353 Jan 31 03:29 ssl_access_log-20160131
-rw-r--r-- 1 root root 425621646 Jan 31 03:38 access_log-20160131
-rw-r--r-- 1 root root 77267 Jan 31 03:38 error_log-20160131
-rw-r--r-- 1 root root 11233 Feb 7 03:43 ssl_error_log-20160207
-rw-r--r-- 1 root root 16398688 Feb 7 03:44 ssl_request_log-20160207
-rw-r--r-- 1 root root …Run Code Online (Sandbox Code Playgroud) 如何删除创建的文件Aug 7的名称DBG_A_sql*
下/tmp
如以下示例:
-rw-r--r-- 1 root root 51091 Aug 7 11:22 DBG_A_sql.2135
-rw-r--r-- 1 root root 15283 Aug 7 11:22 DBG_A_sql.2373
-rw-r--r-- 1 root root 51091 Aug 7 11:22 DBG_A_sql.2278
-rw-r--r-- 1 root root 9103 Aug 7 11:22 DBG_A_sql.2485
-rw-r--r-- 1 root root 9116 Aug 7 11:22 DBG_A_sql.2573
-rw-r--r-- 1 root root 9140 Aug 7 11:22 DBG_A_sql.2679
-rw-r--r-- 1 root root 15695 Aug 7 11:22 DBG_A_sql.2897
Run Code Online (Sandbox Code Playgroud) 我们有一台 Linux 机器(Redhat 6)
当我们打印所有参数时,/etc/sysctl.conf我们只看到大约 20 个,但是当我们执行时,sysctl -a我们看到 200 多个。
那么从哪里sysctl -a打印所有这些参数?
或者例如当我们做
sysctl -w variable=value
Run Code Online (Sandbox Code Playgroud)
如何知道变量应该保存在哪里?
如何知道每个参数是动态的还是静态的?
在/sys/class/scsi_device文件夹下我有以下内容:
root@linux01:/sys/class/scsi_device # ls
1:0:0:0 2:0:0:0 2:0:1:0 3:0:0:0
Run Code Online (Sandbox Code Playgroud)
我如何知道这些设备中的每一个如何与磁盘相关?
例如,如何确定设备2:0:1:0是否为磁盘/dev/sdb?
root@linux01:/sys/class/scsi_device # sfdisk -s
/dev/sdb: 15728640
/dev/sdc: 524288000
/dev/sda: 153600
[...]
# more /etc/redhat-release ( Linux VM machine )
Red Hat Enterprise Linux Server release 6.5 (Santiago)
Run Code Online (Sandbox Code Playgroud) 我有 linux redhat 机器版本 6.5
我重新启动机器并以单用户模式工作,
然后我使用默认的 gw 地址在 eth0 上设置网络
/etc/sysconfig/network-script/ifcfg-eth0
Run Code Online (Sandbox Code Playgroud)
但由于某种原因,服务网络重启后,netstat -rn 中没有出现 dg 地址
我的问题 - 我们可以在单用户模式下设置默认 gw 地址并启动网络吗?
我从我的 bash 脚本运行以下行,以便在远程机器上运行脚本 /usr/run.pl
xargs -P "$numprocs" -I '{}' -n 1 -- perl -e 'alarm shift; exec @ARGV' -- "$timeout" ssh -nxaq -o ConnectTimeout=5 -o StrictHostKeyChecking=no '{}' /usr/run.sh < <(echo -e "$node")
Run Code Online (Sandbox Code Playgroud)
但我在控制台上得到以下标准输出
Connection to 143.6.22.4 closed by remote host.
xargs: perl: exited with status 255; aborting
Run Code Online (Sandbox Code Playgroud)
我需要在语法中放置1>/dev/null以避免出现此消息?