-
Notifications
You must be signed in to change notification settings - Fork 1
Filer Commands and Operations
Bruce Wang edited this page Nov 6, 2019
·
4 revisions
Filer is similar to common file systems and people may ask for similar tools.
weed filer.copy
can copy one or a list of files or directories to filer.
// copy all go files under current directory to filer's /github/ folder.
// The directory structure is copied also.
> weed filer.copy -include *.go . http://localhost:8888/github/
...
Copy ./unmaintained/change_replication/change_replication.go => http://localhost:8888/github/./unmaintained/change_replication/change_replication.go
Copy ./unmaintained/fix_dat/fix_dat.go => http://localhost:8888/github/./unmaintained/fix_dat/fix_dat.go
Copy ./unmaintained/see_idx/see_idx.go => http://localhost:8888/github/./unmaintained/see_idx/see_idx.go
Copy ./weed/command/backup.go => http://localhost:8888/github/./weed/command/backup.go
Copy ./weed/command/benchmark.go => http://localhost:8888/github/./weed/command/benchmark.go
Copy ./weed/command/command.go => http://localhost:8888/github/./weed/command/command.go
Copy ./weed/command/compact.go => http://localhost:8888/github/./weed/command/compact.go
...
The above weed copy
command is very efficient. It will contact the master server for a fileId, and submit the file content to volume servers, then just create the entry on filer. Also, the file copying will also split large files into trunks automatically.
This put very little loads on filer and the master server. Data is only transmitted between the local machine and the volume server.
As mentioned above, the (path, fileId, fileSize) can be registered on filer with this gRPC call.
filer_pb.SeaweedFilerClient.CreateEntry()
The code example can be found in filer_copy.go file.
- Introduction
- API
- Configuration
- Filer
- Filer Stores
- Advanced Filer Configurations
- Cloud Drive
- AWS S3 API
- AWS IAM
- Replication and Backup
- Messaging
- Use Cases
- Operations
- Advanced
- Security
- Misc Use Case Examples