Интерфейс br0
— это всего лишь «внутренний» интерфейс в дополнение к портам моста. Если вы не использовали этот IF для отправки пакетов, ничего не будет отображаться, но мост по-прежнему будет пересылать пакеты между портами.
Какая статистика по самим портам (eth1 eth0 )?
(А почему вы переводите их в неразборчивый режим?)
Редактировать
Мост действует на уровне 2 OSI, точно так же, как сетевой коммутатор. :Концептуально он перенаправляет все пакеты, которые он получает на один порт, на все другие порты, в том числе на внутренний порт, который является сетевым интерфейсом моста, и из него. Но точно так же, как реальный интерфейс Ethernet, подключенный к сегменту LAN, счетчики сетевого интерфейса будут активироваться только для пакетов, адресованных внутреннему интерфейсу (или отправленных с него ).
В качестве оптимизации он сохраняет список MAC-адресов, видимых на портах, и, если он распознает MAC-адрес назначения, перенаправляет только на этот порт.
Это ничего не меняет в пакете, никаких MAC-адресов или чего-то еще, если только вы не используете eftables
для забавных вещей. Вы можете использовать tcpdump -e -i eth0
и т. д. на портах, чтобы убедиться в этом самостоятельно.
В старых HOWTO вы можете найти замечание о том, что вы должны перевести интерфейсы портов в неразборчивый режим, но в этом уже давно нет необходимости. (Просто попробуйте ).
Попробуйтеpgrep
:
pgrep -f test.php
Это выведет PID вашей команды.
Альтернатива:
ps aux | grep '[t]est\.php'
Будет выведена соответствующая строка ps aux
.
#!/bin/sh
processname='login'
if [ "$(pgrep $processname)x" != "x" ]
then
echo $processname is running
else
echo $processname is NOT running
fi
Альтернативная версия, в которой вместо возвращаемого значения используется статус выхода, а также используется более компактный синтаксис
#!/bin/sh
processname='login'
pgrep $processname > /dev/null
test $? -eq 0 && echo "$processname is running" || echo "$processname is NOT running"
Другой вариант — использовать killall
killall -0 -q test.php && echo test.php is running
Несмотря на название команды, процесс не уничтожается.