我正在salt
用来配置我的服务器,我只是尝试升级到 php 7,尽管一切都安装正确,但任何时候我运行php -v
或运行任何 php 任何东西它都会在任何输出的头部抛出:Cannot load Zend OPcache - it was already loaded
. 如果我看到这个就卸载了Failed loading /usr/lib64/php/modules/opcache.so: /usr/lib64/php/modules/opcache.so: cannot open shared object file: No such file or directory
这是安装php-v
和未php-opcache
安装的完整输出。
Cannot load Zend OPcache - it was already loaded
PHP 7.0.1 (cli) (built: Dec 16 2015 15:31:55) ( NTS )
Copyright (c) 1997-2015 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2015 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright …
Run Code Online (Sandbox Code Playgroud) 如果服务正在运行,我只想返回 true 或 false。这是我所处的位置,不是第一次尝试或最后一次,而是当前的写作:
service iptables status | grep -qi "not running"
Run Code Online (Sandbox Code Playgroud)
service iptables status
当它停止时的 sdtout是iptables: Firewall is not running
当我运行我想出的东西在新行上什么都没有,我想这并不意外,因为 0 为真,非 0 为假。所以,我需要测试以确保它有效,但我不确定该怎么做。这是尝试:
service iptables status | grep -qi "not running" || echo "stopped"
Run Code Online (Sandbox Code Playgroud)
所以当服务停止时,我希望看到,stopped
但除了一条新线路我什么也没得到。
我有一套规则,可以在将诸如 fail2ban 和其他东西添加到组合中之前为我提供最大的保护。问题是,虽然一切都在测试中检查出来,当我service iptables restart
关闭时它会恰到好处,但是当它应用规则时它会挂起。这是套装
# Allow all traffic.
#---------------------------------------------------------
*filter
:INPUT ACCEPT [81:5076]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [44:3868]
#---------------------------------------------------------
# protection based on http://thelowedown.wordpress.com/2008/07/03/iptables-how-to-use-the-limits-module/
# and https://gist.github.com/virtualstaticvoid/1024546
# and http://www.cyberciti.biz/tips/howto-limit-linux-syn-attacks.html
#---------------------------------------------------------
#---------------------------------------------------------
# General rules
#---------------------------------------------------------
# it is gerenally view as best practice to drop all and add
# just what is needed. Drop and reject to prevent abuse
# of the system and sour the milk
#---------------------------------------------------------
-P INPUT DROP
-P FORWARD DROP
-P …
Run Code Online (Sandbox Code Playgroud) 我有一个难以清除的错误。所有应该发生的是测试两个条件,然后做一些事情。目标是它是空的还是匹配的。
if [ -z "$_BRANCH" ] || [[ "$_BRANCH" = "master" ]]; then
_FOE_BRANCH="master"
[ -s "$module_dir/branch.gitploy" ] && _FOE_BRANCH=$(cat "$module_dir/branch.gitploy")
[ "$_FOE_BRANCH" -ne "master"] && _BRANCH=$_FOE_BRANCH
fi
Run Code Online (Sandbox Code Playgroud)
出于某种原因,我不断收到此错误
[: missing `]'
Run Code Online (Sandbox Code Playgroud)
对于这条线
if [ -z "$_BRANCH" ] || [[ "$_BRANCH" = "master" ]]; then
Run Code Online (Sandbox Code Playgroud)
但是当我阅读以尝试清除它时,我一直在循环。基于/sf/answers/1129722961/,我预计一切都会好起来。
我想解决这个问题,因为我确实看过类似的帖子,并且没有在没有很多更正失败的情况下发布它,所以就我所见,这与 Bash if 语句 [: missing `]'不是重复的if 条件中的错误或括号:为什么我会收到没有空格的语法错误? ,据我所知,没有答案中的空白问题。我相信我在词典上有一个匹配,我认为这是一个不同的问题,需要一个解决方案。