vnStat - это консольный сетевой монитор трафика для Linux и BSD, который хранит журнал сетевого трафика для выбранного интерфейса (ов). Он использует статистику сетевого интерфейса, предоставленную ядром в качестве источника информации. Это означает, что vnStat фактически не будет обнюхивать какой-либо трафик, а также обеспечивает легкое использование системных ресурсов.
В этом уроке мы рассмотрим:
Возможности Установка Конфигурация Запуск использования службы Systemd (из командной строки) Пример ConkynvStat находится в официальных репозиториях, поэтому нет необходимости ссылаться на новый ppa. Для установки создайте экземпляр терминала с помощью Ctrl + Alt + T и введите в приглашении:
sudo apt-get install vnstat
После установки держите терминал открытым для следующих разделов. Нет необходимости перезагружаться.
Выберите предпочтительный сетевой интерфейс и отредактируйте переменную интерфейса в /etc/vnstat.conf соответственно. В список всех интерфейсов, доступных для vnstat, используйте:
vnstat --iflist.
. Чтобы начать мониторинг определенного интерфейса, вы должны сначала инициализировать базу данных. Каждому интерфейсу нужна собственная база данных. Команда для инициализации для интерфейса eth0:
sudo vnstat -u -i eth0
После введения интерфейса (ов) и проверки файла конфигурации. Вы можете запустить процесс мониторинга с помощью systemd:
sudo systemctl start vnstat.service
Чтобы сделать эту службу постоянной:
sudo systemctl enable vnstat.service
С этого момента vnstat будет собираться использование сети в фоном, использующим такой небольшой процент процессора, он не отображается на списке процессов (на системном мониторе conky's (системный монитор)).
Запросить сетевой трафик:
vnstat -q
Просмотр использования сетевого трафика:
vnstat -l
Чтобы найти дополнительные параметры, используйте:
vnstat --help
Чтобы просмотреть месячные итоговые значения, используйте:
rick@dell:~$ vnstat -m
eth0 / monthly
month rx | tx | total | avg. rate
------------------------+-------------+-------------+---------------
Nov '16 76.31 MiB | 2.03 MiB | 78.35 MiB | 10.45 kbit/s
------------------------+-------------+-------------+---------------
estimated 3.13 GiB | 84 MiB | 3.21 GiB |
Conky - это популярный легкий системный монитор, используемый во многих дистрибутивах Linux. Вы можете vnStat получить итоговые значения полосы пропускания на ваш conky-дисплей следующим образом:
Обратите внимание, что при съемке Yesterday было воскресенье, что объясняет, почему итоговое значение Weekly меньше.
Для достижения этого используется код conky:
${color orange}${voffset 2}${hr 1}
${color1}Network using vnStat "-i", "-w" and "-m"
${color}${goto 5}Today ${goto 100}Yesterday ${goto 225}Week ${goto 325}Month ${color green}
${execi 300 vnstat -i eth0 | grep "today" | awk '{print $8" "substr ($9, 1, 1)}'} ${goto 110}${execi 300 vnstat -i eth0 | grep "yesterday" | awk '{print $8" "substr ($9, 1, 1)}'} ${goto 220}${execi 300 vnstat -i eth0 -w | grep "current week" | awk '{print $9" "substr ($10, 1, 1)}'} ${goto 315}${execi 300 vnstat -i eth0 -m | grep "`date +"%b '%y"`" | awk '{print $9" "substr ($10, 1, 1)}'}
${color orange}${voffset 2}${hr 1}
Чтобы сэкономить место в моем узком окне, вместо «МиБ» вместо «МиБ» вместо «МиБ» вместо «МиБ» вместо «МиБ» использовалась «Г», у вас больше изменений в режиме реального времени substr ($10, 1, 1) на $10 и для $9.
Возможно, вам придется изменить eth0 на wlan0 или eth1 и т. д. в зависимости от вашего имя сети, указанное ifconfig.
Чтобы подавить первую строку, используйте '1d' (т.е. строка 1, delete):
touch essay1.txt
for file in essay_*; do
sed '1d' $file >> essay1.txt
done
вывод будет
~$ cat essay1.txt
line 2 from essay 1
line 3 from essay 1
line 2 from essay 2
line 3 from essay 2
...
для всех файлов
Вместо использования sed вы также можете использовать tail для выполнения этого задания:
tail -n +2 $file >> essay1.txt
Где +2 означает со второй строки вперед (-n 2 будет последними двумя строками).
Чтобы подавить первую строку, используйте '1d' (т.е. строка 1, delete):
touch essay1.txt
for file in essay_*; do
sed '1d' $file >> essay1.txt
done
вывод будет
~$ cat essay1.txt
line 2 from essay 1
line 3 from essay 1
line 2 from essay 2
line 3 from essay 2
...
для всех файлов
Вместо использования sed вы также можете использовать tail для выполнения этого задания:
tail -n +2 $file >> essay1.txt
Где +2 означает со второй строки вперед (-n 2 будет последними двумя строками).
Чтобы подавить первую строку, используйте '1d' (т.е. строка 1, delete):
touch essay1.txt
for file in essay_*; do
sed '1d' $file >> essay1.txt
done
вывод будет
~$ cat essay1.txt
line 2 from essay 1
line 3 from essay 1
line 2 from essay 2
line 3 from essay 2
...
для всех файлов
Вместо использования sed вы также можете использовать tail для выполнения этого задания:
tail -n +2 $file >> essay1.txt
Где +2 означает со второй строки вперед (-n 2 будет последними двумя строками).
Чтобы подавить первую строку, используйте '1d' (т.е. строка 1, delete):
touch essay1.txt
for file in essay_*; do
sed '1d' $file >> essay1.txt
done
вывод будет
~$ cat essay1.txt
line 2 from essay 1
line 3 from essay 1
line 2 from essay 2
line 3 from essay 2
...
для всех файлов
Вместо использования sed вы также можете использовать tail для выполнения этого задания:
tail -n +2 $file >> essay1.txt
Где +2 означает со второй строки вперед (-n 2 будет последними двумя строками).
Чтобы подавить первую строку, используйте '1d' (т.е. строка 1, delete):
touch essay1.txt
for file in essay_*; do
sed '1d' $file >> essay1.txt
done
вывод будет
~$ cat essay1.txt
line 2 from essay 1
line 3 from essay 1
line 2 from essay 2
line 3 from essay 2
...
для всех файлов
Вместо использования sed вы также можете использовать tail для выполнения этого задания:
tail -n +2 $file >> essay1.txt
Где +2 означает со второй строки вперед (-n 2 будет последними двумя строками).
Чтобы подавить первую строку, используйте '1d' (т.е. строка 1, delete):
touch essay1.txt
for file in essay_*; do
sed '1d' $file >> essay1.txt
done
вывод будет
~$ cat essay1.txt
line 2 from essay 1
line 3 from essay 1
line 2 from essay 2
line 3 from essay 2
...
для всех файлов
Вместо использования sed вы также можете использовать tail для выполнения этого задания:
tail -n +2 $file >> essay1.txt
Где +2 означает со второй строки вперед (-n 2 будет последними двумя строками).
Чтобы подавить первую строку, используйте '1d'
(т. е. строка 1, удалить):
touch essay1.txt для файла в essay_ *; do sed '1d' $ file & gt; & gt; & gt; essay1.txt done
вывод будет
~ $ cat essay1.txt строка 2 из эссе 1 строка 3 из эссе 1 строка 2 из эссе 2 строка 3 из эссе 2 ...
для всех файлов с именем essay _ *
в текущем рабочем каталоге.
Вместо sed
вы также можете использовать tail
для выполнения этого задания:
tail -n +2 $ file & gt; gt; essay1.txt
Где +2
означает со второй строки вперед ( -n 2
будет последними двумя строками). [ ! d13]
Чтобы подавить первую строку, используйте '1d'
(т. е. строка 1, удалить):
touch essay1.txt для файла в essay_ *; do sed '1d' $ file & gt; & gt; & gt; essay1.txt done
вывод будет
~ $ cat essay1.txt строка 2 из эссе 1 строка 3 из эссе 1 строка 2 из эссе 2 строка 3 из эссе 2 ...
для всех файлов с именем essay _ *
в текущем рабочем каталоге.
Вместо sed
вы также можете использовать tail
для выполнения этого задания:
tail -n +2 $ file & gt; gt; essay1.txt
Где +2
означает со второй строки вперед ( -n 2
будет последними двумя строками). [ ! d13]