52
votes
Accepted
When is ext5 coming or when will ext4 be updated to support large (huge) SSDs?
64-bit ext4 file systems can be up to 64ZiB in size with 4KiB blocks, and up to 1YiB in size with 64KiB blocks, no need for an ext5 to handle large volumes. 1 YiB, one yobibyte, is 10248 bytes.
There ...
47
votes
Benchmark ssd on linux: How to measure the same things as crystaldiskmark does in windows
I'd say fio would have no trouble producing those workloads. Note that despite its name CrystalDiskMark is actually a benchmark of a filesysystem on a particular disk - it can't do I/O raw to the disk ...
38
votes
Is shred bad for erasing SSDs?
Writing a block to an SSD does not overwrite the old block. That's because all recent SSDs use something called "wear leveling".
To write a block to an SSD, you need to erase it first, and ...
32
votes
Is shred bad for erasing SSDs?
This is the fastest way to securely erase a drive I know of.
For SSDs, no, it's not.
blkdiscard /dev/device is dozens times faster and should be equally safe for your use case.
Would cat /dev/zero &...
31
votes
Accepted
Is "dd" a reliable tool to make an SSD image?
TLDR: Use ddrescue
It supports resume/continue capabilities, has automatic logs, and tons of other options. More at the ddrescue home page.
Example syntax:
ddrescue /dev/sde yourimagename.image sde....
30
votes
Accepted
How to evaluate the wear level of a NVMe SSD?
The wear level is given by the “Percentage Used” field, which is specified as (page 184):
Percentage Used: Contains a vendor specific estimate of the percentage of NVM subsystem
life used based on ...
29
votes
Benchmark ssd on linux: How to measure the same things as crystaldiskmark does in windows
Edit 2025: There is now an open source software that imitates crystaldiskmark called kdiskmark which can be used. It functions similarly to my script but has a GUI. Do note that since fio is not ...
26
votes
Benchmark ssd on linux: How to measure the same things as crystaldiskmark does in windows
Try KDiskMark, very similar to CrystalDiskmark.
The application is written in C++ with Qt and doesn't have any KDE dependencies.
Usage
To start, after select a folder (and optionally other params), ...
25
votes
Securely erase SSDs (The whole SSD)
Useless depends on context. shred can actually be rather useless - when trying to shred a single file, while other copies of the file still exist [every time you click Save, it's another copy] - but ...
24
votes
Accepted
How does Linux know where its swap partition is?
Statically configured swap space (the type that pretty much every distribution uses) is configured in /etc/fstab just like filesystems are.
A typical entry looks something like:
UUID=21618415-7989-...
24
votes
When is ext5 coming or when will ext4 be updated to support large (huge) SSDs?
The 64bit ext4 filesystem feature removes the 232 block limit. If this feature was not enabled when your filesystem was created, you can add it to the superblock using tune2fs(8):
tune2fs -O 64bit /...
21
votes
How does Linux know where its swap partition is?
let's say Fedora and Ubuntu?
… both of which are nowadays systemd operating systems.
What happens in systemd operating systems
the native mechanism
Systemd employs various kinds of units. ....
21
votes
How can you get any version of Linux to see the 2018 MacBook Pro SSD?
It's currently not possible to install anything except Windows 10 on Apple computers equipped with T2 chip. This security chip makes it impossible to see the internal drive, Apple generously did an ...
21
votes
Accepted
Disk usage confusion: 10G missing on Linux home partition on SSD
If the filesystem is ext4, there are reserved blocks, mostly to help handling and help avoid fragmentation and available only to the root user. For this setting, it can be changed live using tune2fs (...
16
votes
Difference between 'sync' and 'async' mount options
Words of caution: using the 'async' mount option might not be the best idea if you have a mount that is constantly being written to (ex. valuable logs, security camera recordings, etc.) and you are ...
15
votes
Using LVM with SSD and SATA drives
What you can do in recent-ish LVM versions is create one “origin” LV on the HDD and one “cache pool” LV on the SSD,
and then combine it into a single “cache” LV.
It has the same size as the “origin” ...
15
votes
Persistent disk name /dev/sd'x', changing with almost every reboot
/dev/sdX has not been a stable identifier for a drive for a very long time (and indeed probably never was). Those are allocated in the order they're discovered, and different controllers are probed in ...
15
votes
Accepted
How to quickly wipe ext4 superblocks on a NVMe SSD? Secure erase?
SSDs of the last decade all support TRIM, so blkdiscard /dev/{device} is what you need; admittedly, more than the superblock will be gone (instead, everything), but that seems like a plus.
It's not ...
14
votes
How can you get any version of Linux to see the 2018 MacBook Pro SSD?
I have a MacBook Pro Mid 2018 and managed to get the SSD working for like 10 seconds.
When you live boot Linux Mint or Ubuntu and do:
modprobe nvme
Then check for the hardware ID of the Apple ...
14
votes
Accepted
Is mounting with "discard" needed for TRIM?
If the filesystem is mounted with discard, then deleting files will automatically cause the TRIM command to be issued. This often has a negative performance impact, so it's generally better not to use ...
13
votes
How does Linux know where its swap partition is?
Historically, the swap partition is specified in /etc/fstab with an entry of type swap. On boot, the startup processes will read that file and push that configuration into the kernel.
An example of ...
12
votes
Fixing bad blocks
I have had this issue in the past. IIRC, "Offline uncorrectable sectors" means that the disk controller (the one inside the disk, not the SATA/SCSI controller in your PC) has had repeated ...
12
votes
Is shred bad for erasing SSDs?
Not only is shred a bad tool for erasing an SSD, it won't work as intended. As others have noted, overwriting specific data blocks on an SSD is generally not possible, because wear-leveling means that ...
12
votes
Accepted
Low performance of encrypted SSD
If your CPU is old enough it may not support AES-NI instructions, so encryption/decryption will be slow.
grep -qw aes /proc/cpuinfo && echo Supported || echo Unsupported
Will tell you ...
11
votes
Is shred bad for erasing SSDs?
i'd reccommend using secure erase with hdparm if it's at all supported:
https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase
this has step by step instructions on erasing SSDs
11
votes
Securely erase SSDs (The whole SSD)
blkdiscard -v -f /dev/nvme0n1 (or /dev/sdX)
Will make your data effectively vanish without any realistic possibility of restoring it.
If you're paranoid, do this:
cat /dev/urandom > /dev/nvme0n1
...
11
votes
When is ext5 coming or when will ext4 be updated to support large (huge) SSDs?
While ext4 can in theory handle filesystems up to 2^64 * blocksize = 64ZiB in size (for commonly used 4KiB blocksize), on a more practical note there are implementation contstraints today at 2^48 * ...
10
votes
How secure is blkdiscard?
Like fstrim, blkdiscard just sends the appropriate commands (TRIM for [S]ATA, UNMAP for SCSI/SAS, and a Data Set Management/Deallocate for NVMe) to the SSD in question, and the disk will decide on its ...
10
votes
Recovering accidentally deleted partition on a solid-state drive using "fdisk"
Yes.
SSDs move blocks around internally, but the block numbers they present as the interface to whatever is talking to them remain consistent and point to the same stored data, wherever it happens to ...
9
votes
Disk usage confusion: 10G missing on Linux home partition on SSD
Deleted files can also contribute to "missing space"
lsof | grep deleted | grep /home
returns this output for me
chrome 11181 criggie 15u REG 254,0
4194304 ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
ssd × 618linux × 136
hard-disk × 89
partition × 62
filesystems × 43
ubuntu × 40
nvme × 39
trim × 38
debian × 33
disk × 33
lvm × 32
performance × 30
mount × 28
dd × 28
boot × 27
storage × 27
dual-boot × 26
ext4 × 26
linux-mint × 24
system-installation × 23
smartctl × 23
cache × 21
arch-linux × 20
btrfs × 19
io × 19