I’ve scoured the web and this forum for an answer to my question and came up empty. So apologies if this is answered elsewhere.

I have a 1GB m.2 SATA SSD that I would like to BOTH use as my Pi boot drive as well as the file storage for my media files (eg music, pictures, video). Right now, all those files are on my Windows 10 box. I’m hoping I can set up a bootable Pi image on a small partition on the SSD and then create a second, larger partition for the files. I then want to be able to pull the drive from my Pi and connect it to Windows so that I can occasionally update the drive with new content, then plug it back in the Pi, boot and run Raspbian.

Before I go formatting things and taking the time to transfer >500GB of data to the SSD, however, I wanted to make sure I could do it and how I would do it.

I think I would create one bootable FAT partition on the SSD and flash the Raspbian image into that partition. I would then create a non-bootable NTFS partition that I would keep my files in. I think when I plugged the drive into a running copy of Windows, it would ignore the bootable partition and just show me the NTFS partition. Then, when I put it in my Pi, it would boot into Raspbian using the boot partition and I could mount the NTFS partition to see all my media files.

Is that correct? Is the setup best done through Raspbian or in Windows or does it not matter? How large should the boot partition be? Or can I first plug the new SSD drive into my Pi, flash Raspbian onto it, then plug that into my Windows box and create a new NTFS partition out of the remaining space? Or will the flashing process create an ext4 partition to eat up the remaining SSD space and I’ll have to then reformat that to NTFS?

Thanks so much for any help, I truly appreciate it!


  • If you want to boot the Pi from a SSD (or anything else) it needs to be partitioned as MBR. The Pi root partition must be formatted as ext4 which Windows can't (actually won't) read. These are not insurmountable obstacles if you want to proceed, but this requires an understanding of the limitations - not a Pi problem. You CAN access NTFS partitions in Linux, but don't expect stellar performance.
    – Milliways
    Commented Apr 14, 2021 at 12:27
  • Thanks! So I guess my follow-up question is more related to the way the Raspberry Pi Imager will set up Pi OS on my SSD. If I plug a fresh new SSD into my Windows box and run the Imager, will it create the necessary MBR and root fs, leaving unallocated space I can then format NTFS, or will it use up all the SSD space when it created the root partition? If it allows for sizing of the root partition, I should think I could set it to, like, 32GB and leave the rest unallocated, then use a formatting tool to format the unallocated space NTFS, right?
    – Jomolungma
    Commented Apr 14, 2021 at 13:06
  • Raspberry Pi OS will expand the root partition to fill available space on first boot. it is not difficult to adjust, but requires some knowledge and additional tools. I suggest you install to SD Card and use SSD for storage.
    – Milliways
    Commented Apr 14, 2021 at 13:21
  • Thanks again. I think what I’ll do is reformat my Pi SD card and do a fresh install of Pi using the new imager and see what it does, then adjust from there. Nothing on my current Pi install I couldn’t lose, so it’s not an issue to re-format, and it’s much smaller so it should go faster. If I can figure out how the installer sets up the SD card and effectively create an NTFS partition on that, then I should be able to replicate on the SSD.
    – Jomolungma
    Commented Apr 14, 2021 at 13:23

1 Answer 1



This turned out to be simpler than I expected. I plugged the fresh SSD into my Windows 10 box using a USB3 enclosure. I then used Raspberry Pi Installer to install Raspberry Pi OS to the SSD. This created a /boot partition and a /root partition, leaving about 990Gb of unallocated space. I then booted up my RPi4 using a prior OS install on sdxc card. Once into the OS, I installed gparted and plugged my SSD enclosure into a USB3 port on the RPi. The OS mounted the drive and I could see it in gparted. I then clicked on the unallocated space and created a new partition there in NTFS. After that was done, I powered down the Pi, removed the sdxc card, and rebooted with just the SSD plugged in. It worked and booted into the OS and showed the NTFS partition.

I then powered everything down, plugged the SSD back into Windows and copied all my music files onto the NTFS partition into a folder named 'Music.' I then unplugged, put it back in the Pi, booted up and I could see the folder 'Music' in the NTFS partition. The problem was I couldn't see any of the files INSIDE the 'Music' partition. I could read and write to the partition in the OS and I could see what I wrote on the Pi show up back in Windows, but I couldn't see all the music files I dragged onto the drive from Windows.

After trying a bunch of things, I finally went for an extreme approach and re-formatted the NTFS partition. But instead of using gparted from within RPi OS, I just used the Windows 10 quick formatting tool. For whatever reason, this solved the problem. I can now see any files I've dragged onto the partition from Windows while in RPi OS. So, success!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.