🛠 Create a simple NAS with CM3588
Objectives
This tutorial guides you through transforming your CM3588 module into a simple Network Attached Storage (NAS) server. You will learn how to mount an external drive, configure the Samba protocol for file sharing, and access this storage from a computer or smartphone. This is an ideal use case for centralizing your multimedia data or documents.
Required Hardware
- A CM3588 module (with Linux OS installed, such as Ubuntu or Debian).
- A compatible CM3588 Carrier Board.
- An external hard drive or large-capacity USB stick (formatted as ext4 or NTFS).
- A USB cable to connect the drive.
- An Ethernet cable for network connection.
- A computer or smartphone on the same local network.
Steps
- Physical Connection: Connect the external hard drive to one of the CM3588's USB 3.1 ports. Ensure the module is powered and connected to the network via the 2.5 GbE Ethernet port.
- Disk Identification: Open a terminal (via SSH or connected screen). Identify your drive with the following command:
lsblk
Note your drive name (e.g., sda1).
- Mounting the Drive: Create a mount point and mount the drive:
sudo mkdir /mnt/usb_disk
sudo mount /dev/sda1 /mnt/usb_disk
- Samba Installation: Samba enables file sharing with Windows, macOS, and Linux. Install it:
sudo apt update
sudo apt install samba -y
- Samba Configuration: Edit the configuration file:
sudo nano /etc/samba/smb.conf
Add these lines at the end of the file to share the folder:
[CM3588Share]
path = /mnt/usb_disk
browseable = yes
read only = no
guest ok = yes
- Service Restart: Apply changes:
sudo systemctl restart smbd
Verification
From another computer on your network, open the file explorer. On Windows, type \\CM3588_IP\CM3588Share in the address bar. On macOS, use smb://CM3588_IP/CM3588Share. If you see your drive's contents, the configuration is successful. You can also test by creating a file via the CM3588 terminal and verifying it appears on the remote computer.
Further Reading
To secure access, create a dedicated user with smbpasswd -a username and modify the Samba configuration to disable guest access (guest ok = no). You can also explore the video transcoding capabilities of the Mali-G610 GPU to set up a streaming solution like Jellyfin, leveraging the RK3588's power.