Today, a simple design - a 'desktop' server with the capacity to accommodate 8 drives.
Everyone wants a file server that is small, cheap, capacious, expandable and powerful. As it is in life, it is difficult to combine all these features.... But let's try an intermediate proposal that meets some of these characteristics.
Some time ago, the Raspberry 4 single-board nanocomputer appeared. The previous model was good for control or simple algorithms, but the amount of memory did not knock it down. Here there is up to 4GB RAM, 1Gbps network support, powerful USB3(x2) and all for acceptable money. The software (I'm using Ubuntu server) accepts USB3 Hub and USB3 drives, so the only thing missing is a case.... But what do we have a printer for? I designed a simple enclosure for the 'Pi' (with a passive enclosure in the form of a heatsink), 8 drives and a USB3 Hub with selective power on for the drives.
Printing was carried out on an Ender3 printer. Printing time - approximately 3 days non-stop.
The project was intended to be 'economical' - hence no raft and support and lots of holes. To speed up the print I also switched off the 'rip' and filament withdrawal (a few hours extra).
The print requires a lot of post-processing (a lot of 'threads' are left and the windows have to be corrected) but there is no objection to not saving time and then there is less post-processing.... Something for something...
The print used 1/4 roll of filament (cheapest PLA Plastspaw).
Settings - 205C head, 63C table (first layers 65). Obviously the print was the least precise.
I did not clean the disk chambers during assembly ('threads' provide good cushioning and are thin enough that there is no risk of overheating. The chambers accommodate any of the USB portable drives - including the tall 4TB ones. I currently have 4 4T drives running and I can hardly hear the drives at all (well... you can hear the heads moving a bit).
The biggest problem is with the 'Raspberry'. The chamber is very cramped. I decided to remove the inner wall, but it seems that after cleaning the chamber more carefully it would fit at least to the touch.
I expected the 'Pi' to overheat during operation. Fortunately, even under heavy load (antivirus checking disks - 100% ) the external temperature did not exceed 65C which I consider to be an acceptable value. The temperature under no load was around 40C.
If we're on the 'Pi' - don't skimp on the amount of memory. Buy the 4GB version. Especially if you want to have additional services on it besides SAMBA (GIT, HTTP server, Jellyfin, DNS server). On mine (2GB) a stupid antivirus (ClamAV) can consume all the memory. If we're only thinking of a file server without any 'tricks' or antivirus, then 2G is more than enough - unless we want much bigger disks.
If I had to repeat the 'production' of the case, I would probably opt for a different material (PET-G) and thicken the walls a bit in some places (currently it is 1mm). Eventually the top and back wall will also be needed but.... there is a bit of a problem with the 'raspberry' starting up with the disks on (and it's probably not a power supply issue). For me, the problem is not annoying enough to fight it but access to the sockets is necessary.... Fortunately reboots are rare. Another issue is that it's standing in my workshop where it doesn't have to be beautiful but there can't be a pile of drives loose
The whole thing works reliably and meets all (realistic) expectations.... The transfer rate (measured) is 100Mbps (for mechanical disks). The media server works without jamming. There is no mirroring or RAID5 but if one has such needs then no problem
As for configuration - plain Ubuntu on Raspberry Pi + Debian/Ubuntu archive packages (plus SNAP). The disks must be named. In fstab we enter static mapping to the names (there is no guarantee of disk 'letter' allocation). In the Samba configuration we define the allocations. I, for example, have an additional partition with SD shared independently of the HDD in addition to the HDD. It's worth configuring 'spare' directories and shares - for example, so that you can add a new drive 'for a while' without revolution. Then you can do a 'mount' and you can already see its contents.
One additional note - power supply and hub - I have a 3A power supply and unfortunately but adding more than 4 drives causes me problems precisely with powering the drives.... You can cope either by selectively turning the drives on, or by plugging the others into the raspberry (but I wouldn't advise above 2 - not saying there are only 2 USB3 and 2 USB2 sockets).
I attach the zipped STL and GCODE files (under Ender 3 pro).
Everyone wants a file server that is small, cheap, capacious, expandable and powerful. As it is in life, it is difficult to combine all these features.... But let's try an intermediate proposal that meets some of these characteristics.
Some time ago, the Raspberry 4 single-board nanocomputer appeared. The previous model was good for control or simple algorithms, but the amount of memory did not knock it down. Here there is up to 4GB RAM, 1Gbps network support, powerful USB3(x2) and all for acceptable money. The software (I'm using Ubuntu server) accepts USB3 Hub and USB3 drives, so the only thing missing is a case.... But what do we have a printer for? I designed a simple enclosure for the 'Pi' (with a passive enclosure in the form of a heatsink), 8 drives and a USB3 Hub with selective power on for the drives.
Printing was carried out on an Ender3 printer. Printing time - approximately 3 days non-stop.
The project was intended to be 'economical' - hence no raft and support and lots of holes. To speed up the print I also switched off the 'rip' and filament withdrawal (a few hours extra).
The print requires a lot of post-processing (a lot of 'threads' are left and the windows have to be corrected) but there is no objection to not saving time and then there is less post-processing.... Something for something...
The print used 1/4 roll of filament (cheapest PLA Plastspaw).
Settings - 205C head, 63C table (first layers 65). Obviously the print was the least precise.
I did not clean the disk chambers during assembly ('threads' provide good cushioning and are thin enough that there is no risk of overheating. The chambers accommodate any of the USB portable drives - including the tall 4TB ones. I currently have 4 4T drives running and I can hardly hear the drives at all (well... you can hear the heads moving a bit).
The biggest problem is with the 'Raspberry'. The chamber is very cramped. I decided to remove the inner wall, but it seems that after cleaning the chamber more carefully it would fit at least to the touch.
I expected the 'Pi' to overheat during operation. Fortunately, even under heavy load (antivirus checking disks - 100% ) the external temperature did not exceed 65C which I consider to be an acceptable value. The temperature under no load was around 40C.
If we're on the 'Pi' - don't skimp on the amount of memory. Buy the 4GB version. Especially if you want to have additional services on it besides SAMBA (GIT, HTTP server, Jellyfin, DNS server). On mine (2GB) a stupid antivirus (ClamAV) can consume all the memory. If we're only thinking of a file server without any 'tricks' or antivirus, then 2G is more than enough - unless we want much bigger disks.
If I had to repeat the 'production' of the case, I would probably opt for a different material (PET-G) and thicken the walls a bit in some places (currently it is 1mm). Eventually the top and back wall will also be needed but.... there is a bit of a problem with the 'raspberry' starting up with the disks on (and it's probably not a power supply issue). For me, the problem is not annoying enough to fight it but access to the sockets is necessary.... Fortunately reboots are rare. Another issue is that it's standing in my workshop where it doesn't have to be beautiful but there can't be a pile of drives loose
The whole thing works reliably and meets all (realistic) expectations.... The transfer rate (measured) is 100Mbps (for mechanical disks). The media server works without jamming. There is no mirroring or RAID5 but if one has such needs then no problem
As for configuration - plain Ubuntu on Raspberry Pi + Debian/Ubuntu archive packages (plus SNAP). The disks must be named. In fstab we enter static mapping to the names (there is no guarantee of disk 'letter' allocation). In the Samba configuration we define the allocations. I, for example, have an additional partition with SD shared independently of the HDD in addition to the HDD. It's worth configuring 'spare' directories and shares - for example, so that you can add a new drive 'for a while' without revolution. Then you can do a 'mount' and you can already see its contents.
One additional note - power supply and hub - I have a 3A power supply and unfortunately but adding more than 4 drives causes me problems precisely with powering the drives.... You can cope either by selectively turning the drives on, or by plugging the others into the raspberry (but I wouldn't advise above 2 - not saying there are only 2 USB3 and 2 USB2 sockets).
I attach the zipped STL and GCODE files (under Ender 3 pro).
Cool? Ranking DIY