ipfs/kubo · error
%s: %w
Error message
%s: %w
What it means
'ipfs files read': mfs.Lookup of the given path inside the MFS root failed, and the error is wrapped with the path for context. The underlying %w is typically 'no link named ...' (missing entry) or 'invalid path', so the named file does not exist in the files API namespace.
Source
Thrown at core/commands/files.go:846
},
Options: []cmds.Option{
cmds.Int64Option(filesOffsetOptionName, "o", "Byte offset to begin reading from."),
cmds.Int64Option(filesCountOptionName, "n", "Maximum number of bytes to read."),
},
Run: func(req *cmds.Request, res cmds.ResponseEmitter, env cmds.Environment) error {
nd, err := cmdenv.GetNode(env)
if err != nil {
return err
}
path, err := checkPath(req.Arguments[0])
if err != nil {
return err
}
fsn, err := mfs.Lookup(nd.FilesRoot, path)
if err != nil {
return fmt.Errorf("%s: %w", path, err)
}
fi, ok := fsn.(*mfs.File)
if !ok {
return fmt.Errorf("%s was not a file", path)
}
rfd, err := fi.Open(req.Context, mfs.Flags{Read: true})
if err != nil {
return err
}
defer rfd.Close()
offset, _ := req.Options[offsetOptionName].(int64)
if offset < 0 {
return fmt.Errorf("cannot specify negative offset")
}View on GitHub (pinned to 329838acdf)
Solutions
- List the parent with 'ipfs files ls' to check the exact name
- Create the file first (e.g. 'ipfs files write --create')
- Fix typos or leading slash usage in the /ipfs-files path
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at core/commands/files.go:846 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of ipfs/kubo@329838acdf (2026-09-03).
Data as JSON: /api/errors/78ea57ee123a7bbc.
Report an issue: GitHub.