Best Cloud Storage with CLI for Linux Elastix
In Elastix environments—where backups, voicemail archives, and call recordings demand reliable offsite storage—a command-line interface (CLI) for cloud storage is invaluable. This article reviews top CLI-enabled cloud storage providers suited for Linux Elastix, offers a comparison table, and details setup and usage for each. We also suggest additional services and outline common pitfalls.
Top Recommended Providers
- pCloud
- MEGA (MEGAcmd)
- Proton Drive
- Filen
- Tresorit
- Icedrive
- Backblaze B2 (via CLI)
- Amazon S3 (awscli)
- Dropbox-Uploader
Comparison Table
| Provider | CLI Tool | Free Tier | Encryption | Linux Support | Link |
|---|---|---|---|---|---|
| pCloud | pcloudcc | 10 GB | Client-side (Crypto folder) | Yes | Repo |
| MEGA | MEGAcmd | 20 GB | End-to-end | Yes | Repo |
| Proton Drive | proton-drive-cli | 1 GB | End-to-end | Yes | Repo |
| Filen | filen-cli | 10 GB | End-to-end | Yes | Repo |
| Tresorit | tresorit-cli | 3 GB | End-to-end | Yes | Docs |
| Icedrive | icedrive-cli | 10 GB | Client-side | Yes | Repo |
| Backblaze B2 | b2 (Python) | 10 GB | Server-side | Yes | Docs |
| Amazon S3 | AWS CLI | N/A | Server-side | Yes | AWS CLI |
| Dropbox | Dropbox-Uploader | 2 GB | Server-side | Yes | Repo |
How to Choose
- Storage Needs: For large call recordings, MEGA (20 GB free) or Backblaze B2 (pay-as-you-go) are ideal.
- Encryption: End-to-end by default? Proton Drive, MEGA, Tresorit excel here.
- Cost Structure: Flat lifetime plans (pCloud) vs. subscription (Proton, Tresorit).
- CLI Features: Sync, share links, mount as filesystem. pCloud and MEGAcmd offer mounts.
- Compliance: GDPR, HIPAA—Tresorit and Proton Drive specialize in compliance.
Using Each Service via CLI
1. pCloud
- Install dependencies:
apt update apt install build-essential libssl-dev libcurl4-openssl-dev git git clone https://github.com/pcloudcom/console-client.git cd console-client ./configure make make install
- Authenticate and mount:
pcloudcc -u your@email.com -p YourPassword pcloudcc -u your@email.com -p YourPassword -m /mnt/pcloud
Common issues: ensure FUSE is installed (apt install fuse), correct permissions on /mnt/pcloud.
2. MEGA (MEGAcmd)
- Install MEGAcmd:
wget https://mega.nz/linux/MEGAsync/xUbuntu_20.04/amd64/megacmd_1.5.0_amd64.deb dpkg -i megacmd_1.5.0_amd64.deb apt -f install
- Login and sync:
mega-login your@email.com YourPassword mega-sync /var/spool/asterisk/monitor /MyRecordings
Troubleshooting: if upload stalls, run mega-transfers to inspect queue. Re-login if session expires.
3. Proton Drive
- Install the CLI (requires Go):
apt install golang-go go install github.com/ProtonMail/proton-drive-cli@latest export PATH=PATH:(go env GOPATH)/bin
- Authenticate with OAuth:
proton-drive-cli login # Follow URL, paste code
- Upload a folder:
proton-drive-cli upload /var/spool/asterisk/monitor/ MyBackups/
Common pitfall: keep ~/.config/proton-drive-cli safe token refresh issues resolved by re-running login.
4. Filen
# Install via pip apt install python3-pip pip3 install filen-cli # Authenticate filen-cli login # Upload filen-cli upload /var/spool/asterisk/monitor/ /MyCalls/
Ensure Python3.8 and check ~/.config/filen-cli/config.json for credentials.
5. Tresorit
- Download and install Tresorit CLI package for Ubuntu/Debian from official site.
- Initialize:
tresorit-cli login tresorit-cli create --name ElastixBackup tresorit-cli sync /var/spool/asterisk/monitor/ ElastixBackup:
Issue: If FUSE mount fails, check kernel modules (modprobe fuse) and user in fuse group.
6. Icedrive
# Build from source git clone https://github.com/Icedrive-net/icedrive-cli.git cd icedrive-cli go build sudo install icedrive-cli /usr/local/bin/ # Authenticate icedrive-cli auth # Upload icedrive-cli upload /var/spool/asterisk/monitor/ /
Authenticate via browser copy-paste token. Network errors often resolved by updating Go runtime.
7. Backblaze B2
pip3 install b2 b2 authorize-account yourAccountId yourAppKey b2 create-bucket elastix-backups allPrivate b2 sync /var/spool/asterisk/monitor/ b2://elastix-backups/monitor
Note: slow list operations on large buckets—use --compareVersions=byDate for speed.
8. Amazon S3 (AWS CLI)
apt install awscli aws configure # Enter AWS Access Key, Secret, region aws s3 sync /var/spool/asterisk/monitor s3://my-elastix-backups/monitor
Watch out for IAM permissions—grant s3:PutObject, s3:GetObject on the bucket.
9. Dropbox (Dropbox-Uploader)
git clone https://github.com/andreafabrizi/Dropbox-Uploader.git cd Dropbox-Uploader chmod x dropbox_uploader.sh ./dropbox_uploader.sh # Follow prompts to generate token ./dropbox_uploader.sh upload /var/spool/asterisk/monitor /Elastix/
Frequent issue: hitting API rate limits—use --no-progress to reduce calls.
Conclusion
For Linux Elastix servers, MEGAcmd and pCloud offer generous free tiers and robust mounts. For strict E2E encryption, Proton Drive and Tresorit lead the pack. If your workflow demands cost-effective, large-scale storage, Backblaze B2 or AWS S3 may suit best. Align your choice with encryption requirements, budget, and CLI feature set to ensure seamless, scriptable backups of your PBX data.
Be the first to leave a comment