Find the proper driver at the NVidia website.
Note: Make sure to select "Linux 64-bit" as your OS
Hit the "Search" button.
Find the proper driver at the NVidia website.
Note: Make sure to select "Linux 64-bit" as your OS
Hit the "Search" button.
This guide aims to take a look at a distributed, scalable SeaweedFS as a backend storage for an OwnCloud server. Why not NextCloud? Because NextCloud's S3 connector is outdated and not maintained, and won't work with SeaweedFS. Both OwnCloud and NextCloud have the same support and the same plugins. The only concern anyone has is some weird split that happened between the two years ago. It's fine.
This was a giant pain in the ass, but eventually I got it working. This is how.
All servers start from fresh, clean installs of Ubuntu 18.04.3
This guide will use three seperate boxes (one master/OwnCloud and two slaves). I'm assuming there's spare, unformatted disks attached to the slaves. If not, ignore or change the section on mounting to fit your needs.
This guide runs through setting up AptCacherNg on a proxy/server to provide apt caching to clients. The client proxy scripts allow for multiple proxies, and account for proxies being offline.
Note that, for obvious reasons, this only works on Debian-based machines (Ubuntu and derivatives as well).
#!/usr/bin/env bash | |
SOURCE=${BASH_SOURCE[0]} | |
while [ -L "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink | |
DIR=$( cd -P "$( dirname "$SOURCE" )" >/dev/null 2>&1 && pwd ) | |
SOURCE=$(readlink "$SOURCE") | |
[[ $SOURCE != /* ]] && SOURCE=$DIR/$SOURCE # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located | |
done | |
DIR=$( cd -P "$( dirname "$SOURCE" )" >/dev/null 2>&1 && pwd ) |
#!/usr/bin/env bash | |
export INFO_ENABLED=true | |
export DEBUG_ENABLED=true | |
export TMP_DIR="/tmp/commander" | |
if [[ -d "${TMP_DIR}" ]]; then | |
rm -rf "${TMP_DIR}" | |
fi | |
mkdir -p "${TMP_DIR}" |
#!/usr/bin/env bash | |
export LANG_VAR_NOT_SET="Variable {var} is not set." | |
export LANG_FROM_TYPE_NOT_RECOGNIZED="from type {type} not recognized." |
#!/usr/bin/env bash | |
# https://stackoverflow.com/questions/51653450/show-call-stack-in-bash | |
stacktrace () { | |
local i=1 line file func | |
while read -r line func file < <(caller ${i}); do | |
echo >&2 "[${i}] ${file}:${line} ${func}()" | |
echo >&2 ">>> $(sed -n "${line}"p "${file}")" | |
((i++)) | |
done |
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKCrHoDSGJ1dj9QMj9AysdHAQhmNnNgah5IgTSOT74Ym eddsa-key-20221010 |
Choosing the right hardware: Hardware is hard
High-performance Bukkit fork: Paper
High-performance startup flags: Startup flags
As is outlined in this LiveOverflow video, trusting information is hard.
Note that I disagree with some of the key talking points in the video, as you will see later on in this guide.
My credentials, as of time of writing: