Difference between revisions of "Getting Started with OpenMediaVault"
(updated by API) |
(updated by API) |
||
(8 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
[[Getting Started with OpenMediaVault/zh|查看中文]] | [[Getting Started with OpenMediaVault/zh|查看中文]] | ||
==OpenMediaVault version== | ==OpenMediaVault version== | ||
− | * OS: Debian | + | * OS: Debian 12<br /> |
− | * OpenMediaVault: | + | * OpenMediaVault: 7.0.5-1 (Sandworm)<br /> |
− | + | * Others: built-in OMV-Extras<br /> | |
− | * Others: built-in OMV-Extras | + | ==Earlier version OpenMediaVault== |
+ | Link to → [[Getting Started with OpenMediaVault6|Getting Started with OpenMediaVault6]] | ||
+ | ==First Look== | ||
+ | [[File:Openmediavault7.png|600px]] | ||
==Supported platforms== | ==Supported platforms== | ||
* RK3328<br /> | * RK3328<br /> | ||
Line 11: | Line 14: | ||
* RK3588<br /> | * RK3588<br /> | ||
==Find IP Address== | ==Find IP Address== | ||
− | + | you can use the "ping" command to obtain the IP address: | |
− | + | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | ping | + | ping openmediavault |
</syntaxhighlight> | </syntaxhighlight> | ||
==Access the OpenMediaVault web page== | ==Access the OpenMediaVault web page== | ||
− | + | Type the URL [http://openmediavault/ http://openmediavault/] or the IP address to your web browser, the default login account is: | |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
Username: admin | Username: admin | ||
Password: openmediavault | Password: openmediavault | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | ==Change | + | ==Change admin password== |
− | Click on the profile | + | Click on the profile icon in the upper-right corner of the web page, then select '''"Change Password"'''. |
==Configure the web page timeout duration== | ==Configure the web page timeout duration== | ||
− | + | Go to '''System -> Workbench''' and adjust the '''"Auto Logout"''' time setting. | |
− | == | + | ==Linux default passwords== |
+ | Regular Account:<br/> | ||
+ | User Name: pi<br/> | ||
+ | Password: pi<br/> | ||
+ | <br/> | ||
+ | Root:<br/> | ||
+ | User Name: root<br/> | ||
+ | Password: fa<br/> | ||
+ | ==Root Login via SSH== | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
ssh pi@YourIPAddress | ssh pi@YourIPAddress | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | The default password is "pi". | + | The default password is '''"pi"'''. |
− | == | + | ==Change the passwords== |
− | + | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
sudo passwd root | sudo passwd root | ||
− | sudo | + | sudo passwd pi |
− | + | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | ==Configuring the network and time zone== | |
+ | Login to your OMV via SSH as root user: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
ssh root@IPAddress | ssh root@IPAddress | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | == | + | Excute the following command: |
− | + | <syntaxhighlight lang="bash"> | |
− | ===Step | + | omv-firstaid |
− | + | </syntaxhighlight> | |
− | ===Step | + | Something like this should appear:<br /> |
− | + | [[File:Omv-firstaid.png|400px]] | |
− | Go to | + | ==Set up your drives== |
− | + | Note: If the hard drive has already been initialized and RAID has been preserved, you should be able to mount it directly. | |
− | Go to | + | Refre to: [[#How to recover files after reinstalling OpenMediaVault]] |
− | === | + | ===Step 1: Wipe drives=== |
− | Go to | + | '''please ensure your data is backed up.''' |
− | ===Step | + | Go to '''Storage -> Disks''', choose your storage device, and click the "Wipe" icon to initiate disk erasure. Typically, you can opt for a "Quick" erase option.<br /> |
− | Go to | + | If wiping isn't effective, you should first remove the shared folder and unmount it. |
− | (Note: If there were previously created shared folders on the | + | ===Step 2: Setup file systems=== |
+ | The difference between the following two Raid Profiles: | ||
+ | * MD RAID: has better performance, because it does a better job of parallelizing writes and striping reads.<br /> | ||
+ | * Btrfs RAID: has better data safety, because the checksumming lets it ID which copy of a block is wrong when only one is wrong, and means it can tell if both copies are bad.<br /> | ||
+ | Note: OMV does not support RAID for USB-connected devices, for more details, please refer to the official guide: [https://docs.openmediavault.org/en/latest/administration/storage/raid.html RAID] | ||
+ | ====Optional 1: Configure MD RAID==== | ||
+ | * Go to '''Storage -> Multiple Device''', click the '''"+"''' icon, select the desired RAID level and drives, after saving, the status is shown below: | ||
+ | [[File:Omv-raid-resyncing.png|center|400px]]<br/> | ||
+ | You need to wait for the status to change from resyncing to clean, and when it's done it will look like this:<br /> | ||
+ | [[File:Omv-raid-clean.png|center|400px]]<br/> | ||
+ | * Go to '''Storage -> File Systems''', click on '''"+"''', it is recommended to choose '''"BTRFS"''' as the '''Type''', select '''"Single"''' as the '''Profile''', and select your storage device in the '''Device''' field. If you created RAID in the previous step, the device name starts with "/dev/md". If your device cannot be listed in the '''"Device"''' field, it may be because there are existing shared folders or other data on the device. Try clicking the '''►''' icon to mount directly. If the data can be discarded, you can consider using the following command to erase the partition first: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | # Note: All data on the drive will be lost | ||
+ | sudo wipefs --all /dev/mdX | ||
+ | </syntaxhighlight> | ||
+ | Replace /dev/mdX with the actual device, which can be checked using the "cat /proc/partitions" command. | ||
+ | ====Optional 2: Configure Btrfs RAID==== | ||
+ | * Go to '''Storage -> File Systems''' click the '''"+"''' icon, choose the '''"BTRFS"''', choose the RAID level, select your drives, and then save the settings. | ||
+ | After formatting is complete, openmediavault will let you choose which file system to mount, it won't list all the hard drives in the RAID array; just select one of the hard drives within the array. | ||
+ | ====Optional 3: Not using RAID array==== | ||
+ | * Go to '''Storage -> File Systems''', click on the '''"+"''' icon, select '''"BTRFS"''', choose the '''Single''' level, select your disk, and then save the settings.<br /> | ||
+ | After formatting is complete, OpenMediaVault will prompt you to mount the device. | ||
+ | ===Step 3: Create shared folders=== | ||
+ | * Go to '''Storage -> Shared Folders''', click the '''"+"''' icon to create two folders named "nfs" and "samba." We will use these folders for testing NFS and Samba sharing in the following steps.<br /> | ||
+ | (Note: If there were previously created shared folders on the drive, you can recreate them with the same names, and the data will be preserved.) | ||
==Create NAS users== | ==Create NAS users== | ||
− | Debian system users or Linux users created via the command line may lack certain permissions required for services like Samba and NFS. Therefore, it is recommended to use the OpenMediaVault interface to create a user specifically for accessing Samba and NFS shares. Here, I will create a user and group named "nasuser": | + | Debian system users or Linux users created via the command line may lack certain permissions required for services like Samba and NFS. Therefore, it is recommended to use the OpenMediaVault interface to create a user specifically for accessing Samba and NFS shares. Here, I will create a user and group named "nasuser": |
− | + | * Go to '''Users -> Groups''' and then click the '''"+"''' icon to create a user group named "nasuser".<br /> | |
− | + | * Go to '''Users -> "Users''' then click the '''"+"''' icon to create a user named "nasuser", change user's shell to "/usr/sbin/nologin", and select the "nasuser" and "users" groups. | |
− | + | ||
==Create a Samba share== | ==Create a Samba share== | ||
− | Go to | + | * Go to '''Services -> SMB/CIFS -> Settings''', check the box at the top for "Enabled," select "SMB1" as the minimum protocol version, and then click "Save" |
− | + | * Go to '''Services -> SMB/CIFS -> Shares''', click the '''"+"''' button, and in the "Shared folder" field, select the folder you want to share. as an example, here i select the "samba" folder | |
− | Go to | + | |
− | + | ||
Testing: <br /> | Testing: <br /> | ||
− | On Mac system, right-click Finder, select "Connect to Server | + | On a Mac system, right-click Finder, select '''"Connect to Server"''', and enter "smb://YourIPAddress" (replace with the actual IP address). An authentication dialog will appear; enter the username "nasuser" and the password to access the share. |
==Create an NFS share== | ==Create an NFS share== | ||
− | Go to | + | * Go to '''Services -> NFS -> Settings''', check the box at the top for "Enabled", and in the "Versions" section, select all versions, including "NFSv2", then click "Save" and apply the settings. |
− | + | * Go to '''Services -> NFS -> Shares''', click the '''"+"''' button, and in the "Shared folder" field, select the folder you want to share. here i select the "nfs" folder. In the "Client" section, enter the IP range or specific IPs that are allowed to access the share (e.g., 192.168.1.0/24). Set the permissions to "Read/Write", in the "Extra Options" field, Input: | |
− | Go to | + | |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
rw,async,insecure,no_subtree_check,all_squash,anonuid=0,anongid=0 | rw,async,insecure,no_subtree_check,all_squash,anonuid=0,anongid=0 | ||
Line 77: | Line 106: | ||
Then click "Save" and apply the settings. | Then click "Save" and apply the settings. | ||
===Testing NFS mounting on a Mac=== | ===Testing NFS mounting on a Mac=== | ||
− | Viewing OpenMediaVault's NFS Share Information via Command Line | + | Viewing OpenMediaVault's NFS Share Information via Command Line: |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
# showmount -e YourIPAddress | # showmount -e YourIPAddress | ||
Line 84: | Line 113: | ||
/export/nfs 192.168.1.0/24 | /export/nfs 192.168.1.0/24 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | Right-click Finder on your Mac, select "Connect to Server," and in the address bar | + | Right-click Finder on your Mac, select "Connect to Server," and input the following in the address bar: |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
nfs://YourIPAddress/export/nfs | nfs://YourIPAddress/export/nfs | ||
Line 102: | Line 131: | ||
YourIPAddress:/export/nfs 7.3G 3.5M 6.8G 1% /mnt/nfs | YourIPAddress:/export/nfs 7.3G 3.5M 6.8G 1% /mnt/nfs | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | To | + | To configure automatic mounting at boot time, append the following line to the /etc/fstab file: |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
YourIPAddress:/export/nfs /mnt/nfs nfs defaults 0 0 | YourIPAddress:/export/nfs /mnt/nfs nfs defaults 0 0 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | == | + | ==Docker on OMV== |
− | + | ===Install Docker=== | |
+ | * Go to '''System -> Plugins''', search for and install the '''openmediavault-compose''' plugin, then refresh the page after installation. | ||
+ | * Go to '''Services -> Compose -> Settings''', scroll down to the bottom of the page, and click on '''Reinstall Docker''' to install Docker. | ||
+ | <!-- | ||
+ | ===Install Docker=== | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | apt update | ||
+ | apt -y install apt-transport-https ca-certificates curl gnupg | ||
+ | curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /usr/share/keyrings/docker.gpg | ||
+ | echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker.gpg] https://download.docker.com/linux/debian bookworm stable" | \ | ||
+ | tee /etc/apt/sources.list.d/docker.list > /dev/null | ||
+ | apt update | ||
+ | apt -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin | ||
+ | gpasswd -a pi docker | ||
+ | </syntaxhighlight> | ||
+ | --> | ||
+ | ===Moving docker storage=== | ||
+ | First, install the openmediavault-compose plugin, login via SSH and excute the following command: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | sudo apt update | ||
+ | sudo apt install -y openmediavault-compose | ||
+ | </syntaxhighlight> | ||
+ | After refreshing the page,go to '''Storage -> Shared Folders''', and click the '''"+"''' icon to create three folders, namely: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
docker -> The Docker data directory, defined in /etc/docker/daemon.json | docker -> The Docker data directory, defined in /etc/docker/daemon.json | ||
Line 114: | Line 165: | ||
docker-app -> For personal use, storing Dockerfiles and data | docker-app -> For personal use, storing Dockerfiles and data | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | Go to '''Services -> Compose''' enter the '''"Settings"''' interface, and configure the "Shared folder" for "Compose Files" and "Data":<br /> | |
− | <br /> | + | |
Access the SSH terminal and execute the following command to move Docker data to the shared folder, where "/srv/dev-disk-by-uuid-XXYYZZ/docker" represents the absolute path of the shared folder, which can be obtained from the "Storage" -> "Shared Folders" list on the web interface: | Access the SSH terminal and execute the following command to move Docker data to the shared folder, where "/srv/dev-disk-by-uuid-XXYYZZ/docker" represents the absolute path of the shared folder, which can be obtained from the "Storage" -> "Shared Folders" list on the web interface: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
Line 122: | Line 172: | ||
mv /var/lib/docker/* /srv/dev-disk-by-uuid-XXYYZZ/docker/ | mv /var/lib/docker/* /srv/dev-disk-by-uuid-XXYYZZ/docker/ | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | On the web interface, set the "Docker storage" to the absolute path of the "docker" shared folder. save the settings and apply, and then reboot the system. | + | On the web interface, set the '''"Docker storage"''' to the absolute path of the "docker" shared folder. save the settings and apply, and then reboot the system.<br /> |
− | ==Install Nextcloud with Docker== | + | <br />The final value filled on the Gui:<br /> |
+ | <syntaxhighlight lang="text"> | ||
+ | Compose Files's Shared folder -> on /dev/md0, docker-compose | ||
+ | Data's Shared folder -> on /dev/md0, docker-data | ||
+ | Docker's Docker storage -> on /srv/dev-disk-by-uuid-XXYYZZ/docker/ | ||
+ | </syntaxhighlight> | ||
+ | ===Install Nextcloud with Docker=== | ||
Run the following command in the terminal: | Run the following command in the terminal: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
Line 137: | Line 193: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
you can access the Nextcloud web interface by opening a web browser and navigating to http://YourIPAddress:8888/ (replace YourIPAddress with the actual IP address of your device). | you can access the Nextcloud web interface by opening a web browser and navigating to http://YourIPAddress:8888/ (replace YourIPAddress with the actual IP address of your device). | ||
− | ==Install | + | ===Install Jellyfin with Docker=== |
− | + | Go to '''Storage -> Shared Folders''', click the '''"+"''' icon to create a "media" folder for storing multimedia resources. Then, in the command-line terminal, you can run the following command to install Jellyfin: | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
su root | su root | ||
Line 171: | Line 211: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
After completing the setup, you can access the Jellyfin web interface by opening a web browser and navigating to http://YourIPAddress:8096/ (replace YourIPAddress with the actual IP address of your device). This will allow you to access and manage your media content using Jellyfin. | After completing the setup, you can access the Jellyfin web interface by opening a web browser and navigating to http://YourIPAddress:8096/ (replace YourIPAddress with the actual IP address of your device). This will allow you to access and manage your media content using Jellyfin. | ||
− | ==Install Portainer with Docker== | + | ===Install Portainer with Docker=== |
Run the following command in the terminal: | Run the following command in the terminal: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
Line 191: | Line 231: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
After completing the setup, you can access the Portainer web interface by opening a web browser and navigating to http://YourIPAddress:9000/ (replace YourIPAddress with the actual IP address of your device). The default administrator account username and password are both "admin". | After completing the setup, you can access the Portainer web interface by opening a web browser and navigating to http://YourIPAddress:9000/ (replace YourIPAddress with the actual IP address of your device). The default administrator account username and password are both "admin". | ||
+ | ==System Backup and Restore== | ||
+ | ===Backing up the System in eMMC=== | ||
+ | Use the tar command to back up the contents of the file system: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | su root | ||
+ | cd / | ||
+ | tar --warning=no-file-changed -cvpzf /rootfs.tar.gz \ | ||
+ | --exclude=/rootfs.tar.gz --exclude=/var/lib/docker/runtimes \ | ||
+ | --exclude=/etc/firstuser --exclude=/etc/friendlyelec-release \ | ||
+ | --exclude=/usr/local/first_boot_flag --one-file-system / | ||
+ | </syntaxhighlight> | ||
+ | === Restoring the System to eMMC === | ||
+ | Boot from the SD card, start the Linux system (such as Debian or Ubuntu), and use the following command to query the root partition of the system on eMMC: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | root@openmediavault:~# sudo parted -s /dev/mmcblk2 unit MiB print | grep rootfs | ||
+ | 8 140MiB 59000MiB 58860MiB ext4 rootfs | ||
+ | </syntaxhighlight> | ||
+ | According to the mathematical index 8 mentioned above, the device name for the root partition is /dev/mmcblk2p8. Below, it will be reformatted, mounted, and then the rootfs.tar.gz will be decompressed here: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | sudo mkfs.ext4 /dev/mmcblk2p8 | ||
+ | sudo mkdir /mnt/rootfs | ||
+ | sudo mount /dev/mmcblk2p8 /mnt/rootfs | ||
+ | sudo tar xvzfp /path/to/rootfs.tar.gz -C /mnt/rootfs --numeric-owner --same-owner | ||
+ | sudo poweroff | ||
+ | </syntaxhighlight> | ||
+ | After shutting down, remove the SD card, and then power on again to boot the system from eMMC. | ||
+ | ==How to recover files after reinstalling OpenMediaVault== | ||
+ | * Go to '''Storage -> File System''', click on the '''►''' icon, and select your device in the '''File System''' section, then click Save. | ||
+ | * Go to '''Storage -> Shared Folders''', create shared folders with the same names, such as nfs, samba, docker, docker-app, docker-compose, and docker-data, as shown in this document. | ||
+ | ==Common problems and solutions== | ||
+ | ===Problem: Some Hard drives cannot be recognised=== | ||
+ | It is possible that multiple SSDs appear to have the same IDs, check with the following command: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | sudo dmesg | grep duplicate IDs | ||
+ | </syntaxhighlight> | ||
+ | If you encounter the message "globally duplicate IDs for nsid", updating the OpenMediaVault firmware to the latest version will resolve the issue. <br /> | ||
+ | Such hard drives do not support access via /dev/disk/by-id method. | ||
+ | ===Problem: RAID array appears in the status: "Clean, Resyncing (PENDING)"=== | ||
+ | Execute following command to switch array to read-write state and begin resync process: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | mdadm --readwrite /dev/md0 | ||
+ | </syntaxhighlight> | ||
+ | More details → [https://sleeplessbeastie.eu/2015/03/23/how-to-clear-up-pending-resync-on-raid-array/ How to clear up pending resync on RAID array] | ||
+ | ===Problem: Can´t create Filesystem - Disk not showing=== | ||
+ | using the following command to erase the partition first: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | # Note: All data on the disk will be lost | ||
+ | sudo wipefs --all /dev/mdX | ||
+ | </syntaxhighlight> | ||
+ | ==Update OpenMediaVault== | ||
+ | There are two commands in the command line that you can use to update the system: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | omv-upgrade # Update current software packages to new versions | ||
+ | omv-release-upgrade # Big version upgrade, like from 5.6.x to 6.x | ||
+ | </syntaxhighlight> | ||
+ | Refre to → [https://docs.openmediavault.org/en/latest/various/apt.html Software & Update Management] | ||
+ | ==OpenMediaVault packages== | ||
+ | You can install OpenMediaVault packages using the apt command, for example: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | apt install openmediavault-diskstats | ||
+ | </syntaxhighlight> | ||
+ | Here is the list of each package with its functionality:<br /> | ||
+ | openmediavault-diskclone: Tool for cloning disks.<br /> | ||
+ | openmediavault-diskstats: Tool for displaying disk usage statistics.<br /> | ||
+ | openmediavault-downloader: Download manager for managing download tasks.<br /> | ||
+ | openmediavault-fail2ban: Firewall software for preventing brute-force attacks.<br /> | ||
+ | openmediavault-filebrowser: File browser for browsing and managing files.<br /> | ||
+ | openmediavault-flashmemory: Tool for storing system logs and temporary files in memory to reduce disk writes.<br /> | ||
+ | openmediavault-forkeddaapd: DAAP server with iTunes support.<br /> | ||
+ | openmediavault-ftp: FTP server for file transfer.<br /> | ||
+ | openmediavault-kernel: Tool for kernel updates.<br /> | ||
+ | openmediavault-kvm: Virtualization solution for running virtual machines.<br /> | ||
+ | openmediavault-locate: Tool for file searching.<br /> | ||
+ | openmediavault-luksencryption: Provides disk encryption functionality.<br /> | ||
+ | openmediavault-lvm2: Logical Volume Manager.<br /> | ||
+ | openmediavault-mergerfs: Provides Union file system functionality to merge multiple file systems into one logical file system.<br /> | ||
+ | openmediavault-minidlna: DLNA server for sharing media files over the network.<br /> | ||
+ | openmediavault-nut: Network UPS Tools for monitoring UPS (Uninterruptible Power Supply) communication.<br /> | ||
+ | openmediavault-omvextrasorg: Provides additional plugins and packages.<br /> | ||
+ | openmediavault-onedrive: Integration with OneDrive cloud storage service.<br /> | ||
+ | openmediavault-owntone: Configuration tool for UPnP/DLNA media server.<br /> | ||
+ | openmediavault-photoprism: Photo management software.<br /> | ||
+ | openmediavault-remotemount: Remote mount manager.<br /> | ||
+ | openmediavault-resetperms: Tool for resetting file and folder permissions.<br /> | ||
+ | openmediavault-rsnapshot: Snapshot backup tool.<br /> | ||
+ | openmediavault-s3: S3 storage service plugin.<br /> | ||
+ | openmediavault-sftp: SFTP server.<br /> | ||
+ | openmediavault-shairport: AirPlay audio server.<br /> | ||
+ | openmediavault-sharerootfs: Tool to allow sharing of the root file system.<br /> | ||
+ | openmediavault-snapraid: SnapRAID data protection tool.<br /> | ||
+ | openmediavault-snmp: SNMP (Simple Network Management Protocol) plugin.<br /> | ||
+ | openmediavault-symlinks: Symbolic link management tool.<br /> | ||
+ | openmediavault-tftp: TFTP (Trivial File Transfer Protocol) server.<br /> | ||
+ | openmediavault-tgt: iSCSI target server.<br /> | ||
+ | openmediavault-usbbackup: USB backup plugin.<br /> | ||
+ | openmediavault-wakealarm: Tool for waking up the system at scheduled times.<br /> | ||
+ | openmediavault-webdav: WebDAV server.<br /> | ||
+ | openmediavault-wetty: Web terminal tool.<br /> | ||
+ | openmediavault-wireguard: WireGuard VPN plugin.<br /> | ||
+ | openmediavault-wol: Wake-on-LAN tool.<br /> | ||
+ | openmediavault-anacron: Task scheduling tool.<br /> | ||
+ | openmediavault-apttool: APT (Advanced Package Tool) management tool.<br /> | ||
+ | openmediavault-autoshutdown: Automatic shutdown tool.<br /> | ||
+ | openmediavault-backup: Backup tool.<br /> | ||
+ | openmediavault-borgbackup: BorgBackup tool.<br /> | ||
+ | openmediavault-clamav: Antivirus software using ClamAV to detect malware and viruses.<br /> | ||
+ | openmediavault-compose: Docker Compose tool.<br /> | ||
+ | openmediavault-cputemp: Tool for monitoring CPU temperature.<br /> | ||
+ | openmediavault-zfs: ZFS file system support plugin.<br /> |
Latest revision as of 09:54, 5 July 2024
Contents
- 1 OpenMediaVault version
- 2 Earlier version OpenMediaVault
- 3 First Look
- 4 Supported platforms
- 5 Find IP Address
- 6 Access the OpenMediaVault web page
- 7 Change admin password
- 8 Configure the web page timeout duration
- 9 Linux default passwords
- 10 Root Login via SSH
- 11 Change the passwords
- 12 Configuring the network and time zone
- 13 Set up your drives
- 14 Create NAS users
- 15 Create a Samba share
- 16 Create an NFS share
- 17 Docker on OMV
- 18 System Backup and Restore
- 19 How to recover files after reinstalling OpenMediaVault
- 20 Common problems and solutions
- 21 Update OpenMediaVault
- 22 OpenMediaVault packages
1 OpenMediaVault version
- OS: Debian 12
- OpenMediaVault: 7.0.5-1 (Sandworm)
- Others: built-in OMV-Extras
2 Earlier version OpenMediaVault
Link to → Getting Started with OpenMediaVault6
3 First Look
4 Supported platforms
- RK3328
- RK3399
- RK3568
- RK3588
5 Find IP Address
you can use the "ping" command to obtain the IP address:
ping openmediavault
6 Access the OpenMediaVault web page
Type the URL http://openmediavault/ or the IP address to your web browser, the default login account is:
Username: admin Password: openmediavault
7 Change admin password
Click on the profile icon in the upper-right corner of the web page, then select "Change Password".
8 Configure the web page timeout duration
Go to System -> Workbench and adjust the "Auto Logout" time setting.
9 Linux default passwords
Regular Account:
User Name: pi
Password: pi
Root:
User Name: root
Password: fa
10 Root Login via SSH
ssh pi@YourIPAddress
The default password is "pi".
11 Change the passwords
sudo passwd root sudo passwd pi
12 Configuring the network and time zone
Login to your OMV via SSH as root user:
ssh root@IPAddress
Excute the following command:
omv-firstaid
Something like this should appear:
13 Set up your drives
Note: If the hard drive has already been initialized and RAID has been preserved, you should be able to mount it directly. Refre to: #How to recover files after reinstalling OpenMediaVault
13.1 Step 1: Wipe drives
please ensure your data is backed up.
Go to Storage -> Disks, choose your storage device, and click the "Wipe" icon to initiate disk erasure. Typically, you can opt for a "Quick" erase option.
If wiping isn't effective, you should first remove the shared folder and unmount it.
13.2 Step 2: Setup file systems
The difference between the following two Raid Profiles:
- MD RAID: has better performance, because it does a better job of parallelizing writes and striping reads.
- Btrfs RAID: has better data safety, because the checksumming lets it ID which copy of a block is wrong when only one is wrong, and means it can tell if both copies are bad.
Note: OMV does not support RAID for USB-connected devices, for more details, please refer to the official guide: RAID
13.2.1 Optional 1: Configure MD RAID
- Go to Storage -> Multiple Device, click the "+" icon, select the desired RAID level and drives, after saving, the status is shown below:
You need to wait for the status to change from resyncing to clean, and when it's done it will look like this:
- Go to Storage -> File Systems, click on "+", it is recommended to choose "BTRFS" as the Type, select "Single" as the Profile, and select your storage device in the Device field. If you created RAID in the previous step, the device name starts with "/dev/md". If your device cannot be listed in the "Device" field, it may be because there are existing shared folders or other data on the device. Try clicking the ► icon to mount directly. If the data can be discarded, you can consider using the following command to erase the partition first:
# Note: All data on the drive will be lost sudo wipefs --all /dev/mdX
Replace /dev/mdX with the actual device, which can be checked using the "cat /proc/partitions" command.
13.2.2 Optional 2: Configure Btrfs RAID
- Go to Storage -> File Systems click the "+" icon, choose the "BTRFS", choose the RAID level, select your drives, and then save the settings.
After formatting is complete, openmediavault will let you choose which file system to mount, it won't list all the hard drives in the RAID array; just select one of the hard drives within the array.
13.2.3 Optional 3: Not using RAID array
- Go to Storage -> File Systems, click on the "+" icon, select "BTRFS", choose the Single level, select your disk, and then save the settings.
After formatting is complete, OpenMediaVault will prompt you to mount the device.
- Go to Storage -> Shared Folders, click the "+" icon to create two folders named "nfs" and "samba." We will use these folders for testing NFS and Samba sharing in the following steps.
(Note: If there were previously created shared folders on the drive, you can recreate them with the same names, and the data will be preserved.)
14 Create NAS users
Debian system users or Linux users created via the command line may lack certain permissions required for services like Samba and NFS. Therefore, it is recommended to use the OpenMediaVault interface to create a user specifically for accessing Samba and NFS shares. Here, I will create a user and group named "nasuser":
- Go to Users -> Groups and then click the "+" icon to create a user group named "nasuser".
- Go to Users -> "Users then click the "+" icon to create a user named "nasuser", change user's shell to "/usr/sbin/nologin", and select the "nasuser" and "users" groups.
- Go to Services -> SMB/CIFS -> Settings, check the box at the top for "Enabled," select "SMB1" as the minimum protocol version, and then click "Save"
- Go to Services -> SMB/CIFS -> Shares, click the "+" button, and in the "Shared folder" field, select the folder you want to share. as an example, here i select the "samba" folder
Testing:
On a Mac system, right-click Finder, select "Connect to Server", and enter "smb://YourIPAddress" (replace with the actual IP address). An authentication dialog will appear; enter the username "nasuser" and the password to access the share.
- Go to Services -> NFS -> Settings, check the box at the top for "Enabled", and in the "Versions" section, select all versions, including "NFSv2", then click "Save" and apply the settings.
- Go to Services -> NFS -> Shares, click the "+" button, and in the "Shared folder" field, select the folder you want to share. here i select the "nfs" folder. In the "Client" section, enter the IP range or specific IPs that are allowed to access the share (e.g., 192.168.1.0/24). Set the permissions to "Read/Write", in the "Extra Options" field, Input:
rw,async,insecure,no_subtree_check,all_squash,anonuid=0,anongid=0
Then click "Save" and apply the settings.
16.1 Testing NFS mounting on a Mac
Viewing OpenMediaVault's NFS Share Information via Command Line:
# showmount -e YourIPAddress Exports list on YourIPAddress: /export 192.168.1.0/24 /export/nfs 192.168.1.0/24
Right-click Finder on your Mac, select "Connect to Server," and input the following in the address bar:
nfs://YourIPAddress/export/nfs
16.2 Testing NFS mounting on Linux
Installing the NFS client
sudo apt install nfs-common
Start to mount:
sudo mount -t nfs YourIPAddress:/export/nfs /mnt/nfs
Checking the Status
# df -h | grep nfs YourIPAddress:/export/nfs 7.3G 3.5M 6.8G 1% /mnt/nfs
To configure automatic mounting at boot time, append the following line to the /etc/fstab file:
YourIPAddress:/export/nfs /mnt/nfs nfs defaults 0 0
17 Docker on OMV
17.1 Install Docker
- Go to System -> Plugins, search for and install the openmediavault-compose plugin, then refresh the page after installation.
- Go to Services -> Compose -> Settings, scroll down to the bottom of the page, and click on Reinstall Docker to install Docker.
17.2 Moving docker storage
First, install the openmediavault-compose plugin, login via SSH and excute the following command:
sudo apt update sudo apt install -y openmediavault-compose
After refreshing the page,go to Storage -> Shared Folders, and click the "+" icon to create three folders, namely:
docker -> The Docker data directory, defined in /etc/docker/daemon.json docker-compose -> Location of compose files docker-data -> Location of persistent container data docker-app -> For personal use, storing Dockerfiles and data
Go to Services -> Compose enter the "Settings" interface, and configure the "Shared folder" for "Compose Files" and "Data":
Access the SSH terminal and execute the following command to move Docker data to the shared folder, where "/srv/dev-disk-by-uuid-XXYYZZ/docker" represents the absolute path of the shared folder, which can be obtained from the "Storage" -> "Shared Folders" list on the web interface:
su root systemctl stop docker.socket docker.service mv /var/lib/docker/* /srv/dev-disk-by-uuid-XXYYZZ/docker/
On the web interface, set the "Docker storage" to the absolute path of the "docker" shared folder. save the settings and apply, and then reboot the system.
The final value filled on the Gui:
Compose Files's Shared folder -> on /dev/md0, docker-compose Data's Shared folder -> on /dev/md0, docker-data Docker's Docker storage -> on /srv/dev-disk-by-uuid-XXYYZZ/docker/
17.3 Install Nextcloud with Docker
Run the following command in the terminal:
su root cd $(readlink -f /srv/dev-disk-by-uuid-*/docker-app) mkdir nextcloud cd nextcloud mkdir data docker run -d -p 8888:80 --name nextcloud \ -v $PWD/data:/var/www/html --restart=always \ --privileged=true arm64v8/nextcloud
you can access the Nextcloud web interface by opening a web browser and navigating to http://YourIPAddress:8888/ (replace YourIPAddress with the actual IP address of your device).
17.4 Install Jellyfin with Docker
Go to Storage -> Shared Folders, click the "+" icon to create a "media" folder for storing multimedia resources. Then, in the command-line terminal, you can run the following command to install Jellyfin:
su root cd $(readlink -f /srv/dev-disk-by-uuid-*/docker-app) mkdir jellyfin cd jellyfin mkdir config cache docker run -d --name jellyfin \ -v $PWD/config:/config \ -v $PWD/cache:/cache \ -v $(readlink -f /srv/dev-disk-by-uuid-*/media):/media \ -p 8096:8096 \ --restart=always \ jellyfin/jellyfin
After completing the setup, you can access the Jellyfin web interface by opening a web browser and navigating to http://YourIPAddress:8096/ (replace YourIPAddress with the actual IP address of your device). This will allow you to access and manage your media content using Jellyfin.
17.5 Install Portainer with Docker
Run the following command in the terminal:
su root cd $(readlink -f /srv/dev-disk-by-uuid-*/docker-app) mkdir portainer cd portainer mkdir data docker run -d \ --name portainer \ --restart=always \ -e TZ=Asia/Shanghai \ -p 8000:8000 \ -p 9000:9000 \ -v /var/run/docker.sock:/var/run/docker.sock \ -v $PWD/data:/data \ portainer/portainer-ce:latest
After completing the setup, you can access the Portainer web interface by opening a web browser and navigating to http://YourIPAddress:9000/ (replace YourIPAddress with the actual IP address of your device). The default administrator account username and password are both "admin".
18 System Backup and Restore
18.1 Backing up the System in eMMC
Use the tar command to back up the contents of the file system:
su root cd / tar --warning=no-file-changed -cvpzf /rootfs.tar.gz \ --exclude=/rootfs.tar.gz --exclude=/var/lib/docker/runtimes \ --exclude=/etc/firstuser --exclude=/etc/friendlyelec-release \ --exclude=/usr/local/first_boot_flag --one-file-system /
18.2 Restoring the System to eMMC
Boot from the SD card, start the Linux system (such as Debian or Ubuntu), and use the following command to query the root partition of the system on eMMC:
root@openmediavault:~# sudo parted -s /dev/mmcblk2 unit MiB print | grep rootfs 8 140MiB 59000MiB 58860MiB ext4 rootfs
According to the mathematical index 8 mentioned above, the device name for the root partition is /dev/mmcblk2p8. Below, it will be reformatted, mounted, and then the rootfs.tar.gz will be decompressed here:
sudo mkfs.ext4 /dev/mmcblk2p8 sudo mkdir /mnt/rootfs sudo mount /dev/mmcblk2p8 /mnt/rootfs sudo tar xvzfp /path/to/rootfs.tar.gz -C /mnt/rootfs --numeric-owner --same-owner sudo poweroff
After shutting down, remove the SD card, and then power on again to boot the system from eMMC.
19 How to recover files after reinstalling OpenMediaVault
- Go to Storage -> File System, click on the ► icon, and select your device in the File System section, then click Save.
- Go to Storage -> Shared Folders, create shared folders with the same names, such as nfs, samba, docker, docker-app, docker-compose, and docker-data, as shown in this document.
20 Common problems and solutions
20.1 Problem: Some Hard drives cannot be recognised
It is possible that multiple SSDs appear to have the same IDs, check with the following command:
sudo dmesg | grep duplicate IDs
If you encounter the message "globally duplicate IDs for nsid", updating the OpenMediaVault firmware to the latest version will resolve the issue.
Such hard drives do not support access via /dev/disk/by-id method.
20.2 Problem: RAID array appears in the status: "Clean, Resyncing (PENDING)"
Execute following command to switch array to read-write state and begin resync process:
mdadm --readwrite /dev/md0
More details → How to clear up pending resync on RAID array
20.3 Problem: Can´t create Filesystem - Disk not showing
using the following command to erase the partition first:
# Note: All data on the disk will be lost sudo wipefs --all /dev/mdX
21 Update OpenMediaVault
There are two commands in the command line that you can use to update the system:
omv-upgrade # Update current software packages to new versions omv-release-upgrade # Big version upgrade, like from 5.6.x to 6.x
Refre to → Software & Update Management
22 OpenMediaVault packages
You can install OpenMediaVault packages using the apt command, for example:
apt install openmediavault-diskstats
Here is the list of each package with its functionality:
openmediavault-diskclone: Tool for cloning disks.
openmediavault-diskstats: Tool for displaying disk usage statistics.
openmediavault-downloader: Download manager for managing download tasks.
openmediavault-fail2ban: Firewall software for preventing brute-force attacks.
openmediavault-filebrowser: File browser for browsing and managing files.
openmediavault-flashmemory: Tool for storing system logs and temporary files in memory to reduce disk writes.
openmediavault-forkeddaapd: DAAP server with iTunes support.
openmediavault-ftp: FTP server for file transfer.
openmediavault-kernel: Tool for kernel updates.
openmediavault-kvm: Virtualization solution for running virtual machines.
openmediavault-locate: Tool for file searching.
openmediavault-luksencryption: Provides disk encryption functionality.
openmediavault-lvm2: Logical Volume Manager.
openmediavault-mergerfs: Provides Union file system functionality to merge multiple file systems into one logical file system.
openmediavault-minidlna: DLNA server for sharing media files over the network.
openmediavault-nut: Network UPS Tools for monitoring UPS (Uninterruptible Power Supply) communication.
openmediavault-omvextrasorg: Provides additional plugins and packages.
openmediavault-onedrive: Integration with OneDrive cloud storage service.
openmediavault-owntone: Configuration tool for UPnP/DLNA media server.
openmediavault-photoprism: Photo management software.
openmediavault-remotemount: Remote mount manager.
openmediavault-resetperms: Tool for resetting file and folder permissions.
openmediavault-rsnapshot: Snapshot backup tool.
openmediavault-s3: S3 storage service plugin.
openmediavault-sftp: SFTP server.
openmediavault-shairport: AirPlay audio server.
openmediavault-sharerootfs: Tool to allow sharing of the root file system.
openmediavault-snapraid: SnapRAID data protection tool.
openmediavault-snmp: SNMP (Simple Network Management Protocol) plugin.
openmediavault-symlinks: Symbolic link management tool.
openmediavault-tftp: TFTP (Trivial File Transfer Protocol) server.
openmediavault-tgt: iSCSI target server.
openmediavault-usbbackup: USB backup plugin.
openmediavault-wakealarm: Tool for waking up the system at scheduled times.
openmediavault-webdav: WebDAV server.
openmediavault-wetty: Web terminal tool.
openmediavault-wireguard: WireGuard VPN plugin.
openmediavault-wol: Wake-on-LAN tool.
openmediavault-anacron: Task scheduling tool.
openmediavault-apttool: APT (Advanced Package Tool) management tool.
openmediavault-autoshutdown: Automatic shutdown tool.
openmediavault-backup: Backup tool.
openmediavault-borgbackup: BorgBackup tool.
openmediavault-clamav: Antivirus software using ClamAV to detect malware and viruses.
openmediavault-compose: Docker Compose tool.
openmediavault-cputemp: Tool for monitoring CPU temperature.
openmediavault-zfs: ZFS file system support plugin.