vnstat không cập nhật


18

Tôi đã cài đặt vnstat trên máy chủ Ubuntu 14.04 của mình để theo dõi việc sử dụng internet của mình (tôi có chuyển khoản hạn chế hàng tháng). Cơ sở dữ liệu không bao giờ cập nhật, tuy nhiên. Tôi đã thử gỡ cài đặt / cài đặt lại, nhưng không được. Tôi cần làm gì để cập nhật vnstat và chính xác?

Câu trả lời:


14

Chạy

sudo chown -R vnstat:vnstat /var/lib/vnstat

Điều này đã khắc phục sự cố của tôi trên Ubuntu 14.04.

Hãy chắc chắn rằng bạn có các tệp sau trong thư mục đó và có quyền sở hữu thích hợp.

boby@fwhlin:/var/lib/vnstat$ ls -la
total 16
drwxr-xrwx  2 vnstat vnstat 4096 May 16 01:50 .
drwxr-xr-x 78 root   root   4096 Jul 22 15:14 ..
-rw-r--rwx  1 vnstat vnstat 2792 Jul 26 00:26 eth0
-rw-rw-r--  1 vnstat vnstat 2792 Jul 26 00:26 .eth0
boby@fwhlin:/var/lib/vnstat$ 

.eth0 là tệp tạm thời, đôi khi có thể biến mất.


Tôi có cùng một vấn đề, nhưng trên Manjaro Archlinux. sudo chown -R vnstat:vnstat /var/lib/vnstatđầu ra chown: invalid user: ‘vnstat:vnstat’. I have only vnstat.db` trong /var/lib/vnstat: -rw-r--r-- 1 root root 68K Oct 23 13:07 vnstat.db. Tôi cho rằng tôi cần thêm wlp2s0b1thư mục này, mặc dù tôi không biết những gì nên có trong tập tin. Tôi đã nộp một vấn đề riêng cho vấn đề này tại github.com/vergoh/vnstat/issues/143 . Các hướng dẫn trên có thể không còn được áp dụng, vì điều này đã được trả lời 5 năm trước.
James Ray

9

Sau khi cài đặt vnstatcơ sở dữ liệu cần phải được tạo (một lần). Để tạo cơ sở dữ liệu, bạn có thể sử dụng công tắc cập nhật, tạo cơ sở dữ liệu mới trong cơ sở không có cơ sở dữ liệu. Tạo DB: sudo vnstat -i eth0 -utrong đó eth0 là tên của giao diện mạng. Nếu bạn không chắc chắn cập nhật cho tất cả các giao diện bởi sudo vnstat -u. Sau một thời gian (1 phút), bạn có thể xem chi tiết vnstat -i eth0hoặc đơn giản vnstat.

Cập nhật

Có vẻ như vnstatkhông chạy! . Bắt đầu trình nền bằng cách chạy sudo /etc/init.d/vnstat startvà kiểm tra kết quả sau 5 phút.

Thí dụ

sudo vnstat -u -i eth0

Lỗi: Không thể đọc cơ sở dữ liệu hoàng / var / lib / vnstat / eth0. Thông tin: -> Một cơ sở dữ liệu mới đã được tạo.

sudo /etc/init.d/vnstat start
  • Bắt đầu vnStat daemon vnstatd [OK]

Khi cơ sở dữ liệu đã được khởi tạo, nó sẵn sàng giám sát việc sử dụng băng thông. Bạn có thể xem báo cáo bằng cách gọi lệnh vnstat.


@Vaindil, bạn đã thử chưa?
totti

1
Có, tôi đã làm điều này sau khi tôi cài đặt vnstat. Làm vnstatkhông hiển thị đầu ra, nhưng nó cho thấy rằng cơ sở dữ liệu đã không được cập nhật trong vài tuần.
vaindil

vnstatchạy không? Sản lượng củaps aux | grep vnstat
totti

steven 6475 0.0 0.1 11744 916 pts/0 S+ 13:35 0:00 grep --color=auto vnstat( vnstathiện lên màu đỏ trong thiết bị đầu cuối, nếu nó quan trọng hoặc giúp đỡ)
vaindil

Khi cố gắng chạy sudo /etc/init.d/vnstat start, tôi nhận được những điều sau: Starting vnStat daemon: vnstatd./ pidfile: No such file or directoryvà sau đó nó ngồi như thể nó đang làm gì đó, nhưng nó ngồi vô thời hạn.
vaindil

2

Bạn có chắc chắn vnstatdđang chạy, tức là daemon (quá trình nền) thực hiện việc thu thập dữ liệu? Nếu không, hãy kiểm tra với

ps aux | grep vnstatd

Bạn sẽ thấy nó ở đó.

Đối với tôi, sau khi nâng cấp lên 14.04 liên vnstatdtục gặp sự cố khi khởi động.

Giải pháp của tôi là xóa thư mục mà nó sử dụng để lưu trữ dữ liệu của nó ( /var/lib/vnstat) và tạo một thư mục trống mới thay thế. Bạn có thể cần chạy vnstatdthủ công một lần để tạo cơ sở dữ liệu sau đó:

vnstatd -n -s

Ngoài ra, tôi cũng cần phải áp dụng

sudo chown -R vnstat:vnstat /var/lib/vnstat

theo đề xuất của HostOnNet.


2

Vấn đề tương tự ở đây.

Sau khi kiểm tra các chi tiết, hóa ra cơ sở dữ liệu cho các thiết bị khác nhau ( eth0, ppp0, wlan0, v.v.) đã được tạo /var/lib/vnstatnhưng các tệp này thuộc sở hữu của USER. Sau sudo chown -R vnstat:vnstat /var/lib/vnstat đó có vẻ ổn. Tôi cũng phải kiểm tra giao diện mặc định trong /etc/vnstat.confđó - đó là giao diện sai đối với tôi, vì vậy tôi mới thay đổi nó.


Tôi tha thứ để thêm rằng tôi cho phép chạy "vnstat -u -i wlan0" (và tương tự cho các thiết bị khác) dưới dạng ROOT. Điều này cũng có thể gây ra vấn đề với sự cho phép. Và một điều nữa: Bạn phải kiểm tra xem bạn đang sử dụng systemd, init hay upstart và khởi động daemon theo điều này.
bradley

1

Xin lỗi, tôi phải đưa ra câu trả lời của riêng mình thay vì chỉnh sửa Boby kể từ khi chỉnh sửa của tôi bị từ chối: |

Theo mặc định, khi bạn cài đặt vnstat, nó sẽ tự động khởi động vnstatd daemon, thu thập số liệu cứ sau 30 giây và "cập nhật chúng" (cho tất cả các thiết bị cục bộ) cứ sau 5 phút. Vì vậy, về bản chất, sau khi cài đặt gói vnstat, bạn nên bắt đầu xem số liệu 5 phút sau.

Tuy nhiên, đôi khi có vẻ như là một vấn đề với gói cài đặt. Nó đôi khi dường như tạo / var / lib / vnstat thư mục theo cách như vậy mà nó không phải là ghi bởi người dùng vnstat nên vnstat chương trình chỉ hoạt động khi chạy bằng root (daemon chạy như người dùng vnstat).

Bạn có thể kiểm tra xem đây có phải là vấn đề của bạn không bằng cách chạy này:

ll /var/lib | grep vnstat
drwxr-xr-x 2 root        root        4096 Oct 25  2014 vnstat

Nếu nó thuộc sở hữu của root (như trong ví dụ này), thì đó có thể là vấn đề của bạn. Bạn cũng có thể tìm nguyên nhân trong tệp / var / log / syslog của mình, nó có thể sẽ có các dòng như thế này:

Jul 27 22:06:19 xxx vnstatd[13276]: Error: Unable to open database "/var/lib/vnstat/eth0" for writing: Permission denied

Chạy

 sudo chown -R vnstat:vnstat /var/lib/vnstat

Điều này đã khắc phục sự cố của tôi trên Ubuntu 15.10.

Đảm bảo rằng bạn có các tệp sau trong thư mục đó và có quyền sở hữu phù hợp, sẽ giống như thế này khi bạn hoàn thành:

/var/lib/vnstat$ ls -la
total 16
drwxr-xrwx  2 vnstat vnstat 4096 May 16 01:50 .
drwxr-xr-x 78 root   root   4096 Jul 22 15:14 ..
-rw-r--rwx  1 vnstat vnstat 2792 Jul 26 00:26 eth0
-rw-rw-r--  1 vnstat vnstat 2792 Jul 26 00:26 .eth0

Bạn có thể cần phải khởi động lại vnstat daemon của mình thông qua sudo /etc/init.d/vnstat restartnếu nó chết vì nỗ lực khởi động thất bại ban đầu của nó. Bạn nên bắt đầu nhận dữ liệu cho tất cả các thiết bị trong 5 phút sau khi khắc phục.


0

Hãy thử xuất một số từ trợ giúp này:

$ vnstat --help
 vnStat 1.11 by Teemu Toivola 

         -q,  --query          query database
         -h,  --hours          show hours
         -d,  --days           show days
         -m,  --months         show months
         -w,  --weeks          show weeks
         -t,  --top10          show top10
         -s,  --short          use short output
         -u,  --update         update database
         -i,  --iface          select interface (default: eth0)
         -?,  --help           short help
         -v,  --version        show version
         -tr, --traffic        calculate traffic
         -ru, --rateunit       swap configured rate unit
         -l,  --live           show transfer rate in real time

See also "--longhelp" for complete options list and "man vnstat".

ĐỌC THÊM

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.