====== Ubuntu 20.04 / CentOS7 安裝 LibreNMS 程序 ======
如果要以 Docker 方式進行安裝, 可參考 [[tech/k8s_librenms]]
* Ubuntu 20.04 LTS
* CentOS Linux release 7.5.1804 (Core)
{{tabinclude>tech:librenms:ubuntu20_04, tech:librenms:centos7}}
===== 設定自動找尋區域網路內可納管設備 =====
* 假設區網為 192.168.1.0/24 (192.168.1.1 - 192.168.1.254)
* SNMP 都是設定為 v1 / v2c , Community 設定為 public 或 ichiayi_snmp
- 先安裝 python-ipaddress 模組 yum install python-ipaddress
- 先手動加入一個設備進行監管 Exp. 192.168.1.1
- vi /opt/librenms/config.php
:
# Auto-Discovery
// v1 or v2c
$config['snmp']['community'][] = "public";
$config['snmp']['community'][] = "ichiayi_snmp";
$config['nets'][] = '192.168.1.0/24';
$config['autodiscovery']['nets-exclude'][] = '192.168.1.1/32';
$config['discovery_by_ip'] = true;
- 第一次可以手動執行一次
cd /opt/librenms
./snmp-scan.py
結果:
[root@ct-librenms librenms]# ./snmp-scan.py
Scanning IPs:
..............................................................................................................................................................................................................................................++++++++++-----
Scanned 253 IPs: 0 known devices, added 10 devices, failed to add 5 devices, 1 ips excluded by config
Runtime: 104.31 seconds
- 設定 default_poller_group = 1
lnms config:set default_poller_group 1
- 之後在區域網路內的新設備如果有啟用 snmp v1 / v2c communty 符合設定的值, 可以在五分鐘內被自動加入
* 前一陣子發現設定都正確, 使用 snmp-scan.py 確實可以自動加入, 但卻無法如預期由該機制將新設備自動加入, 找了一些文章後還是無法真正解決問題, 目前我的 workaround 方法是將 snmp-scan.py 直接加入 cron 來處理
===== 設定告警通知 =====
* 設定 E-Mail 通知
* Global Settings -> Alerting Settings
* General alert settings : Default contact <- 填上要接收通知的 E-Mail ++設定畫面參考| \\ {{:tech:2018121001.png?600}}++
* Email options 依照實際寄送的 Mail Server 方式設定 ++設定畫面參考| \\ {{:tech:2018121002.png?800}}++
* 設定告警通知規則
* Alerts -> Alert Rules
* 當監控的設備無法連線就通知 ++設定畫面參考| \\ {{:tech:2018121003.png?600}} \\ {{:tech:2018121004.png?800}}++
* 將預設網路流量超過 90% 告警排除 lo 介面++設定畫面參考| \\ {{:tech:image_100.png?600}}++
* 針對特定設備特定掛載硬碟剩餘空間進行設定 Exp. 172.16.0.230 排除 /mnt/ext 使用超過 90% 的通知
* 進入 172.16.0.230 的 Alert Rules 設定頁面 ++設定畫面參考| \\ {{:tech:2022-08-01_15_25_47.png?800|}}++
* 修改 硬碟空間已使用 90% 規則, 增加排除 /mnt/ext 規則 ++設定畫面參考| \\ {{:tech:2022-08-01_15_27_40.png?600|}}++
* 針對特定群組主機設定實體記憶體使用超過 7G 就發出 Critical 通知 ++設定畫面參考| \\ {{:tech:螢幕擷取畫面_2024-02-20_120728.png?800|}}++
===== 設定 Device Dependencies 設備依存關係 =====
* Device Dependencies 可以減少不必要的告警通知, 例如 Firewall 故障, Firewall 內所有的主機當然無法使用, 此時可以設定裡面所有的主機的 Parents 是 Firewall 減少不必要的告警通知
* Exp. 192.168.1.254 是 Firewall, 192.168.1.222 是內部 Wifi 設備, 外部監控的 LibreNMS 可以設定 192.168.1.222 有個 Parents 是 192.168.1.254 ++可點下參考相關設定畫面|
* 選單 Devices->Device Dependncies 進入設定功能 \\ {{:tech:2019061501.png}}
* 搜尋要設定的 Device IP Exp. 192.168.1.222 \\ {{:tech:2019061502.png}}
* 編輯該設備的 Parent Exp. 192.168.1.254 \\ {{:tech:2019061503.png}}
* 當完成設定後, 192.168.1.254(Firewall) 出現異常, 192.168.1.222(WiFi) 的異常就不會通知
* 192.168.1.254(Firewall) 出現異常紀錄(告警會通知) \\ {{:tech:2019061504.png}}
* 192.168.1.222(Wifi) 出現異常紀錄(告警會跳過) \\ {{:tech:2019061505.png}}
++
===== 安裝 Agent 監看應用程式 =====
{{tabinclude>tech/librenms/agent, tech/librenms/apache_agent, tech/librenms/nagios_agent, tech/librenms/bind_agent, tech/librenms/check_mk, tech/librenms/checkmssql, tech/librenms/checkpve, tech/librenms/fail2ban_agent, tech/librenms/mysql_agent, tech/librenms/nginx_agent, tech/librenms/php-fpm_agent, tech/librenms/postfix_agent, tech/librenms/redis_agent, tech/librenms/smart_agent, tech/librenms/zfs_agent}}
===== 常見 LibreNMS 異常問題排除 =====
==== 每日自動更版失敗處理 ====
* 先透過執行 daily.sh 看錯誤訊息
su - librenms
./daily.sh
* 看錯誤訊息進行處理, Exp. git 檔案被更改, 就移除這些檔案後, 在執行 daily.sh
* 如果無法解決, 可以透過 validate.php 來檢查
./vaildate.php
:
[FAIL] Some folders have incorrect file permissions, this may cause issues.
[FIX]:
sudo chown -R librenms:librenms /opt/librenms
sudo setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/libr enms/bootstrap/cache/ /opt/librenms/storage/
sudo chmod -R ug=rwX /opt/librenms/rrd /opt/librenms/logs /opt/librenms/ bootstrap/cache/ /opt/librenms/storage/
Files:
/opt/librenms/storage/framework/views/cdca770a337e07f2364ec770e7b408621 95170d7.php
就依照內容說明去修正
su - root
chown -R librenms:librenms /opt/librenms
setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
chmod -R ug=rwX /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
* 其他實用的修復 script:
* 修復 git 目錄檔案 ./scripts/github-remove
* 自動更新失敗, 出現很多套件依存議題, Exp,. Carbon 1 is deprecated, see how to migrate to Carbon 2
* 可重新完整安裝的程序如下:
su - librenms
./scripts/github-remove -d -v
git pull
./daily.sh
./validate.php
==== 更新 python3 ====
PHP 7.1 and Python 2 no longer supported
LibreNMS will soon require Python 3.5+ and PHP 7.2.5+. For more details check https://t.libren.ms/uo84c
2020-05-11 00:00:00 | Source: http://www.librenms.org/notifications.rss
*
yum install python36
* 參考 - https://kirin.idv.tw/python-install-python3-in-centos7/
==== 修改連線 DB ====
* 因為資料庫變大, 改用 [[tech/perconaxc|Percona XtraDB Cluster]] 來取代本機 MySQL/MariaDB, 修改 /opt/librenms/config.php 內的 ### Database config 卻完全沒用, 看了 LibreNMS 文件才發現已經變成要改 /opt/librenms/.env 才對
* 以下是 /opt/librenms/.env 大概的內容
APP_KEY=base64:LvIYs6Gauexxxxxxxxxxxxxxxxxxxxxxxxxxxxxx5/c=
DB_HOST=192.168.11.202
DB_DATABASE=librenms
DB_USERNAME=**dbuser**
DB_PASSWORD=**dbpasswd**
#APP_URL=
NODE_ID=5cxxxxxxxxxde
DB_PORT=3306
LIBRENMS_USER=librenms
* 原本 mariadb 的設定要關閉
systemctl stop mariadb
systemctl disable mariadb
* 參考 - https://docs.librenms.org/Support/Configuration/
===== CentOS 7 升級 php 至 7.4 =====
* 2020/11/04 收到訊息會 2020/11 起, LibreNMS 必須使用 php 7.3 以上(建議 7.4)版本才會自動更新
* 先移除原本 PHP 7.2
systemctl stop php-fpm
yum remove php72w*
mv /etc/yum.repos.d/webtatic* /tmp/
* 將安裝 REMI 的 PHP 7.4 來因應
yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
vi /etc/yum.repos.d/remi-php74.repo
:
[remi-php74]
:
enabled=1
:
yum install composer php php-cli php-common php-curl php-fpm php-gd php-mbstring php-mysqlnd php-process php-snmp php-xml php-zip
* 因為這方式是重新安裝 php 與相關套件, 所以 php.ini 與 nginx 的一些設定必須再次執行
* 修改 php.ini
vi /etc/php.ini
:
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Asia/Taipei
:
* 修改 php-fpm 設定
vi /etc/php-fpm.d/www.conf
:
;user = apache
user = nginx
:
;listen.owner = nobody
;listen.group = nobody
;listen.mode = 0660
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
:
systemctl enable php-fpm
systemctl restart php-fpm
* 修改 nginx 設定
vi /etc/nginx/conf.d/librenms.conf
:
:
location ~ \.php {
include fastcgi.conf;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
#fastcgi_pass unix:/var/run/php-fpm/php7.2-fpm.sock;
fastcgi_pass 127.0.0.1:9000;
}
:
systemctl restart nginx
* 設定 ping 的執行權限
setcap cap_net_raw+ep /usr/sbin/fping
setcap cap_net_raw+ep /usr/sbin/fping6
* 驗證一下是否可以正常運作
su - librenms
./validate.php
./daily.sh
可能會出現一些 Call to undefined method ... 訊息, 不過第二次執行 ./daily.sh 應該就不會再出現, 執行畫面如下
[root@ct-librenms ~]# su - librenms
-bash-4.2$ ./validate.php
====================================
Component | Version
--------- | -------
LibreNMS | 1.69-5-g240edd2
DB Schema | 2020_07_27_00522_alter_devices_snmp_algo_columns (188)
PHP | 7.4.12
Python | 3.6.8
MySQL | 5.6.42-84.2-56-log
RRDTool | 1.4.8
SNMP | NET-SNMP 5.7.2
OpenSSL |
====================================
[OK] Composer Version: 1.10.17
[OK] Dependencies up-to-date.
[OK] Database connection successful
[OK] Database schema correct
-bash-4.2$ ./daily.sh
Supported PHP and Python version, switched back to master branch. OK
Updating to latest codebase OK
In AppServiceProvider.php line 43:
Call to undefined method Illuminate\Pagination\Paginator::useBootstrap()
In AppServiceProvider.php line 43:
Call to undefined method Illuminate\Pagination\Paginator::useBootstrap()
Updating Composer packages OK
Updated from bc02ab3 to 240edd2 OK
Updating SQL-Schema OK
Updating submodules OK
Cleaning up DB OK
Fetching notifications OK
Caching PeeringDB data OK
-bash-4.2$ ./daily.sh
Updating to latest codebase OK
Updating Composer packages OK
Updating SQL-Schema OK
Updating submodules OK
Cleaning up DB OK
Fetching notifications OK
Caching PeeringDB data OK
* 移轉 LibreNMS 程序可參考 https://docs.librenms.org/Support/FAQ/ 內 \\ **How do I move my LibreNMS install to another server?**
===== CentOS 7 升級 MariaDB 10 =====
* 2021/06/13 發現 Librenms 無法運作, 才發現 2021/03 起只支援 MySQL version 5.7.7 以上的版本, 所以目前使用的 Percona XtraDB Cluster 內的 5.6.42 就被迫要升級改用 MariaDB 10.5
* 將舊資料匯出, 如果忘記資料庫連線資訊, 可以看一下 .env
su - librenms
head .env
Exp. db_host:192.168.11.21 , db_user:librenms , db_pass:**Password** , db_name:librenms
mysqldump -u librenms -p librenms -h 192.168.11.21> /tmp/librenms.sql
* 執行[[tech/centos7_mariadb10]]
* 在新資料庫建立 LibreNMS 的使用者與資料庫
mysql -u root -p
create database librenms;
create user 'librenms'@'%' identified by '**Password**';
grant all on librenms.* to 'librenms'@'%';
flush privileges;
quit
* 將舊資料匯入新資料庫 Exp. 192.168.11.22
cat /tmp/librenms.sql | mysql -u librenms -p librenms -h 192.168.11.22
* 修改 .env 內 DB 的連線設定
su - librenms
vi .env
===== ./lnms migrate 出現 SQLSTATE[42S01] 異常 =====
* 出現錯誤訊息如下
In Connection.php line 678:
SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'port_groups' already exists (SQL: create table `port_groups` (`id` int unsigned not null auto_increment primary key, `na
me` varchar(255) not null, `desc` varchar(255) null) default character set utf8mb4 collate 'utf8mb4_unicode_ci')
* 解決方式
mysql -u librenms -p librenms
drop table port_groups;
* 再次執行 ./lnms migrate 出現找不到 librenms.port_group_port 這 table
In Connection.php line 678:
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'librenms.port_group_port' doesn't exist (SQL: alter table `port_group_port` add constraint `port_group_port_port_group_id_for
eign` foreign key (`port_group_id`) references `port_groups` (`id`) on delete CASCADE)
* 參考網址 - https://community.librenms.org/t/error-port-device/15386/33
* 解決方式 :
mysql -u librenms -p librenms
CREATE TABLE port_group_port (
port_group_id int(10) unsigned NOT NULL,
port_id int(10) unsigned NOT NULL,
PRIMARY KEY (port_group_id,port_id),
KEY port_group_port_port_group_id_index (port_group_id),
KEY port_group_port_port_id_index (port_id),
CONSTRAINT port_group_port_port_group_id_foreign FOREIGN KEY (port_group_id) REFERENCES port_groups (id) ON DELETE CASCADE,
CONSTRAINT port_group_port_port_id_foreign FOREIGN KEY (port_id) REFERENCES ports (port_id) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
* 再次執行 ./lnms migrate 就可以修正成功
* 再執行 ./validate.php 看有其他那些問題, 依照說明的語法進行修正 Exp.
su - root
setcap cap_net_raw+ep /usr/sbin/fping6
sudo ln -s /opt/librenms/lnms /usr/bin/lnms
sudo cp /opt/librenms/misc/lnms-completion.bash /etc/bash_completion.d/
sudo chown -R librenms:librenms /opt/librenms
sudo setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
sudo chmod -R ug=rwX /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
===== 由 CentOS 7 移轉至 Ubuntu 20.04 =====
* 參考 [[https://docs.librenms.org/Support/FAQ/#faq24|How do I migrate my LibreNMS install to another server?]] 方式處理
- 依照正常程序安裝 [[tech/librenms/ubuntu20_04|LibreNMS 在 Ubuntu 20.04]] 上
- 修改 CentOs 7 與 Ubuntu 20.04 新舊主機內的 /etc/cron.d/librenms 停止 cron 執行vi /etc/cron.d/librenms
:
#33 */6 * * * librenms /opt/librenms/cronic /opt/librenms/discovery-wrapper.py 1
#*/5 * * * * librenms /opt/librenms/discovery.php -h new >> /dev/null 2>&1
#*/5 * * * * librenms /opt/librenms/cronic /opt/librenms/poller-wrapper.py 16
#* * * * * librenms /opt/librenms/alerts.php >> /dev/null 2>&1
#*/5 * * * * librenms /opt/librenms/poll-billing.php >> /dev/null 2>&1
#01 * * * * librenms /opt/librenms/billing-calculate.php >> /dev/null 2>&1
#*/5 * * * * librenms /opt/librenms/check-services.php >> /dev/null 2>&1
#* * * * * librenms cd /opt/librenms/ && php artisan schedule:run >> /dev/null 2>&1
:
#15 0 * * * librenms /opt/librenms/daily.sh >> /dev/null 2>&1
- 在 CentOS 7 舊主機內將 MySQL 資料匯出
mysqldump librenms -u root -p > librenms.sql
- 在 Ubuntu 20.04 新主機將 librenms.sql 匯入
scp root@192.168.11.223:/root/librenms.sql .
mysql -u root -p librenms < librenms.sql
- 將 CentOS 7 舊主機內的 rrd 目錄內的檔案複製到 Ubuntu 20.04 新主機內, @CentOs 7
cd /opt/librenms/
tar cvf rrd.tar rrd
@Ubuntu 20.04
cd /opt/librenms/
scp root@192.168.11.223:/opt/librenms/rrd.tar .
tar xvf rrd.tar
- 將 CentOS 7 舊主機內的 .env 和 config.php 檔案複製到 Ubuntu 20.04 新主機內, @Ubunutu 20.04
cd /opt/librenms/
scp root@192.168.11.223:/opt/librenms/.env .
scp root@192.168.11.223:/opt/librenms/config.php .
chown -R librenms:librenms /opt/librenms
- 檢查 Ubuntu 20.04 新主機內的安裝狀態
su - librenms
./validate.php
- 修改 Ubuntu 20.04 新主機內的 /etc/cron.d/librenms 啟動 cron 執行vi /etc/cron.d/librenms
:
33 */6 * * * librenms /opt/librenms/cronic /opt/librenms/discovery-wrapper.py 1
*/5 * * * * librenms /opt/librenms/discovery.php -h new >> /dev/null 2>&1
*/5 * * * * librenms /opt/librenms/cronic /opt/librenms/poller-wrapper.py 16
* * * * * librenms /opt/librenms/alerts.php >> /dev/null 2>&1
*/5 * * * * librenms /opt/librenms/poll-billing.php >> /dev/null 2>&1
01 * * * * librenms /opt/librenms/billing-calculate.php >> /dev/null 2>&1
*/5 * * * * librenms /opt/librenms/check-services.php >> /dev/null 2>&1
* * * * * librenms cd /opt/librenms/ && php artisan schedule:run >> /dev/null 2>&1
:
15 0 * * * librenms /opt/librenms/daily.sh >> /dev/null 2>&1
===== 升級 php 至 8.1 以上版本 =====
* 今天看到這訊息
Error: PHP version too low
PHP version 8.1 is the minimum supported version as of September, 2022. We recommend you update to PHP a supported version of PHP (8.1 suggested) to continue to receive updates. If you do not update PHP, LibreNMS will continue to function but stop receiving bug fixes and updates.
2022-09-27 00:00:00 | Source: daily.sh
* 檢查作業系統 -> Ububtu 20.04 / php 7.4 / nginx 1.18
root@ct-librenms:~# cat /etc/issue
Ubuntu 20.04.4 LTS \n \l
root@ct-librenms:~# php -v
PHP 7.4.3 (cli) (built: Jun 13 2022 13:43:30) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies
root@ct-librenms:~# nginx -v
nginx version: nginx/1.18.0 (Ubuntu)
* 進行升級 ref - https://www.linuxcapable.com/how-to-install-php-8-1-on-ubuntu-20-04/
apt update && apt upgrade -y
apt install software-properties-common && add-apt-repository ppa:ondrej/php -y
apt update && apt upgrade -y
apt install php8.1 php8.1-fpm php8.1-cli php8.1-gd php8.1-curl php8.1-dom php8.1-xml php8.1-mysql php8.1-mbstring -y
apt autoremove -y
systemctl status php8.1-fpm
systemctl restart nginx
root@ct-librenms:~# php --version
PHP 8.1.10 (cli) (built: Sep 18 2022 10:25:43) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.10, Copyright (c) Zend Technologies
with Zend OPcache v8.1.10, Copyright (c), by Zend Technologies
* 更換 php-fpm 的版本設定
* 查看目前啟動的 php-fpm 狀況
root@ct-librenms:~# ps -ef |grep php-fpm
root 133 1 0 09:05 ? 00:00:00 php-fpm: master process (/etc/php/7.4/fpm/php-fpm.conf)
root 134 1 0 09:05 ? 00:00:00 php-fpm: master process (/etc/php/8.1/fpm/php-fpm.conf)
www-data 161 134 0 09:05 ? 00:00:00 php-fpm: pool www
www-data 163 134 0 09:05 ? 00:00:00 php-fpm: pool www
:
* 關閉 7.4 版的 php-fpm
root@ct-librenms:~# systemctl stop php7.4-fpm.service
root@ct-librenms:~# systemctl disable php7.4-fpm.service
Synchronizing state of php7.4-fpm.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install disable php7.4-fpm
Removed /etc/systemd/system/multi-user.target.wants/php7.4-fpm.service.
* 確認 8.4 版的 php-fpm socket 檔案
root@ct-librenms:/etc/nginx/conf.d# ls -lt /run/php/php
php-fpm.sock php8.1-fpm.pid php8.1-fpm.sock
root@ct-librenms:/etc/nginx/conf.d# ls -lt /run/php/php-fpm.sock
lrwxrwxrwx 1 root root 30 Sep 29 09:05 /run/php/php-fpm.sock -> /etc/alternatives/php-fpm.sock
root@ct-librenms:/etc/nginx/conf.d# ls -lt /run/php/php8.1-fpm.sock
srw-rw---- 1 www-data www-data 0 Sep 29 09:05 /run/php/php8.1-fpm.sock
所以只要設定是 /run/php/php-fpm.sock 就可以正確連上 8.4 版 php-fpm
* 將 nginx 內的 librenms 網站設定改用新板 php-fpm
vi /etc/nginx/conf.d/librenms.conf
:
}
location ~ [^/]\.php(/|$) {
fastcgi_pass unix:/run/php/php-fpm.sock;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
:
* 重啟 nginx
systemctl restart nginx.service
* 執行 librenms 的設定檢查
su - librenms
./validate.php
librenms@ct-librenms:~$ ./validate.php
====================================
Component | Version
--------- | -------
LibreNMS | 22.9.0-5-g66790e7e8
DB Schema | 2022_09_03_091314_update_ports_adsl_table_with_defaults (246)
PHP | 8.1.11
Python | 3.8.10
Database | MariaDB 10.3.34-MariaDB-0ubuntu0.20.04.1
RRDTool | 1.7.2
SNMP | 5.8
====================================
[OK] Composer Version: 2.4.2
[OK] Dependencies up-to-date.
:
:
OK] Database schema correct
[FAIL] Time between this server and the mysql database is off
Mysql time 2022-10-04 18:40:56
PHP time 2022-10-04 10:40:56
[FAIL] Missing PHP extension: mbstring
[FIX]:
Please install mbstring
[FAIL] You have no timezone set for php.
[FIX]:
https://php.net/manual/en/datetime.configuration.php#ini.date.timezone
[OK] Active pollers found
:
[OK] rrdtool version ok
[WARN] Your install is over 24 hours out of date, last update: Mon, 26 Sep 2022 13:52:15 +0000
[FIX]:
Make sure your daily.sh cron is running and run ./daily.sh by hand to see if there are any errors.
[WARN] Your local git contains modified files, this could prevent automatic updates.
[FIX]:
You can fix this with ./scripts/github-remove
Modified Files:
bootstrap/cache/.gitignore
logs/.gitignore
storage/app/.gitignore
storage/app/public/.gitignore
storage/debugbar/.gitignore
storage/framework/cache/.gitignore
storage/framework/cache/data/.gitignore
storage/framework/sessions/.gitignore
storage/framework/testing/.gitignore
storage/framework/views/.gitignore
storage/logs/.gitignore
[FAIL] We have found some files that are owned by a different user than 'librenms', this will stop you updating automatically and / or rrd files being updated causing graphs to fail.
[FIX]:
sudo chown -R librenms:librenms /opt/librenms
sudo setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
sudo chmod -R ug=rwX /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
Files:
/opt/librenms/logs/.librenms.log.swp
* 依照上述的修正建議進行修正
su - root
vi /etc/php/8.1/fpm/php.ini
----
:
[Date]
; Defines the default timezone used by the date functions
; https://php.net/date.timezone
date.timezone = "Asia/Taipei"
:
----
vi /etc/php/8.1/cli/php.ini
----
:
[Date]
; Defines the default timezone used by the date functions
; https://php.net/date.timezone
date.timezone = "Asia/Taipei"
:
----
su - librenms
./daily.sh
./scripts/github-remove -d
su - root
chown -R librenms:librenms /opt/librenms
chmod -R ug=rwX /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/
usermod -a -G librenms www-data
su - librenms
librenms@ct-librenms:~$ ./validate.php
===========================================
Component | Version
--------- | -------
LibreNMS | 22.9.0-34-ge4fdbbd82 (2022-10-04T01:55:49+08:00)
DB Schema | 2022_09_03_091314_update_ports_adsl_table_with_defaults (246)
PHP | 8.1.11
Python | 3.8.10
Database | MariaDB 10.3.34-MariaDB-0ubuntu0.20.04.1
RRDTool | 1.7.2
SNMP | 5.8
===========================================
[OK] Composer Version: 2.4.2
[OK] Dependencies up-to-date.
[OK] Database connection successful
[OK] Database Schema is current
[OK] SQL Server meets minimum requirements
[OK] lower_case_table_names is enabled
[OK] MySQL engine is optimal
[OK]
[OK] Database schema correct
[OK] MySQl and PHP time match
[OK] Active pollers found
[OK] Dispatcher Service not detected
[OK] Locks are functional
[OK] Python poller wrapper is polling
[OK] Redis is unavailable
[OK] rrd_dir is writable
[OK] rrdtool version ok
===== 參考網址 ====
* https://docs.librenms.org/#Installation/Installation-CentOS-7-Nginx/
* https://docs.librenms.org/Extensions/Auto-Discovery/
* https://community.librenms.org/t/email-alert-settings-help/4600
* https://docs.librenms.org/Extensions/Services/
* https://support.nagios.com/forum/viewtopic.php?f=7&t=36193&start=0#_ga=1.99004318.1602829684.1486395689
* https://docs.librenms.org/Installation/Install-LibreNMS/
* https://docs.librenms.org/Support/FAQ/#faq24
{{tag>nms librenms centos7 ubuntu}}