I was editing my disk and when i wrote the changes and exited cfdisk, no cli command worked. Thats when i realized that im f-ed up.

This what happened: I have 3 partitions, 512M efi, a 100G root partition and some free (unallocated) space. I had 84G worth data in the root patition. I totally forgot that and shrinked the root partition to 32G to extend the free space. I was using cfdisk tool for this. I wrote the changes and rebooted my machine, by long pressing power button coz no cli commands worked after writing those chrnges, to see this.

So is it possible to recover my machine now?

:_ )

SOLUTION Thanks to @dgriffith@aussie.zone. cfdisk just updates the partition table. So no worry about data damage . To fix this, live boot -> resize the partition back its original size -> fsck that partition. For more explanation, refer @dgriffith@aussie.zone comment

83 points

just to add a little more explanation to what the other posters are suggesting… a hard drive, from the perspective of your OS is very very simple. it’s a series of bytes. for the sake of this example, let’s say there are 1000 of them. they are just a series of numbers.

how do you tell apart which numbers belong to which partitions? well there’s a convention: you decide that the first 10 of those numbers can be a label to indicate where partions start. e.g. your efi starts at #11 and ends at #61. root at starts at #61 and ends at #800. the label doesn’t say anything about the bytes after that.

how do you know which bytes in the partions make up files? similar sort of game with a file system within the bounds of that partion - you use some of the data as a label to find the file data. maybe bytes 71-78 indicate that you can find ~/.bash_histor at bytes 732-790.

what happened when you shrunk that root partions, is you changed that label at the beginning. your root partion, it says, now starts at byte #61 and goes to #300. any bytes after that, are fair game for a new partion and filesystem to overwrite.

the point of all this, is that so far all you’ve done is changed some labels. the bytes that make up your files are still on the disk, but perhaps not findable. however - because every process that writes to the disk will trust those labels, any operation you do to the disk, including mounting it has a chance to overwrite the data that makes up your files.

this means:

  • most of your files are probably recoverable
  • do not boot the operating system on that drive, or any other that will attempt to mount it, because you risk overwring data
  • before you start using any data recovery tools, make a copy of the raw bytes of the disk to a different disk, so that if the tools mess up you have an option to try again

ONLY after that is done, the first thing I’d try is setting that partion label back to what it used to say, 100gb… if you’re lucky, everything will just work. if you aren’t, tools like ‘photorec’ can crawl the raw bytes of the disk and try and output whatever files they find.

good luck!

permalink
report
reply
19 points

While I appreciate the jokes, this is the only comment I’ll upvote because this was a call for help and this one helps.

permalink
report
parent
reply
7 points

Yeah i remember now. I have to format the partitions to complete partitioning. Thanks for info

permalink
report
parent
reply
46 points

just restore the backup you made like reasonable people do

permalink
report
reply
37 points

What is a backup?

permalink
report
parent
reply
27 points

Is it that wierd little box thing that you have to take out of your smoke alarm to stop it beeping?

permalink
report
parent
reply
1 point

I hate smoke alarms, especially since I have Tinnitus. So indeed I throw those away.

permalink
report
parent
reply
4 points

But the backup is on the hard drive. /s (but also not necessarily)

permalink
report
parent
reply
41 points
*

Live boot and fsck

permalink
report
reply
14 points

Dude chill! There may be minors here.

permalink
report
parent
reply
12 points

Pretty much, and do copy the UUID

permalink
report
parent
reply
21 points
*

and do copy the UUID

Good theing they have a screenshot ;)

permalink
report
parent
reply
32 points
*

If there’s something really important on that disk, don’t do ANYTHING, just unplug it and hand it over to a data recovery company.

If there isn’t anything really important on there, go ahead and try and do it yourself.

Paying $100 to a data recovery company can save you a ton of headaches if it has the only copy of your thesis on there and you mess it up trying to fix things yourself.

permalink
report
reply
18 points

If you create an image of the disk in the current state from a live boot or an other machine. You can try fixing it without having to risk making things worse

permalink
report
parent
reply
11 points

Also, work off of the copy. Never touch the source.

permalink
report
parent
reply
6 points

Where is data recovery $100? In my country, data recovery is like $1000 USD to look at your drive, and then they tell you how much they can recover and a full quote.

permalink
report
parent
reply
0 points

Depends on what they actually need to do. When it’s a drive that’s working and they just have to image it and run some recovery software it should be pretty cheap.

Clean room repair of dead hard disks is a different story.

permalink
report
parent
reply
30 points
*

There’s something to know in the future, which others don’t seem to have mentioned. Resizing a partition is 2 steps: resizing the filesystem, and resizing the partition.

When shrinking, you first resize the filesystem, and with this you make sure that the filesystem does not want to use data outside of the wanted shrinked size. If that not possible because you don’t have enough free space, the shrink operation should tell that. After shrinking is done, you can continue with changing the partition table, to actually resize the partition.

When expanding you first expand the partition (so that the fs will have room to expand to), and then expand the filesystem.

If you’re familiar with partitioning from the tools of microsoft windows, it’s disk manager does the 2 steps without you noticing. This is just how most graphical partition managers work.
But it’s important to be aware that the partition and the filesystem is not one and the same object. The filesystem resides in the partition like your feet does in your shoes, and the beginning of the partition helps for the system to find the beginning of the file system, which must end at the partition’s end (or before that, but that’s not efficient).

If you prefer graphical partition managers (I do too, it’s much easier), Linux has a few of them. I recommend you to use GParted. It’s a Linux based pendrive-bootable partition editor. They have an official live image, but I would recommend using the SystemRescue system (a live system too), which includes that and many other tools.
In this case, that the problem had already happened, it may or may not be easier to use this.

permalink
report
reply
3 points

Excellent explanation - I might use your “feet in shoes” analogy in the future

GParted has solved so many things over the years… my data, my reputation… maybe even my job on 1 occasion.

permalink
report
parent
reply
3 points

Instructions unclear, toes sticking out front of shoes.

permalink
report
parent
reply

Linux

!linux@lemmy.ml

Create post

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word “Linux” in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

  • Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
  • No misinformation
  • No NSFW content
  • No hate speech, bigotry, etc

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

Community stats

  • 9.8K

    Monthly active users

  • 5.8K

    Posts

  • 162K

    Comments