The data migration tool provided by most SSD manufacturers runs only under Windows. If a machine does not have Windows, then a generic tool, such as Clonezilla would need to be used.
Desktop oriented distributions typically have this set to CFQ - which is suited to conventional HDD. SSD have greater parallelism and should benefit from setting to "noop" or "deadline". The exact procedure for this low-level change in kernel settings varies with distribution.
SSD require a manufacturer specific tool for some operations, notably secure erase. Only the following brands are known to provide a software tool which runs under Linux
TRIM is a standard (S)ATA command. Most implementations of Linux do not invoke TRIM automatically in background. It needs to be run manually on a weekly or longer basis, depending on rate at which the SSD is written.
#trim -v /dev/sd(x)
gives useful information
If only a small percentage of the drive is trimmed, then the TRIM interval might be extended ?
Manufacturer's data sheets often do not state whether or not TRIM is supported. It is known to work with the following brands under Linux