Robert Elder Software Inc.
  • Home
  • Store
  • Blog
  • Contact
  • Home
  • Store
  • Blog
  • Contact
  • #linux
  • |
  • #commandline
  • |
  • #softwareengineering
  • |
  • #embeddedsystems
  • |
  • #compilers
  • ...
  • View All >>

Intro To 'sync' Command In Linux

2023-06-05 - By Robert Elder

     I use the 'sync' command to ensure that any cached writes are committed to persistent storage:

sync

     Here, I have an important piece of data that I want to back up to an external hard drive:

Using 'cp' Command

     I use the 'cp' command to copy this data onto the external hard drive:

cp my-important-data.zip /external-drive/my-important-data.zip

     As the 'cp' command runs, I no longer have control over the command prompt, but I can see that the destination file size is growing larger:

Lost Control Over Prompt

     Eventually, the command prompt comes back and the destination file size stops increasing.  13 seconds later, I decide to unplug my external hard drive believing that the data has finished copying:

Unplugging External Drive

     When I plug the drive back in, the file size is now smaller and the checksum doesn't match, indicating that the backup is corrupt:

Data Is Now Corrupt

     That's why I always use the 'sync' command even if the drive activity light has stopped flashing:

sync

     After using the 'sync' command, the data will finish copying for a few seconds, and then return control to the prompt.  Now, the file sizes are correct and the checksums match!

     And that's why the 'sync' command is my favourite Linux command.

Intro To 'stty' Command In Linux
Intro To 'stty' Command In Linux
Published 2023-10-04
Terminal Block Mining Simulation Game
$1.00 CAD
Terminal Block Mining Simulation Game
Intro To 'nproc' Command In Linux
Intro To 'nproc' Command In Linux
Published 2023-07-15
Intro To 'comm' Command In Linux
Intro To 'comm' Command In Linux
Published 2023-09-06
How To Force The 'true' Command To Return 'false'
How To Force The 'true' Command To Return 'false'
Published 2023-07-09
A Surprisingly Common Mistake Involving Wildcards & The Find Command
A Surprisingly Common Mistake Involving Wildcards & The Find Command
Published 2020-01-21
A Guide to Recording 660FPS Video On A $6 Raspberry Pi Camera
A Guide to Recording 660FPS Video On A $6 Raspberry Pi Camera
Published 2019-08-01
Intro To 'chroot' Command In Linux
Intro To 'chroot' Command In Linux
Published 2023-06-23
Join My Mailing List
Privacy Policy
Why Bother Subscribing?
  • Free Software/Engineering Content. I publish all of my educational content publicly for free so everybody can make use of it.  Why bother signing up for a paid 'course', when you can just sign up for this email list?
  • Read about cool new products that I'm building. How do I make money? Glad you asked!  You'll get some emails with examples of things that I sell.  You might even get some business ideas of your own :)
  • People actually like this email list. I know that sounds crazy, because who actually subscribes to email lists these days, right?  Well, some do, and if you end up not liking it, I give you permission to unsubscribe and mark it as spam.
© 2025 Robert Elder Software Inc.
SocialSocialSocialSocialSocialSocialSocial
Privacy Policy      Store Policies      Terms of Use