Truenas scale smb låser sig vid full disk.

Permalänk
Medlem

Truenas scale smb låser sig vid full disk.

Hej, Har råkat ut för att truenas scale smb hänger sig när en disk blir full.
När disken blir full så går det ej att nå smb via windows eller andra program, utan enda chansen att rädda det är att gå in i truenas och via shell där gå in och radera filer manuellt, där efter starta om .

Vad kan vara fel? inställning eller skall jag rapportera bugg till truenas?

Permalänk
Medlem

Dumt att låta disken bli full, du vill ju ha minst en 10% ledigt rekommenderar truenas, men gärna 20-30% för optimal prestanda. Jag gissar på att det beror lite på storlek och hur stora filer man lagrar som egentligen är det vitala, men inte orkat läsa mer om det.

Men anyhow, låt inte diskarna bli 100% fulla helt enkelt, du kan nog ställa in det i truenas smb share:n att du bara får använda 90-95% av utrymmet eller något sånt?

Permalänk
Medlem
Skrivet av JBerger:

Dumt att låta disken bli full, du vill ju ha minst en 10% ledigt rekommenderar truenas, men gärna 20-30% för optimal prestanda. Jag gissar på att det beror lite på storlek och hur stora filer man lagrar som egentligen är det vitala, men inte orkat läsa mer om det.

Men anyhow, låt inte diskarna bli 100% fulla helt enkelt, du kan nog ställa in det i truenas smb share:n att du bara får använda 90-95% av utrymmet eller något sånt?

Så klar är inte min ambition att fylla dem fullt. Men den borde inte krasha bara för den är full, man borde kunna läsa.

Hittar tyvärr ingen inställning angående hur mycket man får fylla disken i smb.

Permalänk
Arvid Nordqvist-mannen

Om du menar protokollet SMB så finns inga bestämmelser där vad jag kommer ihåg i bakhuvudet, det är OS:et. Man behöver ledigt utrymme för att disken ska fungera normalt

Permalänk
Hedersmedlem

Nu kan jag intet om TrueNAS scale specifikt utan jag utgår från allmänna Linux-kunskaper:

Har du din file share på samma disk som OS:et? Har du OS:et på en separat disk eller partition så ska det ju inte spela någon roll om du fyller en data partition.

Permalänk
Medlem
Skrivet av jope84:

Så klar är inte min ambition att fylla dem fullt. Men den borde inte krasha bara för den är full, man borde kunna läsa.

Hittar tyvärr ingen inställning angående hur mycket man får fylla disken i smb.

Gå in på dataset -> markera den vdev du vill "begränsa", klicka på edit på högersidan vid "Dataset Space Management" så har du lite inställningar du kan ordna med

Permalänk
Medlem

Att köra till stumfyllt filsystem är aldrig bra oavsett filsystem och en del filsystem kan behöva kunna skriva ny data innan det kan radera den äldre data och är det '0' ledigt lagringsutrymme så får man på dessa en read-only system där man inte kan göra något alls med detta¹. (framförallt COW-filsystem, även om de numera har liten inbyggd reserv för att kunna radera filer i alla fall när situationen uppkommer - NTFS har sin variant av det med dess begränsning av antalet fragment på en fil och speciellt när det gäller själva systemfilen som katalogiserar filnamnen i mappen att vid för många filer i mappen (som tex av indexering av stora fotoarkiv och skapa thumbnails av dessa och som jobbar i bakgrund) och det blivit fragmenterad för att det skrivits under lång tid - så blir det tvärstopp och heller inte kan ta bort filer ur mappen igen när det väl tagit stopp utan en massa trix - det var det som forcerade MS att desperat ta fram ReFS för att rädda kvar kunder när stora användare hamnade i dessa problem...)

Även 'mighty' ZFS mår jätteilla av det om man fyller över 80% och man kan över denna fyllnadsnivå - dock inte alltid, hamna i läge att filsystemets prestanda sjunker radikalt och det permanent då det hjälper inte att tömma filsystemet igen och ladda in data på nytt. Det enda man kan göra i det fallet är att skrota filsystemet och skapa en ny för att det skall bli sin forna prestanda igen.

Även ext4 och BTRFS tappar prestanda när man går över 80% och och börja märkas ordentligt när man passerat 90% fyllningsgrad när man har mogna system (filsystem där filer i olika storlekar har skrivit och tagits bort igen i många tusentals i antal).

Använder man filsystemet som en engångsskrivning som från nyformaterat bara fylla den med mediafiler från tom till full utan att under processen radera filer igen så kan man komma lite tätare mot när 100% fyllt innan upplevda problem.

på ext4 kan man reservera 5% (eller annan lägre procentsats) så att det fins lite reservutrymmer kvar för att åtgärda problem som root-user när man tex. fyllt filsystemet till stopp på användarsidan då smbd fortfarande kan skriva data mot /var/log-trädet liksom andra olika loggprocesser när dessa börja kräkas över stumfyllda filsystem... - men har man inte det...

teoretisk kan man också begränsa tillåten skrivmängd på användarnivå och gruppnivå - men på för många (fil)system så är detta lite för skakigt och dåligt provat med för många corner case kvar att fixa för att använda om man vill ha en problemfri serverdrift och fortsätta att vara en lazy admin...

¹ Exakt detta använder BTRFS för sina read-only snapshot - man sätter avsiktligt till att snapshoten har 0 byte ledig utrymme kvar och med detta kan inget inom snapshoten ändras då det måste skrivas först innan det kan radera något iom. COW-filsystem - inte dess egna metadata heller, vilket gör att allt inom snapshoten blir intakt inklusive all dess metadata och inoder, med tidstämplar etc.

Permalänk
Medlem
Skrivet av pv2b:

Nu kan jag intet om TrueNAS scale specifikt utan jag utgår från allmänna Linux-kunskaper:

Har du din file share på samma disk som OS:et? Har du OS:et på en separat disk eller partition så ska det ju inte spela någon roll om du fyller en data partition.

Jag kör truenas som ett vm på proxmox, där jag skickat vidare hela hba kortet och nvme diskar.

Det lustiga är att de är all smb som dör, trots att det bara är enskilda diskar (egna pooler) som bliviy fulla så dör smb för min stora zfs pool.

Men själva truenas blir inte påverkat, man kan antingen gå via webbgränsnittet eller ssh till den fortfarande.

Permalänk
Medlem
Skrivet av JBerger:

Gå in på dataset -> markera den vdev du vill "begränsa", klicka på edit på högersidan vid "Dataset Space Management" så har du lite inställningar du kan ordna med

Jag såg de inställningarna sedan, man kan ställa in per användare där. Problemet där blir att jag har olika användare som har tillgång.
Har olika smb användare för olika applikationer så de endast har tillgång till det de behöver.

Skrivet av xxargs:

Att köra till stumfyllt filsystem är aldrig bra oavsett filsystem och en del filsystem kan behöva kunna skriva ny data innan det kan radera den äldre data och är det '0' ledigt lagringsutrymme så får man på dessa en read-only system där man inte kan göra något alls med detta¹. (framförallt COW-filsystem, även om de numera har liten inbyggd reserv för att kunna radera filer i alla fall när situationen uppkommer - NTFS har sin variant av det med dess begränsning av antalet fragment på en fil och speciellt när det gäller själva systemfilen som katalogiserar filnamnen i mappen att vid för många filer i mappen (som tex av indexering av stora fotoarkiv och skapa thumbnails av dessa och som jobbar i bakgrund) och det blivit fragmenterad för att det skrivits under lång tid - så blir det tvärstopp och heller inte kan ta bort filer ur mappen igen när det väl tagit stopp utan en massa trix - det var det som forcerade MS att desperat ta fram ReFS för att rädda kvar kunder när stora användare hamnade i dessa problem...)

Även 'mighty' ZFS mår jätteilla av det om man fyller över 80% och man kan över denna fyllnadsnivå - dock inte alltid, hamna i läge att filsystemets prestanda sjunker radikalt och det permanent då det hjälper inte att tömma filsystemet igen och ladda in data på nytt. Det enda man kan göra i det fallet är att skrota filsystemet och skapa en ny för att det skall bli sin forna prestanda igen.

Även ext4 och BTRFS tappar prestanda när man går över 80% och och börja märkas ordentligt när man passerat 90% fyllningsgrad när man har mogna system (filsystem där filer i olika storlekar har skrivit och tagits bort igen i många tusentals i antal).

Använder man filsystemet som en engångsskrivning som från nyformaterat bara fylla den med mediafiler från tom till full utan att under processen radera filer igen så kan man komma lite tätare mot när 100% fyllt innan upplevda problem.

på ext4 kan man reservera 5% (eller annan lägre procentsats) så att det fins lite reservutrymmer kvar för att åtgärda problem som root-user när man tex. fyllt filsystemet till stopp på användarsidan då smbd fortfarande kan skriva data mot /var/log-trädet liksom andra olika loggprocesser när dessa börja kräkas över stumfyllda filsystem... - men har man inte det...

teoretisk kan man också begränsa tillåten skrivmängd på användarnivå och gruppnivå - men på för många (fil)system så är detta lite för skakigt och dåligt provat med för många corner case kvar att fixa för att använda om man vill ha en problemfri serverdrift och fortsätta att vara en lazy admin...

¹ Exakt detta använder BTRFS för sina read-only snapshot - man sätter avsiktligt till att snapshoten har 0 byte ledig utrymme kvar och med detta kan inget inom snapshoten ändras då det måste skrivas först innan det kan radera något iom. COW-filsystem - inte dess egna metadata heller, vilket gör att allt inom snapshoten blir intakt inklusive all dess metadata och inoder, med tidstämplar etc.

Får väll försöka ha bättre koll på utrymmet.
Jag har exprementerat med lite olika nvr program och då har kamerorna spelat in data tills de blivit fullt, men nu har jag ställt im det bättre, behäver dock sänka gränsen lite så jag slipper få massa varningar om att disken är 90% full.
Sen har jag en enkel nvme som slask disk över nätverket, men där får jag väll heltenkelt ha bättre koll.

Men jag tänkte nog även slänga in en felanmälan till truenas, så kanske de kan fixa de i framtiden.

Permalänk
Medlem
Skrivet av jope84:

Jag såg de inställningarna sedan, man kan ställa in per användare där. Problemet där blir att jag har olika användare som har tillgång.

Du kan ställa in på hela datasettet också, inte bara per användarnivå, att t.ex. 90% är max som får användas. Sedan att visst, det blir samma sak för slutanvändaren att när 90% är använt går inget mer att lagra, men truenas/zfs blir lite gladare då de har utrymme att använda för att sköta om filsystemet osv