Upgrading when a flash drive is used

When I first installed the flash drive was new and nothing on it. I’ve read some odd comments about formatting them in the past and wondered if any special procedure was needed?

Part of this is also down to doing some real read write tests on it when it was virtually new that avoid misleading results due to caching. While the disk is fast in practice the results were odd. I only load software to it so it isn’t written to at all as far as i can tell so read speed is all that matters really. All data goes some where else.

It’s also been in use for some time now and I have some concerns about it wearing out and failing. Very little of it is in use so I have wondered about adding unused partitions to get the install to use an unused area - but where will the area the install used be and is this possible. The repartitioning certainly is.

:wink: Very late moving up from 12.3. Personal reasons and available time but will be going to 13.2 and then the next Leap version when that comes out.

John

If space is available just add a partition.

Write speed can vary because of the way flash works and also the actual firmware on the drive . SSD’s tend to fail with little or no warning unlike spinning rust.

http://arstechnica.com/information-technology/2012/06/inside-the-ssd-revolution-how-solid-state-disks-really-work/

Thanks. Since posting I have decided to buy a new one. I only really use it as a boot disk plus all of the usual linux files but set partitions up so that nothing writes other than when the lib files and kernel etc gets updated. This leaves me wondering about trimming because they don’t delete anything without that as it’s a very slow process. I’ve still no idea how to do that.

I actually wish all applications could be installed software here and all writes there as I have worked on microcontrollers with flash memory and as the code all lies there read is fine for millions of cycles / thousands and thousands of hours of operation but the manufacturers are rather coy about how many times it can be updated. They may be using SLC as well. I looked at that and found it’s beyond my budget - in the UK anyway.

:wink: I’ll partition it this time and leave one completely unused.

John

Read is not the problem You can not overwrite a block so any change in the block means the block gets swapped out and mapped to a temp area until a trim is issued to force a recycle and erase of the used blocks. Even though you primarily use to read there are always some random writes for temp and cache and updates.

So What file system?

It may be worth forcing a trim as root fstrim. You can also add to cron to do every few days. If ext4 file system adding discard to the mount options in /etc/fstab can also work

Modern SSD should be good for terabytes of writes

Good info on SSD and trim usage

http://blog.neutrino.es/2013/howto-properly-activate-trim-for-your-ssd-on-linux-fstrim-lvm-and-dmcrypt/

I use a lot of partitions so for instance tmpf goes to a partition on a hard drive along with some others.

There is an interesting fairly recent page on them here

http://unix.stackexchange.com/questions/106678/how-to-check-the-life-left-in-ssd-or-the-mediums-wear-level

Out of interest I ran smartcrl on it following use since circa the introduction of 12.3 with very little powered down time. Maybe 12 weeks a year actually powered off


hcppc4:/home/john # smartctl --all /dev/sda2
smartctl 6.0 2012-10-10 r3643 [x86_64-linux-3.7.10-1.40-desktop] (SUSE RPM)
Copyright (C) 2002-12, Bruce Allen, Christian Franke, www.smartmontools.org


=== START OF INFORMATION SECTION ===
Device Model:     PLEXTOR PX-128M5Pro
Serial Number:    P02306101219
Firmware Version: 1.02
User Capacity:    128,035,676,160 bytes [128 GB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    Solid State Device
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   ATA8-ACS, ATA/ATAPI-7 T13/1532D revision 4a
SATA Version is:  SATA 3.1, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Sun Jun 12 19:50:06 2016 BST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled


=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED


General SMART Values:
Offline data collection status:  (0x00) Offline data collection activity
                                        was never started.
                                        Auto Offline Data Collection: Disabled.
Self-test execution status:      (   0) The previous self-test routine completed
                                        without error or no self-test has ever 
                                        been run.
Total time to complete Offline 
data collection:                (   10) seconds.
Offline data collection
capabilities:                    (0x15) SMART execute Offline immediate.
                                        No Auto Offline data collection support.
                                        Abort Offline collection upon new
                                        command.
                                        No Offline surface scan supported.
                                        Self-test supported.
                                        No Conveyance Self-test supported.
                                        No Selective Self-test supported.
SMART capabilities:            (0x0002) Does not save SMART data before
                                        entering power-saving mode.
                                        Supports SMART auto save timer.
Error logging capability:        (0x00) Error logging supported.
                                        General Purpose Logging supported.
Short self-test routine 
recommended polling time:        (   2) minutes.
Extended self-test routine
recommended polling time:        (  10) minutes.
SCT capabilities:              (0x003d) SCT Status supported.
                                        SCT Error Recovery Control supported.
                                        SCT Feature Control supported.
                                        SCT Data Table supported.


SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x0003   100   100   070    Pre-fail  Always       -       0
  5 Reallocated_Sector_Ct   0x0003   100   100   000    Pre-fail  Always       -       0
  9 Power_On_Hours          0x0002   100   100   000    Old_age   Always       -       425
 12 Power_Cycle_Count       0x0002   100   100   000    Old_age   Always       -       198
177 Wear_Leveling_Count     0x0003   100   100   000    Pre-fail  Always       -       1087
178 Used_Rsvd_Blk_Cnt_Chip  0x0003   100   100   000    Pre-fail  Always       -       0
181 Program_Fail_Cnt_Total  0x0003   100   100   000    Pre-fail  Always       -       0
182 Erase_Fail_Count_Total  0x0003   100   100   000    Pre-fail  Always       -       0
187 Reported_Uncorrect      0x0002   100   100   000    Old_age   Always       -       0
192 Power-Off_Retract_Count 0x0003   100   100   000    Pre-fail  Always       -       51
196 Reallocated_Event_Count 0x0003   100   100   000    Pre-fail  Always       -       0
198 Offline_Uncorrectable   0x0003   100   100   000    Pre-fail  Always       -       0
199 UDMA_CRC_Error_Count    0x0003   100   100   000    Pre-fail  Always       -       0
232 Available_Reservd_Space 0x0003   100   100   010    Pre-fail  Always       -       0
241 Total_LBAs_Written      0x0003   100   100   000    Pre-fail  Always       -       2605
242 Total_LBAs_Read         0x0003   100   100   000    Pre-fail  Always       -       6347


SMART Error Log Version: 0
No Errors Logged


SMART Self-test log structure revision number 1
No self-tests have been logged.  [To run self-tests, use: smartctl -t]




Selective Self-tests/Logging not supported



My next one will be by Intel so hopefully some of the missing data will be shown. I bought this particular one for it’s guarantee. There is circa 20gb on it.

My opinion on flash rewrites is based purely on ABS controllers and items like that. Fortunately code seldom needs updating.

Generally smart is often off by default since it of course records data and thus can reduce life .

I use noatime,nodiratime,discard, on EXT4 stops recording of access time and does trim