I went through my notes and compiled a little step-by-step. However, my notes are really outdated, so I can not guarantee, that the isn’t something that has changed over the last two years, but it may serve you as a reference. Here we go:
First create a repo:
kopia repository create filesystem /
--path /path/to/repo /
--encryption=AES256-GCM-HMAC-SHA256 /
--block-hash=BLAKE3-256-128 /
--object-splitter=DYNAMIC-4M-BUZHASH /
--override-username=<server-user> /
--override-hostname=<hostname> /
--password=<your password>
Example repo config file:
{
"storage": {
"type": "filesystem",
"config": {
"path": "/path/to/repo",
"dirShards": null,
"fileMode": 384,
"dirMode": 448
}
},
"caching": {
"cacheDirectory": "</path/to/cache dir>",
"maxCacheSize": 34359738368,
"maxMetadataCacheSize": 274877906944,
"maxListCacheDuration": 86400
},
"hostname": "<kopia hostname",
"username": "server-user",
"description": "Repository in Filesystem: <path/to/repo>",
"enableActions": false,
"formatBlobCacheDuration": 900000000000
}
Be aware that all numbers may be need to be adjusted to your needs, as they depend on the size of the repo.
Start Kopia Server from the cli:
kopia server start \
--tls-cert-file /path/to/my.cert \
--tls-key-file /path/to/my.key \
--address 0.0.0.0:5152 \
--config-file=/path/to/repo.config \
--log-level=error \
--file-log-level=error \
--log-dir="/path/to/log folder" \
--server-username <server-user> \
--password=u<your password> &
There are multiple ways to do this and I do know that some people are not comfortable writing the password in a shell script, but I actually don’t care.
Add a remote repo user:
kopia server user add /
--password=<server user password> /
--user-password=<new repo user password> /
<news user@new host>
Hope this helps a bit.