CN112269985B - Snapshot management method, device and storage medium - Google Patents

Snapshot management method, device and storage medium Download PDF

Info

Publication number
CN112269985B
CN112269985B CN202011186709.7A CN202011186709A CN112269985B CN 112269985 B CN112269985 B CN 112269985B CN 202011186709 A CN202011186709 A CN 202011186709A CN 112269985 B CN112269985 B CN 112269985B
Authority
CN
China
Prior art keywords
desktop
snapshot
instruction
snapshot management
terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011186709.7A
Other languages
Chinese (zh)
Other versions
CN112269985A (en
Inventor
李太新
杨峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN202011186709.7A priority Critical patent/CN112269985B/en
Publication of CN112269985A publication Critical patent/CN112269985A/en
Application granted granted Critical
Publication of CN112269985B publication Critical patent/CN112269985B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/543User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The application discloses a snapshot management method, a snapshot management device and a storage medium. The method comprises the following steps: monitoring a snapshot management instruction; when a snapshot management instruction is monitored, determining corresponding desktops of a plurality of desktops contained in a terminal by the snapshot management instruction; the system operation authorities corresponding to each desktop in a plurality of desktops contained in the terminal are the same or different; files under file directories corresponding to each desktop in the plurality of desktops are isolated based on the sandboxes; the snapshot comprises data obtained by backing up the data which needs to be backed up at a specific moment of the corresponding desktop; and executing the snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop.

Description

Snapshot management method, device and storage medium
Technical Field
The present disclosure relates to the field of data protection technologies, and in particular, to a snapshot management method, a snapshot management device, and a storage medium.
Background
A snapshot is a complete, available copy of a given data set that includes an image of the corresponding data at some point in time (i.e., the point in time at which the copy began). The snapshot may be a copy of the data it represents, or may be a copy of the data. In the related art, the snapshot can be used for online data backup, and when the storage device has application failure or file damage, the snapshot can be used for rapid data recovery, so that the data can be recovered to a state of a certain available time point.
However, in the related art, a method of managing the snapshot is still required to be optimized.
Disclosure of Invention
In order to solve the related technical problems, embodiments of the present application provide a snapshot management method, a snapshot management device, and a storage medium.
The technical scheme of the embodiment of the application is realized as follows:
the embodiment of the application provides a snapshot management method, which is applied to a terminal and comprises the following steps:
monitoring a snapshot management instruction; when a snapshot management instruction is monitored, determining corresponding desktops of a plurality of desktops contained in the terminal by the snapshot management instruction; the system operation authorities corresponding to each desktop in a plurality of desktops contained in the terminal are the same or different; files under file directories corresponding to each desktop in the plurality of desktops are isolated based on the sandboxes; the snapshot comprises data obtained by backing up the data which needs to be backed up at a specific moment of the corresponding desktop;
and executing the snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop.
In the above-described arrangement, the first and second embodiments,
monitoring a first instruction; the first instruction is used for triggering the creation operation of the snapshot; the first instruction corresponds to a first desktop;
generating a first backup data packet by using all files currently stored under a file directory corresponding to the first desktop and all registry information currently corresponding to the first desktop;
And storing the first backup data packet to a first snapshot file storage path.
In the above-described arrangement, the first and second embodiments,
monitoring a second instruction; the second instruction is used for triggering the deleting operation of the snapshot; the second instruction corresponds to a second desktop;
and deleting the second backup data packet corresponding to the second instruction from at least one backup data packet stored in the second snapshot file storage path corresponding to the second desktop.
In the above-described arrangement, the first and second embodiments,
monitoring a third instruction; the third instruction is used for triggering snapshot-based data recovery operation; the third instruction corresponds to a third desktop;
determining a third backup data packet corresponding to the third instruction from at least one backup data packet stored in a third snapshot file storage path corresponding to the third desktop;
and carrying out data coverage processing on all files currently stored under the file directory corresponding to the third desktop and all registry information currently corresponding to the third desktop by utilizing the data contained in the third backup data packet.
In the above scheme, the method further comprises:
determining whether a first type of file currently stored under a file directory corresponding to the third desktop needs to be backed up or not based on the third backup data packet;
Under the condition that the first type of files currently stored under the file directory corresponding to the third desktop are required to be backed up, presenting backup prompt information;
and under the condition that the first type of files currently stored in the file directory corresponding to the third desktop do not need to be backed up, carrying out data coverage processing on all the files currently stored in the file directory corresponding to the third desktop and all the registry information currently corresponding to the third desktop by utilizing the data contained in the third backup data packet.
In the above scheme, the method further comprises:
detecting whether the terminal starts a sandbox mode or not to obtain a detection result; the sandbox mode is used for providing a function of switching between the first type desktop and the second type desktop; the system operation authority corresponding to the first type desktop is lower than the system operation authority corresponding to the second type desktop; the current desktop of the terminal is the first type desktop; the desktop corresponding to the snapshot management instruction is the second type desktop;
executing snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop under the condition that the detection result characterizes that the terminal does not start the sandbox mode;
And under the condition that the detection result characterizes that the terminal starts the sandbox mode, prohibiting the execution of the snapshot management operation corresponding to the snapshot management instruction.
In the above scheme, the method further comprises:
and prohibiting the terminal from starting the sandbox mode in the process of executing the snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop.
The embodiment of the application also provides a snapshot management device, which comprises:
the monitoring unit is used for monitoring the snapshot management instruction; when a snapshot management instruction is monitored, determining corresponding desktops of a plurality of desktops contained in a terminal by the snapshot management instruction; the system operation authorities corresponding to each desktop in a plurality of desktops contained in the terminal are the same or different; files under file directories corresponding to each desktop in the plurality of desktops are isolated based on the sandboxes; the snapshot comprises data obtained by backing up the data which needs to be backed up at a specific moment of the corresponding desktop;
and the processing unit is used for executing the snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop.
The embodiment of the application also provides a snapshot management device, which comprises: a processor and a memory for storing a computer program capable of running on the processor; wherein,
The processor is configured to perform the steps of any of the methods described above when the computer program is run.
The present application also provides a storage medium storing a computer program which, when executed by a processor, implements the steps of any of the methods described above.
The snapshot management method, the snapshot management device and the storage medium provided by the embodiment of the application monitor the snapshot management instruction; when a snapshot management instruction is monitored, determining corresponding desktops of a plurality of desktops contained in a terminal by the snapshot management instruction; the system operation authorities corresponding to each desktop in a plurality of desktops contained in the terminal are the same or different; files under file directories corresponding to each desktop in the plurality of desktops are isolated based on the sandboxes; the snapshot comprises data obtained by backing up the data which needs to be backed up at a specific moment of the corresponding desktop; and executing the snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop. According to the scheme, the snapshot management instruction aiming at any desktop in the desktops can be monitored under the scene that files under the file directories corresponding to the desktops with different authorities contained in the user terminal are isolated based on the sandboxes, and the snapshot management operation corresponding to the snapshot management instruction is executed aiming at the corresponding desktop.
Drawings
FIG. 1 is a flow chart of a snapshot management method according to an embodiment of the present application;
fig. 2 is a schematic view of an application scenario in an embodiment of the present application;
FIG. 3 is a diagram of a User Interface (UI) according to an embodiment of the present application;
FIG. 4 is a schematic structural diagram of a snapshot management device according to an embodiment of the application of the present application;
FIG. 5 is a schematic flow chart of creating a snapshot according to an embodiment of the application;
FIG. 6 is a flowchart of data recovery using snapshots according to an embodiment of the application;
FIG. 7 is a flowchart of deleting a snapshot according to an embodiment of the present application;
FIG. 8 is a schematic flow chart of a snapshot management device according to an embodiment of the present application;
fig. 9 is a schematic hardware structure of a snapshot management device according to an embodiment of the present application.
Detailed Description
The technical scheme of the present application is further described in detail below with reference to the accompanying drawings and examples.
In the related art, snapshot management is generally implemented based on a virtual environment isolated from a host system, such as a virtual machine. Specifically, snapshot management of the virtual machine can be realized based on a virtual disk and a virtual machine memory in a virtual machine system environment which is completely isolated from the host system, and a snapshot is made of a state of the virtual machine at a specific moment, wherein the made snapshot can comprise the states of the virtual disk, the virtual machine memory and a software running environment at the corresponding moment; and, any snapshot can be utilized to restore the state of the virtual machine to the state of the corresponding specific moment.
However, in the snapshot management method based on the virtual machine, depending on the implementation environment completely isolated from the host system, the host system and the virtual machine system cannot perform snapshot management with each other, and the user operation is complicated; in addition, in the snapshot management method based on the virtual machine, an incremental backup mode is generally adopted, when a user needs to delete one snapshot, the virtual machine system needs to merge the deleted snapshot into other snapshots, and the computing resources of the virtual machine system are occupied, so that the performance of the virtual machine system is reduced, the problem that the virtual machine system is blocked and does not respond possibly occurs, and the user experience is poor.
Based on this, in various embodiments of the present application, in a scenario where files under file directories corresponding to multiple desktops with different permissions included in a user terminal are isolated based on sandboxes, snapshot management instructions for any desktop of the multiple desktops are monitored, and snapshot management operations corresponding to the snapshot management instructions are executed for the corresponding desktops, so that snapshots corresponding to each desktop of the multiple desktops included in the user terminal can be managed, which is convenient for user operations and improves user experience.
In addition, various embodiments of the method and the system are realized based on the multi-desktop form of the terminal, and a user can directly realize the switching of working scenes through desktop switching, namely, a recovery and protection function of data is provided for user data on the premise that the user does not need to change the using habit of the user to the terminal, so that the user can manage the corresponding snapshot of any desktop according to the self requirement, the abnormal conditions of mistakenly deleting files or the desktop being infected by viruses and the like are easily solved, and the loss of the user is reduced to the minimum, thereby improving the user experience.
In addition, when the user manages the snapshots of the corresponding desktop, the related data of the corresponding desktop at a specific moment can be fully backed up, so that a plurality of snapshot files corresponding to the corresponding desktop are mutually independent, and the integrity of other snapshot files is not affected by deleting any snapshot file, so that the deleted snapshots are not required to be combined into other snapshots when the snapshots are deleted, the occupation of computing resources of a central processing unit (CPU, central Processing Unit) is avoided, the performance reduction of the CPU is further avoided, the fluency of the terminal operation environment when the user uses the terminal is ensured, and the user experience is further improved.
The embodiment of the application provides a snapshot management method, which is applied to a terminal, as shown in fig. 1, and comprises the following steps:
step 101: monitoring a snapshot management instruction; when a snapshot management instruction is monitored, determining corresponding desktops of a plurality of desktops contained in the terminal by the snapshot management instruction;
here, the system operation authority corresponding to each desktop in the plurality of desktops contained in the terminal is the same or different; files under file directories corresponding to each desktop in the plurality of desktops are isolated based on the sandboxes; the snapshot comprises data obtained by backing up the data which needs to be backed up at a specific moment of the corresponding desktop;
Step 102: and executing the snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop.
Here, it should be noted that the terminal may be any electronic device having a multi-desktop configuration, such as a PC, a mobile phone, etc.; the PC may include a desktop computer, a notebook computer, a tablet computer, etc.
Specifically, in various embodiments of the present application, each desktop in the plurality of desktops included in the terminal corresponds to a virtual working space, the plurality of desktops use the same physical disk, a use area of each desktop is not divided on the disk, and when a user operates on the corresponding desktop, a picture presented by the terminal is the working space corresponding to the corresponding desktop. In addition, the working spaces corresponding to the desktops are isolated by utilizing sandboxes based on unified endpoint management (UEM, unified Endpoint Management), namely, the desktops are subjected to process isolation, file isolation, network isolation, registry isolation, clipboard isolation, service isolation and the like based on the sandboxes, so that the safety of user data is improved.
In practical application, a user may set, according to a requirement, system operation permissions corresponding to each desktop in a plurality of desktops included in the terminal, and as shown in fig. 2, for example, the user may set three desktops in the terminal 200: desktop A, desktop B and desktop C, wherein desktop A can have the authority to log in the intranet of the first enterprise, but does not have the authority to browse the common webpage; desktop B can have the right of browsing common web pages, but does not have the right of logging in the intranet of the first enterprise; the desktop C can have the playing authority of video and audio, but does not have the authority of logging in the intranet of the first enterprise and the authority of browsing the common webpage; the taskbar 201 of each desktop of the plurality of desktops may include a desktop switch button 202, and a user may implement a desktop switch, such as desktop a to desktop C, desktop C to desktop B, etc., through the desktop switch button 202. Of course, the user may grade the system operation rights corresponding to each desktop in the plurality of desktops included in the terminal according to the needs, so that the user cannot open or edit the files under the file directory corresponding to the desktop with the higher level of system operation rights through the desktop with the lower level of system operation rights. For example, the user may set the desktop a and the desktop D as office desktops, where the desktop D has the authority to log in the intranet of the second enterprise, but does not have the authority to browse the common web page, and set the system operation authority corresponding to the desktop a and the desktop D as one level; meanwhile, the desktop B, the desktop C and the desktop E are set as personal desktops, the desktop E has the authority of browsing common webpages but does not have the authority of logging in the intranet of a second enterprise, and the system operation authorities corresponding to the desktop B, the desktop C and the desktop E are set as secondary; and isolating the process corresponding to the office desktop from the process corresponding to the personal desktop based on the sandbox, so that the user cannot open or edit the files under the file directories corresponding to the desktop A and the desktop D through the desktop B, the desktop C and the desktop E.
The working spaces corresponding to the desktop B, the desktop C and the desktop E may be collectively referred to as a personal domain, the working spaces corresponding to the desktop a and the desktop D may be collectively referred to as a security domain, the personal domain and the security domain may have the same usage mode (such as a file storage mode) (i.e. the original file storage mode of the terminal itself), and the user cannot perceive the difference between using the personal domain and using the security domain, so that the user does not need to change the usage habit of the user; the personal domain and the security domain can directly access the disk file of the terminal and can realize isolation based on file redirection, but the files before and after redirection are stored on the same disk (namely the disk currently set by the terminal), the personal domain can not access and use the file of the security domain, and the security domain can access and use the file of the personal domain, so that the user is not required to copy the file, and the operation is simple and convenient.
In actual Application, the snapshot management method provided by the embodiment of the Application can be realized through an Application program (APP) installed on the terminal, and at this time, when the terminal monitors the operation of triggering the snapshot management process of the UI of the user aiming at the APP, the monitoring of the snapshot management instruction can be determined; for example, as shown in fig. 3, a snapshot management list may be presented on a UI of an APP (hereinafter referred to as APP for short in the description), function buttons of "create snapshot", "snapshot restore (refer to restoring data by snapshot)" and "delete snapshot" are provided, a desktop selection box and a snapshot remark information input box are provided for a user, and when any function button of "create snapshot", "snapshot restore" and "delete snapshot" is detected, it may be determined that a snapshot management instruction is detected, and at the same time, a desktop selected by the user through the desktop selection box may be determined as a corresponding desktop of a plurality of desktops included in the terminal by the snapshot management instruction, and when the snapshot is created, text input by the user in the snapshot remark information input box is stored as remark information corresponding to the corresponding snapshot, where the remark information corresponding to the corresponding snapshot may be input by the user according to a requirement, for example, for a specific use of the corresponding snapshot.
In actual application, the monitored snapshot management instructions may be used to trigger a snapshot creation operation.
Based on this, in an embodiment, the monitoring the snapshot management instruction may include:
monitoring a first instruction; the first instruction is used for triggering the creation operation of the snapshot; the first instruction corresponds to a first desktop;
the executing the snapshot management operation corresponding to the snapshot management instruction for the determined desktop may include:
generating a first backup data packet by using all files currently stored under a file directory corresponding to the first desktop and all registry information currently corresponding to the first desktop;
and storing the first backup data packet to a first snapshot file storage path.
Here, all files currently stored under the file directory corresponding to the first desktop and all registry information currently corresponding to the first desktop may be understood as all files stored under the file directory corresponding to the first desktop at a first time and all registry information corresponding to the first desktop at the first time, where the first time is when the first instruction is detected, and the first backup data packet is a snapshot file of the first desktop at the first time.
In actual application, the first backup data packet may further include first configuration information; the first configuration information may include a snapshot file name, a desktop identifier corresponding to the snapshot, a snapshot creation time (i.e., the first time), a snapshot file storage path (i.e., the first snapshot file storage path), and remark information added by a user (such as a snapshot description added by the user when creating the snapshot), and so on. The storage format of the first configuration information may be set according to requirements, for example, in order to facilitate writing and reading, the first configuration information may be stored in a JavaScript Object Notation (JSON, javaScript Object notification) format.
In actual application, the first snapshot file storage path can be preset according to requirements; the setting may also be made by the user when the APP selects to create a snapshot of the first desktop at the first moment. Specifically, the APP may present a snapshot list corresponding to each desktop in the plurality of desktops, where the list may include configuration information corresponding to each snapshot (i.e., a snapshot file name, a desktop identifier corresponding to the snapshot, a snapshot creation time, a snapshot file storage path, remark information added by a user, and the like); when the APP selects to create the snapshot, a desktop can be selected from a plurality of desktops contained in the terminal, remark information of the corresponding snapshot is filled in, after the terminal monitors operation of the user, all files currently stored under a file directory corresponding to the corresponding desktop and all registry information currently corresponding to the corresponding desktop can be utilized to generate a backup data packet, the generated backup data packet further comprises configuration information of the corresponding snapshot, the generated backup data packet is stored in a corresponding snapshot file storage path, snapshot creation operation is completed, and then the APP can update the configuration information of the corresponding snapshot to a snapshot list corresponding to the corresponding desktop. Of course, the terminal may also store and maintain a snapshot list corresponding to each desktop in the plurality of desktops in a preset storage path.
In actual application, the monitored snapshot management instruction may be used to trigger a snapshot deletion operation.
Based on this, in an embodiment, the monitoring the snapshot management instruction may include:
monitoring a second instruction; the second instruction is used for triggering the deleting operation of the snapshot; the second instruction corresponds to a second desktop;
the executing the snapshot management operation corresponding to the snapshot management instruction for the determined desktop may include:
and deleting the second backup data packet corresponding to the second instruction from at least one backup data packet stored in the second snapshot file storage path corresponding to the second desktop.
Specifically, in actual application, as described above, the APP may present a snapshot list corresponding to each desktop in the plurality of desktops, the user may select a snapshot to be deleted from the snapshot list corresponding to the corresponding desktop, after the terminal monitors the operation of deleting the snapshot by the user, the terminal may determine, based on the operation of the user, the desktop and the data packet corresponding to the snapshot to be deleted by the user, and delete the corresponding data packet from at least one backup data packet stored in the storage path of the snapshot file corresponding to the corresponding desktop. Here, the snapshot storage paths corresponding to each desktop in the plurality of desktops included in the terminal may be the same or different, that is, the second snapshot file storage path may be preset according to requirements, or may be set by a user through an APP, where the second snapshot file storage path may be the same or different from the first snapshot file storage path.
In practical application, since the snapshots comprise all files stored at a specific moment under the file directory corresponding to the corresponding desktop and all registry information corresponding to the first desktop at the specific moment, that is, each snapshot adopts a full backup mode, no dependence is generated among the snapshots corresponding to each desktop, any snapshot can be directly deleted without influencing the integrity of other snapshots, snapshot merging or other time-consuming operations are not needed, the occupation of the computing resources of a terminal CPU is avoided, the performance reduction of the CPU is further avoided, the smoothness of the terminal running environment when a user uses the terminal is ensured, and the user experience is further improved.
In actual use, the monitored snapshot management instructions may be used to trigger a snapshot-based data recovery operation.
Based on this, in an embodiment, the monitoring the snapshot management instruction may include:
monitoring a third instruction; the third instruction is used for triggering snapshot-based data recovery operation; the third instruction corresponds to a third desktop;
the executing the snapshot management operation corresponding to the snapshot management instruction for the determined desktop may include:
determining a third backup data packet corresponding to the third instruction from at least one backup data packet stored in a third snapshot file storage path corresponding to the third desktop;
And carrying out data coverage processing on all files currently stored under the file directory corresponding to the third desktop and all registry information currently corresponding to the third desktop by utilizing the data contained in the third backup data packet.
Here, performing data coverage processing on all the files currently stored under the file directory corresponding to the third desktop and all the registry information currently corresponding to the third desktop may be understood as a state when the third desktop is restored to a third time, where the third time is a time when the snapshot corresponding to the third backup data packet is created.
Specifically, in actual application, as described above, the APP may present a snapshot list corresponding to each desktop in the plurality of desktops, the user may select a snapshot that wants to perform data recovery from the snapshot list corresponding to the corresponding desktop, after detecting that the user selects the snapshot and penalizes an operation of a data recovery process, the terminal may determine, based on the operation of the user, a desktop and a data packet corresponding to the snapshot that the user wants to perform data recovery, and obtain a corresponding data packet from at least one backup data packet stored in a snapshot file storage path corresponding to the corresponding desktop, decompress the corresponding data packet (may decompress the corresponding data packet to a cache), and cover a file obtained after decompression to a file directory and a registry corresponding to the corresponding desktop. Here, the snapshot storage paths corresponding to each desktop in the plurality of desktops included in the terminal may be the same or different, that is, the third snapshot file storage path may be preset according to requirements, or may be set by a user through an APP, and the third snapshot file storage path may be the same or different from the first snapshot file storage path and the second snapshot file storage path.
In practical application, after the user creates the snapshot of the third desktop at the third moment to obtain the third backup data packet, the user may edit some important files under the file directory corresponding to the third desktop, and when the user needs to restore the third desktop to the state at the third moment, the user may still need to keep the edited important files, but if the data included in the third backup data packet is directly utilized to perform data coverage processing on all the files currently stored under the file directory corresponding to the third desktop and all the registry information currently corresponding to the third desktop, the user needs to be prompted to backup the important files before the user uses the third backup data packet to restore the data, so as to avoid data loss.
Based on this, in an embodiment, the method may further include:
determining whether a first type of file currently stored under a file directory corresponding to the third desktop needs to be backed up or not based on the third backup data packet;
under the condition that the first type of files currently stored under the file directory corresponding to the third desktop are required to be backed up, presenting backup prompt information;
And under the condition that the first type of files currently stored in the file directory corresponding to the third desktop do not need to be backed up, carrying out data coverage processing on all the files currently stored in the file directory corresponding to the third desktop and all the registry information currently corresponding to the third desktop by utilizing the data contained in the third backup data packet.
Here, the user may pre-configure the name and/or the storage path of the first type of file (i.e., the name and/or the storage path of the important file) according to the need, after determining the third backup data packet corresponding to the third instruction from at least one backup data packet stored in the third snapshot file storage path corresponding to the third desktop, may first determine whether to backup the first type of file based on the third backup data packet and the pre-configured name and/or storage path information of the first type of file (for example, detect whether there is an editing operation for the first type of file after the third backup data packet is generated, determine that the first type of file needs to be backed up when the editing operation for the first type of file is detected, determine that the first type of file does not need to be backed up when the editing operation for the first type of file is not detected, and reuse the third backup data packet to backup the first type of file currently stored under the corresponding to the third desktop when the first type of file is determined that the first type of file is not needed, and then all the corresponding data of the third desktop corresponding to the current table is processed by all the data records included in the corresponding to the third desktop; under the condition that the first type of files currently stored under the file directory corresponding to the third desktop are required to be backed up, the terminal can present backup prompt information, such as prompting a user to backup important files through an APP, so as to avoid the user from losing data, and after the user finishes backing up the first type of data, data contained in the third backup data packet are utilized to perform data coverage processing on all files currently stored under the file directory corresponding to the third desktop and all registry information currently corresponding to the third desktop.
In practical application, in order to avoid conflict between editing operation performed by a user on a corresponding desktop by the user on a file directory corresponding to the corresponding desktop and snapshot management operation on the corresponding desktop, before the snapshot management operation is performed, it may be determined that the terminal cannot perform switching operation between desktops, and it is determined that the current desktop is not the desktop corresponding to the snapshot management operation, so that smoothness of snapshot management of multiple desktops by the user through the terminal can be improved, and user experience is improved.
Based on this, in an embodiment, the method may further include:
detecting whether the terminal starts a sandbox mode or not to obtain a detection result; the sandbox mode is used for providing a function of switching between the first type desktop and the second type desktop; the system operation authority corresponding to the first type desktop is lower than the system operation authority corresponding to the second type desktop; the current desktop of the terminal is the first type desktop; the desktop corresponding to the snapshot management instruction is the second type desktop;
executing snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop under the condition that the detection result characterizes that the terminal does not start the sandbox mode;
And under the condition that the detection result characterizes that the terminal starts the sandbox mode, prohibiting the execution of the snapshot management operation corresponding to the snapshot management instruction.
In actual application, a mode of detecting whether the sandbox mode is started by the terminal can be set according to needs, for example, whether a preset sandbox environment is running or not can be detected, if the sandbox environment is determined to be running, the terminal can be determined to start the sandbox mode, and if the sandbox environment is determined to not be running, the terminal can be determined to not start the sandbox mode.
Here, after the detection result indicates that the terminal starts the sandbox mode and prohibits execution of the snapshot management operation corresponding to the snapshot management instruction, a prompt message for closing the sandbox mode may be presented, so that a user may manually close the sandbox mode, and after the sandbox mode is closed, the third instruction is triggered again; of course, the terminal can also automatically close the sandbox mode, and the mode of closing the sandbox mode can be preset according to the requirement.
In practical application, in order to further avoid conflict between editing operation performed by a user on a file directory corresponding to a corresponding desktop by the corresponding desktop and snapshot management operation on the corresponding desktop, the terminal can be prevented from starting the sandbox mode in the process of executing the corresponding snapshot management operation by the terminal, so that smoothness of snapshot management of multiple desktops by the user through the terminal can be further improved, and user experience is improved.
Based on this, in an embodiment, the method may further include:
and prohibiting the terminal from starting the sandbox mode in the process of executing the snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop.
Of course, after the snapshot management operation corresponding to the snapshot management instruction is executed, the terminal may restart the sandbox mode automatically, or present a prompt message for starting the sandbox mode, so that the user may start the sandbox mode manually.
According to the snapshot management method provided by the embodiment of the application, when the snapshot management instruction is monitored, corresponding desktops of a plurality of desktops contained in the terminal are determined; the system operation authorities corresponding to each desktop in a plurality of desktops contained in the terminal are the same or different; files under file directories corresponding to each desktop in the plurality of desktops are isolated based on the sandboxes; the snapshot comprises data obtained by backing up the data which needs to be backed up at a specific moment of the corresponding desktop; and executing the snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop. According to the scheme, the snapshot management instruction aiming at any desktop in the desktops can be monitored under the scene that files under the file directories corresponding to the desktops with different authorities contained in the user terminal are isolated based on the sandboxes, and the snapshot management operation corresponding to the snapshot management instruction is executed aiming at the corresponding desktop.
In addition, various embodiments of the method and the system are realized based on the multi-desktop form of the terminal, and a user can directly realize the switching of working scenes through desktop switching, namely, a recovery and protection function of data is provided for user data on the premise that the user does not need to change the using habit of the user to the terminal, so that the user can manage the corresponding snapshot of any desktop according to the self requirement, the abnormal conditions of mistakenly deleting files or the desktop being infected by viruses and the like are easily solved, and the loss of the user is reduced to the minimum, thereby improving the user experience.
In addition, when the user manages the snapshots of the corresponding desktop, the related data of the corresponding desktop at a specific moment can be fully backed up, so that a plurality of snapshot files corresponding to the corresponding desktop are mutually independent, and the integrity of other snapshot files is not affected by deleting any snapshot file, so that the deleted snapshots are not required to be combined into other snapshots when the snapshots are deleted, the occupation of the computing resources of a CPU (central processing unit) is avoided, the performance reduction of the CPU is further avoided, the smoothness of the terminal operation environment when the user uses the terminal is ensured, and the user experience is further improved.
The present application is described in further detail below in connection with examples of application.
The embodiment of the application provides a snapshot management device, which is arranged on a terminal, as shown in fig. 4, and the device comprises: a sandbox snapshot manager 401, a user interaction window module 402, a sandbox operation detection module 403, a snapshot creation module 404, a snapshot restoration module 405, and a snapshot deletion module 406; wherein,
the sandbox snapshot manager 401 is configured to monitor a snapshot management instruction triggered by a user's operation on the user interaction window module 402, detect, through the sandbox operation detection module 403, whether the terminal meets a condition for executing a snapshot management operation, and execute, when determining that the terminal meets the condition for executing the snapshot management operation, a corresponding snapshot management operation through the snapshot creation module 404, the snapshot restoration module 405 or the snapshot deletion module 406;
the user interaction window module 402 is configured to provide a man-machine interaction interface, including a snapshot creation button, a snapshot restoration button, a snapshot deletion button, and other functional buttons, where a user may operate the corresponding buttons according to a requirement to trigger a corresponding snapshot management process; in practical application, different implementation modes can be adopted based on the operating system of the terminal, and in the case that the operating system of the terminal is a Microsoft Windows (Microsoft Windows) operating system, for example, a World Wide Web (English can be expressed as World Wide Web, simply called Web) page implementation can be adopted;
The sandbox operation detection module 403 is configured to detect whether the terminal meets a condition for executing a snapshot management operation;
the snapshot creating module 404 is configured to perform an operation of creating a snapshot;
the snapshot restoring module 405 is configured to perform an operation of restoring data by using a snapshot;
the snapshot deleting module 406 is configured to execute an operation of deleting a snapshot.
The snapshot management method provided by the application embodiment is described in detail below based on the above snapshot management device.
In this application embodiment, the terminal includes a personal desktop and a secure desktop, where the personal desktop may be referred to as a personal domain, corresponds to an original operating environment of an operating system of the terminal (i.e., a virtual working space corresponding to the personal desktop), and the secure desktop may be referred to as a secure domain, and corresponds to a user operating environment after a sandbox mode is switched to the sandbox environment (i.e., a virtual working space corresponding to the secure desktop) when the sandbox mode is opened, where the sandbox mode may be understood as limiting execution environments of program behaviors corresponding to the personal desktop and the secure desktop according to a preset security policy, that is, the personal desktop and the secure desktop implement process isolation, file isolation, network isolation, registry isolation, clipboard isolation, service isolation, and so on based on the sandbox mode, so as to improve security of user data.
In this application embodiment, snapshot management is only performed on the secure desktop, where the snapshot is a copy of a sandbox file (i.e., all files under a file directory corresponding to the secure desktop) and registry information (may include related information of a sandbox component) corresponding to the secure desktop at a certain time point; the storage catalog of the sandboxed file is generated based on a file redirection mode, namely, when a user edits the file on the security desk, the file of a specified path is redirected to other positions through a file filtering driver. In the case that the disk of the terminal includes a plurality of partitions, each partition may correspond to a redirection directory corresponding to at least one secure desktop.
The snapshot management method provided by the present application embodiment is described in detail below based on an application scenario in which a snapshot is created, data recovery is performed using the snapshot, and the snapshot is deleted.
Wherein, as shown in fig. 5, the process of creating the snapshot may include the steps of:
step 501: receiving an instruction for creating a snapshot; step 502 is then performed.
Specifically, the user selects the function button for creating the snapshot in the user interaction window module 402, and the sandboxed snapshot manager 401 determines that an instruction for creating the snapshot is received after monitoring that the user selects the function button for creating the snapshot.
In practical application, the user may also fill in remark information of the snapshot to be built, such as information of the function of the snapshot, in the user interaction window module 402.
Step 502: detecting whether a sandbox environment is running; if yes, go to step 503; if not, go to step 504.
Specifically, the sandbox operation detection module 403 detects whether the sandbox environment is running, and if it is determined that the sandbox environment is running, prompts the user to close the sandbox environment through the user interaction window module 402.
In practical application, the sandbox operation detection module 403 may also detect whether the sandbox environment is running, and notify the user interaction window module 402 to ash the snapshot creation and recovery function key under the condition that the sandbox environment is determined to be running, so that the snapshot creation and recovery function is not provided under the condition that the sandbox environment is running. Here, since there may be a case where a sandbox file is occupied under the sandbox environment operation, file backup and restoration may be abnormal and failed due to the case of the file occupancy.
Step 503: the user is prompted to exit the sandboxed environment and after determining that the user exits the sandboxed environment, step 504 is performed.
Specifically, the user interaction window module 402 prompts the user to exit the sandbox environment, and after determining that the user exits the sandbox environment, notifies the snapshot creation module 404 to create a snapshot through the sandbox snapshot manager 401.
In actual application, if the sandbox environment is running, the task bar of the terminal can be provided with a desktop switching icon, the tray can be provided with a sandbox tray icon, and the user can exit the sandbox environment through a right key menu of the sandbox tray icon. Here, the security domain does not display a sandbox tray icon, and the user cannot exit the sandbox environment in the security domain, so that the occupation of sandbox files is avoided; at the same time, the start-up sandbox environment is also only able to operate in the personal domain.
Step 504: creating a snapshot; step 505 is then performed.
Specifically, the snapshot creating module 404 traverses all the related information of the sandboxed file storage directory and the registry in the disk, packages and backs up after unified arrangement, and stores the information in a preset backup file directory; specifically, the snapshot creation module 404 may traverse all the partitions of the hard disk under the current system, find the redirection directory of the sandboxed file, mark the redirection directory under each partition, copy the redirection directory to the backup directory in the cache, copy the related information of the sandbox registry to the backup directory in the cache, complete the full backup of the sandboxed file, and delete the backup directory in the cache after the backup is completed (i.e., after the backup file is stored in the preset backup file directory).
In practical applications, the snapshot may be produced according to requirements, for example, by using a video copy service (VSS, volume Shadow Copy Service).
In actual application, in the backup process, the terminal is forbidden to start the sandbox environment until snapshot creation is completed.
Step 505: and adding the configuration information corresponding to the created snapshot to the snapshot management list.
Specifically, the snapshot creation module 404 sorts the information such as the creation time, the snapshot file name, the file location, and the remark information of the currently created snapshot into a required format (for example, JSON format) and stores the information to the terminal; at the same time, the user interaction window module 402 updates the snapshot management list presented for the user.
In practical application, as shown in fig. 6, the process of data recovery using the snapshot may include the following steps:
step 601: receiving an instruction for data recovery by using the snapshot; step 602 is then performed.
Specifically, the user selects a snapshot that wants to perform data recovery from the snapshot management list presented by the user interaction window module 402, and selects a function button for performing data recovery by using the snapshot, and the sandbox snapshot manager 401 determines that an instruction for performing data recovery by using the snapshot is received after monitoring that the user selects the function button for performing data recovery by using the snapshot.
Step 602: detecting whether a sandbox environment is running; if yes, go to step 603; if not, go to step 604.
Specifically, the sandbox operation detection module 403 detects whether the sandbox environment is running, and if it is determined that the sandbox environment is running, prompts the user to close the sandbox environment through the user interaction window module 402.
In practical application, the sandbox operation detection module 403 may also detect whether the sandbox environment is running, and notify the user interaction window module 402 to ash the snapshot creation and recovery function key under the condition that the sandbox environment is determined to be running, so that the snapshot creation and recovery function is not provided under the condition that the sandbox environment is running. Here, since there may be a case where a sandbox file is occupied under the sandbox environment operation, file backup and restoration may be abnormal and failed due to the case of the file occupancy.
Step 603: the user is prompted to exit the sandboxed environment and after determining that the user exits the sandboxed environment, step 604 is performed.
Specifically, the user interaction window module 402 prompts the user to exit the sandbox environment, and after determining that the user exits the sandbox environment, notifies the snapshot restoring module 405 through the sandbox snapshot manager 401 to determine whether the backup of the important file is required.
In actual application, if the sandbox environment is running, the task bar of the terminal can be provided with a desktop switching icon, the tray can be provided with a sandbox tray icon, and the user can exit the sandbox environment through a right key menu of the sandbox tray icon. Here, the security domain does not display a sandbox tray icon, and the user cannot exit the sandbox environment in the security domain, so that the occupation of sandbox files is avoided; at the same time, the start-up sandbox environment is also only able to operate in the personal domain.
Step 604: determining whether backup of important files is needed; if necessary, go to step 605; if not, step 606 is performed.
Specifically, the sandbox snapshot manager 401 detects whether the snapshot corresponding to the snapshot data recovery instruction is edited by the user after the snapshot is established, if so, it may determine that the user needs to perform backup of the important file, and prompt the user to perform backup of the important file through the user interaction window module 402. Here, since the data recovery will restore all files in the sandbox, in order to avoid the loss caused by data loss, the user needs to be reminded of selecting whether to backup or not
Step 605: the user is prompted to backup the important files and after determining that the user has completed backup of the important files, step 606 is performed.
Specifically, the user is prompted to backup important files through the user interaction window module 402,
and upon determining that the user exits the sandboxed environment, notifying the snapshot restoration module 405, via the sandboxed snapshot manager 401, to utilize the snapshot to perform data restoration.
Step 606: data recovery is performed using the snapshot.
Specifically, the snapshot restoration module 405 overlays the sandboxed file with the snapshot selected by the user.
In practical application, as shown in fig. 7, the process of deleting the snapshot may include the following steps:
step 701: an instruction to delete the snapshot is received, after which step 702 is performed.
Specifically, the user selects the snapshot to be deleted from the snapshot management list presented by the user interaction window module 402, and selects a function button for deleting the snapshot, and the sandbox snapshot manager 401 determines that an instruction for deleting the snapshot is received when monitoring that the user selects the function button for deleting the snapshot
Step 702, deleting the corresponding snapshot.
Specifically, the snapshot deleting module 406 deletes the snapshot corresponding to the received instruction for deleting the snapshot.
Here, since the disk space occupies a large area after the snapshot files are increased, unnecessary snapshots need to be cleaned in time. When deleting the snapshot, selecting the corresponding snapshot to delete, and deleting the corresponding snapshot file at the back end to remove the snapshot from the snapshot management list. Since the snapshot is deleted only by deleting the corresponding file, the terminal has no high CPU consumption in a short time. Specifically, because the snapshots adopt a full backup mode, no dependence is generated between each snapshot, a certain snapshot can be deleted directly, and merging or other time-consuming operations are not needed.
According to the snapshot management method and the snapshot management device, under the scene that files under file directories corresponding to a plurality of desktops with different authorities contained in a user terminal are isolated based on a sandbox, snapshot management instructions for any desktop in the plurality of desktops are monitored, and snapshot management operation corresponding to the snapshot management instructions is executed for the corresponding desktop, so that the snapshot corresponding to each desktop in the plurality of desktops contained in the user terminal can be managed, user operation is facilitated, and user experience is improved.
In addition, various embodiments of the method and the system are realized based on the multi-desktop form of the terminal, and a user can directly realize the switching of working scenes through desktop switching, namely, a recovery and protection function of data is provided for user data on the premise that the user does not need to change the using habit of the user to the terminal, so that the user can manage the corresponding snapshot of any desktop according to the self requirement, the abnormal conditions of mistakenly deleting files or the desktop being infected by viruses and the like are easily solved, and the loss of the user is reduced to the minimum, thereby improving the user experience.
In addition, when the user manages the snapshots of the corresponding desktop, the related data of the corresponding desktop at a specific moment can be fully backed up, so that a plurality of snapshot files corresponding to the corresponding desktop are mutually independent, and the integrity of other snapshot files is not affected by deleting any snapshot file, so that the deleted snapshots are not required to be combined into other snapshots when the snapshots are deleted, the occupation of the computing resources of a CPU (central processing unit) is avoided, the performance reduction of the CPU is further avoided, the smoothness of the terminal operation environment when the user uses the terminal is ensured, and the user experience is further improved.
In order to implement the method of the embodiment of the present application, the embodiment of the present application further provides a snapshot management device, which is disposed on a terminal, as shown in fig. 8, and the device includes:
a monitoring unit 801, configured to monitor a snapshot management instruction; when a snapshot management instruction is monitored, determining corresponding desktops of a plurality of desktops contained in the terminal by the snapshot management instruction; the system operation authorities corresponding to each desktop in a plurality of desktops contained in the terminal are the same or different; files under file directories corresponding to each desktop in the plurality of desktops are isolated based on the sandboxes; the snapshot comprises data obtained by backing up the data which needs to be backed up at a specific moment of the corresponding desktop;
and the processing unit 802 is configured to execute, for the determined desktop, a snapshot management operation corresponding to the snapshot management instruction.
Wherein, in an embodiment, the monitoring unit 801 is configured to monitor a first instruction; the first instruction is used for triggering the creation operation of the snapshot; the first instruction corresponds to a first desktop;
the processing unit 802 is configured to:
generating a first backup data packet by using all files currently stored under a file directory corresponding to the first desktop and all registry information currently corresponding to the first desktop;
And storing the first backup data packet to a first snapshot file storage path.
In an embodiment, the monitoring unit 801 is configured to monitor a second instruction; the second instruction is used for triggering the deleting operation of the snapshot; the second instruction corresponds to a second desktop;
the processing unit 802 is configured to delete a second backup data packet corresponding to the second instruction from at least one backup data packet stored in a second snapshot file storage path corresponding to the second desktop.
In an embodiment, the monitoring unit 801 is configured to monitor a third instruction; the third instruction is used for triggering snapshot-based data recovery operation; the third instruction corresponds to a third desktop;
the processing unit 802 is configured to:
determining a third backup data packet corresponding to the third instruction from at least one backup data packet stored in a third snapshot file storage path corresponding to the third desktop;
and carrying out data coverage processing on all files currently stored under the file directory corresponding to the third desktop and all registry information currently corresponding to the third desktop by utilizing the data contained in the third backup data packet.
In an embodiment, the processing unit 802 is configured to determine, based on the third backup data packet, whether a first type of file currently stored in a file directory corresponding to the third desktop needs to be backed up;
The snapshot management device further includes:
the visualization unit is used for presenting backup prompt information under the condition that the current stored first-class files under the file directory corresponding to the third desktop are required to be backed up;
the processing unit 802 is further configured to, when it is determined that the backup of the first type of file currently stored in the file directory corresponding to the third desktop is not required, perform data coverage processing on all files currently stored in the file directory corresponding to the third desktop and all registry information currently corresponding to the third desktop by using data included in the third backup data packet.
In an embodiment, the snapshot management device further includes:
the detection unit is used for detecting whether the terminal starts a sandbox mode or not to obtain a detection result; the sandbox mode is used for providing a function of switching between the first type desktop and the second type desktop; the system operation authority corresponding to the first type desktop is lower than the system operation authority corresponding to the second type desktop; the current desktop of the terminal is the first type desktop; the desktop corresponding to the snapshot management instruction is the second type desktop;
The processing unit 802 is configured to:
executing snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop under the condition that the detection result characterizes that the terminal does not start the sandbox mode;
and under the condition that the detection result characterizes that the terminal starts the sandbox mode, prohibiting the execution of the snapshot management operation corresponding to the snapshot management instruction.
In an embodiment, the processing unit 802 is configured to prohibit the terminal from starting the sandbox mode in a process of executing, for the determined desktop, a snapshot management operation corresponding to the snapshot management instruction.
Here, the function of the monitoring unit 801 corresponds to a part of the function of the sandbox snapshot manager 401 in the application embodiment of the present application; the functions of the processing unit 802 are equivalent to other functions of the sandbox snapshot manager 401 and functions of the snapshot creating module 404, the snapshot restoring module 405 and the snapshot deleting module 406 in the application embodiment of the present application; the function of the visualization unit is equivalent to the function of the user interaction window module 402 in the application embodiment of the present application; the function of the detection unit is equivalent to that of the sandbox operation detection module 403 in the application embodiment of the present application.
In practical application, the monitoring unit 801 and the visualization unit may be implemented by a processor in the snapshot management device in combination with a communication interface; the processing unit 802 and the detection unit may be implemented by a processor in a snapshot management device.
It should be noted that: the snapshot management device provided in the above embodiment only uses the division of each program module to illustrate when managing the snapshot, and in practical application, the processing allocation may be completed by different program modules according to needs, that is, the internal structure of the snapshot management device is divided into different program modules to complete all or part of the processing described above. In addition, the snapshot management device and the snapshot management method embodiment provided in the foregoing embodiments belong to the same concept, and specific implementation processes thereof are detailed in the method embodiment and are not repeated herein.
Based on the hardware implementation of the program modules, and in order to implement the method of the embodiments of the present application, the embodiments of the present application further provide a snapshot management device, which is disposed on a terminal, as shown in fig. 9, a snapshot management device 900 includes:
the communication interface 901 can perform information interaction with other electronic devices;
The processor 902 is connected with the communication interface 901 to realize information interaction with other electronic devices, and is used for executing the methods provided by one or more of the technical schemes when running the computer program;
a memory 903 for storing a computer program capable of running on the processor 902.
Specifically, the processor 902 is configured to perform the following operations:
monitoring a snapshot management instruction; when a snapshot management instruction is monitored, determining corresponding desktops of a plurality of desktops contained in the terminal by the snapshot management instruction; the system operation authorities corresponding to each desktop in a plurality of desktops contained in the terminal are the same or different; files under file directories corresponding to each desktop in the plurality of desktops are isolated based on the sandboxes; the snapshot comprises data obtained by backing up the data which needs to be backed up at a specific moment of the corresponding desktop;
and executing the snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop.
Wherein, in one embodiment, the processor 902 is configured to perform the following operations:
monitoring a first instruction; the first instruction is used for triggering the creation operation of the snapshot; the first instruction corresponds to a first desktop;
Generating a first backup data packet by using all files currently stored under a file directory corresponding to the first desktop and all registry information currently corresponding to the first desktop;
and storing the first backup data packet to a first snapshot file storage path.
In one embodiment, the processor 902 is configured to perform the following operations:
monitoring a second instruction; the second instruction is used for triggering the deleting operation of the snapshot; the second instruction corresponds to a second desktop;
and deleting the second backup data packet corresponding to the second instruction from at least one backup data packet stored in the second snapshot file storage path corresponding to the second desktop.
In one embodiment, the processor 902 is configured to perform the following operations:
monitoring a third instruction; the third instruction is used for triggering snapshot-based data recovery operation; the third instruction corresponds to a third desktop;
determining a third backup data packet corresponding to the third instruction from at least one backup data packet stored in a third snapshot file storage path corresponding to the third desktop;
and carrying out data coverage processing on all files currently stored under the file directory corresponding to the third desktop and all registry information currently corresponding to the third desktop by utilizing the data contained in the third backup data packet.
In one embodiment, the processor 902 is configured to perform the following operations:
determining whether a first type of file currently stored under a file directory corresponding to the third desktop needs to be backed up or not based on the third backup data packet;
under the condition that the first type of files currently stored under the file directory corresponding to the third desktop are required to be backed up, presenting backup prompt information;
and under the condition that the first type of files currently stored in the file directory corresponding to the third desktop do not need to be backed up, carrying out data coverage processing on all the files currently stored in the file directory corresponding to the third desktop and all the registry information currently corresponding to the third desktop by utilizing the data contained in the third backup data packet.
In one embodiment, the processor 902 is configured to perform the following operations:
detecting whether the terminal starts a sandbox mode or not to obtain a detection result; the sandbox mode is used for providing a function of switching between the first type desktop and the second type desktop; the system operation authority corresponding to the first type desktop is lower than the system operation authority corresponding to the second type desktop; the current desktop of the terminal is the first type desktop; the desktop corresponding to the snapshot management instruction is the second type desktop;
Executing snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop under the condition that the detection result characterizes that the terminal does not start the sandbox mode;
and under the condition that the detection result characterizes that the terminal starts the sandbox mode, prohibiting the execution of the snapshot management operation corresponding to the snapshot management instruction.
In one embodiment, the processor 902 is configured to perform the following operations:
and prohibiting the terminal from starting the sandbox mode in the process of executing the snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop.
It should be noted that: the details of the process of the processor 902 for executing the above operations are detailed in the method embodiment, and are not described herein.
Of course, in actual practice, the various components in snapshot management device 900 are coupled together via bus system 904. It is appreciated that the bus system 904 is used to facilitate connected communications between these components. The bus system 904 includes a power bus, a control bus, and a status signal bus in addition to a data bus. But for clarity of illustration, the various buses are labeled as bus system 904 in fig. 9.
The memory 903 in the embodiment of the present application is used to store various types of data to support the operation of the snapshot management device 900. Examples of such data include: any computer program for operating on snapshot management device 900.
The methods disclosed in the embodiments of the present application may be applied to the processor 902 or implemented by the processor 902. The processor 902 may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the methods described above may be performed by integrated logic circuitry in hardware or instructions in software in the processor 902. The processor 902 may be a general purpose processor, a digital signal processor (DSP, digital Signal Processor), or other programmable logic device, discrete gate or transistor logic device, discrete hardware components, or the like. The processor 902 may implement or perform the methods, steps, and logic blocks disclosed in embodiments of the present application. The general purpose processor may be a microprocessor or any conventional processor or the like. The steps of the method disclosed in the embodiments of the present application may be directly embodied in a hardware decoding processor or implemented by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium in the memory 903. The processor 902 reads information in the memory 903 and, in combination with its hardware, performs the steps of the method described above.
In an exemplary embodiment, snapshot management device 900 can be implemented by one or more application specific integrated circuits (ASIC, application Specific Integrated Circuit), DSPs, programmable logic devices (PLD, programmable Logic Device), complex programmable logic devices (CPLD, complex Programmable Logic Device), field programmable gate arrays (FPGA, field-Programmable Gate Array), general purpose processors, controllers, microcontrollers (MCU, micro Controller Unit), microprocessors (Microprocessor), or other electronic components for performing the aforementioned methods.
It is appreciated that the memory 903 of the embodiments of the present application may be either volatile memory or nonvolatile memory, and may include both volatile and nonvolatile memory. Wherein the nonvolatile Memory may be Read Only Memory (ROM), programmable Read Only Memory (PROM, programmable Read-Only Memory), erasable programmable Read Only Memory (EPROM, erasable Programmable Read-Only Memory), electrically erasable programmable Read Only Memory (EEPROM, electrically Erasable Programmable Read-Only Memory), magnetic random access Memory (FRAM, ferromagnetic random access Memory), flash Memory (Flash Memory), magnetic surface Memory, optical disk, or compact disk Read Only Memory (CD-ROM, compact Disc Read-Only Memory); the magnetic surface memory may be a disk memory or a tape memory. The volatile memory may be random access memory (RAM, random Access Memory), which acts as external cache memory. By way of example, and not limitation, many forms of RAM are available, such as static random access memory (SRAM, static Random Access Memory), synchronous static random access memory (SSRAM, synchronous Static Random Access Memory), dynamic random access memory (DRAM, dynamic Random Access Memory), synchronous dynamic random access memory (SDRAM, synchronous Dynamic Random Access Memory), double data rate synchronous dynamic random access memory (ddr SDRAM, double Data Rate Synchronous Dynamic Random Access Memory), enhanced synchronous dynamic random access memory (ESDRAM, enhanced Synchronous Dynamic Random Access Memory), synchronous link dynamic random access memory (SLDRAM, syncLink Dynamic Random Access Memory), direct memory bus random access memory (DRRAM, direct Rambus Random Access Memory). The memory described in embodiments of the present application is intended to comprise, without being limited to, these and any other suitable types of memory.
In an exemplary embodiment, the present application further provides a storage medium, i.e. a computer storage medium, in particular a computer readable storage medium, for example comprising a memory 903 storing a computer program executable by the processor 902 of the snapshot management device 900 to perform the steps of the foregoing method. The computer readable storage medium may be FRAM, ROM, PROM, EPROM, EEPROM, flash Memory, magnetic surface Memory, optical disk, or CD-ROM.
It should be noted that: "first," "second," etc. are used to distinguish similar objects and not necessarily to describe a particular order or sequence.
In addition, the embodiments described in the present application may be arbitrarily combined without any collision.
The foregoing description is only of the preferred embodiments of the present application and is not intended to limit the scope of the present application.

Claims (9)

1. The snapshot management method is characterized by being applied to a terminal and comprising the following steps of:
monitoring a snapshot management instruction; when a snapshot management instruction is monitored, determining corresponding desktops of a plurality of desktops contained in the terminal by the snapshot management instruction; the system operation authorities corresponding to each desktop in a plurality of desktops contained in the terminal are the same or different; files under file directories corresponding to each desktop in the plurality of desktops are isolated based on the sandboxes; the snapshot comprises data obtained by backing up the data which needs to be backed up at a specific moment of the corresponding desktop;
Detecting whether the terminal starts a sandbox mode or not to obtain a detection result; the sandbox mode is used for providing a function of switching between the first type desktop and the second type desktop; the system operation authority corresponding to the first type desktop is lower than the system operation authority corresponding to the second type desktop; the current desktop of the terminal is the first type desktop; the desktop corresponding to the snapshot management instruction is the second type desktop;
executing snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop under the condition that the detection result characterizes that the terminal does not start the sandbox mode;
and under the condition that the detection result characterizes that the terminal starts the sandbox mode, prohibiting the execution of the snapshot management operation corresponding to the snapshot management instruction.
2. The method of claim 1, wherein the step of determining the position of the substrate comprises,
monitoring a first instruction; the first instruction is used for triggering the creation operation of the snapshot; the first instruction corresponds to a first desktop;
generating a first backup data packet by using all files currently stored under a file directory corresponding to the first desktop and all registry information currently corresponding to the first desktop;
And storing the first backup data packet to a first snapshot file storage path.
3. The method of claim 1, wherein the step of determining the position of the substrate comprises,
monitoring a second instruction; the second instruction is used for triggering the deleting operation of the snapshot; the second instruction corresponds to a second desktop;
and deleting the second backup data packet corresponding to the second instruction from at least one backup data packet stored in the second snapshot file storage path corresponding to the second desktop.
4. The method of claim 1, wherein the step of determining the position of the substrate comprises,
monitoring a third instruction; the third instruction is used for triggering snapshot-based data recovery operation; the third instruction corresponds to a third desktop;
determining a third backup data packet corresponding to the third instruction from at least one backup data packet stored in a third snapshot file storage path corresponding to the third desktop;
and carrying out data coverage processing on all files currently stored under the file directory corresponding to the third desktop and all registry information currently corresponding to the third desktop by utilizing the data contained in the third backup data packet.
5. The method according to claim 4, wherein the method further comprises:
Determining whether a first type of file currently stored under a file directory corresponding to the third desktop needs to be backed up or not based on the third backup data packet;
under the condition that the first type of files currently stored under the file directory corresponding to the third desktop are required to be backed up, presenting backup prompt information;
and under the condition that the first type of files currently stored in the file directory corresponding to the third desktop do not need to be backed up, carrying out data coverage processing on all the files currently stored in the file directory corresponding to the third desktop and all the registry information currently corresponding to the third desktop by utilizing the data contained in the third backup data packet.
6. The method according to claim 1, wherein the method further comprises:
and prohibiting the terminal from starting the sandbox mode in the process of executing the snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop.
7. A snapshot management device, comprising:
the monitoring unit is used for monitoring the snapshot management instruction; when a snapshot management instruction is monitored, determining corresponding desktops of a plurality of desktops contained in a terminal by the snapshot management instruction; the system operation authorities corresponding to each desktop in a plurality of desktops contained in the terminal are the same or different; files under file directories corresponding to each desktop in the plurality of desktops are isolated based on the sandboxes; the snapshot comprises data obtained by backing up the data which needs to be backed up at a specific moment of the corresponding desktop;
The processing unit is used for detecting whether the terminal starts a sandbox mode or not to obtain a detection result; the sandbox mode is used for providing a function of switching between the first type desktop and the second type desktop; the system operation authority corresponding to the first type desktop is lower than the system operation authority corresponding to the second type desktop; the current desktop of the terminal is the first type desktop; the desktop corresponding to the snapshot management instruction is the second type desktop; executing snapshot management operation corresponding to the snapshot management instruction aiming at the determined desktop under the condition that the detection result characterizes that the terminal does not start the sandbox mode; and under the condition that the detection result characterizes that the terminal starts the sandbox mode, prohibiting the execution of the snapshot management operation corresponding to the snapshot management instruction.
8. A snapshot management device, comprising: a processor and a memory for storing a computer program capable of running on the processor; wherein,
the processor being adapted to perform the steps of the method of any of claims 1 to 6 when the computer program is run.
9. A storage medium storing a computer program, which when executed by a processor performs the steps of the method of any one of claims 1 to 6.
CN202011186709.7A 2020-10-29 2020-10-29 Snapshot management method, device and storage medium Active CN112269985B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011186709.7A CN112269985B (en) 2020-10-29 2020-10-29 Snapshot management method, device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011186709.7A CN112269985B (en) 2020-10-29 2020-10-29 Snapshot management method, device and storage medium

Publications (2)

Publication Number Publication Date
CN112269985A CN112269985A (en) 2021-01-26
CN112269985B true CN112269985B (en) 2023-12-29

Family

ID=74344321

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011186709.7A Active CN112269985B (en) 2020-10-29 2020-10-29 Snapshot management method, device and storage medium

Country Status (1)

Country Link
CN (1) CN112269985B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102609498A (en) * 2012-01-31 2012-07-25 深圳市深信服电子科技有限公司 Method and device for reusing data of safety desktop
US8707299B1 (en) * 2008-11-14 2014-04-22 Symantec Corporation Method and apparatus for preserving virtual desktops for e-discovery through an agent-less solution
WO2016061520A1 (en) * 2014-10-16 2016-04-21 Amazon Technologies, Inc. On-demand delivery of applications to virtual desktops
CN106445350A (en) * 2016-11-01 2017-02-22 惠州Tcl移动通信有限公司 Desktop icon loading method and system based on mobile terminal
US10691547B1 (en) * 2016-03-21 2020-06-23 EMC IP Holding Company LLC Backup and recovery for end-user computing in virtual desktop environments

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8364643B2 (en) * 2007-12-04 2013-01-29 Red Hat Israel, Ltd. Method and system thereof for restoring virtual desktops

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8707299B1 (en) * 2008-11-14 2014-04-22 Symantec Corporation Method and apparatus for preserving virtual desktops for e-discovery through an agent-less solution
CN102609498A (en) * 2012-01-31 2012-07-25 深圳市深信服电子科技有限公司 Method and device for reusing data of safety desktop
WO2016061520A1 (en) * 2014-10-16 2016-04-21 Amazon Technologies, Inc. On-demand delivery of applications to virtual desktops
US10691547B1 (en) * 2016-03-21 2020-06-23 EMC IP Holding Company LLC Backup and recovery for end-user computing in virtual desktop environments
CN106445350A (en) * 2016-11-01 2017-02-22 惠州Tcl移动通信有限公司 Desktop icon loading method and system based on mobile terminal

Also Published As

Publication number Publication date
CN112269985A (en) 2021-01-26

Similar Documents

Publication Publication Date Title
US9465518B1 (en) Method and system for creation, analysis and navigation of virtual snapshots
CN101641681B (en) Self-managed processing device
CN103365744B (en) For mixing the system and method for metadata image backup and backup
US9805041B2 (en) Policy based layered filesystem management
US9218499B2 (en) Data duplication using a shared storage area with improved access control
EP1879109A1 (en) Information processing device, program, and storage medium
CN105320578A (en) Method and apparatus for backing up and recovering APP
US20030046605A1 (en) Data protection system and method regarding the same
CN100447765C (en) Mapping method for mobile memory device
JP4516598B2 (en) How to control document copying
CN106502830B (en) A kind of method for restoring system backup based on Btrfs file system
CN112269985B (en) Snapshot management method, device and storage medium
CN112269679A (en) Database persistence method, system, equipment and storage medium of cloud platform
CN110727545B (en) Power-down protection method based on joint file system
CN113885948B (en) Management method and device for windows mirror image layering
JP4698724B2 (en) Program execution device
KR100458550B1 (en) Data delete detecting and recovering system and methode thereof
US11269739B2 (en) Method and system for managing backup data
US7493459B2 (en) Method of enhancing system performance applicable of computer system capable of executing snapshot process
CN114840362A (en) Cloud host recovery method, device and medium
JP2008226196A (en) Information leakage preventive device
CN112434285B (en) File management method, device, electronic equipment and storage medium
US10853201B1 (en) Backing up files storing virtual machines
CN116662076B (en) Data protection method, device, equipment and storage medium
CN114528147B (en) Fingerprint deleting method and device in dual operating system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant