Best cloud storage services with CLI for Elastix: (Comparison)

TopLinux

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

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

  1. 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
  1. 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)

  1. 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
  1. 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

  1. 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
  1. Authenticate with OAuth:
proton-drive-cli login
# Follow URL, paste code
  1. 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

  1. Download and install Tresorit CLI package for Ubuntu/Debian from official site.
  2. 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

Leave a Reply

Your email address will not be published. Required fields are marked *