Restructured Documentation
Automatic Documentation Deployment / Sync Docs to https://kb.bunny-lab.io (push) Successful in 8s
Automatic Documentation Deployment / Sync Docs to https://kb.bunny-lab.io (push) Successful in 8s
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
---
|
||||
tags:
|
||||
- IredMail
|
||||
- Email
|
||||
---
|
||||
|
||||
## Purpose
|
||||
Use this reference for iredmail connection settings and the environment-specific values recorded below.
|
||||
|
||||
!!! info "Recorded Connection Settings"
|
||||
These values belong to the iRedMail example. Use the email guide to select the matching mail-server implementation before configuring a client.
|
||||
|
||||
| Server | Port(s) | Security | Auth Method | Username |
|
||||
|:------------------|:----------------------------------------------|:----------|:----------------|:-------------------|
|
||||
| `mail.bunny-lab.io` | **IMAP:** 143 `Internal`, 993 `External`<br>**SMTP:** 587, 25 `Fallback` | STARTTLS | Normal Password | user@bunny-lab.io |
|
||||
|
||||
## Related Documentation
|
||||
- [Related Email Documentation](<index.md>) — Find the connected deployments, procedures, and references for this subject.
|
||||
@@ -0,0 +1,31 @@
|
||||
---
|
||||
tags:
|
||||
- Email
|
||||
- Mailcow
|
||||
- Microsoft Exchange
|
||||
---
|
||||
|
||||
# Email
|
||||
## Purpose
|
||||
Choose the email environment before following a deployment or repair procedure. Mailcow with PMG, iRedMail, Microsoft Exchange, and the cPanel scaffold describe separate configurations; their presence here does not establish that they are all active in the lab.
|
||||
|
||||
## Includes
|
||||
- Mailcow and PMG integration
|
||||
- iRedMail deployment and connection settings
|
||||
- Exchange maintenance and DAG recovery
|
||||
|
||||
## Mailcow and PMG
|
||||
- [Deploy Mailcow](<../../../deployments/Applications/Email/mailcow.md>) — Configure the mail service and its documented proxy arrangement.
|
||||
- [Integrate PMG with Mailcow](<../../../deployments/Applications/Email/Proxmox Mail Gateway/Integrate PMG with Mailcow.md>) — Follow the gateway, DNS, NAT, and mail-flow integration.
|
||||
- [Repair Trusted Mail Delivery](<../../../workflows/Applications/Email/Proxmox Mail Gateway/Repair Trusted Mail Delivery Between PMG and Mailcow.md>) — Investigate sender-validation or relay-trust failures after integration.
|
||||
|
||||
## iRedMail
|
||||
- [Deploy iRedMail](<../../../deployments/Applications/Email/iRedMail/Deploy iRedMail.md>) — Follow the separately documented mail-server implementation.
|
||||
- [Client Connection Settings](<iRedMail Connection Settings.md>) — Find the recorded protocol and server settings.
|
||||
- [Inspect the SMTP Queue](<../../../workflows/Applications/Email/iRedMail/Inspect the Outgoing SMTP Queue.md>) — Investigate outgoing messages on the iRedMail environment.
|
||||
|
||||
## Microsoft Exchange
|
||||
- [Exchange SE Rolling Updates](<../../../workflows/Applications/Email/Microsoft Exchange/Perform Exchange SE DAG Rolling Updates.md>) — Use the complete maintenance cycle for the explicitly described three-member example.
|
||||
- [DAG Database Copy Repairs](<../../../workflows/Applications/Email/Microsoft Exchange/Manage DAG Database Copies.md>) — Review the older example and version context before applying its recovery commands.
|
||||
- [Cumulative Update Preparation Notes](<../../../workflows/Applications/Email/Microsoft Exchange/Prepare for Cumulative Updates.md>) — Review the separate preparation procedure and its environment assumptions.
|
||||
- [Certificate Packaging](<../../../workflows/Identity and Certificates/Certificates/Convert Certificates to PFX.md>) — Find the documented certificate conversion workflow.
|
||||
@@ -0,0 +1,101 @@
|
||||
---
|
||||
tags:
|
||||
- Rclone
|
||||
- PowerShell
|
||||
- Synchronization
|
||||
- Google Drive
|
||||
---
|
||||
|
||||
## Purpose
|
||||
This document explains the practical differences between the rclone `copy`, `sync`, `check`, and `bisync` commands and links to the separate workflow for configuring and recovering a bidirectional synchronization pair. The examples use PowerShell and assume that one side of the synchronization is a Google Drive remote.
|
||||
|
||||
Rclone is a command-line file-management program that supports cloud storage providers, object-storage platforms, local filesystems, and standard transfer protocols.
|
||||
|
||||
[Download rClone](https://rclone.org/downloads)
|
||||
|
||||
[Official rClone Documentation](https://rclone.org/docs/)
|
||||
|
||||
!!! info "Version Context"
|
||||
This document was reviewed against rclone `v1.75.0`. Older releases may not support every bisync flag documented here, and future versions may change some recovery behavior.
|
||||
|
||||
!!! danger "Rclone Can Delete or Overwrite Data"
|
||||
The `sync` and `bisync` commands can delete, replace, rename, or propagate the deletion of files. Always confirm the source and destination paths, maintain a separate backup or snapshot, and preview unfamiliar operations with `--dry-run` before allowing them to modify data.
|
||||
|
||||
A dry run is a preview and is not a replacement for a backup.
|
||||
|
||||
## Prepare the Command
|
||||
Set the executable path in the PowerShell session before using the command examples. Replace the example path with the location of `rclone.exe` on the target machine.
|
||||
|
||||
```powershell
|
||||
$Rclone = "C:\Path\To\rclone.exe"
|
||||
```
|
||||
|
||||
## Command Behavior
|
||||
The correct command depends on the intended relationship between the source and destination.
|
||||
|
||||
| **Command** | **Primary Behavior** | **Deletes Destination-Only Files** | **Direction** |
|
||||
| :--- | :--- | :--- | :--- |
|
||||
| `copy` | Adds or updates source files at the destination while retaining unrelated destination files | No | One-way |
|
||||
| `sync` | Makes the destination match the source | Yes | One-way |
|
||||
| `check` | Compares files without modifying either side | No | Read-only |
|
||||
| `bisync` | Detects and propagates changes made on either side by comparing the current state against prior listings | Yes | Two-way |
|
||||
|
||||
### Use `copy` for Additive Transfers
|
||||
Use `copy` when you need to add or update files without deleting files that already exist only at the destination.
|
||||
|
||||
```powershell
|
||||
& $Rclone copy "Source" "Destination" --update --dry-run --verbose
|
||||
```
|
||||
|
||||
The `--update` flag skips a source file when the corresponding destination file has a newer modification time. It does not create version history, and it does not prevent an older destination file from being replaced by a newer source file.
|
||||
|
||||
After reviewing the dry-run output, repeat the operation without `--dry-run`:
|
||||
|
||||
```powershell
|
||||
& $Rclone copy "Source" "Destination" --update --verbose
|
||||
```
|
||||
|
||||
### Use `sync` Only for Intentional Mirroring
|
||||
Use `sync` when the destination must become a one-way mirror of the source.
|
||||
|
||||
!!! danger "`sync` Deletes Destination-Only Files"
|
||||
The `sync` command removes files from the destination when they do not exist in the source. This is true even when `--update` is present.
|
||||
|
||||
The `--update` flag only prevents a newer destination file from being replaced by an older source file. It does not convert `sync` into an additive operation and does not protect destination-only files from deletion.
|
||||
|
||||
Preview the operation first:
|
||||
|
||||
```powershell
|
||||
& $Rclone sync "Source" "Destination" --dry-run --verbose
|
||||
```
|
||||
|
||||
Only remove `--dry-run` after confirming that every proposed copy, replacement, and deletion is intentional:
|
||||
|
||||
```powershell
|
||||
& $Rclone sync "Source" "Destination" --verbose
|
||||
```
|
||||
|
||||
### Use `check` for Read-Only Comparison
|
||||
The `check` command compares files on both sides without copying, replacing, or deleting them.
|
||||
|
||||
```powershell
|
||||
& $Rclone check "Source" "Destination" --combined "rclone-comparison.txt" --log-level INFO --log-file "rclone-check.log"
|
||||
```
|
||||
|
||||
The combined report uses the following symbols:
|
||||
|
||||
| **Symbol** | **Meaning** |
|
||||
| :--- | :--- |
|
||||
| `=` | The file exists on both sides and matches |
|
||||
| `+` | The file exists only in the source |
|
||||
| `-` | The file exists only in the destination |
|
||||
| `*` | The same path exists on both sides, but the files differ |
|
||||
| `!` | The file could not be read or compared |
|
||||
|
||||
The `check` command compares files but does not report missing empty directories.
|
||||
|
||||
## Configure Two-Way Synchronization
|
||||
Use [Configure and Recover Rclone Bisync](<../../../workflows/Applications/Files and Collaboration/Configure and Recover Rclone Bisync.md>) for initialization, normal runs, state handling, and recovery.
|
||||
|
||||
## Related Documentation
|
||||
- [Related Files and Collaboration Documentation](<index.md>) — Find the connected deployments, procedures, and references for this subject.
|
||||
@@ -0,0 +1,42 @@
|
||||
---
|
||||
tags:
|
||||
- Robocopy
|
||||
- Batch
|
||||
- Scripting
|
||||
- Windows
|
||||
---
|
||||
|
||||
## Purpose
|
||||
Robocopy is a useful tool that can be leveraged to copy files and folders from one location to another (e.g. Over the network to another server) without losing file and folder ACLs (permissions / ownership data).
|
||||
|
||||
!!! warning "Run as Domain Admin"
|
||||
When you run Robocopy, especially when transferring data across the network to another remote server, you need to be sure to run the command prompt under the session of a domain admin. Secondly, it needs to be ran as an administrator to ensure the command is successful. This can be done by going to the start menu and typing "**Command Prompt**" > **Right Clicking** > "**Run as Administrator**" while logged in as a domain administrator.
|
||||
|
||||
An example of using Robocopy is below, with a full breakdown:
|
||||
|
||||
```powershell
|
||||
robocopy "E:\Source" "Z:\Destination" /Z /B /R:5 /W:5 /MT:4 /COPYALL /E
|
||||
```
|
||||
|
||||
- `robocopy "Source" "Destination"` : Initiates the Robocopy command to copy files from the specified source directory to the designated destination directory.
|
||||
- `/Z` : Enables Robocopy's restartable mode, which allows it to resume file transfer from the point of interruption once the network connection is re-established.
|
||||
- `/B` : Activates Backup Mode, enabling Robocopy to override Access Control Lists (ACLs) and copy files regardless of the existing file or folder permissions.
|
||||
- `R:5` : Sets the maximum retry count to 5, meaning Robocopy will attempt to copy a file up to five times if the initial attempt fails.
|
||||
- `W:5` : Configures a wait time of 5 seconds between retry attempts, providing a brief pause before trying to copy a file again.
|
||||
- `/MT:4` : Employs multi-threading with 4 threads, allowing Robocopy to process multiple files simultaneously, each in its own thread.
|
||||
- `/COPYALL` : Instructs Robocopy to preserve all file and folder attributes, including security permissions, timestamps, and ownership information during the copy process.
|
||||
- `/E` : Directs Robocopy to include all subdirectories in the copy operation, ensuring even empty directories are replicated in the destination.
|
||||
|
||||
!!! tip "Usage of Administrative Shares"
|
||||
Whenever dealing with copying data from one server to another, try to leverage "Administrative Shares", also referred to as "Default Shares". These exist in such a way that, if the server exists in a Windows-based domain, you can type something like `\\SERVER\C$` or `\\SERVER\E$` to access files and bypass most file access restrictions (ACLs). This generally only applies to read-access, write-access may be denied in some circumstances.
|
||||
|
||||
An adjusted example can be seen below to account for this usage.
|
||||
**This example assumes you are running robocopy from the destination computer**.
|
||||
**Remember**: You are always **PULLING** data with administrative shares, not pushing it, the source should be the administrative share, and the destination should be local (in this example). There are scenarios where you can move data between two network shares, but its best (and cleaner) to always have a remote/local relationship in the transfer.
|
||||
|
||||
```powershell
|
||||
robocopy "\\SERVER\E$\SOURCE" "E:\DESTINATION" /Z /B /R:5 /W:5 /MT:4 /COPYALL /E
|
||||
```
|
||||
|
||||
## Related Documentation
|
||||
- [Related Files and Collaboration Documentation](<index.md>) — Find the connected deployments, procedures, and references for this subject.
|
||||
@@ -0,0 +1,35 @@
|
||||
---
|
||||
tags:
|
||||
- File Services
|
||||
- Nextcloud
|
||||
- Synchronization
|
||||
---
|
||||
|
||||
# Files and Collaboration
|
||||
## Purpose
|
||||
Find the service that owns the data, then choose its integration, permissions, or transfer procedure. Distinguish an additive copy, a one-way mirror, and a two-way synchronization before running a transfer tool.
|
||||
|
||||
## Includes
|
||||
- Nextcloud and office integration
|
||||
- Windows DFS and permission reports
|
||||
- File-copy and synchronization tools
|
||||
|
||||
## Applications and Office Integration
|
||||
- [Nextcloud AIO](<../../../deployments/Applications/Files and Collaboration/Nextcloud AIO.md>) — Follow the AIO deployment and its integration requirements.
|
||||
- [Separate Nextcloud Deployment](<../../../deployments/Applications/Files and Collaboration/Nextcloud.md>) — Consult the alternative container example.
|
||||
- [Collabora](<../../../deployments/Applications/Files and Collaboration/Collabora Code Server.md>) — Connect the office service to the matching Nextcloud installation.
|
||||
- [OnlyOffice](<../../../deployments/Applications/Files and Collaboration/OnlyOffice EE.md>) — Review the separately documented office-service option.
|
||||
- [Upload to a Nextcloud Share](<../../../scripts/Applications/Files and Collaboration/Upload Data to a Nextcloud Share.md>) — Use the PowerShell or Bash example for a shared upload destination.
|
||||
|
||||
## Windows File Services
|
||||
- [Deploy DFS](<../../../deployments/Applications/Files and Collaboration/Windows Server/DFS Namespaces with Replication.md>) — Build the namespaces and replication before using the reports.
|
||||
- [Report DFS Configuration](<../../../scripts/Applications/Files and Collaboration/DFS/Report DFS Namespaces and Replication.md>) — Inspect namespace targets and replication configuration.
|
||||
- [Report DFS Backlog](<../../../scripts/Applications/Files and Collaboration/DFS/Report DFS Replication Backlog.md>) — Check directional replication progress.
|
||||
- [SMB Share Permissions](<../../../scripts/Applications/Files and Collaboration/SMB/Report SMB Share Permissions.md>) — Report the permissions assigned at the share layer.
|
||||
- [NTFS Permissions](<../../../scripts/Applications/Files and Collaboration/SMB/Report NTFS Permissions Across Shares.md>) — Report filesystem ACLs beneath the shared paths.
|
||||
|
||||
## Choose a Transfer Procedure
|
||||
- [Robocopy](<Robocopy Command Reference.md>) — Review the Windows copy and mirror examples and their permission handling.
|
||||
- [Rclone Commands](<Rclone Command Reference.md>) — Compare copy, sync, check, and bisync behavior.
|
||||
- [Rclone Bisync](<../../../workflows/Applications/Files and Collaboration/Configure and Recover Rclone Bisync.md>) — Configure a persistent two-way synchronization pair and its recovery state.
|
||||
- [Netcat Transfer](<../../../workflows/Applications/Files and Collaboration/Transfer Files with Netcat.md>) — Review the dedicated transfer example and its transport limitations.
|
||||
@@ -0,0 +1,23 @@
|
||||
---
|
||||
tags:
|
||||
- Applications
|
||||
- Reference
|
||||
- Documentation
|
||||
---
|
||||
|
||||
# Applications
|
||||
## Purpose
|
||||
Find applications by the service they provide, then continue to their deployment, authentication, data, and maintenance documentation.
|
||||
|
||||
## Includes
|
||||
- Choose the Mailcow/PMG, iRedMail, or Exchange documentation that matches the environment.
|
||||
- Connect Nextcloud, office integration, DFS, permissions, and file-transfer tools.
|
||||
- Start with Home Assistant, then follow the camera and device integration links.
|
||||
|
||||
## Find the Right Document
|
||||
- [Email](<Email/index.md>) — Choose the Mailcow/PMG, iRedMail, or Exchange documentation that matches the environment.
|
||||
- [Files and Collaboration](<Files and Collaboration/index.md>) — Connect Nextcloud, office integration, DFS, permissions, and file-transfer tools.
|
||||
- [Home Automation](<../../deployments/Applications/Home Automation/HomeAssistant.md>) — Start with Home Assistant, then follow the camera and device integration links.
|
||||
- [Monitoring and Notifications](<../../deployments/Applications/Monitoring/Gatus.md>) — Find endpoint monitoring and the separately documented ntfy notification service.
|
||||
- [Game Hosting](<../../deployments/Applications/Gaming and Media/Pterodactyl.md>) — Find the control panel alongside individual server deployments.
|
||||
- [Application Deployments](<../../deployments/Applications/index.md>) — Browse the remaining asset-management, communication, dashboard, and utility services.
|
||||
Reference in New Issue
Block a user