Vraag


Acties:
  • 0 Henk 'm!

  • Devedse
  • Registratie: Juni 2010
  • Laatst online: 18-08 23:53
Introductie

Ik heb een DS415+ Synology NAS en wilde hier native iperf3 op draaien. Omdat er echter nog geen DSM 7.0 versie van dit package is, maar wel een DSM 6.2 versie gaf iemand mij de suggestie om deze manueel te installeren. (http://www.jadahl.com/ipe...perf_avoton-6.2_3.7-1.spk)

Hoe dit precies zou moeten was mij niet duidelijk maar ik zag dat je dit bestand kon uitpakken met 7zip en in het bestand stonden een /bin en een /lib folder. Dus ik dacht, die gaan we dan naar de Synology NAS kopiëren.

Nou precies op het moment dat ik die kopieer actie uitvoerde verbrak mijn SSH connectie en kon ik dus niet meer mijn NAS in.

Shit.

Mijn idee om dit te fixen

Gelukkig staan al mijn bestanden ergens gebackupt maar toch wil ik het liefst zonder mijn hele Synology opnieuw in te stellen weer gewoon dit probleem fixen.
Mijn idee was om van een clean Synology DSM 7.0 install de lib map te kopiëren naar de lib map op mijn broken installatie.

Ik had nog een disk liggen dus daar heb ik DSM 7.0 op geïnstalleerd, daarna de lib map daar van af gekopieerd en nu is het plan die dus terug te zetten op de kapotte DSM.

Mounting first steps

Als eerste heb ik even een testje gedaan met de tijdelijke DSM install die ik op een disk had gezet die toch nog over was en hier kon ik met wat MDADM commands de disk mounten. Met deze informatie in het achterhoofd ging ik van start om dit nu te doen op de disks van de kapotte DSM.

Mijn idee was om maar 1 van de 4 disks aan mijn Ubuntu PC te hangen, daar dan de system disk te fixen, die terug de zetten in de NAS. Dan hoop ik dat Synology zelf ziet dat de Raid 1 op de system disk degraded is en deze gaat rechttrekken op basis van de fixes die ik heb gedaan. (Again, als iemand nu al weet dat dit niet gaat werken hoor ik het ook graag).

De belangrijkste reden hiervoor is dat zolang ik die 3 disks niet aanraak ik zeker weet dat de Raid-5 (SHR) array die er op staat nog altijd gefixt kan worden. Daarnaast moest ik bij deze disk ook Pin3 afplakken voordat deze te zien was in mijn Ubuntu pc + ik heb simpelweg niet genoeg sata kabels.

Mounting waar het mis gaat

Ik heb een immense reeks aan linux commands geprobeerd maar nog niet succesvol de disk kunnen mounten. Het probleem lijkt te komen omdat dit een raid1 array is waar nu 3 disks missen.

Het verste wat ik ben gekomen was met het volgende command:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
root@ubuntu:~# mdadm --create /dev/md0 --assume-clean --verbose --level=raid1 --raid-devices=4 missing /dev/sda1
mdadm: You haven't given enough devices (real or missing) to create this array
root@ubuntu:~# mdadm --create /dev/md0 --assume-clean --verbose --level=raid1 --raid-devices=4 /dev/sda1 missing missing missing
mdadm: /dev/sda1 appears to contain an ext2fs file system
       size=2490176K  mtime=Wed Jul 21 09:49:03 2021
mdadm: /dev/sda1 appears to be part of a raid array:
       level=raid1 devices=4 ctime=Sun Dec  8 21:09:22 2019
mdadm: Note: this array has metadata at the start and
    may not be suitable as a boot device.  If you plan to
    store '/boot' on this device please ensure that
    your boot-loader understands md/v1.x metadata, or use
    --metadata=0.90
mdadm: size set to 2487168K
Continue creating array? 
Continue creating array? (y/n) y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
root@ubuntu:~# mkdir /mnt/hoi
root@ubuntu:~# mount /dev/md0 /mnt/hoi
mount: /mnt/hoi: wrong fs type, bad option, bad superblock on /dev/md0, missing codepage or helper program, or other error.


Zoals te zien is, lijkt het alsof de /dev/md0 array gestart is maar het mounten er van lukt dus niet.

Hier loop ik vast omdat ik dus te weinig van mdadm en alle linux commands weet om dit verder voor elkaar te krijgen.

Als iemand een hele lijst wil met alles wat ik geprobeerd heb, hier een outputje van de Console:
https://pastebin.com/uczzkKQn

-Devedse

[ Voor 5% gewijzigd door Devedse op 21-07-2021 14:22 ]

Alle reacties


Acties:
  • 0 Henk 'm!

  • Lethalis
  • Registratie: April 2002
  • Niet online
De mdadm waarschuwing geeft aan dat er een ext2fs bestandssysteem op staat. Echt logisch vind ik dat niet.

SHR is Synology Hybrid Raid. Wordt dat überhaupt wel ondersteund door Ubuntu? :?

Ik gebruik altijd een standaard mirror of raid 10.

Ask yourself if you are happy and then you cease to be.


Acties:
  • 0 Henk 'm!

  • Devedse
  • Registratie: Juni 2010
  • Laatst online: 18-08 23:53
De system disk maakt zover ik weet dus geen gebruik van SHR maar alleen van Raid 1. Wat ik lees over SHR is dat het onderwater gewoon mdadm commands zijn.

Acties:
  • 0 Henk 'm!

  • Lethalis
  • Registratie: April 2002
  • Niet online
Je kunt iperf3 trouwens ook gewoon met Docker draaien, is misschien wat veiliger :P

Ask yourself if you are happy and then you cease to be.


Acties:
  • 0 Henk 'm!

  • Devedse
  • Registratie: Juni 2010
  • Laatst online: 18-08 23:53
Dat deed ik dus eerst alleen schijnbaar is de performance daar niet goed genoeg voor om > 1gbit goed te kunnen testen.

Zie: https://github.com/bb-qq/aqc111/issues/48

Acties:
  • 0 Henk 'm!

  • Lethalis
  • Registratie: April 2002
  • Niet online
Devedse schreef op woensdag 21 juli 2021 @ 15:59:
Dat deed ik dus eerst alleen schijnbaar is de performance daar niet goed genoeg voor om > 1gbit goed te kunnen testen.

Zie: https://github.com/bb-qq/aqc111/issues/48
Heb mijn twijfels of dat nou echt door Docker komt.

Kortom: ik vrees dat je "native" hetzelfde zal zien. Zou best kunnen komen omdat de NAS het simpelweg niet aankan (over usb).

Wat doet de CPU belasting bijvoorbeeld? Even top of htop draaien terwijl je bestanden kopieert... zodra je weer een bruikbare NAS hebt :)

PS
Je weet ook zeker dat je de adapter in een USB 3 port gestoken hebt? Niet alle ports zijn altijd USB 3 bij Synology :) Gaat op mijn werk ook weleens mis, als iemand een backup schijf op de verkeerde port aansluit op een NAS bijvoorbeeld.


Ik zie in jouw github post dat hij aan de usb3 hangt.

[ Voor 19% gewijzigd door Lethalis op 21-07-2021 16:18 ]

Ask yourself if you are happy and then you cease to be.


Acties:
  • 0 Henk 'm!

  • Devedse
  • Registratie: Juni 2010
  • Laatst online: 18-08 23:53
Heb inmiddels toch maar de bullet gebite en mijn NAS gereinstalled. Gaat even wat werk zijn om alles weer te configureren maar het hele linux mdadm stuk kreeg ik ook niet veel verder.

Acties:
  • 0 Henk 'm!

  • Lethalis
  • Registratie: April 2002
  • Niet online
Devedse schreef op woensdag 21 juli 2021 @ 16:19:
Heb inmiddels toch maar de bullet gebite en mijn NAS gereinstalled. Gaat even wat werk zijn om alles weer te configureren maar het hele linux mdadm stuk kreeg ik ook niet veel verder.
Ja is misschien maar beter.

iperf3: error while loading shared libraries: libiperf.so.0:

Je kunt de iperf3 binary en libraries ook gewoon in dezelfde map plaatsen, gewoon - ergens - maar niet in de /bin en /lib van het systeem _O-

Dan zou hij de lib ook moeten vinden in principe.

Of naar /usr/bin en /usr/lib zoals op de iperf3 site wordt aangegeven:

https://iperf.fr/iperf-download.php#manual

Zolang je niks overschrijft, zou het goed moeten gaan denk ik.

[ Voor 12% gewijzigd door Lethalis op 21-07-2021 16:29 ]

Ask yourself if you are happy and then you cease to be.


Acties:
  • +1 Henk 'm!

  • JackBol
  • Registratie: Maart 2000
  • Niet online

JackBol

Security is not an option!

Devedse schreef op woensdag 21 juli 2021 @ 14:20:
Introductie
het bestand stonden een /bin en een /lib folder. Dus ik dacht, die gaan we dan naar de Synology NAS kopiëren.
De volgende keer /usr/bin en /usr/lib gebruiken ;)

De actuele opbrengst van mijn Tibber Homevolt


Acties:
  • 0 Henk 'm!

  • Devedse
  • Registratie: Juni 2010
  • Laatst online: 18-08 23:53
Ja ik mis dus hier en daar wat linux kennis :D

Acties:
  • +3 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Nu online

Hero of Time

Moderator LNX

There is only one Legend

Ook /usr/bin en /usr/lib zijn systeem locaties die bestanden kan bevatten die je onbedoeld kan overschrijven en de boel weer sloopt. Juist om dit te voorkomen als je zelf software gaat compilen is er /usr/local bedacht waar je alles in kan dumpen die niet door het systeem zelf direct nodig zijn. Die hele map zou leeg moeten zijn, hooguit de basis structuur, maar geen binairies of libraries.

Commandline FTW | Tweakt met mate


Acties:
  • +2 Henk 'm!

  • Thralas
  • Registratie: December 2002
  • Laatst online: 14:11
Devedse schreef op woensdag 21 juli 2021 @ 14:20:
Het verste wat ik ben gekomen was met het volgende command:
code:
1
root@ubuntu:~# mdadm --create /dev/md0 --assume-clean --verbose --level=raid1 --raid-devices=4
Je hebt het al opgelost met een herinstallatie, maar voor de volgende keer: wees een stuk voorzichtiger als een utility je waarschuwt dat er al een bestandssysteem of array bestaat - en lees de man pages goed.

Het create-commando initialiseert een nieuwe array, effectief vernietig je hiermee de bestaande raid metadata en de disk zal dus ook niet meer zomaar worden opgenomen in de originele array. Je dient assemble te gebruiken om een bestaande array te starten.

Dat is waarschijnlijk tevens de reden waarom je filesystem niet mount: een andere RAID metadata-versie zal net iets andere offsets hanteren waardoor het filesystem niet zichtbaar is. Of als het nog meer tegenzit loop je de kans dat het bestaande filesystem ook is geraakt wordt door de afwijkende metadatalocatie.

Acties:
  • 0 Henk 'm!

  • Devedse
  • Registratie: Juni 2010
  • Laatst online: 18-08 23:53
Lethalis schreef op woensdag 21 juli 2021 @ 16:22:
[...]
Je kunt de iperf3 binary en libraries ook gewoon in dezelfde map plaatsen, gewoon - ergens - maar niet in de /bin en /lib van het systeem _O-
Ik ben dit nu even aan het proberen. Heb nu dus gewoon in /volume1/Unsorted/#SynologyStuff/iperf3 alles bij elkaar gezet.
Daarna
code:
1
chmod +x iperf3
gedaan.

En toen het command ./iperf3 gerunt vanuit die directory. Maar ik krijg dan nog steeds diezelfde error:
code:
1
2
devedse@devenology:/volume1/Unsorted/#SynologyStuff/iperf3$ ./iperf3
./iperf3: error while loading shared libraries: libiperf.so.0: cannot open shared object file: No such file or directory


Terwijl een gewone 'ls' wel degelijk zegt dat deze file in de map staat:
code:
1
engines  iperf3  libcrypto.so  libcrypto.so.1.0.0  libiperf.a  libiperf.la  libiperf.so  libiperf.so.0  libiperf.so.0.0.0  libssl.so  libssl.so.1.0.0  libz.so  libz.so.1  libz.so.1.2.11

[ Voor 15% gewijzigd door Devedse op 21-07-2021 22:35 ]


Acties:
  • 0 Henk 'm!

  • Devedse
  • Registratie: Juni 2010
  • Laatst online: 18-08 23:53
Thralas schreef op woensdag 21 juli 2021 @ 20:38:
[...]


Je hebt het al opgelost met een herinstallatie, maar voor de volgende keer: wees een stuk voorzichtiger als een utility je waarschuwt dat er al een bestandssysteem of array bestaat - en lees de man pages goed.

Het create-commando initialiseert een nieuwe array, effectief vernietig je hiermee de bestaande raid metadata en de disk zal dus ook niet meer zomaar worden opgenomen in de originele array. Je dient assemble te gebruiken om een bestaande array te starten.

Dat is waarschijnlijk tevens de reden waarom je filesystem niet mount: een andere RAID metadata-versie zal net iets andere offsets hanteren waardoor het filesystem niet zichtbaar is. Of als het nog meer tegenzit loop je de kans dat het bestaande filesystem ook is geraakt wordt door de afwijkende metadatalocatie.
Al doende leert men ;)

Acties:
  • 0 Henk 'm!

  • Thralas
  • Registratie: December 2002
  • Laatst online: 14:11
Devedse schreef op woensdag 21 juli 2021 @ 22:34:
En toen het command ./iperf3 gerunt vanuit die directory. Maar ik krijg dan nog steeds diezelfde error:
[code]devedse@devenology:/volume1/Unsorted/#SynologyStuff/iperf3$ ./iperf3
./iperf3: error while loading shared libraries: libiperf.so.0: cannot open shared object file: No such file or directory
Dat klopt. Shared libraries worden helemaal niet zomaar uit de huidige directory geladen.

Als ze niet in een van de gangbare library directories staan, of de executable expliciet een aanvullend pad specificeert (rpath), dan zul je de dynamic linker (het programma dat impliciet wordt aangeroepen om alle benodigde libraries te laden in geval van een dynamic executable) moeten vertellen waar hij nog meer mag zoeken naar libraries.

Dit zou moeten werken, als je tenminste alle dependencies hebt:

LD_LIBRARY_PATH='/volume1/Unsorted/#SynologyStuff/iperf3' ./iperf3


Aanvullend: dynamische executables die niet voor jouw platform zijn gebouwd zijn een crime zoals je hebt gemerkt - je bestaande /usr/lib vervuilen moet je nooit zomaar doen, maar LD_LIBRARY_PATH zetten is ook niet heel praktisch (je kunt een wrapper script schrijven natuurlijk). Oplossingen als Docker zijn al snel overkill voor een enkele executable.

Het is vaak handig om even te Googlen of iemand een statische executable heeft gebouwd - die zijn niet afhankelijk van externe libraries want alles is erin gebouwd. Het enige nadeel is dat de executables wat groter worden.

Met een snelle Googleactie vond ik: iperf3-static

Tenzij de kernel heel erg oud is zou de amd64 binary moeten werken.

[ Voor 29% gewijzigd door Thralas op 21-07-2021 23:03 ]


Acties:
  • 0 Henk 'm!

  • Lethalis
  • Registratie: April 2002
  • Niet online
Thralas schreef op woensdag 21 juli 2021 @ 22:55:
[...]
Dat klopt. Shared libraries worden helemaal niet zomaar uit de huidige directory geladen.
Je hebt gelijk... sorry @Devedse

Ik raak soms nog weleens in de war door de verschillende OS-en en ook frameworks die ik gebruik waarbij het wel zo werkt (Windows, .NET 5, etc).

Een static build is inderdaad ook handig om te hebben. Op dat moment zijn de functies die gebruikt worden uit de libraries gewoon opgenomen in de executable. Die wordt daardoor wat groter, maar het voordeel is dat hij overal zou moeten werken.

Ask yourself if you are happy and then you cease to be.


Acties:
  • 0 Henk 'm!

  • Devedse
  • Registratie: Juni 2010
  • Laatst online: 18-08 23:53
Sick, het werkt :):
Afbeeldingslocatie: https://tweakers.net/i/sJPfpYcTzY01eRjvg_thlbqEfDs=/800x/filters:strip_exif()/f/image/gD2SxszihcTbf4tlpz2Guxp9.png?f=fotoalbum_large

Acties:
  • 0 Henk 'm!

  • Lethalis
  • Registratie: April 2002
  • Niet online
Maar nu is natuurlijk de vraag: is het ook sneller?

Ask yourself if you are happy and then you cease to be.


Acties:
  • 0 Henk 'm!

  • Devedse
  • Registratie: Juni 2010
  • Laatst online: 18-08 23:53
De 5Gbe module werkt eigenlijk ergens tussen shit en een beetje. Met een enkele iperf3 thread haal ik rond de 700 mbit. Multithreaded haal je wel rond de 1.5gbit maarja, dat werkt weer niet (goed) samen met het SMB protocol. En dat tevens alleen als de MTU op 9000 staat. Wanneer ik de MTU op 1500 zet haal ik maar 250 mbit.

Bij de onboard gigabit poortjes haal ik steady 940mbit met een MTU van 1500.

Omdat ik dit eigenlijk al voelde aankomen had ik ook maar gelijk de 2.5Gbe variant besteld van Club3D. (Op github / amazon / etc. zijn namelijk heel wat mensen te vinden die ontevreden zijn over de 5Gbe modules, desalniettemin werkte die van mij op een windows machine wel prima, gewoon steady 3.5gbit zonder drops).

De Club3D 2.5Gbit lijkt vooralsnog een stuk stabieler te draaien. En ik haal hiermee rond de 1.8gbit.

Op Github heb ik een vrij uitgebreid issue geschreven met mijn progress / stappen:
https://github.com/bb-qq/aqc111/issues/48

[ Voor 21% gewijzigd door Devedse op 22-07-2021 19:37 ]


Acties:
  • 0 Henk 'm!

  • DukeBox
  • Registratie: April 2000
  • Laatst online: 22:49

DukeBox

loves wheat smoothies

Makkelijker is om gewoon met assistent DSM opnieuw te installeren. Als de configuratie files er nog staan dan blijft alles gewoon behouden (alsof het een upgrade is).

Met DSM6 (DSM7 nog niet mee getest) kan je zo ook een DSM installatie tussen verschillende modellen migreren (zelfs naar nieuw naar oud) bij een vergelijkbare CPU (arm->arm, x86->x86 etc).

Je volumes blijven hoe dan ook onaangetast zolang je er niet voor kiest deze te verwijderen tijdens de installatie.

En mocht je alsnog willen mounten aan een linux install, waarom volg je niet gewoon de handleiding van synology zelf ?

[ Voor 44% gewijzigd door DukeBox op 22-07-2021 20:00 ]

Duct tape can't fix stupid, but it can muffle the sound.


Acties:
  • 0 Henk 'm!

  • Devedse
  • Registratie: Juni 2010
  • Laatst online: 18-08 23:53
De DSM Assistant kon dus ook niet meer bij de NAS sadly.

@Lethalis, nog een leuk plaatje waarbij ik mijn 1gbit en 2.5gbit verbindingen tegelijk uit mijn nas zuig:
Afbeeldingslocatie: https://tweakers.net/i/Rsh0TJzlgvTr1nCs0H4SWVvMC3o=/full-fit-in/4000x4000/filters:no_upscale():fill(white):strip_exif()/f/image/IEPXWhSsKQWbvfCaaSLlfPzU.png?f=user_large

Acties:
  • +1 Henk 'm!

  • DukeBox
  • Registratie: April 2000
  • Laatst online: 22:49

DukeBox

loves wheat smoothies

Devedse schreef op donderdag 22 juli 2021 @ 19:40:
De DSM Assistant kon dus ook niet meer bij de NAS sadly.
Tuurlijk kan die er nog bij, booten zonder HDD's zodra gestart, de HDD's er (een voor een) in en dan assistent laten scannen.

Duct tape can't fix stupid, but it can muffle the sound.


Acties:
  • 0 Henk 'm!

  • Devedse
  • Registratie: Juni 2010
  • Laatst online: 18-08 23:53
Hmm, dat had ik dat toch graag een paar dagjes eerder geweten ;D
Pagina: 1