


Data goes from deleting the database to running away and then rolling it back to recover.

1. epel warehouse installation
If the epel warehouse is added to our source, we can install it directly using the following command.
yum install extundelete -y
wget http://zy-res.oss-cn-hangzhou.aliyuncs.com/server/extundelete-0.2.4.tar.bz2
yum -y install bzip2 e2fsprogs-devel e2fsprogs gcc-c make
tar -xvjf extundelete-0.2.4.tar.bz2
cd extundelete-0.2.4
./configure
make && make install
Because my data path is relatively deep, we need to search step by step. We can first search from the root partition inode
extundelete /dev/sdb1 --inode 2
We will see the inode of the weapps directory,
extundelete /dev/sda5 --inode 24641537
We see the inode of the project,
extundelete /dev/sda5 --inode 24903688
We found the directory where the data was finally deleted upload
extundelete /dev/sda5 --inode 24904454
We can see the nominal Deleted, which is the data we want to restore.
Then we restore the specified directory, set the path with the current partition as the root partition, and mask the project name
Because the disk data has been read and written, the previous inodes of some files have been reallocated, causing some data to be unrecoverable. The data will eventually tell us how many files have not been restored, but we have recovered most of the data. This It's a very important thing.
Let’s check the restored data. The software will generate a directory RECOVERED_FILES in the current directory, which contains the data we recovered.
To restore all data, you can use the command
extundelete /dev/sda5 --restore-all
Instructions
extundelete --help
Among them, the parameters (options) are:
--version, -[vV], displays the software version number.
--help, displays software help information.
--superblock, displays superblock information.
--journal, display log information.
--after dtime, time parameter, indicates files or directories that will be deleted after a certain period of time.
--before dtime, time parameter, indicates files or directories that were deleted before a certain period of time.
Actions include:
--inode ino, displays information about node "ino".
--block blk, displays information about data block "blk".
--restore-inode ino[,ino,...], restore command parameter, means to restore the files of node "ino". The restored files will be automatically placed in the RESTORED_FILES folder in the current directory, using the node number as the extension. .
--restore-file 'path', restore command parameter, means that the file in the specified path will be restored and the restored file will be placed in the RECOVERED_FILES directory in the current directory.
--restore-files 'path', restore command parameter, means that all files listed in the path will be restored.
--restore-all, restore command parameter, indicates that all directories and files will be attempted to be restored.
-j journal means reading the extended journal from the named file.
-b blocknumber means using the previously backed up super block to open the file system. It is generally used to check whether the existing super block is the currently required file.
-B blocksize, opens the file system by specifying the data block size, generally used to view files whose size is already known.
After deleting the data, first unmount the disk or partition where the deleted data is located. If the system root partition is accidentally deleted, you need to enter single-user mode and mount the root partition in a read-only manner.
Reason: After the file is deleted, only the sector pointer in the inode node of the file is cleared. In fact, the file still exists on the disk. If the disk is mounted in read-write mode, these deleted data blocks may be After the system re-allocates and these data blocks are overwritten, the data is really lost, so mount it in a read-only manner to avoid data overwriting as much as possible.
The above is the detailed content of Data goes from deleting the database to running away and then rolling it back to recover.. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

VS Code system requirements: Operating system: Windows 10 and above, macOS 10.12 and above, Linux distribution processor: minimum 1.6 GHz, recommended 2.0 GHz and above memory: minimum 512 MB, recommended 4 GB and above storage space: minimum 250 MB, recommended 1 GB and above other requirements: stable network connection, Xorg/Wayland (Linux)

The reasons for the installation of VS Code extensions may be: network instability, insufficient permissions, system compatibility issues, VS Code version is too old, antivirus software or firewall interference. By checking network connections, permissions, log files, updating VS Code, disabling security software, and restarting VS Code or computers, you can gradually troubleshoot and resolve issues.

Although Notepad cannot run Java code directly, it can be achieved by using other tools: using the command line compiler (javac) to generate a bytecode file (filename.class). Use the Java interpreter (java) to interpret bytecode, execute the code, and output the result.

The five basic components of the Linux system are: 1. Kernel, 2. System library, 3. System utilities, 4. Graphical user interface, 5. Applications. The kernel manages hardware resources, the system library provides precompiled functions, system utilities are used for system management, the GUI provides visual interaction, and applications use these components to implement functions.

VS Code is available on Mac. It has powerful extensions, Git integration, terminal and debugger, and also offers a wealth of setup options. However, for particularly large projects or highly professional development, VS Code may have performance or functional limitations.

VS Code is the full name Visual Studio Code, which is a free and open source cross-platform code editor and development environment developed by Microsoft. It supports a wide range of programming languages and provides syntax highlighting, code automatic completion, code snippets and smart prompts to improve development efficiency. Through a rich extension ecosystem, users can add extensions to specific needs and languages, such as debuggers, code formatting tools, and Git integrations. VS Code also includes an intuitive debugger that helps quickly find and resolve bugs in your code.

Visual Studio Code (VSCode) is a cross-platform, open source and free code editor developed by Microsoft. It is known for its lightweight, scalability and support for a wide range of programming languages. To install VSCode, please visit the official website to download and run the installer. When using VSCode, you can create new projects, edit code, debug code, navigate projects, expand VSCode, and manage settings. VSCode is available for Windows, macOS, and Linux, supports multiple programming languages and provides various extensions through Marketplace. Its advantages include lightweight, scalability, extensive language support, rich features and version

To view the Git repository address, perform the following steps: 1. Open the command line and navigate to the repository directory; 2. Run the "git remote -v" command; 3. View the repository name in the output and its corresponding address.
