Skip to content

TrueNAS & Nextcloud

Linux
  • Als Nextcloud User folge ich natürlich Nextcloud auch auf Twitter, so fiel mir dieser Beitrag auf.

    TrueNAS? Das hatte ich irgendwo auch schon mal gelesen, hatte es aber vergessen. Ok, ich wusste grob was es macht und jetzt gab es eine Möglichkeit, da einfach Nextcloud zu installieren? Ok, nicht das ich das jetzt gerade brauche, aber das alte Spielkind musste das Testen.

    Ich wollte das auf echter Hardware testen, aber jetzt wurde es schwierig. Mein Zweitrechner ist mit dem PROXMOX Backup Server belegt, da wollte ich nicht ran. Da fiel mir ein, ich hab noch einen alten NUC, den keiner kaufen möchte, der hier in der Ecke rum lag. Dann testen wir damit mal, obwohl ich nicht wusste, ob der von der Leistung noch reichte.

    Ok, ich brauchte ein Image.

    ef550935-2ec9-4d9f-8129-aaebb841273a-image.png

    Es gibt drei verschiedene Versionen!? Als Spielkind, habe ich mich für TrueNAS SCALE entschieden. Zwei Aspekte, sollten man vorher beachten.

    • BETA Evt. nicht 2TB an wichtigen Daten dort speichern 😉

    und

    SCALE is developed as an appliance that uses specific Linux packages with each release. Attempting to update SCALE with apt or methods other than the SCALE web interface can result in a nonfunctional system.

    Also, nur das eingebaute Update System nutzen. Findet man unter System Settings / Update

    Das Image auf den USB-Stick und die Maschine damit gestartet. TrueNAS installiert und neugestartet. Bei der Installation kam ein Warnhinweis, das mein NUC keine 8GB RAM hat, das ist die empfohlenen Menge. Ich dachte mir aber, das das Grundsystem mit den 4GB RAM laufen müsste.

    6ec75aef-82fb-4999-9c8a-fcb9296c14bf-image.png

    Gut, es läuft. Hier auf dem Screenshot schon mit eingerichtetem Storage und installiertem Nextcloud. Man sieht nun sofort, das die Empfehlung für 8GB RAM nicht gewürfelt ist. Da ist nicht mehr viel frei, somit dürfte ich damit keinen Spaß haben, noch andere Sachen zu testen. Für einen ersten Überblick sollte es reichen...

    Storage

    Nach der Installation muss erst ein Storage eingerichtet werden. Auch hier kam direkt eine Warnmeldung. Was wollte ich machen? Ich habe eine USB-Platte als Storage anmelden wollen, das ist natürlich auf einem NAS nicht sinnvoll. Man braucht mindestens zwei Platten um ein RAID bzw. besser einen ZFS-Pool einzurichten. Auch hier habe ich die Warnmeldung bestätigt und mit einer Platte installiert.

    Nextcloud

    Danach konnte man ganz einfach Nextcloud als APP installieren.

    1d6cb958-4160-4088-8ba3-d116c773ed89-image.png

    Auf Install klicken, ein paar Angaben ergänzen - fertig. Praktische Sache. Nextcloud läuft dann auf dem TrueNAS als Docker Container. Den Port wird bei der Installation angegeben.

    1381c722-7717-496c-802b-c20879a35473-image.png

    SSH

    Schauen wir uns mal ein paar Dinge etwas genauer an. Dafür brauchte ich einen SSH Zugang. Der ist vorbildlich abgeschaltet. Kann man mit System Settings / Services aktivieren. Danach kann man sich ja an einem Debian System mit dem User root nicht anmelden. Wir brauchen einen User. Unter Credentials / Local Users einen anlegen. Danach kann man dann per SSH ins System.

    fdisk

    truenas# fdisk -l
    Disk /dev/sda: 119.24 GiB, 128035676160 bytes, 250069680 sectors
    Disk model: PLEXTOR PX-128M5
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: gpt
    Disk identifier: 16DD0615-F91C-4A9F-86F3-BCF140FE7087
    
    Device        Start       End   Sectors   Size Type
    /dev/sda1        40      2087      2048     1M BIOS boot
    /dev/sda2      2088   1050663   1048576   512M EFI System
    /dev/sda3  34605096 250069646 215464551 102.7G Solaris /usr & Apple ZFS
    /dev/sda4   1050664  34605095  33554432    16G Linux swap
    
    Partition table entries are not in disk order.
    
    
    Disk /dev/sdb: 465.76 GiB, 500107862016 bytes, 976773168 sectors
    Disk model: Portable SSD T5 
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 33553920 bytes
    Disklabel type: gpt
    Disk identifier: 372BC4C0-52DA-40F2-B75C-F250F28147AE
    
    Device       Start       End   Sectors   Size Type
    /dev/sdb1      128   4194304   4194177     2G Linux swap
    /dev/sdb2  4194432 976773134 972578703 463.8G Solaris /usr & Apple ZFS
    
    
    Disk /dev/mapper/sdb1: 2 GiB, 2147418624 bytes, 4194177 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 33553920 bytes
    

    free

    truenas# free
                   total        used        free      shared  buff/cache   available
    Mem:         3472820     2947888      227328       47396      297604      269624
    Swap:        2097084       59904     2037180
    

    Jo, Speicher ist ein Problem.

    Fazit

    Ein erstes Fazit. Das macht einen sehr guten Eindruck, die Einstellungen in Bezug auf Sicherheit sehen sehr ordentlich aus. Die Nextcloud Installation war easy und funktionierte gut. Im Backend hat er wenig zu meckern.

    55acbd54-c57c-4f1b-bfac-6b098f1f1fd1-image.png

    Macht Lust auf weitere Tests, aber mit dem NUC? Ich weiß nicht so richtig, Geld ausgeben für mehr Speicher, dafür erscheint er mir als zu alt. Muss ich drüber nachdenken. Also, wer so was sucht,das kann man sich anschauen 🙂

  • Nextcloud - Upgrade Hub 9 (30.0.0)

    Nextcloud
    3
    0 Stimmen
    3 Beiträge
    823 Aufrufe
    FrankMF

    Ich habe dann mal weitergesucht, dank ein paar Tipps aus dem Fediverse, sehe ich jetzt was heller 😉

    towo (@towo@chaos.social)

    @FrankM@nrw.social IIRC ist das auch so eine External App, die man dazu packen muss. Da darf man dann noch der Nextcloud Zugriff auf eine Docker-API, damit die die Applikationen hochzieht, geben; alternativ geht wohl auch ein statisches Deployment.

    favicon

    chaos.social (chaos.social)

    Nachdem ich dann ein paar Apps gefunden und installiert hatte

    AppAPI Flow

    tauchte dann im Benutzermenü, rechts oben, folgendes auf.

    Bildschirmfoto_20240922_101125.png

    Das Interessante ist der Menüpunkt Externe Apps.

    Nun sollte ich diese Funktion verstanden haben. Das Nextcloud Team integriert also diese Windmill App via Docker Container und greift dann darauf zu. In der Videopräsentation war doch von in Nextcloud integriert die Werbeansprache!? Ein Docker Container ist für mich keine Integration.

    Ich habe einige rudimentäre Kenntnisse von Docker, ausschließlich lokal. Aber, ich komme nicht auf die Idee das auf einem produktiven Server zu installieren. Somit kann ich das Testen hier beenden und die Apps alle wieder deinstallieren.

    Jetzt habe ich noch im Kopf, ob man das mal mit einem Nextcloud-AIO testen soll? Natürlich auf einem Testsystem.

    Link Preview Image GitHub - nextcloud/all-in-one: 📦 The official Nextcloud installation method. Provides easy deployment and maintenance with most features included in this one Nextcloud instance.

    📦 The official Nextcloud installation method. Provides easy deployment and maintenance with most features included in this one Nextcloud instance. - nextcloud/all-in-one

    favicon

    GitHub (github.com)

  • Nextcloud Hub8 Keine Previews

    Nextcloud
    2
    0 Stimmen
    2 Beiträge
    305 Aufrufe
    FrankMF

    Noch als Ergänzung, der Server läuft mit Debian 12

    # uname -a Linux webserver1-4gb-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.90-1 (2024-05-03) x86_64 GNU/Linux
  • Nextcloud API Zugriff

    Nextcloud
    4
    0 Stimmen
    4 Beiträge
    235 Aufrufe
    FrankMF

    Ok, es gab noch ein Problem und zwar '/'. Habe das Script jetzt nochmal umgebaut, jetzt bin ich soweit zufrieden. Die Textdatei ist auf meine Bedürfnisse angepasst worden

    1.2.01 1.2.01.1 Text1.1 1.2.01.2 Text1.2 1.2.02 1.2.02.1 Text2.1/Testing 1.2.02.2 Text2.2

    1.2.01 und 1.2.02 erzeugt dann einen Ordner, der Rest sind dann Unterordner.

    """ Tool to create folders using the Nextcloud API """ ############################################### # Imports ############################################### import subprocess from pathlib import Path ############################################### # Constant ############################################### # Get home directory from user USERHOME = str(Path.home()) NCPATH = 'https://DOMAIN/remote.php/dav/files/Frank/Python_Script/' USERNAME = 'USER' PASSWORD = 'PASSWORD' ############################################### # Function to crate folder with nextcloud api ############################################### def read_textobject(): # read folders to create from textfile with open(f'{USERHOME}/Textdatei.txt', 'r') as obj: # create object for line in obj: line_split = line.split(' ') elements = line_split[0].split('.') try: if elements[3]: main_folder = 0 # replace whitespaces with %20, and / with _ and remove linefeed (\n) path = Path((line.replace(' ', '%20').replace('/', '_')).rstrip('\n')) except IndexError: print("Element is main folder") main_folder = 1 # replace whitespaces with %20, and / with _ and remove linefeed (\n) main = Path((line.replace(' ', '%20').replace('/', '_')).rstrip('\n')) else: print("Element is not a main folder") ############################################### # Create directory ############################################### if main_folder == 1: # Main folder try: args = ['curl', '-u', f'{USERNAME}:{PASSWORD}', f'{NCPATH}{main}', '-X', 'MKCOL'] result = subprocess.run(args, check=True, capture_output=True, text=True) except subprocess.CalledProcessError as error: print(result.stderr) else: if result.stdout: print(result.stdout) else: print('Directory created successful') else: # Not a main folder try: args = ['curl', '-u', f'{USERNAME}:{PASSWORD}', f'{NCPATH}{main}/{path}', '-X', 'MKCOL'] result = subprocess.run(args, check=True, capture_output=True, text=True) except subprocess.CalledProcessError as error: print(result.stderr) else: if result.stdout: print(result.stdout) else: print('Directory created successful') else: print(result.stdout) obj.close() if __name__ == '__main__': read_textobject()
  • Nextcloud Hub II (23.0.0) - 2FA geht nicht mehr!

    Nextcloud
    2
    0 Stimmen
    2 Beiträge
    236 Aufrufe
    FrankMF

    Die Apps sind jetzt für 23.0.0. aktualisiert.

    0107b034-2b45-477d-b059-a79d8c9fec73-grafik.png

  • Nextcloud - Deck

    Nextcloud
    2
    0 Stimmen
    2 Beiträge
    447 Aufrufe
    FrankMF

    Für meine Lieblings App gibt es auch eine mobile App.

    Link Preview Image Nextcloud Deck - Apps on Google Play

    Client for Nextcloud Deck

    favicon

    (play.google.com)

    Diese App kostet 2,99€, ich denke das ist gut investiert.

    Deck.jpg

    Und so was müßte es jetzt noch bei meinem Arbeitgeber geben 😞

  • Urgent security issue in NGINX/php-fpm

    Nextcloud
    5
    0 Stimmen
    5 Beiträge
    411 Aufrufe
    FrankMF

    https://ollifromtheblog.de/der-sturm-im-wasserglas-nextcry-und-die-angebliche-nextcloud-sicherheitslucke/

  • Nextcloud - Redis Cache

    Nextcloud
    1
    0 Stimmen
    1 Beiträge
    429 Aufrufe
    Niemand hat geantwortet
  • Nextcloud - App Text

    Nextcloud
    2
    0 Stimmen
    2 Beiträge
    394 Aufrufe
    FrankMF

    Noch was vergessen.

    a2c377b7-d4e4-4791-b94e-dc9fc7f1677c-grafik.png

    Neues Textdokument erstellt ein Dokument mit der Endung .md