# OwnCloud Archive Setup - Pavon Camera Footage

**Purpose:** Mount Pavon's camera archive (35TB) in OwnCloud for web/mobile access
**Display Name:** "Archive" (or "Camera Archive")
**User:** pavon
**Created:** April 12, 2026

---

## Overview

This guide sets up Pavon's camera footage archive (stored on the Pavon Unraid server at 172.16.1.33) as external storage in OwnCloud, accessible via:
- OwnCloud web interface (cloud.acghosting.com)
- OwnCloud desktop client
- OwnCloud mobile apps

**After cleanup completes:**
- Archive size: ~35TB
- Files: Camera footage from May 2023 - Oct 2023
- Structure: /Storage/cam01, /Storage/cam02, etc.

---

## Prerequisites

### Step 1: Enable SMB Share on Pavon Unraid

**On Pavon server (172.16.1.33):**

1. **Access Unraid WebGUI:**
   - Open browser: `http://172.16.1.33`
   - Login as root

2. **Configure Storage Share:**
   - Navigate to: **Shares** tab
   - Click on: **Storage** share
   - Settings to verify/configure:
     ```
     Export: Yes
     SMB Security Settings: Private
     Case sensitivity: Auto
     Allocation method: High-water
     SMB enabled: Yes
     ```

3. **Set SMB Permissions:**
   - **Option A - Simple (Guest Access):**
     ```
     Export: Yes
     Security: Public
     ```

   - **Option B - Secure (User Access - Recommended):**
     - Navigate to: **Users** tab
     - Create user: `pavon`
     - Set password: (choose strong password)
     - Back to **Storage** share settings:
       ```
       Export: Yes
       Security: Secure (only specified users)
       Read/Write Access: pavon
       ```

4. **Apply and Test:**
   - Click "Apply"
   - From Jupiter, test connection:
     ```bash
     smbclient -L //172.16.1.33 -U pavon
     # Should list "Storage" share
     ```

---

## OwnCloud Configuration

### Method 1: Web UI Configuration (Recommended)

**Access OwnCloud:**
1. Open browser: `http://cloud.acghosting.com` or `http://172.16.3.22`
2. Login as `pavon` user

**Enable External Storage App:**
1. Click **Settings** (gear icon, top-right)
2. Navigate to: **Apps**
3. Search for: "External Storage"
4. Click: **Enable** (if not already enabled)

**Add External Storage Mount:**
1. **Settings → Admin → External Storage**
   - Or if not admin, ask admin to configure for pavon user

2. **Add Storage:**
   - Folder name: `Archive` (or `Camera Archive`)
   - External storage: **SMB / CIFS**
   - Authentication: **Username and password**

3. **Configuration:**
   ```
   Host: 172.16.1.33
   Share: Storage
   Remote subfolder: / (leave blank for root, or specify camera folder)
   Domain: (leave blank)
   Username: pavon (if using secure access)
   Password: [pavon's SMB password]
   ```

4. **Advanced Options:**
   ```
   ☑ Enable SSL
   ☐ Check for changes: Manual (for performance)
   ☑ Enable sharing
   ```

5. **Available for:**
   - Select: `pavon` user only
   - Or: All users (if needed)

6. **Click:** Green checkmark to save

**Test Access:**
1. Go to **Files** view
2. You should see new folder: **Archive**
3. Click to browse camera footage
4. Verify folders visible: cam01, cam02, etc.

---

### Method 2: OCC Command Line (If SSH Access Available)

**On OwnCloud VM (172.16.3.22):**

```bash
# SSH to OwnCloud VM (if SSH enabled)
ssh root@172.16.3.22

# Create external storage mount
sudo -u apache php /var/www/html/owncloud/occ files_external:create \
  "Archive" smb password::password \
  --user pavon \
  -c host=172.16.1.33 \
  -c share=Storage \
  -c user=pavon \
  -c password='[pavon_smb_password]' \
  -c root='' \
  -c domain=''

# Verify mount
sudo -u apache php /var/www/html/owncloud/occ files_external:list
```

**Enable for user:**
```bash
sudo -u apache php /var/www/html/owncloud/occ files_external:applicable \
  [mount_id] --add-user pavon
```

---

### Method 3: Via Jupiter (Mount and Share)

**Alternative approach - mount on Jupiter and share via OwnCloud:**

1. **Mount on Jupiter:**
   ```bash
   ssh root@172.16.3.20

   # Create mount point
   mkdir -p /mnt/disks/pavon_archive

   # Add to /etc/fstab for persistent mount
   echo "//172.16.1.33/Storage /mnt/disks/pavon_archive cifs username=pavon,password=[password],vers=3.0,uid=99,gid=100 0 0" >> /etc/fstab

   # Mount it
   mount /mnt/disks/pavon_archive

   # Verify
   ls -lh /mnt/disks/pavon_archive
   ```

2. **Create Symlink in OwnCloud:**
   - Access OwnCloud VM filesystem
   - Create symlink in Pavon's OwnCloud data folder:
     ```bash
     ln -s /path/to/jupiter/mount /var/www/html/owncloud/data/pavon/files/Archive
     ```

3. **Scan files:**
   ```bash
   sudo -u apache php /var/www/html/owncloud/occ files:scan pavon
   ```

---

## Access After Setup

### Web Access
- URL: `http://cloud.acghosting.com` or `http://172.16.3.22`
- Login: pavon / Password44$
- Navigate to: **Files → Archive**
- Browse: cam01/, cam02/, etc.

### Desktop Client
- Download: OwnCloud Desktop Client
- Server: `http://cloud.acghosting.com`
- Login: pavon credentials
- **Archive folder appears** in file sync

### Mobile Access
- App: OwnCloud iOS/Android
- Server: `http://cloud.acghosting.com`
- Login: pavon credentials
- Browse: **Archive** folder
- **Stream camera footage** directly from phone

---

## Performance Considerations

### Cache Settings
For 35TB of external storage, configure:

**In OwnCloud:**
- Settings → Admin → External Storage
- **Check for changes:** Manual (prevents continuous scanning)
- **Enable caching:** Yes (if available)

**Expected Performance:**
- Initial folder listing: 5-10 seconds
- File playback: Depends on network (1Gbps LAN = good)
- Large file downloads: Full LAN speed (~100 MB/s)

### Network Optimization
- Pavon server: 172.16.1.33 (1Gbps ethernet recommended)
- OwnCloud VM: 172.16.3.22 (on Jupiter - 1Gbps)
- **Path:** OwnCloud VM → Jupiter → Network → Pavon
- **Best case:** ~80-100 MB/s for large file transfers

---

## Troubleshooting

### Cannot Connect to Share

**Check Pavon SMB:**
```bash
# From Jupiter
smbclient -L //172.16.1.33 -U pavon

# Should show "Storage" share
```

**Check firewall:**
```bash
# On Pavon
iptables -L | grep 445
# SMB port 445 should be allowed
```

### Archive Folder Shows Empty

**Rescan external storage:**
1. OwnCloud Settings → External Storage
2. Click folder icon next to Archive mount
3. Force rescan

**Via command line:**
```bash
sudo -u apache php /var/www/html/owncloud/occ files_external:verify [mount_id]
```

### Slow Performance

**Check network path:**
```bash
# From OwnCloud VM to Pavon
ping 172.16.1.33
# Should be <5ms on local network
```

**Check disk I/O on Pavon:**
```bash
ssh root@172.16.1.33
iotop
# Verify disk is not overloaded
```

### Permission Denied

**Check SMB credentials:**
- Verify pavon user exists on Pavon Unraid
- Verify password is correct
- Check share permissions in Unraid WebGUI

**Check OwnCloud user:**
- Verify pavon user exists in OwnCloud
- Verify external storage is assigned to pavon user

---

## Security Notes

### Credentials
- **Pavon SMB user:** Create strong password
- **Store in 1Password:** `op://Clients/Pavon/Unraid SMB`
- **OwnCloud password:** Already set (Password44$)

### Access Control
- External storage visible **only to pavon user**
- Not shared with other OwnCloud users
- Cannot be accidentally deleted (read/write from source)

### Backup
- Archive is stored on Pavon (separate from Jupiter)
- Not backed up by OwnCloud (source is already archive)
- Pavon has parity protection (Unraid)

---

## Verification Checklist

After setup, verify:
- [ ] Archive folder visible in OwnCloud Files view
- [ ] Can browse camera folders (cam01, cam02, etc.)
- [ ] Can open/play .avi files
- [ ] Can download files
- [ ] Performance acceptable (not timing out)
- [ ] Mobile app can access Archive
- [ ] Desktop client can sync (if desired)

---

## Maintenance

### Monthly Checks
- Verify mount is still accessible
- Check disk space on Pavon (should stay at 84TB free after cleanup)
- Test file access via web/mobile

### Quarterly
- Review camera footage retention (delete >3 years old)
- Check for errors in OwnCloud logs
- Verify performance still acceptable

---

## Alternative: NFS Instead of SMB

**If SMB has issues, try NFS:**

**On Pavon:**
1. Enable NFS export for Storage share
2. Set NFS permissions

**In OwnCloud:**
1. External Storage type: **NFS**
2. Host: 172.16.1.33
3. Remote folder: /mnt/user/Storage
4. Mount options: vers=4

**Advantages:**
- Better performance for large files
- Less overhead
- Native Linux protocol

**Disadvantages:**
- No Windows client access (SMB required for Windows)

---

## Next Steps

1. **Enable Storage SMB share** on Pavon (via Unraid WebGUI)
2. **Configure external storage** in OwnCloud (via Web UI or OCC)
3. **Test access** via web browser
4. **Verify mobile/desktop** clients can access
5. **Document credentials** in 1Password

**After cleanup completes**, the Archive folder will contain:
- ~35TB of camera footage
- May 2023 - Oct 2023
- 11 camera folders (cam02, cam04, cam06, cam07, cam08, cam10, cam11, cam12, cam13, cam14, cam16)

---

**Created:** April 12, 2026
**Last Updated:** April 12, 2026
**Status:** Awaiting Pavon cleanup completion + configuration
