Objectius
Sota un servidor proxmox arrancar una màquina virtual LXC amb debian bookworm. Després voldré instal·lar plex, samba i configurar-ho com a TimeMachine pel meu Mac
LXC (Linux Containers) és una tecnologia de virtualizació en el nivell de sistema operatiu (SO) per a Linux. OpenVZ permet que un servidor físic executi múltiples instàncies de sistemes operatius aïllats, coneguts com a Servidors Privats Virtuals (SPV o VPS en anglès) o Entorns Virtuals (EV).
Prepara la màquina virtual
Dono per fet que disposes de proxmox instal·lat i operatiu, que hi has posat arrancat una LXC amb debian. Sinó, mira aquí 🚀.
Instal·la Plex
Entra a la màquina virtual i com administrador, root, executa quatre coses:
apt upgrade -y
apt install curl gnupg -y
curl -sS https://downloads.plex.tv/plex-keys/PlexSign.key | gpg --dearmor | tee /usr/share/keyrings/plex.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/plex.gpg] https://downloads.plex.tv/repo/deb public main" > /etc/apt/sources.list.d/plexmediaserver.list
apt update && apt install plexmediaserver -y
systemctl status plexmediaserver
Compartir ZFS amb LXC
1. Màquina Proxmox
zfs create HD-ZFS/apps
zfs create HD-ZFS/media_root
zfs create HD-ZFS/timemachine
groupadd -g 110000 nas_shares
useradd nas -u 101000 -g 110000 -m -s /bin/bash
zfs set mountpoint=/srv/zfs/apps HD-ZFS/apps
zfs set mountpoint=/srv/zfs/media_root HD-ZFS/media_root
zfs set mountpoint=/srv/zfs/timemachine HD-ZFS/timemachine
chown -R nas:nas_shares /srv/zfs/apps
chown -R nas:nas_shares /srv/zfs/media_root
chown -R nas:nas_shares /srv/zfs/timemachine
2. Màquina LXC
root@plex:~# id angel
uid=1000(angel) gid=1000(angel) groups=1000(angel),100(users)
root@plex:~# groupadd -g 10000 nas_shares
root@plex:~# usermod -a -G nas_shares angel
root@plex:~# id angel
uid=1000(angel) gid=1000(angel) groups=1000(angel),100(users),10000(nas_shares)
root@plex:~# halt
root@plex:~# Connection closed by remote host.
3. Màquina Proxmox
root@cloud:~# pct set 102 -mp0 /srv/zfs/media_root,mp=/mnt/media_root
root@cloud:~# pct set 102 -mp1 /srv/zfs/apps,mp=/mnt/app_config
root@cloud:~# pct set 102 -mp2 /srv/zfs/timemachine,mp=/mnt/timemachine
Ho escriu a la configuració de la màquina LXC que em creat, en el meu cas/etc/pve/lxc/102.conf
Compartir SMB amb cockpit 🚀
Màquina LXC
root@plex:~# usermod -a -G nas_shares plex
root@plex:~# apt update && apt dist-upgrade -y
root@plex:~# apt install cockpit --no-install-recommends
root@plex:~# wget https://github.com/45Drives/cockpit-file-sharing/releases/download/v3.3.7/cockpit-file-sharing_3.3.7-1focal_all.deb
root@plex:~# wget https://github.com/45Drives/cockpit-identities/releases/download/v0.1.12/cockpit-identities_0.1.12-1focal_all.deb
apt install ./*.deb -y
root@plex:~# rm *.deb
zfs set atime=off dnodesize=auto aclinherit=passthrough acltype=posixacl xattr=sa exec=off devices=off setuid=off canmount=on HD-ZFS/timemachine
Instal·lo samba i afegeixo un usuari
apt update
apt install -y samba
systemctl status smbd
adduser angel
smbpasswd -a angel
cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
mkdir -p /mnt/timemachine
mkdir -p /mnt/apps
systemctl restart smbd
Edita samba Amb samba-regedit
Per acabar-ho d’adobar hi ha samba-regedit
, configuració de samaba a la linia de comandament.
Pot ser interessant cockpit-file-sharing
i cockpit-identities
de 45Drive
nano /etc/samba/smb.conf
[global]
workgroup = WORKGROUP
server string = %h server
#======================= Share Definitions =======================
include = registry
Es veu així però caldrà editar amb samba-regedit
. Un cop modificat reïnicio samba
systemctl restart smbd
Edita samba directament, sense samba-regedit
També tenim configuració manual:
nano /etc/samba/smb.conf
[global]
registry shares = Yes
server string = %h server
fruit:zero_file_id = yes
fruit:encoding = native
fruit:delete_empty_adfiles = yes
fruit:wipe_intentionally_left_blank_rfork = yes
fruit:veto_appledouble = no
fruit:posix_rename = yes
fruit:model = MacSamba
fruit:aapl = yes
fruit:nfs_aces = no
fruit:metadata = stream
idmap config * : backend = tdb
vfs objects = catia fruit streams_xattr
[Aplicacions]
force group = nas_shares
path = /mnt/apps
read only = No
valid users = @nas_shares angel eudald nobody
fruit:nfs_aces = no
fruit:zero_file_id = yes
fruit:metadata = stream
fruit:encoding = native
[TimeMachine]
browseable = No
comment = Time Machine
inherit permissions = Yes
map acl inherit = Yes
path = /mnt/timemachine
read only = No
vfs objects = acl_xattr catia fruit streams_xattr
fruit:nfs_aces = no
fruit:time machine = yes
fruit:zero_file_id = yes
fruit:metadata = stream
fruit:encoding = native
Avahi Daemon
apt-get install -y avahi-daemon
nano /etc/avahi/services/smb.service
systemctl status avahi-daemon.service
systemctl restart avahi-daemon.service
Editem el servei de avahi nano /etc/avahi/services/smb.service
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h</name>
<service>
<type>_smb._tcp</type>
<port>445</port>
</service>
<service>
<type>_adisk._tcp</type>
<port>0</port>
<txt-record>dk0=adVN=TimeMachine,adVF=0x82</txt-record>
<txt-record>sys=adVF=0x100</txt-record>
</service>
<service>
<type>_device-info._tcp</type>
<port>0</port>
<txt-record>model=TimeCapsule</txt-record>
</service>
</service-group>
Desactivem ipv6 nano /etc/avahi/avahi-daemon.conf
amb use-ipv6=no
Compartit: public
nano /etc/samba/smb.conf
[share]
comment = Debian File Server Share
path = /srv/samba/share
browsable = yes
guest ok = yes
read only = no
create mask = 0755
sudo mkdir -p /srv/samba/share
sudo chown nobody:nogroup /srv/samba/share/
Compartit: homes
nano /etc/samba/smb.conf
[homes]
comment = Home Directories
browseable = no
# next parameter to 'no' if you want to be able to write to them.
read only = no
create mask = 0700
# Directory creation mask is set to 0700 for security reasons. If you want to
# create dirs. with group=rw permissions, set next parameter to 0775.
directory mask = 0775
valid users = %S
Com crear el disk tipus sparsebunde
amb Time Machine
Aquests són els passos per crear una destinació de còpia de seguretat de Time Machine mitjançant una imatge sparse, que pot ser útil quan la unitat ja s’està utilitzant per fer una còpia de seguretat d’altres Mac:
- Obriu la Utilitat de disc al vostre Mac. El podeu trobar a la carpeta Aplicacions/Utilitats Applications/Utilities folder.
- A la Utilitat de disc, aneu al menú “Arxiu” i seleccioneu “Nova Imatge” > “Imatge en blanc…“
- Al diàleg que apareix, especifiqueu la configuració de la imatge sparse. Podeu triar la mida, el format i les opcions de xifratge desitjades en funció de les vostres preferències. Penseu en la “mida desitjada” com la mida total d’aquesta “unitat virtual”, si voleu.
- Assegureu-vos de seleccionar “Imatge de disc dimàmica” (“sparse bundle disk image”) com a format d’imatge. Aquest format està dissenyat específicament per a còpies de seguretat de Time Machine i es recomana per a propòsits d’emmagatzematge i còpies de seguretat eficients.
- El format hauria de ser APFS si el macOS és High Sierra o posterior.
- La partició hauria de ser Partició única - Mapa de particions GUID (Single partition - GUID Partition Map).
- Trieu una ubicació on voleu desar la imatge sparse. En aquest cas seria la teva unitat externa.
- El xifratge és opcional
- Proporcioneu un nom per a la imatge sparse, com ara “TimeMachineBackup” o qualsevol altre nom descriptiu que preferiu.
- Feu clic al botó “Desar” per crear la imatge sparse. Trobareu un fitxer d’imatge de disc dispers “TimeMachineBackup.sparsebunde” desat a la vostra unitat externa.
- Un cop desat, feu doble clic al fitxer i es muntarà al vostre escriptori
- Utilitzeu el “spotlight” per llançar “Terminal”
- Escriu
sudo tmutil setdestination
(observeu l’espai addicional) - Al Finder, navegueu fins al fitxer d’imatge .sparsebundle que heu desat al pas 10 (no el disc muntat a l’escriptori).
- Arrossegueu-lo i deixeu-lo anar a la finestra del terminal i premeu Intro
Introduïu la vostra contrasenya d’usuari quan se us demani. Nota: per disseny, a mesura que escriviu la contrasenya, no hi ha cap comentari: el teclat funciona
sudo tmutil setdestination /Volumes/macbook
- El disc muntat assumeix la icona del disc Time Machine
- Aneu a Configuració del sistema de Time Machine, feu clic amb el botó dret i trieu una còpia de seguretat ara.
La Imatge de disc muntada, ara té una icona de Time Machine després d’emetre l’ordre del terminal. Còpia de seguretat en curs. La imatge arribarà a un màxim de 500 GB tal com ha predefinit DiskUtility en crear, però ocuparà tant d’espai com emmagatzema.
No us oblideu d’establir la freqüència de les vostres còpies de seguretat, ja que aquest procés sembla establir les còpies de seguretat a una freqüència manual que requereix que l’usuari iniciï la còpia de seguretat. Utilitzeu el botó Opcions per definir una freqüència de còpia de seguretat horària, diària o setmanal.