# US 11,907,178 B2 · System and method of presenting a hybrid cloud cache as a file system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,907,178 B2
- Document ID: US11907178B2
- Status: Granted
- Kind: B2
- Application number: 18/101,264
- Filed: 2023-01-25
- Published: 2024-01-04
- Granted: 2024-02-20
- Earliest claimed: 2020-06-03
- Assignees: Egnyte, Inc.
- Applicants: Egnyte, Inc.
- Inventors: Andrew Guerra; Ajay Salpekar; David Tang
- Web page: https://patentgrep.com/patent/US11907178B2

## CPC

- G06F 16/172: Caching, prefetching or hoarding of files
- G06F 16/196: {Specific adaptations of the file system to access devices and non-file objects via standard file system access operations, e.g. pseudo file systems (dedicated interfaces to storage systems G06F3/0601)}
- G06F 16/162: {Delete operations (erasing in storage systems G06F3/0652)}
- G06F 16/166: {File name conversion}
- G06F 16/168: {Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs (query results presentation G06F16/156)}
- G06F 16/176: Support for shared access to files; File sharing support
- G06F 16/182: Distributed file systems
- H04L 67/06: specially adapted for file transfer, e.g. file transfer protocol [FTP]
- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- H04L 67/1097: for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
- H04L 67/568: Storing data temporarily at an intermediate stage, e.g. caching
- H04L 67/5682: Policies or rules for updating, deleting or replacing the stored data
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 67/1095: Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A system and methods for presenting a hybrid cloud cache as a file system. The system implements a set of standard file system command line interfaces that present the objects stored by the hybrid cloud cache to users of the system as if the users were viewing and interacting with a traditional file system. The system provides an interactive shell to the users to view the contents of the hybrid cloud cache. The system may be configured to operate on a live instance as well as on an on-disk structure of the hybrid cloud cache. The system may provide the ability to present partially cached cloud data as a file system via the interactive shell for the purposes of development, support, and troubleshooting.

## Claims

### Claim 1

A computing device, comprising:
an electronic processor or processors configured to execute an interactive shell at the computing device, the interactive shell in communication with a remote hybrid cloud cache;
a non-transitory data storage element;
a set of computer-executable instructions stored in the data storage element; and
a display coupled to the electronic processor or processors and configured to display the interactive shell;
wherein when the processor or processors execute the set of computer-executable instructions cause the processor or processors to perform operations comprising:
implementing one or more command line interfaces presented through the interactive shell, wherein each of the command line interfaces corresponds to an operation executable on the hybrid cloud cache or on an object in the hybrid cloud cache;
presenting a set of objects in the interactive shell;
receiving a selection of an object from the set of objects;
receiving an input of a command line interface to the interactive shell; and
executing the operation corresponding to the input command line interface on the selected object at the hybrid cloud cache.

### Claim 2 (depends on 1)

The computing device of claim 1, wherein the set of computer-executable instructions further comprise computer-executable instructions that cause the processor or processors to present cloud objects cached in the hybrid cloud cache on the display as part of an interactive shell file system.

### Claim 3 (depends on 1)

The computing device of claim 1, wherein the operation is one of:
execution of a cache flush;
viewing objects that cannot be pushed to cloud;
uploading a file;
viewing cache metadata;
creating a folder;
renaming a folder or file; and
deleting a folder or file.

### Claim 4 (depends on 1)

The computing device of claim 1, wherein the interactive shell remotely interacts with a live instance of the hybrid cloud cache.

### Claim 5 (depends on 1)

The computing device of claim 1, wherein the interactive shell operates on an on-disk structure of the hybrid cloud cache stored in a data element at a remote server computer.

### Claim 6 (depends on 1)

The computing device of claim 1, wherein the set of computer-executable instructions further comprise instructions that cause the processor or processors to enable a command to be executed via the interactive shell to determine whether the object has been uploaded to a cloud.

### Claim 7 (depends on 1)

The computing device of claim 1, wherein the set of computer-executable instructions further comprise instructions that cause the processor or processors to enable a command to be executed via the interactive shell to determine a location of the object.

### Claim 8 (depends on 1)

The computing device of claim 1, wherein the set of computer-executable instructions further cause the processor or processors to determine if the hybrid cloud cache is in an offline state or an online state when booting up the interactive shell.

### Claim 9 (depends on 1)

The computing device of claim 1, wherein the set of computer-executable instructions further cause the processor or processors to execute the interactive shell to determine that the hybrid cloud cache is authorized.

### Claim 10 (depends on 1)

The computing device of claim 1, wherein the set of computer-executable instructions further cause the processor or processors to execute the interactive shell to determine that the hybrid cloud cache is a current version of the hybrid cloud cache.

### Claim 11

A computer-implemented method, comprising:
executing an interactive shell at a computing device remote from a server computer engaging a hybrid cloud cache;
implementing one or more command line interfaces accessible by the interactive shell, wherein each of the command line interfaces corresponds to an operation that is operable on a hybrid cloud cache or on an object in the hybrid cloud cache;
presenting a set of objects at the interactive shell;
receiving a selection of an object from the set of objects;
receiving an input of a command line interface to the interactive shell; and
executing the operation corresponding to the input command line interface on the selected object.

### Claim 12 (depends on 11)

The method of claim 11, wherein the operation is one of:
execution of a cache flush;
viewing objects that cannot be pushed to cloud;
uploading a file;
viewing cache metadata;
creating a folder;
renaming a folder or file; and
deleting a folder or file.

### Claim 13 (depends on 11)

The method of claim 11, wherein the set of command line interfaces comprises one or more of pwd, cd, ls, stat, find, and get_version.

### Claim 14 (depends on 11)

The method of claim 11, further comprising determining that the hybrid cloud cache is in an offline state.

### Claim 15 (depends on 11)

The method of claim 11, further comprising determining that the hybrid cloud cache is properly authorized.

### Claim 16 (depends on 11)

The method of claim 11, further comprising:
executing a file system at the computing device; and
presenting cloud objects cached in the hybrid cloud cache as part of the file system.

### Claim 17 (depends on 11)

The method of claim 11, further comprising executing the interactive shell as an intermediary between contents of the hybrid cloud cache and a remote user computing device.

### Claim 18

A non-transitory data storage element including a set of computer-executable instructions, which when executed by an electronic processor or processors, cause the processor or processors to perform operations comprising:
implementing one or more command line interfaces presented through a local interactive shell, wherein each of the command line interfaces corresponds to an operation executable on a remote hybrid cloud cache or on an object in the hybrid cloud cache;
presenting a set of objects in the local interactive shell;
locally receiving a selection of an object from the set of objects;
locally receiving an input of a command line interface to the interactive shell; and
remotely executing the operation corresponding to the input command line interface on the selected object at the hybrid cloud cache.

### Claim 19 (depends on 18)

The non-transitory data storage element of claim 18, wherein the operation is one of the group composed of:
execution of a cache flush;
viewing objects that cannot be pushed to cloud;
uploading a file;
viewing cache metadata;
creating a folder;
renaming a folder or file; and
deleting a folder or file.

### Claim 20 (depends on 18)

The non-transitory data storage element of claim 18, wherein the interactive shell is instantiated locally in response to a remotely received request.
