0003 MPS2280D(Dual SSD Expansion Board):修订间差异

来自Mcuzone Wiki
第174行: 第174行:


=== 5.3 Mount partition ===
=== 5.3 Mount partition ===
5.3.1 Now, the SSD has been divided into two partitions. These partitions can be managed in Windows, but Linux is different. You need to mount the partitions before you can operate on them. First, use the <code>lsblk</code> command to view the partition information. You will see the two new partitions named nvme0n1p1 and nvme0n1p2.
5.3.1 Now, the SSD has been divided into two partitions. These partitions can be managed in Windows, but Linux is different. You need to mount the partitions before you operate on them. First, use the <code>lsblk</code> command to view the partition information. You will see the two new partitions named nvme0n1p1 and nvme0n1p2.


http://www.mcuzone.com/wiki/0003_MPS2280D/MPS2280D_37.jpg
http://www.mcuzone.com/wiki/0003_MPS2280D/MPS2280D_37.jpg

2024年7月19日 (五) 10:24的版本

Keywords

Raspberry Pi 5, PCIE Expansion, boot on SSD, NAS, speed test, OpenMediaVault, OMV

Ⅰ、Introduction

After updating the Raspberry Pi firmware to May 2024, the RPi5 supports booting the system from an SSD via a PCIe switch chip. This article will demonstrate how to change the settings to enable booting from an SSD by using our MPS2280D expansion board. Moreover, the MPS2280D supports dual SSDs, making it suitable for creating large-capacity storage applications with the Raspberry Pi 5. You can connect existing storage devices (NVME protocol-supported SSD, including external portable hard drives and USB flash drives) to create secure backups of all important files accessible from anywhere in the world. This Network Attached Storage (NAS), allowing you to save files from computers and mobile devices to external hard drives through your home or office wireless network.

Ⅱ、Hardware Resources

2.1 Support for 2230/2242/2280 sized NVME SSDs (only soldered with 2280 copper standoffs in default);

2.2. The hard drive can be used for storage expansion. Note: Only supports PCIE 1x Gen2.

2.3 The hard drive supports booting from SSD and requires updating the official Raspberry Pi firmware to a version later than 2024.5.13;

2.4 Reserve a power interface for the hard drive, 2.54mm-2P socket. If concerned about insufficient power supply, an auxiliary 5V power source can be externally connected via this interface. In practice, since the RPi5's PCIe is only 1x and only supports Gen2 mode after expansion, the power consumption will drop to 1/3 of the rated parameters. For instance, if the SSD is marked 3.3V 2.5A, the actual peak measured from the 5V side is only a little over 500mA. In our tests, the peak total current for two SSDs was 0.75A. The board dimensions are 56x86, slightly longer than the Raspberry Pi 5;

2.5 Slotting at the 40-pin position, it does not affect the Dupont line connection;

2.6 Board size: 85*56mm;

2.7 Immersion gold process, lead-free production, PCB board certified by UL and ROHS.

MPS2280D_09.jpg

MPS2280D_08.jpg

MPS2280D_10a.jpg

MPS2280D_11.jpg

Please connect the FPC cable according to the diagram. For the Raspberry Pi, position the metal side facing the center of the board, with the 5V silk screen close to the USB-C port. For the MPS2280D, position the metal side facing down, aligning the 5V silk screen on the FPC with the 5V silk screen on the board.

MPS2280D_80.jpg

Ⅲ、Demonstration of Using the Raspberry Pi System

3.1 Using SSD as storage expansion

3.1.1 The Raspberry Pi OS used in this article is:2024-07-04-raspios-bookworm-armhf.img.xz,You can download it in:

https://www.raspberrypi.com/software/operating-systems/#raspberry-pi-os-32-bit

3.1.2 Use Imager or balenaEtcher to flash the OS image in TF card.

MPS2280D_01.jpg

MPS2280D_02.jpg

3.1.3 Boot the Raspberry Pi OS from the TF card and entersudo rpi-updatein the terminal to update the latest firmware and kernel. Note: Runningsudo rpi-updatemay take 3-10 minutes and might require an internet connection to foreign country(please prepare your own method).

MPS2280D_03.jpg

MPS2280D_04.jpg

After upgrading, enter sudo rpi-eeprom-config --edit in the terminal to edit the boot.conf file in the kernel. Add NVME_CONTROLLER=1 to the last line, save and exit. The BOOT_ORDER=0XF461 means the boot order is SD (TF) card, NVME (SSD), and USB drive. Click here to go to the boot order settings instructions.After setting successfully, reboot the system. This way, SSD (including storage and boot) will be supported.

MPS2280D_05.jpg

MPS2280D_06.jpg

MPS2280D_07.jpg

3.1.5 After the system starts, we can see two SSDs in the File Manager of Raspberry Pi OS, as shown in the figure below:

MPS2280D_12.jpg

If you need to operate on the SSD, please click on any of the partitions. At this point, you will need to enter the system password. Once the verification is successful, you can operate on the SSD.

MPS2280D_13.jpg

At this point, returning to the desktop, you can see the shortcut icons for each partition of the two SSDs:

MPS2280D_14.jpg

By entering df in the terminal, you can see two SSDs, which we can use as storage devices.

MPS2280D_15.jpg

3.2 Using SSD as system boot

3.2.1 Flash Raspberry Pi OS to SSD, Click here to go to the burning method instructions.Then remove the TF card, or set booting from NVME (SSD) as the first option in the boot order settings.

3.2.2 After our testing, a single SSD inserted into any SSD slot can boot the system (the slot near the Mcuzone logo is Slot 03, and the slot away from the Mcuzone logo is Slot 04). If two slots have SSDs inserted and only one SSD has the system , the OS will boot from the SSD with the system. If both SSDs have the system, the OS will prioritize booting from Slot 04. The positions of the slots on the expansion board are shown in the diagram below.

MPS2280D_79.jpg

Specific information about two slots can be viewed by entering lspci in the terminal.

MPS2280D_16.jpg

Note: Kingston NV2 series SSD cannot boot directly from a pure PCIe SSD expansion board, but can boot from an expansion board with a PCIe switch chip.

Ⅳ、Demonstration of Using the Ubuntu System

4.1 Using SSD as storage expansion

4.1.1 The Ubuntu System used in this article is: ubuntu-24.04-preinstalled-desktop-arm64+raspi.img.xz. You can download it in:

https://ubuntu.com/download/raspberry-pi

4.1.2 Use Imager or balenaEtcher to flash the OS image in TF card. The operation method is the same as in the previous chapter on flashing the Raspberry Pi OS. (Ⅲ 3.1.2)

4.1.3 Boot the Ubuntu system from the TF card. Since the previous chapter has already updated the Raspberry Pi kernel and enabled support for SSDs (including storage and boot), there is no need to repeat these steps here. If you have not done this before, please follow the steps in the previous chapter. (Ⅲ 3.1.3、3.1.4)

Note, on the Ubuntu system, the command to update the Raspberry Pi firmware is sudo rpi-eeprom-update -a,, while the command to edit the boot.conf file is still sudo rpi-eeprom-config --edit.

MPS2280D_17.jpg

4.1.4 Shut down the system, insert two SSDs, then start the Ubuntu system. We can see the two SSDs and their respective two partitions. Unlike the Raspberry Pi OS, we can operate the SSDs without enter the system password.

MPS2280D_18.jpg

MPS2280D_19.jpg

By entering df in the terminal, you can see two SSDs, which we can use as storage devices.

MPS2280D_20.jpg

4.2.Using SSD as system boot

4.2.1 Flash Ubuntu System to SSD, Then remove the TF card, or set booting from NVME (SSD) as the first option in the boot order settings.

4.2.2 After our testing, a single SSD inserted into any SSD slot can boot the system (the slot near the Mcuzone logo is Slot 03, and the slot away from the Mcuzone logo is Slot 04). If two slots have SSDs inserted and only one SSD has the system , the OS will boot from the SSD with the system. If both SSDs have the system, the OS will prioritize booting from Slot 04. The positions of the slots on the expansion board are shown in the diagram below. Specific information about two slots can be viewed by entering lspci in the terminal.

MPS2280D_21.jpg

Ⅴ、Operations such as partitioning on the SSD

5.1 Overview

This chapter uses Raspberry Pi OS as an example to introduce operations such as partitioning and mounting the SSD.

5.2 Partitioning an SSD using GParted

5.2.1 Download the GParted. Open the Raspberry Pi OS terminal and enter the following command to install the GParted.

sudo apt install gparted

MPS2280D_77.jpg

5.2.2 Open the GParted and select the corresponding SSD.

The command to open GParted issudo gparted. After opening it, you'll see a GUI. In the upper right corner, select the SSD from the dropdown menu.

MPS2280D_23.jpg

MPS2280D_24.jpg

5.2.3 Before partitioning the SSD, you need to unmount the existing partition. Right-click on the partition and select "Unmount". After unmounting, right-click on the partition again and select "Delete" to remove the partition. There are two partitions on this SSD, perform the same steps for the other partition as well.

MPS2280D_25.jpg

MPS2280D_26.jpg

5.2.4 After completing the partition deletion, we select "Edit - Apply All Operations" from the menu to accept all the above operations. GParted is similar to DiskGenius in that it does not perform any real operations on the partitions until "Apply" is clicked.

MPS2280D_27.jpg

MPS2280D_28.jpg

MPS2280D_29.jpg

5.2.5 Right-click on the empty SSD and select "New" to create a new partition. We created two partitions in the exFAT format. The steps are shown below.

MPS2280D_30.jpg

MPS2280D_31.jpg

MPS2280D_32.jpg

MPS2280D_33.jpg

MPS2280D_34.jpg

MPS2280D_35.jpg

MPS2280D_36.jpg

Thus, we have completed the partitioning of the SSD.

5.3 Mount partition

5.3.1 Now, the SSD has been divided into two partitions. These partitions can be managed in Windows, but Linux is different. You need to mount the partitions before you operate on them. First, use the lsblk command to view the partition information. You will see the two new partitions named nvme0n1p1 and nvme0n1p2.

MPS2280D_37.jpg

Then we input the following commands in sequence to create the mount point:

sudo mkdir /ssd1

sudo mkdir /ssd2

5.3.2 To check the partition UUIDs, enter the command sudo blkid in the Raspberry Pi terminal. The UUIDs of the two SSD partitions are 769F-F2E1 and 77F0-F2E1, respectively. Record these two values.

MPS2280D_38.jpg

5.3.3 Enter the command sudo nano /etc/fstab in the Raspberry Pi terminal, and add the following two lines of code at the end of the file:

UUID=769F-F2E1 /ssd1 exfat defaults,umask=000,gid=1000 0 2

UUID=77F0-F2E1 /ssd2 exfat defaults,umask=000,gid=1000 0 2

MPS2280D_39.jpg

MPS2280D_40.jpg

After saving and exiting, restarting the system, enter lsblk in the Raspberry Pi terminal. You can see that nvme0n1p1 and nvme0n1p2 are mounted under ssd1 and ssd2.

MPS2280D_42.jpg

Now, we can see two directories: ssd1 and ssd2, at the root of the file directory, representing the two partitions on the SSD. We can perform operations on these two folders. We complete the mounting of the partitions now.

MPS2280D_41.jpg

六、NAS服务器的应用演示

6.1 系统选择

为了能够正确安装NAS服务器,软件平台请选择32位Lite版本(即不带GUI的32位命令行版本),其他版本将无法正常安装OpenMediaVault。系统镜像下载地址:

https://www.raspberrypi.com/software/operating-systems/#raspberry-pi-os-32-bit

本文所使用的镜像版本为:2024-07-04-raspios-bookworm-armhf-lite.img.xz

6.2 系统烧写

使用树莓派镜像烧录器烧写系统。

MPS2280D_45.jpg

因为该系统起来后为命令行界面,因此在Use OS customization中,点击编辑设置,将登录用户名和密码设置进去,如果需要使用Wifi,将Wifi参数也一并设置,这样就免去在命令行界面下进行设置,便于使用。

MPS2280D_46.jpg

MPS2280D_47.jpg

6.3 安装OpenMediaVault软件

6.3.1 系统烧写完毕后,连接好网线并启动系统(如果之前设置了Wifi,也可以使用Wifi),将之前烧录时设定的用户名和密码填入,登录系统。

MPS2280D_43.jpg

6.3.2 登录系统后,输入以下命令更新系统和头文件:

sudo apt update

sudo apt upgrade

MPS2280D_44.jpg

然后输入以下命令安装OpenMediaVault软件:

wget https://github.com/OpenMediaVault-Plugin-Developers/installScript/raw/master/install

chmod +x install

sudo ./install -n

MPS2280D_48.jpg

注意:下载OpenMediaVault软件时可能需要能连通外网(需自备方法),且安装时间较长,请耐心等待。

6.4 配置NAS服务器的OpenMediaVault软件

6.4.1 使用ifconfig查看树莓派的系统ip,如图所示,本文所使用的树莓派的ip为192.168.8.102。

MPS2280D_69.jpg

在同一局域网内的PC中,在浏览器中输入192.168.8.102,打开OpenMediaVault,默认的登录名和登录密码分别为admin和openmediavault。

MPS2280D_49.jpg

6.4.2 在配置NAS服务器之前,请确保存储设备已经正确安装,安装好后才能进行接下来的操作。选择“存储器”,随后点击“磁盘”此处应显示所有连接的存储设备,包括SD(TF)卡和SSD硬盘。如果没有,请仔细检查所有内容是否正确插入并重新启动系统。

MPS2280D_50.jpg

6.4.3 点击“存储器”下的“文件系统”,然后点击“挂载现有文件系统”,如下图所示,选择目前已安装的存储器,本文中所选择的是一块120G的SSD硬盘。在分区格式方面,我们建议选择EXT4格式。

MPS2280D_51.jpg

MPS2280D_52.jpg

选择完毕后点击保存,保存后再点击随后显示的“待应用的配置更改”中的“更改”,这样就完成了挂载设置。

MPS2280D_53.jpg

MPS2280D_54.jpg

我们可以重复上述步骤,挂载多个存储器。

6.4.4 点击“存储器”下的“共享文件夹”,再点击“创建”:

MPS2280D_55.jpg

您可以在此处命名文件夹,选择它应存在于哪个驱动器上,并向用户授予权限。默认情况下,权限应该是正确的,但如果您更喜欢网络首选项的不同选项,则可以调整它们。保存并应用更改。

MPS2280D_56.jpg

MPS2280D_57.jpg

此处可根据需求添加多个设备。

6.4.5 接下来,我们需要确保网络上的计算机可以找到该共享文件夹。点击“服务”下的“SMB/CIFS”,然后点击“设置”,选中“已启动”,保存并应用更改。

MPS2280D_58.jpg

随后点击“SMB/CIFS”下的“共享”,点击“创建”,然后选择上面配置的共享文件夹,保存并应用更改,

MPS2280D_59.jpg

MPS2280D_60.jpg

MPS2280D_61.jpg

如果需要配置多个共享文件夹,请按照上述步骤重复进行。

6.4.5 最后,点击“用户”下的“用户”,我们可以设置一个用户供后续登录NAS服务器用,如果不想创建新用户,也可以使用默认的用户(本文所示的为adm用户),如果不知道默认用户的登录密码,可以编辑该用户,重新修改一个密码。

注意:此处的默认用户即为树莓派OS的登录用户(本文所示的为adm用户),如果改了这个密码,下次登录树莓派系统时也要使用新的密码。

MPS2280D_62.jpg

MPS2280D_63.jpg

MPS2280D_70.jpg

MPS2280D_71.jpg

6.5 测试NAS服务器

6.5.1 确认网络发现和文件共享是否打开。进入以太网设置,点击“更改高级共享设置”,查看“启用网络发现”和“启用文件和打印机共享”是否打开,如果没打开,请打开。

MPS2280D_74.jpg

MPS2280D_75.jpg

6.5.2 在同一局域网内的PC中,点击“网络”,找到NAS服务器,本文中所示的为“RASPBERRYPI”,双击此服务器,然后输入上面设置的用户名和密码,即可打开共享文件夹

MPS2280D_72.jpg

MPS2280D_73.jpg

MPS2280D_76.jpg

6.5.3 接下来我们通过拷贝大文件进行NAS测速。下面分别是写入和读取演示,速度按网络状况不同而异。

MPS2280D_67.jpg

MPS2280D_68.jpg

联系我们

4f7e81daf8791971.jpg 79c020da7ad0af9b.jpg 2851e01a0549e6f7.gif 0003_bb.jpg 0005_qq.jpg QQ:8204136

邮件:mcuzone@vip.qq.com

电话:13957118045

如本页面有任何疏漏、错误或者侵权,请通过上述途径联系我们,谢谢!

Copyright 2004-2024 野芯科技