How to check SD card in linux


The ever-expanding digital universe often necessitates the use of external storage devices, and Secure Digital (SD) cards have become a popular choice due to their portability and versatility. Linux, a robust and open-source operating system, offers a plethora of tools and commands to facilitate the seamless examination of SD cards. In this comprehensive guide, we will embark on a journey through the intricacies of how to check SD cards in Linux. From detecting hardware to diagnosing issues and ensuring data integrity, this article will cover it all.

Section 1: Getting Acquainted with the SD Card

Understanding the basics is crucial. An SD card is a flash memory storage device that comes in various sizes and types. SD cards are often used to store data, including documents, photos, and videos. In the Linux environment, it is essential to be familiar with the device to check it effectively.

SD cards come in different capacities, including SD, SDHC, and SDXC, and various form factors, such as microSD and miniSD. To check your SD card in Linux, you need to know the device name, which can be found using commands like lsblk or fdisk.

Section 2: Detecting the SD Card Hardware

Before performing any checks on an SD card, you need to ensure that your Linux system can detect the hardware. This step involves identifying the device name associated with the SD card. To accomplish this, follow these steps:

1, Use the lsblk command:

Open a terminal and enter the following command:


This command will list all block devices, including your SD card. You can identify it by its size and partition structure.

2, Use the dmesg command:

You can also check the kernel log messages to detect the SD card by running:

dmesg | tail

Look for information related to the SD card’s detection, such as its device name and size.

Section 3: Mounting the SD Card

Once you’ve identified the SD card’s device name, you need to mount it to access its contents. The mount command is your go-to tool for this task. Follow these steps to mount the SD card:

1, Create a mount point:

You’ll first need to create a directory where you want to mount the SD card. For example:

sudo mkdir /mnt/sdcard

2, Mount the SD card:

Use the mount command to mount the SD card to the directory you created:

sudo mount /dev/sdX /mnt/sdcard

Replace /dev/sdX with the actual device name of your SD card.

3, Verify the mounting:

You can check if the SD card is successfully mounted by using the df command:

df -h

Look for the SD card’s mount point in the output.

Section 4: Checking SD Card Usage

To understand how your SD card’s space is being utilized, you can use various commands and tools in Linux. Here’s how to check the SD card’s usage:

1, Using the df command:

The df command is your primary tool for checking disk space usage. To examine the SD card, run:

df -h /mnt/sdcard

This command will display the usage statistics for the mounted SD card.

2, Using the du command:

The du command is useful for checking the space consumed by specific directories within the SD card. To check the size of a particular directory:

du -h /mnt/sdcard/directory_name

Replace “directory_name” with the name of the directory you want to inspect.

Section 5: Verifying Data Integrity

Maintaining data integrity is crucial, especially when dealing with storage devices like SD cards. To check the integrity of data on your SD card in Linux, you can use the fsck tool, which is short for “file system check.” Here’s how to do it:

1, Unmount the SD card:

Before running fsck, it’s essential to unmount the SD card to prevent data corruption. You can unmount the card using the umount command:

sudo umount /mnt/sdcard

2, Check the SD card:

To verify the data integrity, run fsck on the device:

sudo fsck -t vfat /dev/sdX

Replace /dev/sdX with your SD card’s device name. The -t vfat option specifies the file system type; adjust it if your SD card uses a different file system.

3, Review the results:

After running fsck, the tool will provide a report on the SD card’s condition. Pay attention to any errors or warnings and take appropriate action to rectify them.

Section 6: Backup and Recovery

Data loss is a potential risk when dealing with storage devices, so it’s essential to have a backup and recovery plan in place. In Linux, there are various methods to back up your SD card and recover data if needed.

1, Backup your SD card:

To create a backup of your entire SD card, you can use the dd command. This command allows you to clone the entire contents of the SD card to a disk image file. Here’s an example:

sudo dd if=/dev/sdX of=sdcard_backup.img bs=4M

This command will create a disk image named “sdcard_backup.img.”

2, Data recovery:

If you accidentally delete or lose data on your SD card, you can attempt to recover it using tools like PhotoRec or TestDisk. These tools are specifically designed to retrieve lost files from storage devices.

Section 7: Safely Ejecting the SD Card

After checking, mounting, and using your SD card, it’s essential to safely eject it to prevent data corruption. The umount command is also used for this purpose:

1, Unmount the SD card:

As previously mentioned, unmount the SD card using the umount command:

sudo umount /mnt/sdcard

2, Physically eject the card:

Once unmounted, you can safely remove the SD card from your computer’s card reader.

Section 8: Handling Permission Issues

Sometimes, you may encounter permission issues when accessing or modifying files on the SD card. This can be due to the ownership and permissions associated with the mounted file system. Here’s how to address permission problems:

1, Change ownership:

You can change the ownership of the mounted SD card to your user by using the chown command:

sudo chown -R yourusername:yourusername /mnt/sdcard

Replace “yourusername” with your actual username.

2, Adjust permissions:

To modify the file permissions, use the chmod command:

sudo chmod -R 755 /mnt/sdcard

This command sets read, write, and execute permissions for the owner and read and execute permissions for others.

Section 9: Monitoring SD Card Health

Regularly monitoring the health of your SD card can help you preemptively address potential issues. Linux offers tools like smartmontools that can assess the health of your storage devices. Here’s how to use them:

1, Install smartmontools:

If you haven’t already, you can install smartmontools using your package manager:

sudo apt install smartmontools

2, Check the SD card’s health:

Use the smartctl command to check the health of your SD card:

sudo smartctl -a /dev/sdX

Replace /dev/sdX with your SD card’s device name. The command will provide detailed information about the card’s health and performance.


In the world of Linux, checking an SD card is a straightforward but essential task. From hardware detection to data integrity verification and maintenance, this guide has covered a plethora of aspects related to SD card management in Linux. By following the steps outlined here, you can ensure that your SD card remains in optimal condition, and your data is safe and accessible whenever you need it. Whether you’re a Linux novice or an experienced user, this guide equips you with the knowledge to confidently check your SD card in Linux.

Leave a Comment