mirror of
https://github.com/Ysurac/openmptcprouter-feeds.git
synced 2025-03-09 15:40:03 +00:00
Change init and add a custom default conf for vnstat
This commit is contained in:
parent
1cb61463e7
commit
b5567ffd08
3 changed files with 187 additions and 34 deletions
|
@ -88,7 +88,7 @@ define Package/vnstat/install
|
||||||
$(INSTALL_DIR) $(1)/usr/sbin
|
$(INSTALL_DIR) $(1)/usr/sbin
|
||||||
$(CP) $(PKG_INSTALL_DIR)/usr/sbin/vnstatd $(1)/usr/sbin/
|
$(CP) $(PKG_INSTALL_DIR)/usr/sbin/vnstatd $(1)/usr/sbin/
|
||||||
$(INSTALL_DIR) $(1)/etc
|
$(INSTALL_DIR) $(1)/etc
|
||||||
$(INSTALL_CONF) $(PKG_BUILD_DIR)/cfg/vnstat.conf $(1)/etc/
|
$(INSTALL_CONF) ./files/vnstat.conf $(1)/etc/
|
||||||
$(INSTALL_DIR) $(1)/etc/config
|
$(INSTALL_DIR) $(1)/etc/config
|
||||||
$(INSTALL_CONF) ./files/vnstat.config $(1)/etc/config/vnstat
|
$(INSTALL_CONF) ./files/vnstat.config $(1)/etc/config/vnstat
|
||||||
$(INSTALL_DIR) $(1)/etc/init.d
|
$(INSTALL_DIR) $(1)/etc/init.d
|
||||||
|
|
186
vnstat/files/vnstat.conf
Normal file
186
vnstat/files/vnstat.conf
Normal file
|
@ -0,0 +1,186 @@
|
||||||
|
# vnStat 2.4 config file
|
||||||
|
##
|
||||||
|
|
||||||
|
# default interface (leave empty for automatic selection)
|
||||||
|
Interface ""
|
||||||
|
|
||||||
|
# location of the database directory
|
||||||
|
DatabaseDir "/var/lib/vnstat"
|
||||||
|
|
||||||
|
# locale (LC_ALL) ("-" = use system locale)
|
||||||
|
Locale "-"
|
||||||
|
|
||||||
|
# date output formats for -d, -m, -t and -w
|
||||||
|
DayFormat "%Y-%m-%d"
|
||||||
|
MonthFormat "%Y-%m"
|
||||||
|
TopFormat "%Y-%m-%d"
|
||||||
|
|
||||||
|
# characters used for visuals
|
||||||
|
RXCharacter "%"
|
||||||
|
TXCharacter ":"
|
||||||
|
RXHourCharacter "r"
|
||||||
|
TXHourCharacter "t"
|
||||||
|
|
||||||
|
# how units are prefixed when traffic is shown
|
||||||
|
# 0 = IEC standard prefixes (KiB/MiB/GiB...)
|
||||||
|
# 1 = old style binary prefixes (KB/MB/GB...)
|
||||||
|
# 2 = SI decimal prefixes (kB/MB/GB...)
|
||||||
|
UnitMode 0
|
||||||
|
|
||||||
|
# used rate unit (0 = bytes, 1 = bits)
|
||||||
|
RateUnit 1
|
||||||
|
|
||||||
|
# how units are prefixed when traffic rate is shown in bits
|
||||||
|
# 0 = IEC binary prefixes (Kibit/s...)
|
||||||
|
# 1 = SI decimal prefixes (kbit/s...)
|
||||||
|
RateUnitMode 1
|
||||||
|
|
||||||
|
# output style
|
||||||
|
# 0 = minimal & narrow, 1 = bar column visible
|
||||||
|
# 2 = same as 1 except rate in summary
|
||||||
|
# 3 = rate column visible
|
||||||
|
OutputStyle 3
|
||||||
|
|
||||||
|
# number of decimals to use in outputs
|
||||||
|
DefaultDecimals 2
|
||||||
|
HourlyDecimals 1
|
||||||
|
|
||||||
|
# spacer for separating hourly sections (0 = none, 1 = '|', 2 = '][', 3 = '[ ]')
|
||||||
|
HourlySectionStyle 2
|
||||||
|
|
||||||
|
# how many seconds should sampling for -tr take by default
|
||||||
|
Sampletime 5
|
||||||
|
|
||||||
|
# default query mode
|
||||||
|
# 0 = normal, 1 = days, 2 = months, 3 = top, 5 = short
|
||||||
|
# 7 = hours, 8 = xml, 9 = one line, 10 = json
|
||||||
|
QueryMode 0
|
||||||
|
|
||||||
|
# default list output entry count (0 = all)
|
||||||
|
List5Mins 24
|
||||||
|
ListHours 24
|
||||||
|
ListDays 30
|
||||||
|
ListMonths 12
|
||||||
|
ListYears 0
|
||||||
|
ListTop 10
|
||||||
|
|
||||||
|
|
||||||
|
# vnstatd
|
||||||
|
##
|
||||||
|
|
||||||
|
# switch to given user when started as root (leave empty to disable)
|
||||||
|
DaemonUser ""
|
||||||
|
|
||||||
|
# switch to given group when started as root (leave empty to disable)
|
||||||
|
DaemonGroup ""
|
||||||
|
|
||||||
|
# try to detect interface maximum bandwidth, 0 = disable feature
|
||||||
|
# MaxBandwidth will be used as fallback value when enabled
|
||||||
|
BandwidthDetection 1
|
||||||
|
|
||||||
|
# maximum bandwidth (Mbit) for all interfaces, 0 = disable feature
|
||||||
|
# (unless interface specific limit is given)
|
||||||
|
MaxBandwidth 1000
|
||||||
|
|
||||||
|
# interface specific limits
|
||||||
|
# example 8Mbit limit for 'ethnone':
|
||||||
|
MaxBWethnone 8
|
||||||
|
|
||||||
|
# data retention durations (-1 = unlimited, 0 = feature disabled)
|
||||||
|
5MinuteHours 48
|
||||||
|
HourlyDays 4
|
||||||
|
DailyDays 62
|
||||||
|
MonthlyMonths 25
|
||||||
|
YearlyYears -1
|
||||||
|
TopDayEntries 20
|
||||||
|
|
||||||
|
# how often (in seconds) interface data is updated
|
||||||
|
UpdateInterval 20
|
||||||
|
|
||||||
|
# how often (in seconds) interface status changes are checked
|
||||||
|
PollInterval 5
|
||||||
|
|
||||||
|
# how often (in minutes) data is saved to database
|
||||||
|
SaveInterval 5
|
||||||
|
|
||||||
|
# how often (in minutes) data is saved when all interface are offline
|
||||||
|
OfflineSaveInterval 30
|
||||||
|
|
||||||
|
# on which day should months change
|
||||||
|
MonthRotate 1
|
||||||
|
MonthRotateAffectsYears 0
|
||||||
|
|
||||||
|
# filesystem disk space check (1 = enabled, 0 = disabled)
|
||||||
|
CheckDiskSpace 1
|
||||||
|
|
||||||
|
# how much the boot time can variate between updates (seconds)
|
||||||
|
BootVariation 15
|
||||||
|
|
||||||
|
# create database entries even when there is no traffic (1 = enabled, 0 = disabled)
|
||||||
|
TrafficlessEntries 1
|
||||||
|
|
||||||
|
# how many minutes to wait during daemon startup for system clock to
|
||||||
|
# sync time if most recent database update appears to be in the future
|
||||||
|
TimeSyncWait 5
|
||||||
|
|
||||||
|
# how often (in minutes) bandwidth detection is done when
|
||||||
|
# BandwidthDetection is enabled (0 = disabled)
|
||||||
|
BandwidthDetectionInterval 5
|
||||||
|
|
||||||
|
# force data save when interface status changes (1 = enabled, 0 = disabled)
|
||||||
|
SaveOnStatusChange 1
|
||||||
|
|
||||||
|
# enable / disable logging (0 = disabled, 1 = logfile, 2 = syslog)
|
||||||
|
UseLogging 2
|
||||||
|
|
||||||
|
# create dirs if needed (1 = enabled, 0 = disabled)
|
||||||
|
CreateDirs 1
|
||||||
|
|
||||||
|
# update ownership of files if needed (1 = enabled, 0 = disabled)
|
||||||
|
UpdateFileOwner 1
|
||||||
|
|
||||||
|
# file used for logging if UseLogging is set to 1
|
||||||
|
LogFile "/var/log/vnstat/vnstat.log"
|
||||||
|
|
||||||
|
# file used as daemon pid / lock file
|
||||||
|
PidFile "/var/run/vnstat/vnstat.pid"
|
||||||
|
|
||||||
|
# 1 = 64-bit, 0 = 32-bit, -1 = old style logic, -2 = automatic detection
|
||||||
|
64bitInterfaceCounters -2
|
||||||
|
|
||||||
|
# use SQLite Write-Ahead Logging mode (1 = enabled, 0 = disabled)
|
||||||
|
DatabaseWriteAheadLogging 0
|
||||||
|
|
||||||
|
# change the setting of the SQLite "synchronous" flag
|
||||||
|
# (-1 = auto, 0 = off, 1, = normal, 2 = full, 3 = extra)
|
||||||
|
DatabaseSynchronous -1
|
||||||
|
|
||||||
|
|
||||||
|
# vnstati
|
||||||
|
##
|
||||||
|
|
||||||
|
# title timestamp format
|
||||||
|
HeaderFormat "%Y-%m-%d %H:%M"
|
||||||
|
|
||||||
|
# show hours with rate (1 = enabled, 0 = disabled)
|
||||||
|
HourlyRate 1
|
||||||
|
|
||||||
|
# show rate in summary (1 = enabled, 0 = disabled)
|
||||||
|
SummaryRate 1
|
||||||
|
|
||||||
|
# transparent background (1 = enabled, 0 = disabled)
|
||||||
|
TransparentBg 0
|
||||||
|
|
||||||
|
# image colors
|
||||||
|
CBackground "FFFFFF"
|
||||||
|
CEdge "AEAEAE"
|
||||||
|
CHeader "606060"
|
||||||
|
CHeaderTitle "FFFFFF"
|
||||||
|
CHeaderDate "FFFFFF"
|
||||||
|
CText "000000"
|
||||||
|
CLine "B0B0B0"
|
||||||
|
CLineL "-"
|
||||||
|
CRx "92CF00"
|
||||||
|
CTx "606060"
|
||||||
|
CRxD "-"
|
||||||
|
CTxD "-"
|
|
@ -18,48 +18,15 @@ start_service() {
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
mkdir -p "$lib"
|
|
||||||
|
|
||||||
init_ifaces() {
|
init_ifaces() {
|
||||||
local cfg="$1"
|
local cfg="$1"
|
||||||
local url lnk
|
local url lnk
|
||||||
|
|
||||||
init_iface() {
|
init_iface() {
|
||||||
local ifn="$1"
|
local ifn="$1"
|
||||||
|
|
||||||
if [ -n "$url" ]; then
|
|
||||||
local try=0
|
|
||||||
local max=3
|
|
||||||
local hostname="$(cat /proc/sys/kernel/hostname)"
|
|
||||||
|
|
||||||
while [ $((++try)) -le $max ]; do
|
|
||||||
if wget -q -O "$lib/$ifn" "$url/${hostname}_$ifn" 2>/dev/null && [ -e "$lib/$ifn" ]; then
|
|
||||||
logger -t "vnstat" "Downloaded backup for database $ifn"
|
|
||||||
break
|
|
||||||
else
|
|
||||||
logger -t "vnstat" "Download try $try/$max for database $ifn failed"
|
|
||||||
sleep 30
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
elif [ -n "$backup_dir" ]; then
|
|
||||||
if cp -f "$backup_dir/$ifn" "$lib/" &>/dev/null; then
|
|
||||||
logger -t "vnstat" "Restored backup for database $ifn"
|
|
||||||
else
|
|
||||||
logger -t "vnstat" "Restore of backup for database $ifn failed"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
/usr/bin/vnstat -u -i "$ifn" >/dev/null
|
/usr/bin/vnstat -u -i "$ifn" >/dev/null
|
||||||
|
|
||||||
[ -n "$lnk" ] && {
|
|
||||||
mkdir -p "$lnk"
|
|
||||||
[ -L "$lnk/$ifn" ] || ln -s "$lib/$ifn" "$lnk/$ifn"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
config_get url "$cfg" remote
|
|
||||||
config_get lnk "$cfg" symlink
|
|
||||||
config_get backup_dir "$cfg" backup_dir
|
|
||||||
config_list_foreach "$cfg" interface init_iface
|
config_list_foreach "$cfg" interface init_iface
|
||||||
|
|
||||||
return 1
|
return 1
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue