Rclone Azure Blob

Revision as of 05:34, 7 September 2024 by Maintenance script (talk | contribs) (Initial)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Rlcone

Set up Azure storage account with all defaults. Then follow the image to get the SAS key.

Install “rclone” - For unix-based systems run, curl https://rclone.org/install.sh | sudo bash, in the terminal. - For Windows-based systems goto, https://rclone.org/downloads/, to download the installation file.

Mounting in linux

Follow directions from the link; https://rclone.org/azureblob/. or reference this video 1. rclone config 2. Chose the following options; 1. n - for new remote 2. 30 - for Azure Blob 3. use defaults till you reach sas_url then copy the sas_url for your container. 1. note - you much create the sas_url from the container NOT the account, also make sure you give the right permissions. 2. Example sas_url: https://storeage.blob.core./cloud?sp=racwdlmeop&st=2023-07-03T12:41:58Z&se=2027-07-03T20:41:58Z&spr=keyofsomesort 4. use defaults to the end and quit the config. You see something like this below; ``bash Configuration complete. Options: - type: azureblob - account: storage - sas_url: “thesasurl” Keep this “sas” remote? y) Yes this is OK (default) e) Edit this remote d) Delete this remote y/e/d>

    Current remotes:
    
    Name                 Type
    ====                 ====
    sas                  azureblob
    
    e) Edit existing remote
    n) New remote
    d) Delete remote
    r) Rename remote
    c) Copy remote
    s) Set configuration password
    q) Quit config
    e/n/d/r/c/s/q> q
    </code>`<code>
  1. Next, you need to decide how you want to connect;
    1. Syncing sync a target directory at the moment. You will need to set a cron job to back and sync regularly. Here is the connection string; rclone sync /home/drok/blob sas:cloud/test rclone sync /target directory “remote name”:“container name”/“directory in container”. You must have it like this for it to work.
    2. Mounting is similar to sync, but the service stays connected. Here is the connection string; ‘rclone mount –allow-non-empty sas:teleportcloud/test /home/drok/blob/’. Running the command like this in the terminal will remain active. You will need to run this in the background as a service.
      1. To run on boot, create a system file. Start with a simple script, nano rclone_blobmount.sh;
      #!/bin/bash
      rclone mount --allow-non-empty --daemon sas:teleportcloud/test /home/drok/blob/
      
       Run </code>chmod +x rclone_blobmount.sh` to make it executable.
      1. Create a systemd file sudo nano /etc/systemd/system/blobmount.service;
      [Unit]
      Description=rclone blobstorage mount
      After=network.target
      After=systemd-user-sessions.service
      After=network-online.target
      
      [Service]
      User=drok
      Type=forking
      ExecStart=/home/drok/rclone_blobmount.sh
      TimeoutSec=30
      Restart=on-failure
      RestartSec=30
      StartLimitInterval=350
      StartLimitBurst=10
      
      [Install]
      Alias=blobmount.service
      WantedBy=multi-user.target
      
      1. Restart systemd daemon; sudo systemctl daemon-reload
      2. Run the service; sudo systemctl start blobmount.service
      3. Enable on boot; sudo systemctl enable blobmount.service