mirror of
https://gitea.com/mcereda/oam.git
synced 2026-02-09 05:44:23 +00:00
chore(openmediavault): add notes about other features
This commit is contained in:
@@ -79,10 +79,11 @@ find . -type f | parallel --group --jobs 0 -d '\n' clamscan {}
|
|||||||
- [Codebase]
|
- [Codebase]
|
||||||
- [Documentation]
|
- [Documentation]
|
||||||
- [Gentoo Wiki]
|
- [Gentoo Wiki]
|
||||||
|
- [On-Access Scanning]
|
||||||
|
|
||||||
### Sources
|
### Sources
|
||||||
|
|
||||||
- [Install ClamAV on Fedora Linux 35]
|
- [Install ClamAV on Fedora Linux]
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
Reference
|
Reference
|
||||||
@@ -93,10 +94,11 @@ find . -type f | parallel --group --jobs 0 -d '\n' clamscan {}
|
|||||||
<!-- Knowledge base -->
|
<!-- Knowledge base -->
|
||||||
<!-- Files -->
|
<!-- Files -->
|
||||||
<!-- Upstream -->
|
<!-- Upstream -->
|
||||||
[codebase]: https://github.com/Cisco-Talos/clamav
|
[Codebase]: https://github.com/Cisco-Talos/clamav
|
||||||
[documentation]: https://docs.clamav.net/
|
[Documentation]: https://docs.clamav.net/
|
||||||
[website]: https://www.clamav.net/
|
[On-Access Scanning]: https://docs.clamav.net/manual/OnAccess.html
|
||||||
|
[Website]: https://www.clamav.net/
|
||||||
|
|
||||||
<!-- Others -->
|
<!-- Others -->
|
||||||
[gentoo wiki]: https://wiki.gentoo.org/wiki/ClamAV
|
[Gentoo Wiki]: https://wiki.gentoo.org/wiki/ClamAV
|
||||||
[install clamav on fedora linux 35]: https://www.linuxcapable.com/how-to-install-clamav-on-fedora-35/
|
[Install ClamAV on Fedora Linux]: https://linuxcapable.com/install-clamav-on-fedora-linux/
|
||||||
|
|||||||
123
knowledge base/linux/bond network interfaces.md
Normal file
123
knowledge base/linux/bond network interfaces.md
Normal file
@@ -0,0 +1,123 @@
|
|||||||
|
# Bond network interfaces
|
||||||
|
|
||||||
|
Combines multiple network interfaces into a single logical interface.<br/>
|
||||||
|
Provides benefits such as increased bandwidth, redundancy, and load balancing.
|
||||||
|
|
||||||
|
1. [TL;DR](#tldr)
|
||||||
|
1. [Bonding modes](#bonding-modes)
|
||||||
|
1. [Configuration](#configuration)
|
||||||
|
1. [Further readings](#further-readings)
|
||||||
|
1. [Sources](#sources)
|
||||||
|
|
||||||
|
## TL;DR
|
||||||
|
|
||||||
|
Linux bonding is implemented through the `bonding` kernel module.<br/>
|
||||||
|
It implements several [bonding modes], each with its own characteristics and use cases.
|
||||||
|
|
||||||
|
If one's switches support LACP, prefer using mode 4 (802.3ad) for compatibility and optimal performance.<br/>
|
||||||
|
LACP allows the Linux system and the switch to negotiate the link aggregation settings automatically.
|
||||||
|
|
||||||
|
<!-- Uncomment if used
|
||||||
|
<details>
|
||||||
|
<summary>Setup</summary>
|
||||||
|
|
||||||
|
```sh
|
||||||
|
```
|
||||||
|
|
||||||
|
</details>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary>Usage</summary>
|
||||||
|
|
||||||
|
```sh
|
||||||
|
# Check the status of the bonding interface.
|
||||||
|
cat '/proc/net/bonding/bond0'
|
||||||
|
|
||||||
|
# Test the redundancy of the bonding interface.
|
||||||
|
# Simulates a failure of one of the slave interfaces.
|
||||||
|
ifconfig 'eth0' down; sleep 30s; ifconfig 'eth0' up
|
||||||
|
```
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
<!-- Uncomment if used
|
||||||
|
<details>
|
||||||
|
<summary>Real world use cases</summary>
|
||||||
|
|
||||||
|
```sh
|
||||||
|
```
|
||||||
|
|
||||||
|
</details>
|
||||||
|
-->
|
||||||
|
|
||||||
|
## Bonding modes
|
||||||
|
|
||||||
|
| ID | Mode name | Summary | Use cases |
|
||||||
|
| --- | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
|
| 0 | Round Robin | Sends packets out sequentially on each available slave interface.<br/>Provides load balancing across all used interfaces and increases the overall bandwidth. | Environments where bandwidth aggregation is the primary goal and all connected switches support load balancing |
|
||||||
|
| 1 | Active-Backup | Only one slave interface is active at a time. If the active interface fails, the driver automatically switches to one of the backup interfaces. | Scenarios where redundancy is crucial, such as in mission-critical applications |
|
||||||
|
| 2 | XOR | The driver uses a hash function to determine which slave interface to send a packet on. The hash is based on the source and destination MAC addresses. | Networks where the traffic patterns are relatively stable, and the same source-destination pairs are likely to be used frequently |
|
||||||
|
| 3 | Broadcast | All packets are sent out on all slave interfaces. Provides high redundancy, but consumes a lot of network resources. | |
|
||||||
|
| 4 | 802.3ad, Link Aggregation Control Protocol | Requires support from the connected switches. Creates a link aggregation group (LAG) between the Linux system and the switch. Provides both load balancing and redundancy. | Environments where high bandwidth and reliability are required |
|
||||||
|
| 5 | Balance-TLB | Dynamically distributes **outgoing** traffic to the interface with the least load. | Environments where the traffic distribution is uneven and load balancing is required |
|
||||||
|
| 6 | Balance-ALB | Distributes both outgoing and incoming traffic across all slave interfaces | Networks where both high bandwidth and load balancing are required |
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
|
||||||
|
1. Load the `bonding` module:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
modprobe 'bonding'
|
||||||
|
```
|
||||||
|
|
||||||
|
1. Create a bonding interface.
|
||||||
|
|
||||||
|
Add a configuration file in the `/etc/sysctl.d/` directory:
|
||||||
|
|
||||||
|
```conf
|
||||||
|
# /etc/sysctl.d/bond0.conf
|
||||||
|
# miimon: interval (in milliseconds) at which the bonding driver checks the link status of the slave interfaces
|
||||||
|
bonding.modes=mode=6 miimon=100
|
||||||
|
```
|
||||||
|
|
||||||
|
1. Add the slave interfaces:
|
||||||
|
|
||||||
|
```conf
|
||||||
|
# /etc/network/interfaces
|
||||||
|
|
||||||
|
auto bond0
|
||||||
|
iface bond0 inet static
|
||||||
|
address <ip_address>
|
||||||
|
netmask <netmask>
|
||||||
|
gateway <gateway>
|
||||||
|
bond-mode <mode_number>
|
||||||
|
bond-miimon 100
|
||||||
|
bond-slaves eth0 eth1
|
||||||
|
```
|
||||||
|
|
||||||
|
1. Restart the network service:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
sudo systemctl restart networking
|
||||||
|
```
|
||||||
|
|
||||||
|
## Further readings
|
||||||
|
|
||||||
|
### Sources
|
||||||
|
|
||||||
|
- [Understanding Linux Bonding Modes]
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Reference
|
||||||
|
═╬═Time══
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- In-article sections -->
|
||||||
|
[Bonding modes]: #bonding-modes
|
||||||
|
|
||||||
|
<!-- Knowledge base -->
|
||||||
|
<!-- Files -->
|
||||||
|
<!-- Upstream -->
|
||||||
|
<!-- Others -->
|
||||||
|
[Understanding Linux Bonding Modes]: https://linuxvox.com/blog/linux-bonding-modes/
|
||||||
@@ -25,23 +25,31 @@ Default web UI login is `admin`:`openmediavault`.
|
|||||||
|
|
||||||
```sh
|
```sh
|
||||||
# Make users OMV administrators.
|
# Make users OMV administrators.
|
||||||
gpasswd -a 'me' 'openmediavault-admin'
|
|
||||||
usermod -aG 'openmediavault-admin' 'me'
|
usermod -aG 'openmediavault-admin' 'me'
|
||||||
|
gpasswd -a 'me' 'openmediavault-admin'
|
||||||
|
adduser 'me' 'openmediavault-admin'
|
||||||
|
|
||||||
|
# Allow users to connect via SSH.
|
||||||
|
usermod -aG '_ssh' 'me'
|
||||||
|
gpasswd -a 'me' '_ssh'
|
||||||
|
adduser 'me' '_ssh'
|
||||||
|
|
||||||
# Revoke WebUI access from the 'admin' user.
|
# Revoke WebUI access from the 'admin' user.
|
||||||
gpasswd -d 'admin' 'openmediavault-admin'
|
gpasswd -d 'admin' 'openmediavault-admin'
|
||||||
deluser 'admin' 'openmediavault-admin'
|
deluser 'admin' 'openmediavault-admin'
|
||||||
|
|
||||||
# Install plugins from the CLI.
|
# Install plugins from the CLI.
|
||||||
apt install 'openmediavault-clamav'
|
apt install 'openmediavault-clamav' … 'openmediavault-nut'
|
||||||
|
|
||||||
# Install OMV-Extras.
|
# Install OMV-Extras.
|
||||||
wget -O - 'https://github.com/OpenMediaVault-Plugin-Developers/packages/raw/master/install' | bash
|
wget -O - 'https://github.com/OpenMediaVault-Plugin-Developers/packages/raw/master/install' | bash
|
||||||
|
|
||||||
# Disable the kernel's backports sources.
|
# Use ZFS.
|
||||||
mv -v \
|
# Requires OMV-Extras.
|
||||||
'/etc/apt/sources.list.d/openmediavault-kernel-backports.list' \
|
apt install 'openmediavault-kernel'
|
||||||
'/etc/apt/sources.list.d/openmediavault-kernel-backports.list.disabled'
|
# Install the Proxmox kernel and reboot
|
||||||
|
apt install 'openmediavault-zfs'
|
||||||
|
zpool import -a
|
||||||
|
|
||||||
# Upgrade packages.
|
# Upgrade packages.
|
||||||
sudo omv-upgrade
|
sudo omv-upgrade
|
||||||
@@ -197,7 +205,8 @@ From the CLI, as the `root` user:
|
|||||||
|
|
||||||
1. Install the `openmediavault-clamav` plugin.
|
1. Install the `openmediavault-clamav` plugin.
|
||||||
1. Enable the service under _Services_ > _Antivirus_ > _Settings_.
|
1. Enable the service under _Services_ > _Antivirus_ > _Settings_.
|
||||||
1. Apply pending changes.
|
1. Apply pending changes.<br/>
|
||||||
|
The first run will take a long time.
|
||||||
|
|
||||||
## UPS
|
## UPS
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user