chkdsk /f /r alternative in ubuntu linux

11

5

In windows os chkdsk /f /r will fix a hdd error automatically.
i have lost access in my laptop though i am able to live boot into my laptop using linux.
I have live boot ubuntu 14.04 and i am in a need to run a command to fix hdd logical errors and fix automatically like in windows we can repair using chkdsk /f /r.
So what is the alternative command for chkdsk /f /r in linux in order to fix hdd error?

rakibtg

Posted 2014-12-17T12:36:51.197

Reputation: 247

for linux filesystems like ext4, etc, use fsck -a /dev/sdXY where X and Y identify the volume you want checked. eg: fsck -a /dev/sda1 http://manpages.ubuntu.com/manpages/hardy/man8/fsck.8.html For NTFS volumes, put them on a windows system and use chkdsk. there isn't a safe linux tool for NTFS filesystem repair. Or boot from a windows install disk and use the recovery mode command prompt to run chkdsk.

– Frank Thomas – 2014-12-17T12:56:03.183

Answers

10

AFAIK there is no full replacement for chkdsk. You basically have two options

ntfsfix is part of ntfs-3g and should be pre-installed on your Ubuntu LiveMedium. It can fix only some fundamental issues with NTFS, but it always triggers a chkdsk on next Windows-startup.

In some cases this can be enough to get it back to a usable state (dependending if Windows can boot far enough to be able to run chkdsk...).

If this fails, you are left with option Nr 2

  • use a Windows install/recovery CD/DVD/BootStick

from there you can run chkdsk from a commandprompt.

If you don't have any Windows-media available, you can also remove the harddrive and connect it to some other Windows-maschine.

Legionair

Posted 2014-12-17T12:36:51.197

Reputation: 393

but how can i plug my laptop hdd to my desktop one :/ btw good idea :) – rakibtg – 2014-12-17T13:03:03.930

1nost laptops use SATA drives the same as desktops do, so the only issue is mounting it in the case, which you probably don't need to do since your only hooking it up temporarily. I'd just open the desktop case, jack it into an open sata port, and leave it hanging out the side until the repair was complete. if you really want to mount it though, get a 2.5" -> 3.5" adapter tray or get two 1" rails. – Frank Thomas – 2014-12-17T13:28:48.707

2I just wanted a chkdsk to run, didn't have a installation CD handy, and didn't have local administrator credentials (for the built-in recovery options). ntfsfix to mark the disk dirty was enough to kick off the chkdsk. – ssnobody – 2016-04-08T20:33:33.123

@rakibtg There are so many solutions: use a PE boot disk, windows to go... or Hiren's boot if your computer is old enough. You can even put a Windows installation disk and select recovery. Newer Windows version already has the recovery option builtin and you can just select it from the boot menu – phuclv – 2017-02-27T09:18:22.793

@FrankThomas It's much easier to get a SATA-to-USB conversion kit. You can pick one up for as little as $15 – jpaugh – 2017-09-01T20:01:14.767

ntfsfix DOES NOT fix anything. It just clears the "dirty filesystem" flag. You WILL corrupt data when enough unfixed errors build up. – Stepan – 2017-12-19T16:09:24.067

1

Although it is not as powerful as Windows' chkdsk, you can use following approach:

sudo ntfsfix /dev/sdXY
sudo ntfsresize -i -f -v /dev/sdXY

After that you will be asked to do it in Windows anyways as Linux doesn't have a powerful equivalent, but this can do a good job.

The ntfsresize command above will check for bad clusters and do a filesystem consistency check.

xdevs23

Posted 2014-12-17T12:36:51.197

Reputation: 149

ntfsfix FAKES fixing. It hides the problem under the carpet. Great way to fubar your partition. – Stepan – 2017-12-19T16:17:45.090

1

Linux has no tools to fix NTFS file system.

DO NOT use ntfsfix for fixing your disk. It just removes "dirty FS" flag and you get a false sense of security. After a couple of "fixes" your data becomes unrecoverable.

Do use Windows. Either have a separate HDD with Windows, or install VMware, download Windows vmware image from Microsoft, share raw disk with guest OS and check it from there.

Stepan

Posted 2014-12-17T12:36:51.197

Reputation: 214

-3

Use "fsck" : http://ss64.com/bash/fsck.html

fsck -a /dev/sdXY (sdXY is the "partition" or disk that you want check).

kj_

Posted 2014-12-17T12:36:51.197

Reputation: 99

3fsck does not check NTFS partitions – kurdtpage – 2017-01-24T06:30:51.277