Skapa en backuplösning med ett antal smådiskar i olika storlekar?

Permalänk

Skapa en backuplösning med ett antal smådiskar i olika storlekar?

Hejsan allihopa

Jag har 5-6 st olika sata diskar från 80gb upp till 750gb. Jag skulle vilja sätta upp en backuplösning med dessa diskar så jag kan "förbrukar dom". Jag vill att efter varje disk går i sönder bara att filsystemet minskar tills dess att alla diskar är döda .
Jag vill inte vara tvungen att formatera om filsystemet varje gång en disk dör.
Jag funderade på om man kunde göra något med LVM i Linux?
Samtidigt vill jag att filerna som läggs på backupen skall bara säkra ifrån korruption eller iallafall att jag skall kunna upptäcka om korruption händer. Men det skulle kräva ZFS och det går bara att expandera men inte att minska.
Jag kan köra alla diskar i en stor raid 1 lösning men då kommer jag få 80 gb i utrymme och det är för lite.

Jag är väldigt tacksam för hjälp med att lösa detta problem.

Tack på förhand.

Permalänk
Medlem

Det du behöver är dataredundans för att en disk skall kunna gå ner utan att påverka informationen. Men det kanske du inte behöver? Du kanske resonerar så att när en disk går sönder så kan jag ta en ny full backup? Det kan fungera då det bara gäller en backup men risken ökar något då du tills dess att du har fått genomfört den nya backupen så är du sårbar.
En annan sak är att om du inte har diskredundans så måste diskarna hålla under återläsningen. Jag kan inte rekommendera en sådan lösning.
Här bör inte JBOD användas utan RAID5 vilket inte är idealiskt då du kommer att styras av den minsta diskens storlek som bas. Nej, jag skulle strunta i det och se vad du kan skapa med t.ex. de tre största diskarna. Man måste kunna lita på sin backup. Möjligen som en tredje lagringsplats där du redan har en bra fungerande backup och du vill säkra med en tredje. (Det gör jag för egenproducerat material som foton, alltid på minst tre ställen. Den tredje lägger jag på en USB som jag lägger hos mor. Blir det inbrott/brand eller annat elände så vill jag inte ha allt på samma ställe. Har sett det hos en mindre kund med en ensam SBS och backupbandaren monterad i servern. Skurken tog även banden som låg där och de hade ingen bandförvaring utanför lokalen)

Permalänk
Medlem

Om man ha många blandade diskstorlekar och om man kör linux så kan man prova att köra BTRFS i raid1 direkt mot hårddiskarna (ej över linux md-raid), det är inte raid1 i klassisk mening med sektorspegling mellan 2 lika diskar utan funktionen finns på filnivå - dvs. filsystemet ser till att lagrade filen alltid lagras i 2 exemplar på två olika fysiska diskar. - metadata etc. för filsystemet är också i raid1. Detta ger lite större säkerhet vid enstaka diskhaveri än att köra i en JBOD-konfiguration då hela filsystemet krachar och blir oläslig om en enda av diskarna krashar.

Detta gör att man kan plocka in olika diskstorlekar i filsystemet ganska fritt och även udda antal då 1st 4TB-disk kan arbeta med 2 st 2TB-disk för 4 TB lagringsutrymme och man tål 1 diskbortfall, eller 3 st 2TB och man får lagringsutrymme motsvarande ca. 3 TB. skarvar man in en liten en på 80GB så växer utrymmet ännu lite mer och filsystemet lägger kanske de mindre filerna där tillsammans med kopia som är kvar på någon av de större diskarna - pusslandet vilket fil hamnar var är filsystemets uppgift.

Dock detta är ingen raid-5 utan det tar alltid dubbel diskutrymme totalt gentemot filstorleken som lagras precis som standard raid1-system.

För närvarande är RAID5 och RAID6 inte rekommenderade för BTRFS medans Jbod, raid1 och raid10 anses stabilt.

---

Själv provade jag det hela på en bunt gamla minnesstickor i olika storlekar först (2-32 GB) för att bekanta mig hur det hela fungerar, hur man lägger till, hur man tar bort diskar, vad som händer när man drar ur en disk, hur totala filystemsvolymen påverkade etc. och det verkar som att konceptet med filbaserad 'raid1' i btrfs faktiskt fungerar. Rekommenderar att man gör en sådan 'prov' innan man går på skarpa lösningar.

Givetvis går diskarna som tillhör volymen att lägga på krypterad disk (luks-crypt) och i ubuntu så får man vackert knacka in passordet för varje disk man monterar och när den sista disken i arrayen är monterad så monteras diskarryen automagiskt under /media/user/diskx

---

Automatisk krympning allt eftersom diskarna går sönder tror jag dock ingen Raid-lösning medger, däremot går det mickla manuellt i btrfs men den kräver att den trasiga disken ersätts med någon tillfälligt frisk disk i minst samma storlek(?) - låta systemet synka upp sig och först därefter begära att den tillfälliga disken tas ur drift med 'delete', låta det balansera om igen (dvs. disken töms på data och flyttas till resterande diskar vilket kan ta lång tid) tills det är färdigt innan man tar bort sagda disk. btrfs kan öka och minska filsystemets storlek on-line (och faktiskt bara i on-line) - ZFS kan bara öka i filsystemstorlek - ej minska, så trasiga diskar måste ersättas med minst samma storlek 'för alltid'. Ext4 går att öka on-line och off-line men kan bara krympas i off-line.

Permalänk
Skrivet av xxargs:

Om man ha många blandade diskstorlekar och om man kör linux så kan man prova att köra BTRFS i raid1 direkt mot hårddiskarna (ej över linux md-raid), det är inte raid1 i klassisk mening med sektorspegling mellan 2 lika diskar utan funktionen finns på filnivå - dvs. filsystemet ser till att lagrade filen alltid lagras i 2 exemplar på två olika fysiska diskar. - metadata etc. för filsystemet är också i raid1. Detta ger lite större säkerhet vid enstaka diskhaveri än att köra i en JBOD-konfiguration då hela filsystemet krachar och blir oläslig om en enda av diskarna krashar.

Detta gör att man kan plocka in olika diskstorlekar i filsystemet ganska fritt och även udda antal då 1st 4TB-disk kan arbeta med 2 st 2TB-disk för 4 TB lagringsutrymme och man tål 1 diskbortfall, eller 3 st 2TB och man får lagringsutrymme motsvarande ca. 3 TB. skarvar man in en liten en på 80GB så växer utrymmet ännu lite mer och filsystemet lägger kanske de mindre filerna där tillsammans med kopia som är kvar på någon av de större diskarna - pusslandet vilket fil hamnar var är filsystemets uppgift.

Dock detta är ingen raid-5 utan det tar alltid dubbel diskutrymme totalt gentemot filstorleken som lagras precis som standard raid1-system.

För närvarande är RAID5 och RAID6 inte rekommenderade för BTRFS medans Jbod, raid1 och raid10 anses stabilt.

---

Själv provade jag det hela på en bunt gamla minnesstickor i olika storlekar först (2-32 GB) för att bekanta mig hur det hela fungerar, hur man lägger till, hur man tar bort diskar, vad som händer när man drar ur en disk, hur totala filystemsvolymen påverkade etc. och det verkar som att konceptet med filbaserad 'raid1' i btrfs faktiskt fungerar. Rekommenderar att man gör en sådan 'prov' innan man går på skarpa lösningar.

Givetvis går diskarna som tillhör volymen att lägga på krypterad disk (luks-crypt) och i ubuntu så får man vackert knacka in passordet för varje disk man monterar och när den sista disken i arrayen är monterad så monteras diskarryen automagiskt under /media/user/diskx

---

Automatisk krympning allt eftersom diskarna går sönder tror jag dock ingen Raid-lösning medger, däremot går det mickla manuellt i btrfs men den kräver att den trasiga disken ersätts med någon tillfälligt frisk disk i minst samma storlek(?) - låta systemet synka upp sig och först därefter begära att den tillfälliga disken tas ur drift med 'delete', låta det balansera om igen (dvs. disken töms på data och flyttas till resterande diskar vilket kan ta lång tid) tills det är färdigt innan man tar bort sagda disk. btrfs kan öka och minska filsystemets storlek on-line (och faktiskt bara i on-line) - ZFS kan bara öka i filsystemstorlek - ej minska, så trasiga diskar måste ersättas med minst samma storlek 'för alltid'. Ext4 går att öka on-line och off-line men kan bara krympas i off-line.

Det låter riktigt bra! Tror du att det finns nåt liknande till windows? Eller det smidigaste kanske är om man kör linux bara medan man backupar?

Visa signatur

Ny burk: 7600x, X670E-plus, RTX3080, 32GB DDR5, 2 TB NVMe, 8TB 3.5"
Pensionerad burk: x5650@3.5 GHz, GTX 670, 12 GB DDR3

Permalänk
Medlem
Skrivet av rallyreavan91:

Det låter riktigt bra! Tror du att det finns nåt liknande till windows? Eller det smidigaste kanske är om man kör linux bara medan man backupar?

Storage spaces heter det på windows, finns dock inte till Windows 7. Storage spaces tillsammans med ReFS ska enligt MS ha felkorrigering, och man kan blanda diskar lite som man vill.

Visa signatur

There is always a price to pay for convenient

Permalänk
Medlem

De flesta stora linuxdistubitioner har stöd för btrfs idag, må hända att man kanske få ladda ned ett paket innan allt fungerar.

gången är ungefär - då dom root och via en consol/terminal

Först måste man ta reda på vad de nya diskarna kallas - kan göras med tex. gnome-disks i ubuntu - titta noga vad disken kallas i systemet - bör kallas typ /dev/sdb, /dev/sdc etc. och håll reda på det noga. tänk på att om man drar ut USB-sladden till externa disken och sedan trycker in den igen så kan disken få ett annan benämning!!.

---

Om man bara har en enda disk (systemdisken) så brukar den (dock inte alltid!!) hamna på /dev/sda och den skall man inte röra!!

Nästa tillagda disk (tex. som USB-disk) brukar döpas till /dev/sdb - vi antar nu att det är /dev/sdb som skall bli en krypterad btrfs-volym.

Det man skall ha klart för sig är att disken som kallas /dev/sdb kommer nu att bli fullständigt överskriven, partitionstabeller och allt - då man skall inte ha något viktig på denna alls!!!

Nedanstående är bara testat med användning av USB externa diskar, ej fastmonterade diskar.

man börjar med:

"dd if=/dev/urandom of=/dev/sdb bs=1024k count=100 <enter>"

Man kan bryta med ctrl-c om man tycker att det tar lite för lång tid - vitsen är att precis början på disken skall fyllas med slumptal i och med att vi kör med krypterad disk, det som kommer nu är att sätta upp själva krypterade volymen.

"cryptsetup luksFormat /dev/sdb <enter>" - observera den stora 'F' i luksFormat - det skall skrivas exakt så, med detta så får man frågan vilken passord/passfras (använd passfras om möjligt) och det kommer att behövas skrivas in 2 ggr.

därefter skall den initierade krypterade disken öppnas:

"cryptsetup luksOpen /dev/sdb C1 <enter>" - nu kommer man återigen få skriva passordet/passfrasen då man nu monterar disken tillfälligt till "/dev/mapper/C1" för att arbeta vidare med denna.

Först nu skall man formatera med btrfs med:

"mkfs.btrfs -m single -L volymnamnet_som_den_kommer _att_heta /dev/mapper/C1 <enter>"

'-m single' sätter man ofta om det bara är en disk eller skall arbeta mot SSD, vet man att det skall kopplas till flera diskars volym senare så kan man utelämna det och då får disken dubbel metadata - dvs. redundans på filsystemets katalogisering av filer vilket sedan delas upp på varsina diskar när man senare kör raid1... därefter monterar man btrfs-filsystemet till en mapp, i det här fallet till "/mnt"

"mount -o compress=zlib /dev/mapper/C1 /mnt" <enter>"

och efter detta så är disken monterad under /mnt.

Skall man göra snapshot smidigt så måste man göra en subvolym i btrfs-filsystemet, och i det här fallet vill jag också ha komprimerande filsystem som komprimerar filerna 'on the fly' av just orsaken att volymen är tänkt för backup för att försöka spara lite plats, och började med i mount med optionen '-o compress=zlib'

För att det skall bli peresistent för just subdirektoryt vid senare montering så görs följande:

"btrfs subvolume create /mnt/compressed_dir <enter>"

därefter

"chattr +c /mnt/compressed_dir <enter>"

vilket gör att alla filer som läggs under 'compressed_dir' kommer att automatiskt att komprimeras medans filerna/direktorys som läggs utanför denna kommer inte att komprimeras.

när man är klar med detta så gör man

"umount /mnt <enter>"
"cryptsetup luksClose /dev/mapper/C1 <enter>" (ibland kan det gnälla på att det hittar inget)

Därefter drar man ur sladden till den externa disken, väntar ett antal sekunder och därefter kopplar in igen, alternativt startar om datorn. I ubunbtu så kommer kommer det upp en ruta där man begär lösenordet inom ett antal sekunder efter man anslutit USB-disken och matar man in sitt rätta passord/passfras så kommer disken sedan att monteras under /media/användare/volymnamnet och i desktopen smäller det upp en filhanterarefönster, och där ser man ett directory som heter 'compressed_dir' om man har gjort som ovan.

Alla filer som läggs i mappen 'compressed_dir' kommer då att komprimeras, medans filer som läggs utanför kommer inte att komprimeras.

Det finns en väldigt bra funktion i btrfs och det är att man kan göra snapshot och det tar typ 1 sekund - sådan kan vara bra inför varje backup då om det dummar sig så har man förra kopian kvar orörd - men kravet är att direktoryt är av 'subvolym-typ' även om den ser exakt ut som en vanlig direktorys (det har sina orsaker varför det är så)

en snapshot kan gå till enligt följande

"btrfs subvolume snapshot /media/användare/btrfs_volumen/compressed_dir /media/användare/btrfs_volymen/compressed_dir_snap_20161219 <enter>

och 1-2 sekunder senare så är det klart och man fått en ny subvolym som heter compressed_dir_snap_20161219 var innehåll är identisk med 'compressed_dir' och den är nu helt oberoende på vad som händer med filerna i 'compressed_dir' i framtiden - vill man var riktig säker på att snapshot inte kan ändras i efterhand så använder man '-r' som option i kommandosträngen ovan och hela snapshoten blir då read-only och kan inte skivas sönder av kryptovirus/ransomware.

Snap-shot subvolymerna man gör den här vägen tar i princip ingen extraplats alls på disken och därför kan man göra en sådan var dag om man vill och det är bara förändringarna mellan generationerna som gör att det sakta tar mer plats och till slut kanske vill ta bort de äldsta versionerna så att man får tillbaka diskutrymme igen på de filer eller delar av filerna som är borttagna i de nyare subvolymerna.

När man vill ta bort en subvolym (vilket kan gå väldigt mycket fortare än att i direktoryt radera alla filer en i taget) så använder man:

"btrfs subvolume delete /media/användare/btrfs_volymen/compressed_dir_snap_20161219 <enter>" - obs, det ger ingen varning här, trycker man på <enter> så är direktoryt borta sekunden senare - även om den är readonly!!

Raderingen av direktoryt går alltså på några sekunder, och efter en kort stund startar en garbage-collector och går igenom filsystemet och tar bort dom bitarna som var unika för just den borttagna subvolymen medans allt som delas med andra subvolymer är kvar.

---

Volymutökningen då ??

Om man bortser från extramomenten som blir när man har krypterade diskar och beskrevs i början här, så är det enkelt att utöka volymen med btrfs

När man behöver en större volym med hjälp av en tom extra disk så skriver man - efter att kollat vilken device-namn den hamnat på och här antas vara på /dev/sdc - "btrfs device add /dev/sdc /media/användare/btrfs_volymen <enter>" och så har volymen blivit större och man kan börja fylla på filer direkt.

Om volymen var ganska full när den extra disken kopplades in så kanske man vill balansera om så att det är ungefär lika mycket på diskarna och det görs med:

"btrfs balance start /media/användare/btrfs_volymen <enter>" och det kan ta ganska lång tid innan det är klart, dock det kör i bakgrunden och du kan använda datorn som vanligt under tiden inklusive skriva och läsa på btrfs-disken samtidigt.

vill man istället konvertera den till raid1 för att den nya disken är minst lika stor som totala filstorleken är på den ensamma btrfs-disken

"btrfs balance start -dconvert=raid1 -mconvert=raid1 /media/användare/btrfs_volymen <enter>", samma sak här, det arbetar i bakgrunden.

när man vill ta bort disken igen på btrfs-volymen så använder man:

"btrfs device delete /dev/sdc /media/användare/btrfs_volymen <enter>" och efter en ganska rejäl tid (om diskarna är i TB-storlek) så är disken frigjord och kan tas bort och användas till annat. givetvis allt under drift...

---
disclaimer:

förutom skrivfel ovanstående text, så...

Om man inte är en van linux-användare så är det farligaste momenten här när man använder 'dd' och inte skriver till rätt disk. Det är jättenoga att hålla reda på vilken disk som går till vilken device-enhet under /dev/sd* - gör man fel här så kan man skriva slumptal på sin systemdisk med windows i och det är komplett kört....

'dd' tillsammans med linux är väldigt kraftfullt verktyg när man skall meka disk på låg nivå - men den skär på båda sidorna och det kan bli förbaskat blodigt om man gör fel...

Helst skall man, om man är nybörjare, koppla bort alla sina vanliga OS-diskar och datadiskar med innehåll som man är rädd om (sata-sladden tas alltså ur disken) när man gör iordning btrfs-volymerna första gångerna med linux startad på en DVD/USB-sticka...

när dom väl är gjorda så kommer tex unbutu att automatiskt känna igen dem och hantera dessa på rätt sätt när de senare pluggas in i datorn.

Permalänk
Medlem

Om du använder windows så finns två separata programvaror för att åstakomma detta.

Stablebit drivepool - kombinerar flera hårddiskar till en på filnivå, så att alla hårddiskar samlas under en enhetsbeteckning, dvs ingen raid, dvs fallerar en hårddisk så försvinner endast filerna på den hårddisken. Fungerar med befintlig data på hårddiskar formatetade i ntfs. Kostar pengar.

Snapraid - skyddar mot bitröta och hårddisk-krasch. Använder den största hårddisken av ett gäng till att kalkylera paritet, så att data kan återskapas. Dvs har du fyra hdd, 1 tb, 2 tb, 4 tb, 4 tb, så försvinner 4 tb till paritet. Är gratis. Saknar i grunden GUI, men det finns att ladda hem separat. Fungerar på hårddiskar med befintlig data formaterade i ntfs.

Skickades från m.sweclockers.com

Permalänk
Skrivet av smkr:

Storage spaces heter det på windows, finns dock inte till Windows 7. Storage spaces tillsammans med ReFS ska enligt MS ha felkorrigering, och man kan blanda diskar lite som man vill.

Skrivet av mcznarf:

Om du använder windows så finns två separata programvaror för att åstakomma detta.

Stablebit drivepool - kombinerar flera hårddiskar till en på filnivå, så att alla hårddiskar samlas under en enhetsbeteckning, dvs ingen raid, dvs fallerar en hårddisk så försvinner endast filerna på den hårddisken. Fungerar med befintlig data på hårddiskar formatetade i ntfs. Kostar pengar.

Snapraid - skyddar mot bitröta och hårddisk-krasch. Använder den största hårddisken av ett gäng till att kalkylera paritet, så att data kan återskapas. Dvs har du fyra hdd, 1 tb, 2 tb, 4 tb, 4 tb, så försvinner 4 tb till paritet. Är gratis. Saknar i grunden GUI, men det finns att ladda hem separat. Fungerar på hårddiskar med befintlig data formaterade i ntfs.

Skickades från m.sweclockers.com

Tack! Får ta och kika på de snart!

Visa signatur

Ny burk: 7600x, X670E-plus, RTX3080, 32GB DDR5, 2 TB NVMe, 8TB 3.5"
Pensionerad burk: x5650@3.5 GHz, GTX 670, 12 GB DDR3

Permalänk
Medlem
Skrivet av mcznarf:

Om du använder windows så finns två separata programvaror för att åstakomma detta.

Stablebit drivepool - kombinerar flera hårddiskar till en på filnivå, så att alla hårddiskar samlas under en enhetsbeteckning, dvs ingen raid, dvs fallerar en hårddisk så försvinner endast filerna på den hårddisken. Fungerar med befintlig data på hårddiskar formatetade i ntfs. Kostar pengar.

Snapraid - skyddar mot bitröta och hårddisk-krasch. Använder den största hårddisken av ett gäng till att kalkylera paritet, så att data kan återskapas. Dvs har du fyra hdd, 1 tb, 2 tb, 4 tb, 4 tb, så försvinner 4 tb till paritet. Är gratis. Saknar i grunden GUI, men det finns att ladda hem separat. Fungerar på hårddiskar med befintlig data formaterade i ntfs.

Skickades från m.sweclockers.com

Intressant.

Hur är det med kompatibilitet, kommer det krävas denna mjukvaran för att hantera dem i framtiden? Går det att återskapa om tex moderkortet eller liknande dör med en ny dator?

Går de att expandera i efterhand?

Om säg den 2TB disken i ex du hade ovan dör, måste man ersätta med en likadan 2TB eller kan den anpassa sig till 1,5TB/3TB?

Permalänk
Medlem
Skrivet av Paddanx:

Intressant.

Hur är det med kompatibilitet, kommer det krävas denna mjukvaran för att hantera dem i framtiden? Går det att återskapa om tex moderkortet eller liknande dör med en ny dator?

Går de att expandera i efterhand?

Om säg den 2TB disken i ex du hade ovan dör, måste man ersätta med en likadan 2TB eller kan den anpassa sig till 1,5TB/3TB?

Dessa mjukvaror fungerar helt och hållet med befintlig data formatetade i ntfs. När du installerar ändras ingen data. När du avinstallerar ändras ingen data. Det går att expandera i efterhand. Du kan ersätta 2 tb med valfri storlek så länge den totala mängden data inte överstigs

Skickades från m.sweclockers.com