NAS: Difference between revisions

From 太極
Jump to navigation Jump to search
(185 intermediate revisions by the same user not shown)
Line 1: Line 1:
Pogoplug is cheap $20 and as good as or better than other NAS. I hook up my Pogoplug classic E02 and a free USB drive (4GB) from Microcenter.
= OpenMediaVault =
* http://www.openmediavault.org/. OMV = Debian OS Server + Web GUI.
** https://en.wikipedia.org/wiki/OpenMediaVault
** [https://docs.openmediavault.org/en/latest/faq.html FAQ]
* OMV is like a regular Linux except but it has a GUI that was targeted for experienced Linux users. Nextcloud is probably more for beginner users.
* [https://www.raspberrypi.com/tutorials/nas-box-raspberry-pi-tutorial/ How to build a Raspberry Pi NAS] from raspberrypi.com
** At the end of the installation, it will reboot automatically.
** admin/openmediavault
* [https://youtu.be/LOg4xfDQafc Raspberry Pi OMV 5 NAS] 2020/12
* [https://youtu.be/6ymPM-o03BY Setting Up a Docker Home Server with OpenMediaVault 6] 2022/5
 
* [https://youtu.be/Y3yF1Rsu7ow Install & Configure openmediavault (omv6) | DIY NAS Part 3 - Software] 2023/4/21. Quite complete !!
** Set up '''Users''' first before messing up folders. The order is similar to the way clients access shared folders.
** After creating a shared folder in '''Storage''' menu, go back to Users menu. Select a user and click "Shared folder privileges". Click on "Read/Write" to enable it (Yellow).
** Go back to the shared folder. Click on "Privileges" icon. We can ''verify'' who has what kind of privileges.
** After generating "Shared folders", we still need to go to '''Services''' and enable NFS or SMB/CIFS. This is two steps: one is to enable it and the other is to add individual shared folders to either SMB or NFS.
** Now it's time to verify the shared folder on client machines.
 
* [https://youtu.be/UawYG_itpM4 OpenMediaVault (OMV) 6 (Alpha) Setup and First Look]  2021/6. We see OMV is installed as a VM.
* [https://www.howtoforge.com/tutorial/install-open-media-vault-nas/ Build your own NAS with OpenMediaVault]
* Works on KVM. Select Debian 10 for OS. We can use http://openmediavault.local/ to access in add to the IP. title=Installation
* [https://openmediavault.readthedocs.io/en/5.x/ Documentation v5.x]
* Default username/password
** WebGUI. User: admin, Password: openmediavault
** Client (SSH, console). User: root, Password: <set during installation>
* [https://pimylifeup.com/raspberry-pi-openmediavault/ Installing OpenMediaVault to a Raspberry Pi]
** Changing the Default OpenMediaVault Password
** Creating a Shared Folder in OpenMediaVault including 'Adding a new Filesystem', 'Creating the Shared Folder'
** Enabling SAMBA/CIFS within OpenMediaVault
** Adding New Users in OpenMediaVault
* [https://smarthomecircle.com/create-nas-with-raspberry-pi-5 How to Create a NAS with Raspberry Pi 5] 2024
* [http://www.pcworld.com/article/3150765/linux/4-easy-linux-projects-for-newbies-and-intermediate-users.html 4 easy Linux projects for newbies and intermediate users]. OpenMediaVault is a linux-based system.
* [https://github.com/ikogan/docker-openmediavault Docker container for OpenMediaVault]. [http://www.songming.me/docker.html OpenMediaVault插件之Docker教程]
 
== Disk space and memory requirement ==
For disk space, 4GB is enough. It shows 2.4GB in my OMV 6.5.0.
 
The memory usage is 430MB when in idle.
 
== Network, static IP & DNS for internet access ==
* Remember to change DNS in the Advanced section. No need to modify anything in /etc/resolv.conf in terminal. You can check that "ping -c 3 1.1.1.1" works but "ping -c 3 google.com" did not.
* Configure DNS is necessary when I need to install plugins.
 
== apt update warnings ==
[https://forum.openmediavault.org/index.php?thread/38736-apt-warnings-after-update-omv-to-5-6-3/ You still have the security repo in /etc/apt/sources.list]. That needs to be removed.
 
== Disk usage ==
* Method1: Dashboard - File systems (/dev/sda1, /dev/sdb1, ...)
* Method2: Storage - File systems
 
== Sharing ==
* We need to partition the system disk if we want to create a shared folder on the system drive. [https://forum.openmediavault.org/index.php?thread/12104-shared-folder-on-the-system-disk/ shared folder on the system disk].
* [https://forum.openmediavault.org/index.php?thread/18170-share-whole-disk/ share whole disk] (it works)
* '''Remember to create a new user (it seems admin is not working for share folders)'''. When I create a new user (Groups = users) after I created a shared folder, the new user automatically appeared in a shared folder Permissions list.
** No need to create home directory from "Users - Settings".
** Create a user from "Users - Users". Enter a user name. In the '''Group''' attribute, select '''Users'''. That is enough.
** No need to worry from "Users - Groups".
* '''Storage - Shared Folders'''. Create a name.
 
== Where are shared folders ==
In OpenMediaVault, shared folders are a key functionality around which all services revolve. They are created as subvolumes on BTRFS file systems or simple directories on all other file systems supported by OpenMediaVault.
 
When you create a shared folder, you select a disk, and then a folder on that disk. If the folder doesn't exist, it is created for you². That's where the shared folder is located.
 
The actual path of the shared folder can be obtained using the UUID of the shared folder. On my OMV running in Proxmox,
<pre>
root@omv:~# lsblk
NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0  32G  0 disk
├─sda1  8:1    0  31G  0 part /
├─sda2  8:2    0    1K  0 part
└─sda5  8:5    0  975M  0 part [SWAP]
sdb      8:16  0  489G  0 disk
└─sdb1  8:17  0  489G  0 part /srv/dev-disk-by-uuid-9c8dfd73-766f-49c0-acb4-2a26c1c2172c
 
root@omv:~# ls -l /srv/dev-disk-by-uuid-9c8dfd73-766f-49c0-acb4-2a26c1c2172c/
total 36
-rw------- 1 root root  6144 Oct 19 18:46 aquota.group
-rw------- 1 root root  6144 Oct 19 18:46 aquota.user
drwx------ 2 root root  16384 Oct 18 21:33 lost+found
drwxrwsr-x 2 root users  4096 Oct 19 07:40 OPMShare    <== Share name for a folder
</pre>
 
== Remove SMB sharing ==
* (Necessary?) Plugin - type 'reset' (resetperm) - Install.
* Step 1: Services - SMB/CIFS - Shares - click one and delete
* Step 2: Storage - Shared folders - click one and delete.
* Step 3: Apply the changes.
 
Note although we remove SMB shares, the Dashboard still shows the disk and its partitions. The Storage still shows the device.
 
== Update ==
<pre>
apt-get update && apt-get dist-upgrade && omv-update
 
omv-release-upgrade
</pre>
 
== SMART monitoring ==
After enabling SMART monitoring in OpenMediaVault, you can do the following:
* '''View device informatio'''n: From the Devices tab, you can select a drive and click on the Information button to view detailed information about the drive, including its SMART attributes and status.
* '''Configure notifications''': You can configure OpenMediaVault to send you email notifications when changes in S.M.A.R.T values are detected. To do this, go to the System tab in the left-hand menu, select the Notification option, and configure your email settings.
* '''Schedule tests''': From the Scheduled tests tab, you can schedule different types of tests to run on your drives, including short self-tests, long self-tests, conveyance self-tests, and offline immediate tests.
 
== NAS Not seen/visible in local network ==
Ideally, if we go to the File Manager app -> Network (Windows)/Other Locations (GNOME) we shall see "HOSTNAME -SMB/CIFS" & "HOSTNAME - SSH" items. If we click on "HOSTNAME - SMB/CIFS", it will show the shared folder name.
 
* [https://forum.openmediavault.org/index.php?thread/18946-omv-host-not-seen-in-network-in-windows-10-file-explorer/ OMV Host not seen in "Network" in Windows 10 File Explorer]
* *[https://www.reddit.com/r/OpenMediaVault/comments/mwgman/omv_doesnt_show_up_in_network/ OMV doesn't show up in "Network"]
 
== View free/total space in client ==
PS. I don't this problem. To view free space, right click on any one of subfolders and choose Properties. It'll show "Free space" (at least on the GNOME file manager).
 
[https://forum.openmediavault.org/index.php?thread/19434-unable-to-show-real-free-used-disk-space-in-samba-mounted-drives-under-windows/ Unable to show real free/used disk space in SAMBA mounted drives under Windows]. So add this line (OMV GUI) to the '''Extra options'''-field (bottom of the screen) in 'Edit share' and restart the samba service ('''systemctl restart smbd.service'''). It´s a per share command.
<pre>
dfree command = /usr/local/bin/dfree
</pre>
Create a file '''/usr/local/bin/dfree''' and make it executable.
<pre>
#!/bin/sh
/bin/df -h $1 | grep sda1 | awk '{print $2" "$4}'
# 458G 241G
</pre>
 
== OMV-Extras ==
* [https://docs.openmediavault.org/en/latest/plugins.html Plugins]
* https://wiki.omv-extras.org/
* [https://www.wundertech.net/how-to-install-omv-extras-on-openmediavault/ How to Install OMV-Extras on OpenMediaVault]
* [https://youtu.be/f8Yoo4FRGBU?si=PXcsQRyzCHu054Sa Installing Docker & Portainer with new OMV-Extras (June 2023)] (Video)
 
== FileBrowser ==
* Step 1: System - Plugins
* Step 2: Services - File browser. Enable it. Port is 3670. Need to select a '''Shared folder'''. Save & OpenUI. Default is admin/admin. We can download/upload/copy/paste/delete/... files, create new files/folders, manage users, through the web interface.
* The filebrowser cannot even preview png files like a regular file manager in a desktop
 
== aquota.user, aquota.group ==
[https://forum.openmediavault.org/index.php?thread/4748-cannot-remove-aquota-user-or-aquota-group/ You can't remove them because they are in use by the quota service].
 
== Backup configuration ==
* [https://forum.openmediavault.org/index.php?thread/44909-how-to-backup-omv-system-configuration/ How to backup OMV System/configuration] (OMV 6.x)
* https://docs.openmediavault.org/en/latest/faq.html. There is no regular backup/restore procedure, but yes, in some way: keep the file '''/etc/openmediavault/config.xml''' for references purposes if the option is to go for a clean re-install.
* You can use the '''openmediavault-backup''' plugin to backup your OMV system. See [https://forum.openmediavault.org/index.php?thread/44909-how-to-backup-omv-system-configuration/ How to backup OMV System/configuration]
 
== Proxmox ==
* [https://www.datahoards.com/testing-open-media-vault-omv-inside-a-proxmox-vm/ Testing Open Media Vault (OMV) inside a Proxmox VM] including passthrough a disk.
* [https://youtu.be/zDDOTiSSWlE OpenMediaVault - an Open Source Self Hosted NAS running on Linux with Docker for extra functionality] from Awesome OS
** HW: 32GB storage, 8GB ram
** Hostname: openmediavault.local
** [https://youtu.be/zDDOTiSSWlE?t=795 Create storage] on Promox
* Opposite direction: [https://www.diytechguru.com/2020/12/16/install-proxmox-backup-server-on-omv/ Install Proxmox Backup Server on OMV 5]
* [https://m.youtube.com/watch?v=Hu3t8pcq8O0 Turning Proxmox Into a Pretty Good NAS]
* [https://m.youtube.com/watch?v=AP61_ETd2GE Setting Up NAS Server On Proxmox]
 
== Docker, portainer ==
[https://youtu.be/1ICHdvSGHVs Open Media Vault 6 (2023), omv-extras, Docker and Portainer Part 2]
 
= QNAP vs Synology =
* [https://slickdeals.net/f/13084780-qnap-ts-228a-2-bay-nas-enclosure-arm-rtd-1295-quad-core-1-4ghz-1gb-ram-139?page=3#commentsBox Qnap has flaky software and poor CS].
* [https://smile.amazon.com/Synology-Bay-DiskStation-DS218-Diskless/dp/B075N1BYWX/ Synology 2 bay NAS DiskStation DS218+ (Diskless)] $298
 
== Virtualization Station from QNAP ==
http://www.qnap.com/event/station/en/virtualization.php
 
The supported NAS models are listed on http://www.qnap.com/event/station/en/virtualization.php?content=supported
 
== Build a NAS like Synology ==
[https://youtu.be/VB67_FG5y-E build a NAS like Synology 7.2] & [https://github.com/wjz304/arpl-i18n Automated Redpill Loader (i18n)]
 
= Raspberry Pi =
[[Raspberry#NAS|Raspberry Pi NAS]]
 
= ODroid xu4 =
* [https://magazine.odroid.com/article/setting-up-your-odroid-odroid-xu4-as-a-general-purpose-nas/ Setting Up Your ODROID: ODROID-XU4 As A General Purpose NAS]
** Ubuntu
** Webmin
** Samba
** Owncloud
* [https://ameridroid.com/blogs/ameriblogs/how-to-set-up-a-basic-nas-using-samba How-To Set Up A Basic NAS: Using Samba To Share Files]
 
= Zimablade =
* https://shop.zimaboard.com/products/zimablade-single-board-server-for-cyber-native
* [https://youtu.be/_aT5Xy9-AzQ?si=r7zVrTkQQ3qxHtgt&t=41 Open the case]. Tip:
** 1) flip to the Ethernet side,
** 2) pry from the bottom of the black part using fingers. The black part has a tab on the SATA ports side. We don't want to break the tab there.
* I got a quad-core version (7700). cat /proc/cpuinfo shows the CPU is celeron N3450 @ 1.10GHz. See [https://wiki.taichimd.us/view/NAS#Zimablade Specs].
* Power by USB-C.
** But it is 12V. We need to use the power supply purchased from zimaboard.
** On the other hand, the USB-C power adapter should not be used in other 5V devices.
* USB-C supports display too according to [https://www.zimaspace.com/products/blade-personal-nas/#specs I have the ZimaBoard already any reason to get the ZimaBlade?].
* The power LED is located under the PCB. We cannot see the light directly from the front. We can see it from the side.
* It supports two 3.5/2.5 SATA drives '''including power'''.
** The notch on the power cable should be on top. The power cable should be twisted before it is connected to the board:(
** A white LED around the SATA power port inside the case will flash when we power the board.
* [https://www.amazon.com/zimaboard-Adapter-PCIe4-0-Desktop-Support/dp/B0BQFCTZ6Q PCIe to M.2 NVME SSD Adapter Card] from Amazon.
** [https://pcpepper.com/sata-vs-msata-vs-ngff-m-2-vs-nvme-pcie-m-2-which-is-the-right-ssd-for-me/ SATA vs mSATA vs NGFF M.2 vs NVMe].
* Reviews
** [https://www.youtube.com/watch?v=I1bbD1kw334 Is THIS your next NAS? (Zima Blade Review)]
** [https://techno-tim.github.io/posts/zimablade-review/ Introducing the ZimaBlade! - An affordable Low Power Single Board Computer!]
* While it's booting up, repeatedly tap the DEL key on your keyboard and it should take you into the BIOS/UEFI.
* [https://www.youtube.com/watch?v=DwHvHMTkva8 How to Install TrueNAS on Zimaboard A Complete Guide].
* It supports Wake-on-lan. See [https://www.zimaspace.com/products/blade-personal-nas/#specs Specs].
* Forums. Discord:
** https://icewhale.community/
** https://discord.gg/GkuWxuTS
** GitHub: https://github.com/IceWhaleTech/CasaOS.
 
== CasaOS ==
* Wiki/guides - https://wiki.casaos.io/en/get-started
* http://casaos.local/ is not working. I need to manually run '''sudo apt-get install avahi-daemon'''. Then it works without rebooting.
** Currently it supports Debian 11, Ubuntu server 20.04, ... (2024/4)
** Debian 11 Bullseye's end of life is 2024/7.
** Debian 11/12 + CasaOS is using 2.9GB. The root partition has 24GB space in total. 7.8G allocated to /dev partition.
* Setup
** [https://www.youtube.com/watch?v=KA-D60qhNm0 CasaOS Setup (Drive Mounting, Samba Sharing, Remote Access Preparation) on Raspberry Pi] - Ep 2
** SSH: ssh [email protected] in your terminal. Use "casaos" for both username and password.
** CasaOS '''GUI username/password''' will be asked when it was first set up. The new user cannot be used for SSH login. That is, not user directory was created for the GUI login user.
** We can upgrade casaOS right from the GUI.
* Tip
** On the CasaOS dashboard, it can show the power consumption under the CPU. For example, it showed 2W/40C on my Zimablade with a 2.5 HDD attached. PS, playing a video file from CasaOS File browser does not take CPU load or increase power for a low-resolution h264 MP4 file.
**If I have created a shared folder, I can click "..." and select "Copy Path". The path will look like "/mnt/toshiba500/CasaShare" where toshiba500 is my storage name and CasaShare is my (shared) folder's name. Then on Windows, I can paste "\\casaos.local\CasaShare" in the Windows Explorer to access the folder. On Mac/Linux, I can use "smb://casaos.local/CasaShare" to access the folder.
** There is no way to set up a '''SMB password''' from GUI. So the shared folders can be accessed by anyone by default. [https://github.com/IceWhaleTech/CasaOS/issues/1113 SMB Sharing needs to support/enforce authentication]. A solution is
**# sudo nano /etc/samba/smb.casa.conf
**# Change the line "guest ok = Yes" to "guest ok = No"
**# Run "sudo smbpasswd -a USERNAME_OS"
**# Run "sudo service smbd restart"
** Upgrade a docker app seems to be easy. For example, if the Portainer has a new release, I click the "Settings" on the Portainer app on the CasaOS GUI. On the "Tag", I choose the "Latest" instead of "Stable(2.19.4)". Once I click "Save", it'll update the Portainer container. I do need to use the Portainer GUI or a command line to delete the 2.19.4 image.
 
=== Zimaboard ===
* [https://www.youtube.com/watch?v=RptqRRtExeE ZimaBoard Tutorial Adding 1TB SSD Storage for a Personal Cloud]
** Storage - Settings - Create storage
* [https://www.youtube.com/watch?v=RIMYGvVmclE Zimaboard: The Ultimate Guide To Setup And Configuration]
* '''CasaOS internal storage full''': My CasaOS shows the eMMC has only 27.56GB (instead of 32GB) in total. After installing 5 docker images, it now has only 16.6GB space left.
** Run '''sudo docker system prune -a''' to remove all images without at least one container associated with them. The '''-a''' flag will remove all images not associated with a running container.
** Removed unused volumes '''sudo docker volume prune'''
** [https://wiki.casaos.io/en/guides/move-docker-images-and-volumes-to-a-diffferent-storage How to move docker images and volumes to a different storage]
** After I applied the following operations, CasaOS shows the eMMC has 22.38GB available.
:<syntaxhighlight lang='sh'>
sudo systemctl stop casaos*.service
sudo systemctl status casaos.service
sudo systemctl stop docker.*
sudo systemctl status docker.service
 
sudo mv /var/lib/docker /mnt/SP512/CasaShare512/
sudo ln -s /mnt/SP512/CasaShare512/docker /var/lib/docker
 
sudo mv /DATA/AppData /mnt/SP512/CasaShare512/
sudo ln -s /mnt/SP512/CasaShare512/AppData /DATA/AppData
 
sudo reboot
</syntaxhighlight>
 
=== Custom Appstore ===
* "App Store" -> "XXX apps" drop-down menu -> "More apps".
*# Type in "https://casaos-appstore.paodayag.dev/linuxserver.zip" and press "Add".
*# Refresh the page.
*# On the left-hand-side, click on "All" drop-down menu and select "LinuxServer.io". It shows 180 apps.
* https://awesome.casaos.io/content/3rd-party-app-stores/list.html
* https://github.com/WisdomSky/CasaOS-LinuxServer-AppStore
* [https://www.reddit.com/r/CasaOS/comments/13o141w/learning_how_to_import_custom_appmanual_install/ Learning how to import custom app/manual install]
* Dashboard Icons: https://github.com/walkxcode/Dashboard-Icons.
** Full list https://cdn.jsdelivr.net/gh/walkxcode/dashboard-icons@master/png/
** The general format is: https://cdn.jsdelivr.net/gh/walkxcode/dashboard-icons/png/example.png
* [https://github.com/IceWhaleTech/CasaOS/issues/1751 {"message": "store app not found" } ]. Solutions: add '''linuxserver.io''' in app store - more apps. After adding linuxserver.io to the app store, '''webtop''' can be found in the app store when we do a search. When we check the setting of the '''webtop''' app, we see the Docker Image is from "linuxserver/webtop".
* For the application of '''webtop''', we shall change the Host directory for Container's '''/config''' to point to a larger disk instead of the default "/DATA/AppData/webtop/config" which resides in eMMC.
* For the MeTube app, double quotes will be omitted when we use GUI to create the app. This causes an error for the message "YTDL_OPTIONS invalid option". My solution is to export the compose file, modify it and use "sudo docker compose up -d" to launch it. Test the app on another browser or in an incognito window. The advantage of using exporting the compose file is the file include an '''x-casaos:''' section that contains the icon file URL. So the app shows an icon in CasaOS GUI.
{{Pre}}
YTDL_OPTIONS='{"writesubtitles":true,"subtitleslangs":["en","-live_chat"],"updatetime":false,"postprocessors":[{"key":"Exec","exec_cmd":"chmod 0664","when":"after_move"},{"key":"FFmpegEmbedSubtitle","already_have_subtitle":false},{"key":"FFmpegMetadata","add_chapters":true}]}'
</pre>
* A better solution for the above situation is to [https://community.bigbeartechworld.com/t/added-an-edit-casaos-apps-script/197/1 Edit the CasaOS docker compose files] in CasaOS. The script is on [https://raw.githubusercontent.com/bigbeartechworld/big-bear-scripts/master/edit-casaos-apps/run.sh github here] made by [https://github.com/bigbeartechworld/big-bear-scripts/ big-bear-scripts]. PS: 1. we need to be in root in order to run the script 2. it won't save the script in the disk.
** Automatic method: <nowiki>bash -c "$(wget -qLO - https://raw.githubusercontent.com/bigbeartechworld/big-bear-scripts/master/edit-casaos-apps/run.sh)"  </nowiki>
** Manual method:
*** Go to the folder '''/var/lib/casaos/apps/''' to view all installed '''services'''/apps/containers
*** Edit the docker-compose file directly from "/var/lib/casaos/apps/sparkling_felix/" if, for example, my container is called "sparkling_felix"
*** Run '''casaos-cli app-management apply "$service_name" --file="$docker_compose_path" '''. For example, '''sudo casaos-cli app-management apply "sparkling_felix" --file=/var/lib/casaos/apps/sparkling_felix/docker-compose.yml'''. This will refresh the CasaOS GUI.
 
=== Backup/migration ===
* [https://community.bigbeartechworld.com/t/how-to-migrate-casaos-data-to-a-new-drive-and-mount-it-permanently/217 How to Migrate CasaOS Data to a New Drive and Mount It Permanently]
* [https://wiki.casaos.io/en/guides/move-docker-images-and-volumes-to-a-diffferent-storage How to move docker images and volumes to a different storage]
 
= Pogoplug =


== Basic statistic about Pogoplug E02 ==
== Basic statistic about Pogoplug E02 ==
* ARM 1.2GB
 
* 256MB memory
See http://archlinuxarm.org/platforms/armv5/pogoplug-v2-pinkgray for hardware specification.
 
* architecture: ARMv5te
* Processor: Marvell Kirkwood 1.2GHz
* RAM: 256MB
* 124MB NAND
* 124MB NAND
* Gigabit ethernet
* Gigabit ethernet
* 5W power
* 5W power
* 4 USB 2.0 connector.
* 4 USB 2.0 connector.
[[File:20121105 181258.jpg|100px]] 
[[File:20121105_181506.jpg|100px]]


== Install ArchLinux on pogoplug (Debian is better actually) ==
== Install ArchLinux on pogoplug (Debian is better actually) ==
Line 20: Line 305:
/sbin/fdisk /dev/sda
/sbin/fdisk /dev/sda
</pre>
</pre>
At the fdisk prompt, delete old partitions and create a new one:
At the fdisk prompt, delete old partitions and create a new one:
* Type o. This will clear out any partitions on the drive.
* Type o. This will clear out any partitions on the drive.
Line 130: Line 416:


* Find your devices's IP address and connect via SSH:
* Find your devices's IP address and connect via SSH:
* Partition your flash drive with fdisk:
* Partition your flash drive with fdisk (or gparted):
<pre>
<pre>
fdisk /dev/sda
fdisk /dev/sda
Line 137: Line 423:
# Set partition 1 active
# Set partition 1 active
</pre>
</pre>
See http://www.terminally-incoherent.com/blog/2012/09/19/set-up-a-home-linux-server-for-30-with-pogoplug/ for clear explanation of using fdisk.
* Download and run the Debian Wheezy installer:
* Download and run the Debian Wheezy installer:
<pre>
<pre>
Line 189: Line 476:
Swap:      535544          0    535544
Swap:      535544          0    535544
</pre>
</pre>
If I want to add a USB drive, it is safe NOT to insert the 2nd USB drive when the system boot. It is better to insert the 2nd USB drive after the system has booted. In my experience, if I insert the 2nd USB drive when the system boot, the first USB drive will be mounted as /dev/sdb1 but I want the 2nd USB drive mounted as /dev/sdb1.
Install build-essential. Should be fine. See Home automation link below.


Other resources:
Other resources:
* http://wiki.daviddarts.com/Pogoplug
* http://wiki.daviddarts.com/Pogoplug
* http://fzr.squeenus.com/debian/
* http://fzr.squeenus.com/debian/
* http://www.terminally-incoherent.com/blog/2012/09/19/set-up-a-home-linux-server-for-30-with-pogoplug/
* http://planetgary.blogspot.com/2011/08/home-automation-on-debian-powered.html Home automation
* http://bastel.dyndns.info/~dockstar/debian/ install some essential tools
* http://www.debian.org/ports/arm/  ARM port on debian


== Make it more powerful ==
= Make it more powerful =


* Backup server
== Backup server (RAID 1) ==
* SAMBA serve. So every computer in LAN can access the contents there. On Windows computer, type \\192.168.1.3\ShareFolder, for example.
[http://www.crashplan.com/consumer/crashplan.html Crash plan].
 
== Remote file access by [http://ajaxplorer.info AjaXplorer AjaXplorer] ==
 
== Cloud by [http://www.openstack.org OpenStack] ==
 
== BitTorrent by Transmission ==
 
* http://naich.net/wordpress/?p=574
* http://archlinuxarm.org/support/guides/applications/transmission
* http://aaronrandall.com/blog/installing-a-bittorrent-client-on-the-pogoplug/ and [http://aaronrandall.com/blog/adding-torrents-via-my-pogoplug-com here].
* [https://trac.transmissionbt.com/wiki/UnixServer/Debian From transmission wiki specific to Debian]. [https://trac.transmissionbt.com/wiki/EditConfigFiles How to edit configuration file].
 
Note: Must stop the transmission-daemon before modifying the setting.
 
<pre>
apt-get install transmission-cli transmission-common transmission-daemon
# stop transmission first before change the setting
/etc/init.d/transmission-daemon stop
nano /etc/transmission-daemon/settings.json
# change “download-dir”, “incomplete-dir”
# change rpc-whitelist to "*" or your remote IP
# change "rpc-username" ,
#        "rpc-password"  (this will then be hashed, so don't worry)
# change "speed-limit-up": 10,
#        "speed-limit-up-enabled": true,
# change upload-limit (KB/s) from 100 to 10
#        upload-limit-enabled from 0 to 1
mkdir /mnt/usb/Downloads
chmod -R 777 /mnt/usb/Downloads
transmission-daemon
 
/etc/init.d/transmission-daemon stop
 
# Remember to shut down transmission before editing the settings.json file
 
/etc/init.d/transmission-daemon start
</pre>
Open browser http://hostname:9091/transmission/web
 
For pirat*, we can download torr* by using (see [http://www.geniouspc.com/2012/03/trick-how-to-download-pirate-bay.html here])
<pre>
http://torrents.thepiratebay.se/xxxxxx/My.torrent
</pre>
So we don't need to download the torrent in our local machine. In fact, we can just right click 'Get this torrent' button and copy the link. Then we can open the url in transmission/web.
 
Note: the transfer speed from pogoplug to ubuntu is about 5.5MB/s.
 
== SFTP server by [http://cyberduck.ch/ Cyberduck] ==
 
== WebDAV by [http://owncloud.org owncloud.org] ==
 
== SAMBA server ==
 
So every computer in LAN can access the contents there. On Windows computer, type \\192.168.1.3\ShareFolder, for example.
* UPnP media server will stream the media content on your Pogoplug to any compatible media player such as the PlayStation 3, Microsoft Xbox 360, and D-Link Boxee Box over your local network.
* UPnP media server will stream the media content on your Pogoplug to any compatible media player such as the PlayStation 3, Microsoft Xbox 360, and D-Link Boxee Box over your local network.
* BitTorrentTM client
* Email alerts
* Print server.


== Compare to other NAS ==
== Email alerts ==
* [http://www.dlink.com/uk/en/home-solutions/share/sharecenter/dns-320l-sharecenter-2-bay-cloud-storage-enclosure D-LINK DNS 320L]
Using [http://wiki.debian.org/sSMTP sSMTP]; see [http://www.nixtutor.com/linux/send-mail-with-gmail-and-ssmtp/ here].
 
== Print server ==
 
= Best NAS =
* [https://www.howtogeek.com/746521/best-nas-network-attached-storage-devices/ The Best NAS (Network Attached Storage) Devices of 2023]
* [http://www.synology.com/products/product.php?product_name=DS712%2B Synology DS712+ Diskless System Network Storage]. The Synology's wiki page [http://forum.synology.com/wiki/index.php/Home here].
* [https://www.amazon.com/Synology-Bay-DiskStation-DS220-Diskless/dp/B087ZCBWFH/ Synology 2 bay NAS DiskStation DS220+]
* [http://www.dlink.com/uk/en/home-solutions/share/sharecenter/dns-320l-sharecenter-2-bay-cloud-storage-enclosure D-LINK DNS 320L] 800 MHz Marvell 88F6281 (Kirkwood), 128 MB. http://dns323.kood.org/dns-320
* ReadyNAS from Netgear
* [http://www.pcworld.com/article/252626/western_digital_my_book_live_duo_4tb_review_limited_features_lots_of_capacity.html Western Digital My Book Live Duo 4TB]  800MHz PowerPC CPU and 256MB of memory.
* ZyXEL NSA320 and [http://www.newegg.com/Product/Product.aspx?Item=N82E16822336017 NSA310] Diskless
* [http://www.qnap.com/useng/index.php?lang=en-us&sn=862&c=355&sc=688&t=696&n=20423 QNAP TS-212-E Diskless System Network Storage] $119+6 shipping
* [https://slickdeals.net/f/12447892-qnap-3-bay-nas-for-169-99-6-shipping-fs-with-prime-169-99?page=2#commentsBox QNAP TS-328] $170.
** ''That VM does the job but is pretty slow to use/navigate. The arm processor here would make that experience much worse. Honestly other than data storage don't expect much else from this device. However, decent price point and yes the 3rd slot being used for a cache SSD will make a big difference.''
** The TS-328's hardware provides H.264 /H.265 10-bit hardware decoding, encoding and transcoding capabilities. However, playback quality may vary due to factors including playback software, file formats, system usage, and available bandwidth.
* [http://www.smallnetbuilder.com/nas/nas-reviews/31762-iomega-storcenter-ix2-dl-network-storage-reviewed Iomega StoreCenter ix2-dl review]
 
== Best NAS Hard Drives ==
* [https://www.howtogeek.com/831836/best-nas-hard-drives/ The Best NAS Hard Drives of 2023]. [https://www.amazon.com/dp/B07YFGXPQ2 WD Red m2 SATA SSD]
* See also [[Hardware#Hard_disk|Hard disk]]
 
= Different NAS  =
 
== TrueNAS ==
* Youtube
** [https://youtu.be/_sfddZHhOj4 My Proxmox Home Server Walk-Through: Part 1 (TrueNAS, Portainer, Wireguard)]
** [https://youtu.be/M3pKprTdNqQ How to run TrueNAS on Proxmox?]
** [https://youtu.be/SkKysLSrg3w?si=fgJgJUjkJEUQAkKO Setting Up TrueNas Scale from Fresh Install]
* [https://www.techbang.com/posts/106426-reactivate-old-computers-build-your-own-nas-network-hard NAS自己做,舊電腦DIY30分鐘利用TrueNAS套件免費建立你的私人雲端硬碟]
 
== NAS4Free vs FreeNAS  vs Amahi vs OpenMediaVault ==
* http://storageroot.com/articles/nas4free-freenas-amahi-openmediavault
* http://arstechnica.com/information-technology/2014/06/the-ars-nas-distribution-shootout-freenas-vs-nas4free/
 
== [http://www.nas4free.org/ NAS4Free] ==
* [http://www.pcworld.com/article/241978/how_to_build_your_own_network_attached_storage_system.html NAS4Free] from pcworld.com.
* [http://www.homemultimedianetwork.com/Guides/Installing-FreeNAS.php FreeNAS] and [http://www.homemultimedianetwork.com/Guides/Setting-up-the-UPnP-Server-on-FreeNAS-for-streaming-Media-to-the-XBox.php UPnP] setups from homemultimedianetwork.com.
* A non-English [http://youtu.be/CwuKpj12g_Y youtube video] demonstrates installing NAS4Free on Virtualbox (it works as I tested). The important thing is the NAS4Free is based on BSD. So we should select BSD & 64-bit instead Linux. I am using NAS4Free-x64-LivdCD-9.3.0.2.1349.iso. '''N.B.''' NAS4Free does not take much space as, saying, Ubuntu. See the next screenshot.
 
[[File:NAS4Free64.png|200px]]
* [http://wiki.nas4free.org/doku.php?id=documentation:setup_and_user_guide:webgui_interface WebGUI] interface and setup.
* After I enable ssh and allows root login, I can see the default shell is tcsh. See the document in [http://wiki.nas4free.org/doku.php?id=documentation:setup_and_user_guide:services_ssh here].
* If we have added IDE disks from virtual machine setting, we can add them using the web management. To do that, we need to Add disk by clicking '+' sign, apply changes, format disks, and mount disks (mount point name can be 'Data1', 'Data2', ...). These disks will be available via /mnt/Data1 or /mnt/Data2. See the document in [http://wiki.nas4free.org/doku.php?id=documentation:setup_and_user_guide:setup_drives here].
* Lots of services: CIFS/SMB (Samba v4.x), FTP, NFS, TFTP, AFP, RSYNC, Unison, iSCSI (initiator and target), HAST, CARP, Bridge, UPnP, Webserver, and Bittorent.
* UPnP service works like a charm. Note that I need to check the checkbox in 'Enable' (on the topright corner) for it to work. On the client side, I use ubuntu's VLC (v2.1.4) to test. In VLC, click View -> Playlist ('Ctrl+l') and then select Local Network -> Universal Plug 'n' Play. I have tested streaming mp3 and mp4 files. For Android devices, we can try the [https://play.google.com/store/apps/details?id=com.bubblesoft.android.bubbleupnp&hl=en BubbleUPnP] app.
* How do I stream photos? Photos do not show up on VLC or Android UPnP software like BubbleUPnP, AirWire. The trick is to click Administrative Webgui url link and then click rebuild/update database. After the fix, VLC can play photos as video (10 seconds for each) automatically and BubbleUPnP can play the photos too (users decide how long to stay on one image).
 
== [http://www.freenas.org/ FreeNAS] ==
* [https://www.freenas.org/freenas-vs-nas4free/ FreeNAS vs NAS4Free]
* [https://youtu.be/60xwnoIrUTI Installing Nextcloud on FreeNAS]
* [https://youtu.be/qyz91Q_JrBc FreeNAS on x86 SBC] ExplainingComputers
 
== NAS hard disks ==
* [http://www.amazon.com/gp/product/B008JJLZ7G/ref=ox_sc_act_title_1?tag=dealnewscom&ie=UTF8&smid=ATVPDKIKX0DER Western Digital Red 2 TB NAS]
 
== NAS4Free distribution ==
* http://www.linuxuser.co.uk/tutorials/create-a-nas-box-from-spare-parts
 
== [https://nextcloud.com/ NextCloud] ==
* [https://www.makeuseof.com/tag/3-self-hosted-dropbox-alternatives-tested/ The 3 Best Self-Hosted Dropbox Alternatives, Tested and Compared]
* Another Dropbox competitor but with a difference – it is entirely free, encrypted, and open source. The software allows you to either setup using their cloud servers, or host your own private server. It has its [https://apps.nextcloud.com/ app stores] too.
* iOS and Android apps are free
* [https://www.howtoforge.com/tutorial/ubuntu-nginx-nextcloud/ How to Install Nextcloud with Nginx on Ubuntu 18.04 LTS]
* [https://www.techrepublic.com/article/how-to-install-nextcloud-20-on-ubuntu-server-20-04/ How to install Nextcloud 20 on Ubuntu Server 20.04]
* NextCloud was provided as one of 3 options (Google, Nextcloud & Microsoft) for connecting online accounts in CentOS setup. See a screenshot below from running a live session (CentOS-7-x86_64-LiveGNOME-1804.iso, May-2018).
 
[[File:CentosConOnline.png|250px]]
 
* [https://opensource.com/article/23/3/switch-icloud-nextcloud Switch from iCloud to Nextcloud]
* [https://youtu.be/rnZoTEZ2Z0U?si=BwCSqLGirQmFDF8V Mini NextCloud Server on Raspberry Pi 5] 2023/10
 
== Cockpit ==
[https://youtu.be/Hu3t8pcq8O0 Turning Proxmox Into a Pretty Good NAS]
 
== Unraid ==
* https://unraid.net/
* [https://youtu.be/Son7F5Vv1p4?si=vzqDLTRHsLwzOmCf  Checking out Unraid For the First Time!]

Revision as of 21:03, 14 May 2024

OpenMediaVault

  • Install & Configure openmediavault (omv6) | DIY NAS Part 3 - Software 2023/4/21. Quite complete !!
    • Set up Users first before messing up folders. The order is similar to the way clients access shared folders.
    • After creating a shared folder in Storage menu, go back to Users menu. Select a user and click "Shared folder privileges". Click on "Read/Write" to enable it (Yellow).
    • Go back to the shared folder. Click on "Privileges" icon. We can verify who has what kind of privileges.
    • After generating "Shared folders", we still need to go to Services and enable NFS or SMB/CIFS. This is two steps: one is to enable it and the other is to add individual shared folders to either SMB or NFS.
    • Now it's time to verify the shared folder on client machines.

Disk space and memory requirement

For disk space, 4GB is enough. It shows 2.4GB in my OMV 6.5.0.

The memory usage is 430MB when in idle.

Network, static IP & DNS for internet access

  • Remember to change DNS in the Advanced section. No need to modify anything in /etc/resolv.conf in terminal. You can check that "ping -c 3 1.1.1.1" works but "ping -c 3 google.com" did not.
  • Configure DNS is necessary when I need to install plugins.

apt update warnings

You still have the security repo in /etc/apt/sources.list. That needs to be removed.

Disk usage

  • Method1: Dashboard - File systems (/dev/sda1, /dev/sdb1, ...)
  • Method2: Storage - File systems

Sharing

  • We need to partition the system disk if we want to create a shared folder on the system drive. shared folder on the system disk.
  • share whole disk (it works)
  • Remember to create a new user (it seems admin is not working for share folders). When I create a new user (Groups = users) after I created a shared folder, the new user automatically appeared in a shared folder Permissions list.
    • No need to create home directory from "Users - Settings".
    • Create a user from "Users - Users". Enter a user name. In the Group attribute, select Users. That is enough.
    • No need to worry from "Users - Groups".
  • Storage - Shared Folders. Create a name.

Where are shared folders

In OpenMediaVault, shared folders are a key functionality around which all services revolve. They are created as subvolumes on BTRFS file systems or simple directories on all other file systems supported by OpenMediaVault.

When you create a shared folder, you select a disk, and then a folder on that disk. If the folder doesn't exist, it is created for you². That's where the shared folder is located.

The actual path of the shared folder can be obtained using the UUID of the shared folder. On my OMV running in Proxmox,

root@omv:~# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   32G  0 disk 
├─sda1   8:1    0   31G  0 part /
├─sda2   8:2    0    1K  0 part 
└─sda5   8:5    0  975M  0 part [SWAP]
sdb      8:16   0  489G  0 disk 
└─sdb1   8:17   0  489G  0 part /srv/dev-disk-by-uuid-9c8dfd73-766f-49c0-acb4-2a26c1c2172c

root@omv:~# ls -l /srv/dev-disk-by-uuid-9c8dfd73-766f-49c0-acb4-2a26c1c2172c/
total 36
-rw------- 1 root root   6144 Oct 19 18:46 aquota.group
-rw------- 1 root root   6144 Oct 19 18:46 aquota.user
drwx------ 2 root root  16384 Oct 18 21:33 lost+found
drwxrwsr-x 2 root users  4096 Oct 19 07:40 OPMShare    <== Share name for a folder

Remove SMB sharing

  • (Necessary?) Plugin - type 'reset' (resetperm) - Install.
  • Step 1: Services - SMB/CIFS - Shares - click one and delete
  • Step 2: Storage - Shared folders - click one and delete.
  • Step 3: Apply the changes.

Note although we remove SMB shares, the Dashboard still shows the disk and its partitions. The Storage still shows the device.

Update

apt-get update && apt-get dist-upgrade && omv-update

omv-release-upgrade

SMART monitoring

After enabling SMART monitoring in OpenMediaVault, you can do the following:

  • View device information: From the Devices tab, you can select a drive and click on the Information button to view detailed information about the drive, including its SMART attributes and status.
  • Configure notifications: You can configure OpenMediaVault to send you email notifications when changes in S.M.A.R.T values are detected. To do this, go to the System tab in the left-hand menu, select the Notification option, and configure your email settings.
  • Schedule tests: From the Scheduled tests tab, you can schedule different types of tests to run on your drives, including short self-tests, long self-tests, conveyance self-tests, and offline immediate tests.

NAS Not seen/visible in local network

Ideally, if we go to the File Manager app -> Network (Windows)/Other Locations (GNOME) we shall see "HOSTNAME -SMB/CIFS" & "HOSTNAME - SSH" items. If we click on "HOSTNAME - SMB/CIFS", it will show the shared folder name.

View free/total space in client

PS. I don't this problem. To view free space, right click on any one of subfolders and choose Properties. It'll show "Free space" (at least on the GNOME file manager).

Unable to show real free/used disk space in SAMBA mounted drives under Windows. So add this line (OMV GUI) to the Extra options-field (bottom of the screen) in 'Edit share' and restart the samba service (systemctl restart smbd.service). It´s a per share command.

dfree command = /usr/local/bin/dfree

Create a file /usr/local/bin/dfree and make it executable.

#!/bin/sh
/bin/df -h $1 | grep sda1 | awk '{print $2" "$4}'
# 458G 241G

OMV-Extras

FileBrowser

  • Step 1: System - Plugins
  • Step 2: Services - File browser. Enable it. Port is 3670. Need to select a Shared folder. Save & OpenUI. Default is admin/admin. We can download/upload/copy/paste/delete/... files, create new files/folders, manage users, through the web interface.
  • The filebrowser cannot even preview png files like a regular file manager in a desktop

aquota.user, aquota.group

You can't remove them because they are in use by the quota service.

Backup configuration

Proxmox

Docker, portainer

Open Media Vault 6 (2023), omv-extras, Docker and Portainer Part 2

QNAP vs Synology

Virtualization Station from QNAP

http://www.qnap.com/event/station/en/virtualization.php

The supported NAS models are listed on http://www.qnap.com/event/station/en/virtualization.php?content=supported

Build a NAS like Synology

build a NAS like Synology 7.2 & Automated Redpill Loader (i18n)

Raspberry Pi

Raspberry Pi NAS

ODroid xu4

Zimablade

CasaOS

  • Wiki/guides - https://wiki.casaos.io/en/get-started
  • http://casaos.local/ is not working. I need to manually run sudo apt-get install avahi-daemon. Then it works without rebooting.
    • Currently it supports Debian 11, Ubuntu server 20.04, ... (2024/4)
    • Debian 11 Bullseye's end of life is 2024/7.
    • Debian 11/12 + CasaOS is using 2.9GB. The root partition has 24GB space in total. 7.8G allocated to /dev partition.
  • Setup
  • Tip
    • On the CasaOS dashboard, it can show the power consumption under the CPU. For example, it showed 2W/40C on my Zimablade with a 2.5 HDD attached. PS, playing a video file from CasaOS File browser does not take CPU load or increase power for a low-resolution h264 MP4 file.
    • If I have created a shared folder, I can click "..." and select "Copy Path". The path will look like "/mnt/toshiba500/CasaShare" where toshiba500 is my storage name and CasaShare is my (shared) folder's name. Then on Windows, I can paste "\\casaos.local\CasaShare" in the Windows Explorer to access the folder. On Mac/Linux, I can use "smb://casaos.local/CasaShare" to access the folder.
    • There is no way to set up a SMB password from GUI. So the shared folders can be accessed by anyone by default. SMB Sharing needs to support/enforce authentication. A solution is
      1. sudo nano /etc/samba/smb.casa.conf
      2. Change the line "guest ok = Yes" to "guest ok = No"
      3. Run "sudo smbpasswd -a USERNAME_OS"
      4. Run "sudo service smbd restart"
    • Upgrade a docker app seems to be easy. For example, if the Portainer has a new release, I click the "Settings" on the Portainer app on the CasaOS GUI. On the "Tag", I choose the "Latest" instead of "Stable(2.19.4)". Once I click "Save", it'll update the Portainer container. I do need to use the Portainer GUI or a command line to delete the 2.19.4 image.

Zimaboard

sudo systemctl stop casaos*.service
sudo systemctl status casaos.service
sudo systemctl stop docker.*
sudo systemctl status docker.service

sudo mv /var/lib/docker /mnt/SP512/CasaShare512/
sudo ln -s /mnt/SP512/CasaShare512/docker /var/lib/docker

sudo mv /DATA/AppData /mnt/SP512/CasaShare512/
sudo ln -s /mnt/SP512/CasaShare512/AppData /DATA/AppData

sudo reboot

Custom Appstore

YTDL_OPTIONS='{"writesubtitles":true,"subtitleslangs":["en","-live_chat"],"updatetime":false,"postprocessors":[{"key":"Exec","exec_cmd":"chmod 0664","when":"after_move"},{"key":"FFmpegEmbedSubtitle","already_have_subtitle":false},{"key":"FFmpegMetadata","add_chapters":true}]}'
  • A better solution for the above situation is to Edit the CasaOS docker compose files in CasaOS. The script is on github here made by big-bear-scripts. PS: 1. we need to be in root in order to run the script 2. it won't save the script in the disk.
    • Automatic method: bash -c "$(wget -qLO - https://raw.githubusercontent.com/bigbeartechworld/big-bear-scripts/master/edit-casaos-apps/run.sh)"
    • Manual method:
      • Go to the folder /var/lib/casaos/apps/ to view all installed services/apps/containers
      • Edit the docker-compose file directly from "/var/lib/casaos/apps/sparkling_felix/" if, for example, my container is called "sparkling_felix"
      • Run casaos-cli app-management apply "$service_name" --file="$docker_compose_path" . For example, sudo casaos-cli app-management apply "sparkling_felix" --file=/var/lib/casaos/apps/sparkling_felix/docker-compose.yml. This will refresh the CasaOS GUI.

Backup/migration

Pogoplug

Basic statistic about Pogoplug E02

See http://archlinuxarm.org/platforms/armv5/pogoplug-v2-pinkgray for hardware specification.

  • architecture: ARMv5te
  • Processor: Marvell Kirkwood 1.2GHz
  • RAM: 256MB
  • 124MB NAND
  • Gigabit ethernet
  • 5W power
  • 4 USB 2.0 connector.

20121105 181258.jpg 20121105 181506.jpg

Install ArchLinux on pogoplug (Debian is better actually)

See the instruction in http://archlinuxarm.org/platforms/armv5/pogoplug-v2-pinkgray for how to install Archlinux on pogoplug (E02). I make a copy below.

killall hbwd
cd /tmp
wget http://jeff.doozan.com/debian/uboot/install_uboot_mtd0.sh
chmod +x install_uboot_mtd0.sh
./install_uboot_mtd0.sh
/sbin/fdisk /dev/sda

At the fdisk prompt, delete old partitions and create a new one:

  • Type o. This will clear out any partitions on the drive.
  • Type p to list partitions. There should be no partitions left.
  • Now type n, then p for primary, 1 for the first partition on the drive, and then press ENTER, accepting default values.
  • Exit by typing w.
wget http://archlinuxarm.org/os/pogoplug/mke2fs
chmod 755 mke2fs
./mke2fs /dev/sda1
mkdir usb
mount /dev/sda1 usb
cd usb
wget http://archlinuxarm.org/os/ArchLinuxARM-armv5te-latest.tar.gz
tar -xzvf ArchLinuxARM-armv5te-*.tar.gz  # This will take a long time
rm ArchLinuxARM-armv5te-*.tar.gz
sync  # Takes a while when using a flash drive. Not in my case however.
cd ..
umount usb
/sbin/reboot

Log back in after your Pogoplug reboots using username root and password root.

At the end, the system is very lean.

[root@alarm ~]# free
             total       used       free     shared    buffers     cached
Mem:        252492      28292     224200          0       4580      14072
-/+ buffers/cache:       9640     242852
Swap:            0          0          0
[root@alarm ~]# df -lh
Filesystem      Size  Used Avail Use% Mounted on
rootfs          7.4G  443M  6.6G   7% /
/dev/root       7.4G  443M  6.6G   7% /
devtmpfs        124M     0  124M   0% /dev
run             124M  224K  124M   1% /run
shm             124M     0  124M   0% /dev/shm
tmpfs           124M     0  124M   0% /tmp
[root@alarm ~]# uname -a
Linux alarm 3.1.10-13-ARCH #1 PREEMPT Mon Aug 20 15:46:18 UTC 2012 armv5tel GNU/Linux
[root@alarm ~]# cat /proc/cpuinfo
Processor	: Feroceon 88FR131 rev 1 (v5l)
BogoMIPS	: 1191.11
Features	: swp half thumb fastmult edsp 
CPU implementer	: 0x56
CPU architecture: 5TE
CPU variant	: 0x2
CPU part	: 0x131
CPU revision	: 1

Hardware	: Marvell SheevaPlug Reference Board
Revision	: 0000
Serial		: 0000000000000000
[root@alarm ~]# cat /proc/cpuinfo
Processor	: Feroceon 88FR131 rev 1 (v5l)
BogoMIPS	: 1191.11
Features	: swp half thumb fastmult edsp 
CPU implementer	: 0x56
CPU architecture: 5TE
CPU variant	: 0x2
CPU part	: 0x131
CPU revision	: 1

Hardware	: Marvell SheevaPlug Reference Board
Revision	: 0000
Serial		: 0000000000000000
[root@alarm ~]# 

After it, follow the instruction on lifehacker and https://wiki.archlinux.org/index.php/DeveloperWiki:usrlib

pacman -Syu --ignore glibc
pacman -Su
mkinitcpio -p linux

To install rsync, use

pacman -S rsync

Unfortunately, I cannot bypass the error

[root@alarm ~]# pacman -Suy rsync
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
 alarm is up to date
 aur is up to date
:: Starting full system upgrade...
resolving dependencies...
looking for inter-conflicts...

Targets (2): glibc-2.16.0-4  rsync-3.0.9-5

Total Installed Size:   34.26 MiB
Net Upgrade Size:       0.61 MiB

Proceed with installation? [Y/n] 
(2/2) checking package integrity                        [#############################] 100%
(2/2) loading package files                             [#############################] 100%
(2/2) checking for file conflicts                       [#############################] 100%
error: failed to commit transaction (conflicting files)
glibc: /lib exists in filesystem
Errors occurred, no packages were upgraded.

Install Debian on pogoplug

See the instruction on http://projects.doozan.com/debian.

  • Find your devices's IP address and connect via SSH:
  • Partition your flash drive with fdisk (or gparted):
fdisk /dev/sda
# Configure partion 1 as Linux (I'd recommend making this at least 512Mb. The default bare-bones installation uses 280Mb.)
# Configure partion 2 as Linux Swap (I used 256MB.  Adjust according to your anticipated memory usage.)
# Set partition 1 active

See http://www.terminally-incoherent.com/blog/2012/09/19/set-up-a-home-linux-server-for-30-with-pogoplug/ for clear explanation of using fdisk.

  • Download and run the Debian Wheezy installer:
cd /tmp
wget http://projects.doozan.com/debian/kirkwood.debian-wheezy.sh
chmod +x kirkwood.debian-wheezy.sh
export PATH=$PATH:/usr/sbin:/sbin
./kirkwood.debian-wheezy.sh
  • Alternatively, you can choose to install Debian Squeeze with the following commands:
cd /tmp
wget http://projects.doozan.com/debian/dockstar.debian-squeeze.sh
chmod +x dockstar.debian-squeeze.sh
export PATH=$PATH:/usr/sbin:/sbin
./dockstar.debian-squeeze.sh

The script will take some time to download the debian images and extract them to your flash drive. The total install time will vary with the speed of your flash drive and your Internet connection. On my system, it takes about 20 minutes. Once it's finished, you can reboot into your new Debian install.

After your device reboots, it may have a different IP address (it's identifying as 'Debian' to the DHCP server now instead of 'Pogoplug').

The default root password in Debian is 'root'. After you've logged in, you should change the root password and configure /etc/apt/sources.list to point to a Debian mirror near you.

passwd
nano /etc/apt/sources.list

After reboot, the debian system is very lean too


root@debian:~# df -h
Filesystem            Size  Used Avail Use% Mounted on
rootfs                3.2G  260M  2.8G   9% /
none                  123M   36K  123M   1% /dev
/dev/sda1             3.2G  260M  2.8G   9% /
tmpfs                 125M     0  125M   0% /lib/init/rw
tmpfs                 125M     0  125M   0% /dev/shm
tmpfs                 125M     0  125M   0% /tmp
root@debian:~# free
             total       used       free     shared    buffers     cached
Mem:        255672      19636     236036          0        816      11104
-/+ buffers/cache:       7716     247956
Swap:       535544          0     535544

After I install LAMP, the memory uses 250MB. However, after I reboot the pogoplug, it reduces to 66MB.

root@debian:~# free
             total       used       free     shared    buffers     cached
Mem:        255672      66076     189596          0       1244      37000
-/+ buffers/cache:      27832     227840
Swap:       535544          0     535544

If I want to add a USB drive, it is safe NOT to insert the 2nd USB drive when the system boot. It is better to insert the 2nd USB drive after the system has booted. In my experience, if I insert the 2nd USB drive when the system boot, the first USB drive will be mounted as /dev/sdb1 but I want the 2nd USB drive mounted as /dev/sdb1.

Install build-essential. Should be fine. See Home automation link below.

Other resources:

Make it more powerful

Backup server (RAID 1)

Crash plan.

Remote file access by AjaXplorer AjaXplorer

Cloud by OpenStack

BitTorrent by Transmission

Note: Must stop the transmission-daemon before modifying the setting.

apt-get install transmission-cli transmission-common transmission-daemon
# stop transmission first before change the setting
/etc/init.d/transmission-daemon stop
nano /etc/transmission-daemon/settings.json
# change “download-dir”, “incomplete-dir”
# change rpc-whitelist to "*" or your remote IP
# change "rpc-username" ,
#        "rpc-password"  (this will then be hashed, so don't worry)
# change "speed-limit-up": 10,
#        "speed-limit-up-enabled": true,
# change upload-limit (KB/s) from 100 to 10
#        upload-limit-enabled from 0 to 1
mkdir /mnt/usb/Downloads
chmod -R 777 /mnt/usb/Downloads
transmission-daemon 

/etc/init.d/transmission-daemon stop

# Remember to shut down transmission before editing the settings.json file

/etc/init.d/transmission-daemon start

Open browser http://hostname:9091/transmission/web

For pirat*, we can download torr* by using (see here)

http://torrents.thepiratebay.se/xxxxxx/My.torrent

So we don't need to download the torrent in our local machine. In fact, we can just right click 'Get this torrent' button and copy the link. Then we can open the url in transmission/web.

Note: the transfer speed from pogoplug to ubuntu is about 5.5MB/s.

SFTP server by Cyberduck

WebDAV by owncloud.org

SAMBA server

So every computer in LAN can access the contents there. On Windows computer, type \\192.168.1.3\ShareFolder, for example.

  • UPnP media server will stream the media content on your Pogoplug to any compatible media player such as the PlayStation 3, Microsoft Xbox 360, and D-Link Boxee Box over your local network.

Email alerts

Using sSMTP; see here.

Print server

Best NAS

Best NAS Hard Drives

Different NAS

TrueNAS

NAS4Free vs FreeNAS vs Amahi vs OpenMediaVault

NAS4Free

  • NAS4Free from pcworld.com.
  • FreeNAS and UPnP setups from homemultimedianetwork.com.
  • A non-English youtube video demonstrates installing NAS4Free on Virtualbox (it works as I tested). The important thing is the NAS4Free is based on BSD. So we should select BSD & 64-bit instead Linux. I am using NAS4Free-x64-LivdCD-9.3.0.2.1349.iso. N.B. NAS4Free does not take much space as, saying, Ubuntu. See the next screenshot.

NAS4Free64.png

  • WebGUI interface and setup.
  • After I enable ssh and allows root login, I can see the default shell is tcsh. See the document in here.
  • If we have added IDE disks from virtual machine setting, we can add them using the web management. To do that, we need to Add disk by clicking '+' sign, apply changes, format disks, and mount disks (mount point name can be 'Data1', 'Data2', ...). These disks will be available via /mnt/Data1 or /mnt/Data2. See the document in here.
  • Lots of services: CIFS/SMB (Samba v4.x), FTP, NFS, TFTP, AFP, RSYNC, Unison, iSCSI (initiator and target), HAST, CARP, Bridge, UPnP, Webserver, and Bittorent.
  • UPnP service works like a charm. Note that I need to check the checkbox in 'Enable' (on the topright corner) for it to work. On the client side, I use ubuntu's VLC (v2.1.4) to test. In VLC, click View -> Playlist ('Ctrl+l') and then select Local Network -> Universal Plug 'n' Play. I have tested streaming mp3 and mp4 files. For Android devices, we can try the BubbleUPnP app.
  • How do I stream photos? Photos do not show up on VLC or Android UPnP software like BubbleUPnP, AirWire. The trick is to click Administrative Webgui url link and then click rebuild/update database. After the fix, VLC can play photos as video (10 seconds for each) automatically and BubbleUPnP can play the photos too (users decide how long to stay on one image).

FreeNAS

NAS hard disks

NAS4Free distribution

NextCloud

CentosConOnline.png

Cockpit

Turning Proxmox Into a Pretty Good NAS

Unraid