Merge pull request #3662 from bensmrs/nvram
Some checks are pending
Build / Build (${{ matrix.architecture }}) (amd64) (push) Waiting to run
Build / Build (${{ matrix.architecture }}) (arm64) (push) Waiting to run
Tests / Code (oldstable) (push) Waiting to run
Tests / Code (stable) (push) Waiting to run
Tests / Code (tip) (push) Waiting to run
Tests / System (btrfs, stable, ubuntu-24.04, cluster) (push) Waiting to run
Tests / System (btrfs, stable, ubuntu-24.04, standalone_storage) (push) Waiting to run
Tests / System (ceph, stable, ubuntu-24.04, cluster) (push) Waiting to run
Tests / System (ceph, stable, ubuntu-24.04, standalone_storage) (push) Waiting to run
Tests / System (dir, oldstable, ubuntu-24.04, cluster) (push) Waiting to run
Tests / System (dir, oldstable, ubuntu-24.04, standalone_container) (push) Waiting to run
Tests / System (dir, oldstable, ubuntu-24.04, standalone_core) (push) Waiting to run
Tests / System (dir, oldstable, ubuntu-24.04, standalone_network) (push) Waiting to run
Tests / System (dir, oldstable, ubuntu-24.04, standalone_storage) (push) Waiting to run
Tests / System (dir, oldstable, ubuntu-24.04-arm, cluster) (push) Waiting to run
Tests / System (dir, oldstable, ubuntu-24.04-arm, standalone_container) (push) Waiting to run
Tests / System (dir, oldstable, ubuntu-24.04-arm, standalone_core) (push) Waiting to run
Tests / System (dir, oldstable, ubuntu-24.04-arm, standalone_network) (push) Waiting to run
Tests / System (dir, oldstable, ubuntu-24.04-arm, standalone_storage) (push) Waiting to run
Tests / System (dir, stable, ubuntu-24.04, cluster) (push) Waiting to run
Tests / System (dir, stable, ubuntu-24.04, standalone_container) (push) Waiting to run
Tests / System (dir, stable, ubuntu-24.04, standalone_core) (push) Waiting to run
Tests / System (dir, stable, ubuntu-24.04, standalone_network) (push) Waiting to run
Tests / System (dir, stable, ubuntu-24.04, standalone_storage) (push) Waiting to run
Tests / System (dir, stable, ubuntu-24.04-arm, cluster) (push) Waiting to run
Tests / System (dir, stable, ubuntu-24.04-arm, standalone_container) (push) Waiting to run
Tests / System (dir, stable, ubuntu-24.04-arm, standalone_core) (push) Waiting to run
Tests / System (dir, stable, ubuntu-24.04-arm, standalone_network) (push) Waiting to run
Tests / System (dir, stable, ubuntu-24.04-arm, standalone_storage) (push) Waiting to run
Tests / System (dir, tip, ubuntu-24.04, cluster) (push) Waiting to run
Tests / System (dir, tip, ubuntu-24.04, standalone_container) (push) Waiting to run
Tests / System (dir, tip, ubuntu-24.04, standalone_core) (push) Waiting to run
Tests / System (dir, tip, ubuntu-24.04, standalone_network) (push) Waiting to run
Tests / System (dir, tip, ubuntu-24.04, standalone_storage) (push) Waiting to run
Tests / System (dir, tip, ubuntu-24.04-arm, cluster) (push) Waiting to run
Tests / System (dir, tip, ubuntu-24.04-arm, standalone_container) (push) Waiting to run
Tests / System (dir, tip, ubuntu-24.04-arm, standalone_core) (push) Waiting to run
Tests / System (dir, tip, ubuntu-24.04-arm, standalone_network) (push) Waiting to run
Tests / System (dir, tip, ubuntu-24.04-arm, standalone_storage) (push) Waiting to run
Tests / System (linstor, stable, ubuntu-24.04, cluster) (push) Waiting to run
Tests / System (linstor, stable, ubuntu-24.04, standalone_storage) (push) Waiting to run
Tests / System (lvm, stable, ubuntu-24.04, cluster) (push) Waiting to run
Tests / System (lvm, stable, ubuntu-24.04, standalone_storage) (push) Waiting to run
Tests / System (random, stable, ubuntu-24.04, cluster) (push) Waiting to run
Tests / System (random, stable, ubuntu-24.04, standalone_storage) (push) Waiting to run
Tests / System (zfs, stable, ubuntu-24.04, cluster) (push) Waiting to run
Tests / System (zfs, stable, ubuntu-24.04, standalone_storage) (push) Waiting to run
Tests / Client (oldstable, macos-latest) (push) Waiting to run
Tests / Client (oldstable, ubuntu-latest) (push) Waiting to run
Tests / Client (oldstable, windows-latest) (push) Waiting to run
Tests / Client (stable, macos-latest) (push) Waiting to run
Tests / Client (stable, ubuntu-latest) (push) Waiting to run
Tests / Client (stable, windows-latest) (push) Waiting to run
Tests / Documentation (push) Waiting to run

Add NVRAM inspection
This commit is contained in:
Stéphane Graber 2026-07-22 21:34:09 -04:00 committed by GitHub
commit 704d863e52
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
42 changed files with 8309 additions and 1478 deletions

View File

@ -79,6 +79,10 @@ linters:
text: "avoid meaningless package names"
- path: internal/server/util/
text: "avoid meaningless package names"
- path: shared/uefi/guid.go
linters:
- revive
text: '^(var-naming|exported):'
paths:
- third_party$
- builtin$

View File

@ -3282,3 +3282,138 @@ func (r *ProtocolIncus) CreateInstanceBitmap(name string, bitmap api.StorageVolu
return nil
}
func (r *ProtocolIncus) getInstanceNVRAM(name string, guid string, varName string, accept string) (*http.Response, error) {
path, _, err := r.instanceTypeToPath(api.InstanceTypeVM)
if err != nil {
return nil, err
}
// Prepare the HTTP request
requestURL := fmt.Sprintf("%s/1.0%s/%s/nvram/%s/%s", r.httpBaseURL.String(), path, url.PathEscape(name), url.PathEscape(guid), url.PathEscape(varName))
requestURL, err = r.setQueryAttributes(requestURL)
if err != nil {
return nil, err
}
req, err := http.NewRequest("GET", requestURL, nil)
if err != nil {
return nil, err
}
req.Header.Set("Accept", accept)
// Send the request
resp, err := r.DoHTTP(req)
if err != nil {
return nil, err
}
// Check the return value for a cleaner error
if resp.StatusCode != http.StatusOK {
_, _, err := incusParseResponse(resp)
if err != nil {
return nil, err
}
}
return resp, nil
}
// GetInstanceNVRAM gets OVMF variables from an instance.
func (r *ProtocolIncus) GetInstanceNVRAM(name string) (map[string]map[string]*api.InstanceNVRAMVariable, error) {
if !r.HasExtension("instance_nvram") {
return nil, errors.New(`The server is missing the required "instance_nvram" API extension`)
}
vars := map[string]map[string]*api.InstanceNVRAMVariable{}
path, _, err := r.instanceTypeToPath(api.InstanceTypeVM)
if err != nil {
return nil, err
}
// Fetch the raw value.
_, err = r.queryStruct("GET", fmt.Sprintf("%s/%s/nvram?recursion=2", path, url.PathEscape(name)), nil, "", &vars)
if err != nil {
return nil, err
}
return vars, err
}
// GetInstanceNVRAMGUID gets namespaced OVMF variables from an instance.
func (r *ProtocolIncus) GetInstanceNVRAMGUID(name string, guid string) (map[string]*api.InstanceNVRAMVariable, error) {
if !r.HasExtension("instance_nvram") {
return nil, errors.New(`The server is missing the required "instance_nvram" API extension`)
}
vars := map[string]*api.InstanceNVRAMVariable{}
path, _, err := r.instanceTypeToPath(api.InstanceTypeVM)
if err != nil {
return nil, err
}
// Fetch the raw value.
_, err = r.queryStruct("GET", fmt.Sprintf("%s/%s/nvram/%s?recursion=1", path, url.PathEscape(name), url.PathEscape(guid)), nil, "", &vars)
if err != nil {
return nil, err
}
return vars, err
}
// GetRawInstanceNVRAMGUIDVar gets raw OVMF variables from an instance.
func (r *ProtocolIncus) GetRawInstanceNVRAMGUIDVar(name string, guid string, varName string) ([]byte, error) {
if !r.HasExtension("instance_nvram") {
return nil, errors.New(`The server is missing the required "instance_nvram" API extension`)
}
resp, err := r.getInstanceNVRAM(name, guid, varName, "application/octet-stream")
if err != nil {
return nil, err
}
return io.ReadAll(resp.Body)
}
// GetInstanceNVRAMGUIDVar gets interpreted OVMF variables from an instance.
func (r *ProtocolIncus) GetInstanceNVRAMGUIDVar(name string, guid string, varName string) (*api.InstanceNVRAMVariable, error) {
if !r.HasExtension("instance_nvram") {
return nil, errors.New(`The server is missing the required "instance_nvram" API extension`)
}
var v *api.InstanceNVRAMVariable
path, _, err := r.instanceTypeToPath(api.InstanceTypeVM)
if err != nil {
return nil, err
}
// Fetch the raw value.
_, err = r.queryStruct("GET", fmt.Sprintf("%s/%s/nvram/%s/%s?recursion=1", path, url.PathEscape(name), url.PathEscape(guid), url.PathEscape(varName)), nil, "", &v)
if err != nil {
return nil, err
}
return v, err
}
// DeleteInstanceNVRAMGUIDVar sets interpreted OVMF variables on an instance.
func (r *ProtocolIncus) DeleteInstanceNVRAMGUIDVar(name string, guid string, varName string) error {
if !r.HasExtension("instance_nvram") {
return errors.New(`The server is missing the required "instance_nvram" API extension`)
}
path, _, err := r.instanceTypeToPath(api.InstanceTypeVM)
if err != nil {
return err
}
// Send the request
_, _, err = r.query("DELETE", fmt.Sprintf("%s/%s/nvram/%s/%s", path, url.PathEscape(name), url.PathEscape(guid), url.PathEscape(varName)), nil, "")
if err != nil {
return err
}
return nil
}

View File

@ -178,6 +178,11 @@ type InstanceServer interface {
DeleteInstanceTemplateFile(name string, templateName string) (err error)
GetInstanceDebugMemory(name string, format string) (rc io.ReadCloser, err error)
GetInstanceNVRAM(name string) (vars map[string]map[string]*api.InstanceNVRAMVariable, err error)
GetInstanceNVRAMGUID(name string, guid string) (vars map[string]*api.InstanceNVRAMVariable, err error)
GetRawInstanceNVRAMGUIDVar(name string, guid string, varName string) (resp []byte, err error)
GetInstanceNVRAMGUIDVar(name string, guid string, varName string) (resp *api.InstanceNVRAMVariable, err error)
DeleteInstanceNVRAMGUIDVar(name string, guid string, varName string) error
// Event handling functions
GetEvents() (listener *EventListener, err error)

View File

@ -1,223 +0,0 @@
package main
import (
"fmt"
"net"
"os"
"sync"
"github.com/spf13/cobra"
incus "github.com/lxc/incus/v7/client"
"github.com/lxc/incus/v7/cmd/incus/color"
u "github.com/lxc/incus/v7/cmd/incus/usage"
"github.com/lxc/incus/v7/internal/i18n"
cli "github.com/lxc/incus/v7/shared/cmd"
"github.com/lxc/incus/v7/shared/util"
)
type cmdDebug struct {
global *cmdGlobal
}
func (c *cmdDebug) command() *cobra.Command {
cmd := &cobra.Command{}
cmd.Hidden = true
cmd.Use = cli.U("debug")
cmd.Short = i18n.G("Debug commands")
cmd.Long = cli.FormatSection(color.DescriptionPrefix, i18n.G(`Debug commands for instances`))
debugAttachCmd := cmdDebugMemory{global: c.global, debug: c}
cmd.AddCommand(debugAttachCmd.command())
debugNBDCmd := cmdDebugNBD{global: c.global, debug: c}
cmd.AddCommand(debugNBDCmd.command())
return cmd
}
type cmdDebugMemory struct {
global *cmdGlobal
debug *cmdDebug
flagFormat string
}
var cmdDebugMemoryUsage = u.Usage{u.Instance.Remote(), u.Target(u.File)}
func (c *cmdDebugMemory) command() *cobra.Command {
cmd := &cobra.Command{}
cmd.Use = cli.U("dump-memory", cmdDebugMemoryUsage...)
cmd.Short = i18n.G("Export a virtual machine's memory state")
cmd.Long = cli.FormatSection(color.DescriptionPrefix, i18n.G(
`Export the current memory state of a running virtual machine into a dump file.
This can be useful for debugging or analysis purposes.`,
))
cmd.Example = cli.FormatSection("", i18n.G(
`incus debug dump-memory vm1 memory-dump.elf --format=elf
Creates an ELF format memory dump of the vm1 instance.`,
))
cmd.RunE = c.run
cli.AddStringFlag(cmd.Flags(), &c.flagFormat, "format|f", "elf", "", i18n.G("Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"))
return cmd
}
func (c *cmdDebugMemory) run(cmd *cobra.Command, args []string) error {
parsed, err := c.global.Parse(cmdDebugMemoryUsage, cmd, args)
if err != nil {
return err
}
d := parsed[0].RemoteServer
instanceName := parsed[0].RemoteObject.String
path := parsed[1].String
target, err := os.Create(path)
if err != nil {
return err
}
rc, err := d.GetInstanceDebugMemory(instanceName, c.flagFormat)
if err != nil {
return fmt.Errorf(i18n.G("Failed to dump instance memory: %w"), err)
}
_, err = util.SafeCopy(target, rc)
if err != nil {
return err
}
return nil
}
type cmdDebugNBD struct {
global *cmdGlobal
debug *cmdDebug
flagAddress string
}
var cmdDebugNBDUsage = u.Usage{u.Instance.Remote()}
func (c *cmdDebugNBD) command() *cobra.Command {
cmd := &cobra.Command{}
cmd.Use = cli.U("nbd", cmdDebugNBDUsage...)
cmd.Short = i18n.G("NBD access to all of a virtual machine's disks")
cmd.Long = cli.FormatSection(color.DescriptionPrefix, i18n.G(
`NBD access to all of a virtual machine's disks
This exposes all the disks of a running virtual machine over a local NBD
server, with each disk reachable as an NBD export named after its Incus
device name.`,
))
cli.AddStringFlag(cmd.Flags(), &c.flagAddress, "address", "", "", i18n.G("Specific address to listen on"))
cmd.RunE = c.run
// completion for instance.
cmd.ValidArgsFunction = func(_ *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {
if len(args) == 0 {
return c.global.cmpInstances(toComplete)
}
return nil, cobra.ShellCompDirectiveNoFileComp
}
return cmd
}
func (c *cmdDebugNBD) run(cmd *cobra.Command, args []string) error {
parsed, err := c.global.Parse(cmdDebugNBDUsage, cmd, args)
if err != nil {
return err
}
d := parsed[0].RemoteServer
instanceName := parsed[0].RemoteObject.String
// Check that the instance exists before starting the NBD server.
_, _, err = d.GetInstance(instanceName)
if err != nil {
return err
}
// Proxy to a local listener.
listenAddr := c.flagAddress
if listenAddr == "" {
listenAddr = "127.0.0.1:0" // Listen on a random local port if not specified.
}
listener, err := net.Listen("tcp", listenAddr)
if err != nil {
return fmt.Errorf(i18n.G("Failed to listen for connection: %w"), err)
}
fmt.Printf(i18n.G("NBD listening on %v")+"\n", listener.Addr())
// Track the active connections, the first one starts the NBD session and the
// following ones attach to it. The server stops the session when all of its
// connections are closed.
var connMu sync.Mutex
activeConns := 0
for {
// Wait for a connection.
nConn, err := listener.Accept()
if err != nil {
return fmt.Errorf(i18n.G("Failed to accept incoming connection: %w"), err)
}
go func() {
defer func() { _ = nConn.Close() }()
fmt.Printf(i18n.G("NBD client connected %q")+"\n", nConn.RemoteAddr())
defer fmt.Printf(i18n.G("NBD client disconnected %q")+"\n", nConn.RemoteAddr())
connMu.Lock()
reuse := activeConns > 0
activeConns++
connMu.Unlock()
defer func() {
connMu.Lock()
activeConns--
connMu.Unlock()
}()
// Get a connection to the NBD session.
conn, err := d.GetInstanceNBDConn(instanceName, incus.InstanceNBDArgs{Reuse: reuse})
if err != nil {
fmt.Printf(i18n.G("NBD connection failed: %v")+"\n", err)
return
}
defer func() { _ = conn.Close() }()
// Proxy the traffic.
var wg sync.WaitGroup
wg.Add(2)
go func() {
defer wg.Done()
_, _ = util.SafeCopy(conn, nConn)
_ = conn.Close()
_ = nConn.Close()
}()
go func() {
defer wg.Done()
_, _ = util.SafeCopy(nConn, conn)
_ = conn.Close()
_ = nConn.Close()
}()
wg.Wait()
}()
}
}

594
cmd/incus/low_level.go Normal file
View File

@ -0,0 +1,594 @@
package main
import (
"encoding/base64"
"fmt"
"net"
"os"
"sort"
"strings"
"sync"
"github.com/spf13/cobra"
"go.yaml.in/yaml/v4"
incus "github.com/lxc/incus/v7/client"
"github.com/lxc/incus/v7/cmd/incus/color"
u "github.com/lxc/incus/v7/cmd/incus/usage"
"github.com/lxc/incus/v7/internal/i18n"
"github.com/lxc/incus/v7/shared/api"
cli "github.com/lxc/incus/v7/shared/cmd"
"github.com/lxc/incus/v7/shared/uefi"
"github.com/lxc/incus/v7/shared/util"
)
type cmdLowLevel struct {
global *cmdGlobal
}
func (c *cmdLowLevel) command() *cobra.Command {
cmd := &cobra.Command{}
cmd.Use = cli.U("low-level")
cmd.Aliases = []string{"debug"}
cmd.Short = i18n.G("Low-level commands")
cmd.Long = cli.FormatSection(color.DescriptionPrefix, i18n.G(`Low-level commands for instances`))
lowLevelAttachCmd := cmdLowLevelMemory{global: c.global, lowLevel: c}
cmd.AddCommand(lowLevelAttachCmd.command())
lowLevelNBDCmd := cmdLowLevelNBD{global: c.global, lowLevel: c}
cmd.AddCommand(lowLevelNBDCmd.command())
lowLevelNVRAMCmd := cmdLowLevelNVRAM{global: c.global}
cmd.AddCommand(lowLevelNVRAMCmd.command())
return cmd
}
type cmdLowLevelMemory struct {
global *cmdGlobal
lowLevel *cmdLowLevel
flagFormat string
}
var cmdLowLevelMemoryUsage = u.Usage{u.Instance.Remote(), u.Target(u.File)}
func (c *cmdLowLevelMemory) command() *cobra.Command {
cmd := &cobra.Command{}
cmd.Use = cli.U("dump-memory", cmdLowLevelMemoryUsage...)
cmd.Short = i18n.G("Export a virtual machine's memory state")
cmd.Long = cli.FormatSection(color.DescriptionPrefix, i18n.G(
`Export the current memory state of a running virtual machine into a dump file.
This can be useful for debugging or analysis purposes.`,
))
cmd.Example = cli.FormatSection("", i18n.G(
`incus low-level dump-memory vm1 memory-dump.elf --format=elf
Creates an ELF format memory dump of the vm1 instance.`,
))
cmd.RunE = c.run
cli.AddStringFlag(cmd.Flags(), &c.flagFormat, "format|f", "elf", "", i18n.G("Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"))
return cmd
}
func (c *cmdLowLevelMemory) run(cmd *cobra.Command, args []string) error {
parsed, err := c.global.Parse(cmdLowLevelMemoryUsage, cmd, args)
if err != nil {
return err
}
d := parsed[0].RemoteServer
instanceName := parsed[0].RemoteObject.String
path := parsed[1].String
target, err := os.Create(path)
if err != nil {
return err
}
rc, err := d.GetInstanceDebugMemory(instanceName, c.flagFormat)
if err != nil {
return fmt.Errorf(i18n.G("Failed to dump instance memory: %w"), err)
}
_, err = util.SafeCopy(target, rc)
if err != nil {
return err
}
return nil
}
type cmdLowLevelNBD struct {
global *cmdGlobal
lowLevel *cmdLowLevel
flagAddress string
}
var cmdLowLevelNBDUsage = u.Usage{u.Instance.Remote()}
func (c *cmdLowLevelNBD) command() *cobra.Command {
cmd := &cobra.Command{}
cmd.Use = cli.U("nbd", cmdLowLevelNBDUsage...)
cmd.Short = i18n.G("NBD access to all of a virtual machine's disks")
cmd.Long = cli.FormatSection(color.DescriptionPrefix, i18n.G(
`NBD access to all of a virtual machine's disks
This exposes all the disks of a running virtual machine over a local NBD
server, with each disk reachable as an NBD export named after its Incus
device name.`,
))
cli.AddStringFlag(cmd.Flags(), &c.flagAddress, "address", "", "", i18n.G("Specific address to listen on"))
cmd.RunE = c.run
// completion for instance.
cmd.ValidArgsFunction = func(_ *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {
if len(args) == 0 {
return c.global.cmpInstances(toComplete)
}
return nil, cobra.ShellCompDirectiveNoFileComp
}
return cmd
}
func (c *cmdLowLevelNBD) run(cmd *cobra.Command, args []string) error {
parsed, err := c.global.Parse(cmdLowLevelNBDUsage, cmd, args)
if err != nil {
return err
}
d := parsed[0].RemoteServer
instanceName := parsed[0].RemoteObject.String
// Check that the instance exists before starting the NBD server.
_, _, err = d.GetInstance(instanceName)
if err != nil {
return err
}
// Proxy to a local listener.
listenAddr := c.flagAddress
if listenAddr == "" {
listenAddr = "127.0.0.1:0" // Listen on a random local port if not specified.
}
listener, err := net.Listen("tcp", listenAddr)
if err != nil {
return fmt.Errorf(i18n.G("Failed to listen for connection: %w"), err)
}
fmt.Printf(i18n.G("NBD listening on %v")+"\n", listener.Addr())
// Track the active connections, the first one starts the NBD session and the
// following ones attach to it. The server stops the session when all of its
// connections are closed.
var connMu sync.Mutex
activeConns := 0
for {
// Wait for a connection.
nConn, err := listener.Accept()
if err != nil {
return fmt.Errorf(i18n.G("Failed to accept incoming connection: %w"), err)
}
go func() {
defer func() { _ = nConn.Close() }()
fmt.Printf(i18n.G("NBD client connected %q")+"\n", nConn.RemoteAddr())
defer fmt.Printf(i18n.G("NBD client disconnected %q")+"\n", nConn.RemoteAddr())
connMu.Lock()
reuse := activeConns > 0
activeConns++
connMu.Unlock()
defer func() {
connMu.Lock()
activeConns--
connMu.Unlock()
}()
// Get a connection to the NBD session.
conn, err := d.GetInstanceNBDConn(instanceName, incus.InstanceNBDArgs{Reuse: reuse})
if err != nil {
fmt.Printf(i18n.G("NBD connection failed: %v")+"\n", err)
return
}
defer func() { _ = conn.Close() }()
// Proxy the traffic.
var wg sync.WaitGroup
wg.Add(2)
go func() {
defer wg.Done()
_, _ = util.SafeCopy(conn, nConn)
_ = conn.Close()
_ = nConn.Close()
}()
go func() {
defer wg.Done()
_, _ = util.SafeCopy(nConn, conn)
_ = conn.Close()
_ = nConn.Close()
}()
wg.Wait()
}()
}
}
type cmdLowLevelNVRAM struct {
global *cmdGlobal
}
type nvramColumn struct {
Name string
Data func(string, string, *api.InstanceNVRAMVariable) string
}
func (c *cmdLowLevelNVRAM) command() *cobra.Command {
cmd := &cobra.Command{}
cmd.Use = cli.U("nvram")
cmd.Short = i18n.G("Manage NVRAM on virtual machines")
cmd.Long = cli.FormatSection(color.DescriptionPrefix, i18n.G(`Manage NVRAM on virtual machines`))
// Get.
lowLevelNVRAMGetCmd := cmdLowLevelNVRAMGet{global: c.global}
cmd.AddCommand(lowLevelNVRAMGetCmd.command())
// List.
lowLevelNVRAMListCmd := cmdLowLevelNVRAMList{global: c.global}
cmd.AddCommand(lowLevelNVRAMListCmd.command())
// Unset.
lowLevelNVRAMUnsetCmd := cmdLowLevelNVRAMUnset{global: c.global}
cmd.AddCommand(lowLevelNVRAMUnsetCmd.command())
// Workaround for subcommand usage errors. See: https://github.com/spf13/cobra/issues/706.
cmd.Args = cobra.NoArgs
cmd.Run = func(cmd *cobra.Command, _ []string) { _ = cmd.Usage() }
return cmd
}
// nvramGuessVar guesses a GUID and a variable name from the user input.
func nvramGuessVar(name string) (string, string, error) {
// First, try the GUID:name syntax, which also allows aliases. Any errors here are fatal, as we
// have no other sane way to parse colons.
parts := strings.SplitN(name, ":", 2)
if len(parts) == 2 {
guid, err := uefi.ParseGUIDOrName(parts[0])
if err != nil {
return "", "", err
}
return guid, parts[1], nil
}
// Then, try both GUID-name and name-GUID combinations, which dont allow aliases.
parts = strings.Split(name, "-")
n := len(parts)
// If there is no dash, no namespace is given, so we use EFI_GLOBAL_VARIABLE as a sane default.
if n == 1 {
return uefi.EfiGlobalVariableGuid, name, nil
}
// People can go wild in how they represent GUIDs, so we dumbly try parsing up to the last dash,
// then if it fails, from the first dash on.
guid, err := uefi.ParseGUID(strings.Join(parts[:n-1], "-"))
if err == nil {
return guid, parts[n-1], nil
}
guid, err = uefi.ParseGUID(strings.Join(parts[1:], "-"))
if err == nil {
return guid, parts[0], nil
}
// If anything fails, we assume that no namespace is given. Dashes are allowed in UEFI variable
// names, so this last safety net covers this unlikely case.
return uefi.EfiGlobalVariableGuid, name, nil
}
// Get.
type cmdLowLevelNVRAMGet struct {
global *cmdGlobal
flagRaw bool
}
var cmdLowLevelNVRAMGetUsage = u.Usage{u.Instance.Remote(), u.Variable}
func (c *cmdLowLevelNVRAMGet) command() *cobra.Command {
cmd := &cobra.Command{}
cmd.Use = cli.U("get", cmdLowLevelNVRAMGetUsage...)
cmd.Short = i18n.G("Get values for UEFI variables")
cmd.Long = cli.FormatSection(color.DescriptionPrefix, i18n.G(`Get values for UEFI variables`))
cmd.RunE = c.run
cli.AddBoolFlag(cmd.Flags(), &c.flagRaw, "raw", i18n.G("Get the raw binary variable value"))
// completion for instance.
cmd.ValidArgsFunction = func(_ *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {
if len(args) == 0 {
return c.global.cmpInstances(toComplete)
}
return nil, cobra.ShellCompDirectiveNoFileComp
}
return cmd
}
func (c *cmdLowLevelNVRAMGet) run(cmd *cobra.Command, args []string) error {
parsed, err := c.global.Parse(cmdLowLevelNVRAMGetUsage, cmd, args)
if err != nil {
return err
}
d := parsed[0].RemoteServer
instanceName := parsed[0].RemoteObject.String
name := parsed[1].String
guid, varName, err := nvramGuessVar(name)
if err != nil {
return err
}
if c.flagRaw {
resp, err := d.GetRawInstanceNVRAMGUIDVar(instanceName, guid, varName)
if err != nil {
return fmt.Errorf(i18n.G("Failed to get instance UEFI variable: %w"), err)
}
fmt.Print(string(resp))
return nil
}
v, err := d.GetInstanceNVRAMGUIDVar(instanceName, guid, varName)
if err != nil {
return fmt.Errorf(i18n.G("Failed to get instance UEFI variable: %w"), err)
}
data, err := yaml.Dump(v, yaml.WithV2Defaults())
if err != nil {
return err
}
print(string(data))
return nil
}
// List.
type cmdLowLevelNVRAMList struct {
global *cmdGlobal
flagFormat string
flagColumns string
}
var cmdLowLevelNVRAMListUsage = u.Usage{u.Instance.Remote(), u.Placeholder(i18n.G("GUID")).Optional()}
func (c *cmdLowLevelNVRAMList) command() *cobra.Command {
cmd := &cobra.Command{}
cmd.Use = cli.U("list", cmdLowLevelNVRAMListUsage...)
cmd.Aliases = []string{"ls"}
cmd.Short = i18n.G("List UEFI GUIDs and variables")
cmd.Long = cli.FormatSection(color.DescriptionPrefix, i18n.G(`List UEFI GUIDs and variables`))
cmd.RunE = c.run
cli.AddStringFlag(cmd.Flags(), &c.flagFormat, "format|f", c.global.defaultListFormat(), "", i18n.G(`Format (csv|json|table|yaml|compact|markdown), use suffix ",noheader" to disable headers and ",header" to enable it if missing, e.g. csv,header`))
cli.AddStringFlag(cmd.Flags(), &c.flagColumns, "columns|c", defaultNVRAMColumns, "", i18n.G("Columns"))
// completion for instance.
cmd.ValidArgsFunction = func(_ *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {
if len(args) == 0 {
return c.global.cmpInstances(toComplete)
}
return nil, cobra.ShellCompDirectiveNoFileComp
}
return cmd
}
const defaultNVRAMColumns = "Gnv"
func (c *cmdLowLevelNVRAMList) parseColumns() ([]nvramColumn, error) {
columnsShorthandMap := map[rune]nvramColumn{
'a': {i18n.G("ATTRIBUTES"), c.attributesColumnData},
'g': {i18n.G("GUID"), c.guidColumnData},
'G': {i18n.G("GUID NAME"), c.guidNameColumnData},
'n': {i18n.G("VARIABLE NAME"), c.nameColumnData},
'r': {i18n.G("RAW VALUE"), c.rawColumnData},
't': {i18n.G("TIMESTAMP"), c.timestampColumnData},
'v': {i18n.G("INTERPRETED VALUE"), c.valueColumnData},
}
columnList := strings.Split(c.flagColumns, ",")
columns := []nvramColumn{}
for _, columnEntry := range columnList {
if columnEntry == "" {
return nil, fmt.Errorf(i18n.G("Empty column entry (redundant, leading or trailing command) in '%s'"), c.flagColumns)
}
for _, columnRune := range columnEntry {
column, ok := columnsShorthandMap[columnRune]
if !ok {
return nil, fmt.Errorf(i18n.G("Unknown column shorthand char '%c' in '%s'"), columnRune, columnEntry)
}
columns = append(columns, column)
}
}
return columns, nil
}
func (c *cmdLowLevelNVRAMList) attributesColumnData(guid string, name string, v *api.InstanceNVRAMVariable) string {
return strings.Join(v.Attributes, " + ")
}
func (c *cmdLowLevelNVRAMList) guidColumnData(guid string, name string, v *api.InstanceNVRAMVariable) string {
return guid
}
func (c *cmdLowLevelNVRAMList) guidNameColumnData(guid string, name string, v *api.InstanceNVRAMVariable) string {
return uefi.GUIDName(guid)
}
func (c *cmdLowLevelNVRAMList) nameColumnData(guid string, name string, v *api.InstanceNVRAMVariable) string {
return name
}
func (c *cmdLowLevelNVRAMList) rawColumnData(guid string, name string, v *api.InstanceNVRAMVariable) string {
return base64.StdEncoding.EncodeToString(v.Binary)
}
func (c *cmdLowLevelNVRAMList) timestampColumnData(guid string, name string, v *api.InstanceNVRAMVariable) string {
if v.Timestamp == nil {
return i18n.G("(no timestamp)")
}
return v.Timestamp.String()
}
func (c *cmdLowLevelNVRAMList) valueColumnData(guid string, name string, v *api.InstanceNVRAMVariable) string {
if v.Data == nil {
return i18n.G("(binary data)")
}
repr, err := yaml.Dump(v.Data, yaml.WithV2Defaults())
if err != nil {
return fmt.Sprintf(i18n.G("(error: %w)"), err)
}
return string(repr)
}
func (c *cmdLowLevelNVRAMList) run(cmd *cobra.Command, args []string) error {
parsed, err := c.global.Parse(cmdLowLevelNVRAMListUsage, cmd, args)
if err != nil {
return err
}
d := parsed[0].RemoteServer
instanceName := parsed[0].RemoteObject.String
var uefiVars map[string]map[string]*api.InstanceNVRAMVariable
if parsed[1].Skipped {
uefiVars, err = d.GetInstanceNVRAM(instanceName)
if err != nil {
return fmt.Errorf(i18n.G("Failed to get instance UEFI variables: %w"), err)
}
} else {
guid := parsed[1].String
parsedGUID, err := uefi.ParseGUIDOrName(guid)
if err != nil {
return fmt.Errorf(i18n.G("Invalid GUID: %s"), guid)
}
vars, err := d.GetInstanceNVRAMGUID(instanceName, parsedGUID)
if err != nil {
return err
}
uefiVars = map[string]map[string]*api.InstanceNVRAMVariable{guid: vars}
}
// Parse column flags.
columns, err := c.parseColumns()
if err != nil {
return err
}
// Render the table
data := [][]string{}
for guid, vars := range uefiVars {
for name, v := range vars {
line := []string{}
for _, column := range columns {
line = append(line, column.Data(guid, name, v))
}
data = append(data, line)
}
}
sort.Sort(cli.SortColumnsNaturally(data))
header := []string{}
for _, column := range columns {
header = append(header, column.Name)
}
return cli.RenderTable(os.Stdout, c.flagFormat, header, data, uefiVars)
}
// Unset.
type cmdLowLevelNVRAMUnset struct {
global *cmdGlobal
}
var cmdLowLevelNVRAMUnsetUsage = u.Usage{u.Instance.Remote(), u.Variable}
func (c *cmdLowLevelNVRAMUnset) command() *cobra.Command {
cmd := &cobra.Command{}
cmd.Use = cli.U("unset", cmdLowLevelNVRAMUnsetUsage...)
cmd.Short = i18n.G("Unset UEFI variables")
cmd.Long = cli.FormatSection(color.DescriptionPrefix, i18n.G("Unset UEFI variables"))
cmd.RunE = c.run
cmd.ValidArgsFunction = func(_ *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {
if len(args) == 0 {
return c.global.cmpInstances(toComplete)
}
return nil, cobra.ShellCompDirectiveNoFileComp
}
return cmd
}
func (c *cmdLowLevelNVRAMUnset) run(cmd *cobra.Command, args []string) error {
// We deliberately only accept a single deletion at a time because we dont want to give users
// the impression that they are hitting any kind of optimized path. Deleting 100 variables leads
// to 100 full NVRAM rewrites.
parsed, err := c.global.Parse(cmdLowLevelNVRAMUnsetUsage, cmd, args)
if err != nil {
return err
}
d := parsed[0].RemoteServer
instanceName := parsed[0].RemoteObject.String
guid, varName, err := nvramGuessVar(parsed[1].String)
if err != nil {
return err
}
// Delete the UEFI variable.
err = d.DeleteInstanceNVRAMGUIDVar(instanceName, guid, varName)
if err != nil {
return err
}
if !c.global.flagQuiet {
fmt.Printf(i18n.G("UEFI variable %s:%s deleted on %s")+"\n", guid, varName, formatRemote(c.global.conf, parsed[0]))
}
return nil
}

View File

@ -350,9 +350,9 @@ Custom commands can be defined through aliases, use "incus alias" to control tho
webuiCmd := cmdWebui{global: &globalCmd}
app.AddCommand(webuiCmd.command())
// debug sub-command
debugCmd := cmdDebug{global: &globalCmd}
app.AddCommand(debugCmd.command())
// low-level sub-command
lowLevelCmd := cmdLowLevel{global: &globalCmd}
app.AddCommand(lowLevelCmd.command())
// wait sub-command
waitCmd := cmdWait{global: &globalCmd}

View File

@ -865,6 +865,7 @@ var (
Type = placeholder{i18n.G("type")}
URL = placeholder{i18n.G("URL")}
Value = placeholder{i18n.G("value")}
Variable = placeholder{i18n.G("variable")}
Volume = placeholder{i18n.G("volume")}
WarningUUID = placeholder{i18n.G("warning UUID")}
Zone = placeholder{i18n.G("zone")}

View File

@ -68,6 +68,9 @@ var api10 = []APIEndpoint{
instanceMetadataTemplatesCmd,
instancesCmd,
instanceNBDCmd,
instanceNVRAMCmd,
instanceNVRAMGUIDCmd,
instanceNVRAMGuidVarCmd,
instancePortForwardCmd,
instanceRebuildCmd,
instanceSFTPCmd,

View File

@ -0,0 +1,667 @@
package main
import (
"errors"
"fmt"
"maps"
"net/http"
"slices"
"sort"
"strconv"
internalInstance "github.com/lxc/incus/v7/internal/instance"
"github.com/lxc/incus/v7/internal/server/instance"
"github.com/lxc/incus/v7/internal/server/instance/instancetype"
"github.com/lxc/incus/v7/internal/server/request"
"github.com/lxc/incus/v7/internal/server/response"
"github.com/lxc/incus/v7/internal/version"
"github.com/lxc/incus/v7/shared/api"
"github.com/lxc/incus/v7/shared/uefi"
)
func getNVRAMStore(d *Daemon, r *http.Request, projectName string, name string) (*uefi.Store, instance.VM, response.Response) {
s := d.State()
if internalInstance.IsSnapshot(name) {
return nil, nil, response.BadRequest(errors.New("Invalid instance name"))
}
// Redirect to correct server if needed.
resp, err := forwardedResponseIfInstanceIsRemote(s, r, projectName, name)
if err != nil {
return nil, nil, response.SmartError(err)
}
if resp != nil {
return nil, nil, resp
}
// Load the instance.
inst, err := instance.LoadByProjectAndName(s, projectName, name)
if err != nil {
return nil, nil, response.SmartError(err)
}
if inst.Type() != instancetype.VM {
return nil, nil, response.BadRequest(errors.New("NVRAM operations are only supported for virtual machines"))
}
v, ok := inst.(instance.VM)
if !ok {
return nil, nil, response.InternalError(errors.New("Failed to cast inst to VM"))
}
store, err := v.GetNVRAM()
if err != nil {
return nil, nil, response.SmartError(err)
}
return store, v, nil
}
// swagger:operation GET /1.0/instances/{name}/nvram instances instance_nvram_get
//
// Get the NVRAM variable GUIDs
//
// Returns a list of NVRAM variable GUIDs (URLs).
//
// Only supported for VMs.
//
// ---
// produces:
// - application/json
// parameters:
// - in: path
// name: name
// description: Instance name
// type: string
// required: true
// - in: query
// name: project
// description: Project name
// type: string
// example: default
// responses:
// "200":
// description: API endpoints
// schema:
// type: object
// description: Sync response
// properties:
// type:
// type: string
// description: Response type
// example: sync
// status:
// type: string
// description: Status description
// example: Success
// status_code:
// type: integer
// description: Status code
// example: 200
// metadata:
// type: array
// description: List of endpoints
// items:
// type: string
// example: |-
// [
// "/1.0/instances/foo/nvram/8be4df61-93ca-11d2-aa0d-00e098032b8c",
// "/1.0/instances/foo/nvram/d9bee56e-75dc-49d9-b4d7-b534210f637a",
// ]
// "400":
// $ref: "#/responses/BadRequest"
// "403":
// $ref: "#/responses/Forbidden"
// "404":
// $ref: "#/responses/NotFound"
// "500":
// $ref: "#/responses/InternalServerError"
// swagger:operation GET /1.0/instances/{name}/nvram?recursion=1 instances instance_nvram_get_recursion1
//
// Get the NVRAM variable GUIDs and names
//
// Returns a map of NVRAM variable GUIDs and their associated names (URLs).
//
// Only supported for VMs.
//
// ---
// produces:
// - application/json
// parameters:
// - in: path
// name: name
// description: Instance name
// type: string
// required: true
// - in: query
// name: project
// description: Project name
// type: string
// example: default
// responses:
// "200":
// description: API endpoints
// schema:
// type: object
// description: Sync response
// properties:
// type:
// type: string
// description: Response type
// example: sync
// status:
// type: string
// description: Status description
// example: Success
// status_code:
// type: integer
// description: Status code
// example: 200
// metadata:
// type: object
// description: UEFI variables
// additionalProperties:
// type: array
// description: List of endpoints
// items:
// type: string
// example: |-
// {
// "8be4df61-93ca-11d2-aa0d-00e098032b8c": [
// "/1.0/instances/foo/nvram/8be4df61-93ca-11d2-aa0d-00e098032b8c/Boot0000",
// "/1.0/instances/foo/nvram/8be4df61-93ca-11d2-aa0d-00e098032b8c/BootOrder"
// ]
// }
// "400":
// $ref: "#/responses/BadRequest"
// "403":
// $ref: "#/responses/Forbidden"
// "404":
// $ref: "#/responses/NotFound"
// "500":
// $ref: "#/responses/InternalServerError"
// swagger:operation GET /1.0/instances/{name}/nvram?recursion=2 instances instance_nvram_get_recursion2
//
// Get the NVRAM variables
//
// Returns a map of NVRAM variable GUIDs and their dissected values.
//
// Only supported for VMs.
//
// ---
// produces:
// - application/json
// parameters:
// - in: path
// name: name
// description: Instance name
// type: string
// required: true
// - in: query
// name: project
// description: Project name
// type: string
// example: default
// responses:
// "200":
// description: NVRAM variables
// schema:
// type: object
// description: Sync response
// properties:
// type:
// type: string
// description: Response type
// example: sync
// status:
// type: string
// description: Status description
// example: Success
// status_code:
// type: integer
// description: Status code
// example: 200
// metadata:
// type: object
// description: UEFI variables
// additionalProperties:
// type: object
// description: Namespaced UEFI variables
// additionalProperties:
// $ref: "#/definitions/InstanceNVRAMVariable"
// "400":
// $ref: "#/responses/BadRequest"
// "403":
// $ref: "#/responses/Forbidden"
// "404":
// $ref: "#/responses/NotFound"
// "500":
// $ref: "#/responses/InternalServerError"
func instanceNVRAMGet(d *Daemon, r *http.Request) response.Response {
// Parse the recursion field.
recursion, err := strconv.Atoi(r.FormValue("recursion"))
if err != nil || recursion < 0 {
recursion = 0
}
if recursion > 2 {
recursion = 2
}
projectName := request.ProjectParam(r)
name, err := pathVar(r, "name")
if err != nil {
return response.SmartError(err)
}
store, _, resp := getNVRAMStore(d, r, projectName, name)
if resp != nil {
return resp
}
var out any
switch recursion {
case 0:
res := slices.Sorted(maps.Keys(store.Vars))
for i, guid := range res {
res[i] = api.NewURL().Path(version.APIVersion, "instances", name, "nvram", guid).Project(projectName).String()
}
out = res
case 1:
res := make(map[string][]string, len(store.Vars))
for guid, vars := range store.Vars {
names := make([]string, 0, len(vars))
for varName := range vars {
names = append(names, api.NewURL().Path(version.APIVersion, "instances", name, "nvram", guid, varName).Project(projectName).String())
}
sort.Strings(names)
res[guid] = names
}
out = res
case 2:
for guid, vars := range store.Vars {
for name, v := range vars {
_ = uefi.Dissect(v, guid, name)
}
}
out = store.Vars
}
return response.SyncResponse(true, out)
}
// swagger:operation GET /1.0/instances/{name}/nvram/{guid} instances instance_nvram_guid_get
//
// Get the NVRAM variable names under the given GUID
//
// Returns a map of variable names (URLs).
//
// Only supported for VMs.
//
// ---
// produces:
// - application/json
// parameters:
// - in: path
// name: name
// description: Instance name
// type: string
// required: true
// - in: path
// name: guid
// description: GUID
// type: string
// required: true
// - in: query
// name: project
// description: Project name
// type: string
// example: default
// responses:
// "200":
// description: API endpoints
// schema:
// type: object
// description: Sync response
// properties:
// type:
// type: string
// description: Response type
// example: sync
// status:
// type: string
// description: Status description
// example: Success
// status_code:
// type: integer
// description: Status code
// example: 200
// metadata:
// type: array
// description: List of endpoints
// items:
// type: string
// example: |-
// [
// "/1.0/instances/foo/nvram/8be4df61-93ca-11d2-aa0d-00e098032b8c/Boot0000",
// "/1.0/instances/foo/nvram/8be4df61-93ca-11d2-aa0d-00e098032b8c/BootOrder"
// ]
// "400":
// $ref: "#/responses/BadRequest"
// "403":
// $ref: "#/responses/Forbidden"
// "404":
// $ref: "#/responses/NotFound"
// "500":
// $ref: "#/responses/InternalServerError"
// swagger:operation GET /1.0/instances/{name}/nvram/{guid}?recursion=1 instances instance_nvram_guid_get_recursion1
//
// Get the NVRAM variables under the given GUID
//
// Returns a map of NVRAM variable GUIDs and their dissected values.
//
// Only supported for VMs.
//
// ---
// produces:
// - application/json
// parameters:
// - in: path
// name: name
// description: Instance name
// type: string
// required: true
// - in: path
// name: guid
// description: GUID
// type: string
// required: true
// - in: query
// name: project
// description: Project name
// type: string
// example: default
// responses:
// "200":
// description: NVRAM variables
// schema:
// type: object
// description: Sync response
// properties:
// type:
// type: string
// description: Response type
// example: sync
// status:
// type: string
// description: Status description
// example: Success
// status_code:
// type: integer
// description: Status code
// example: 200
// metadata:
// type: object
// description: Namespaced UEFI variables
// additionalProperties:
// $ref: "#/definitions/InstanceNVRAMVariable"
// "400":
// $ref: "#/responses/BadRequest"
// "403":
// $ref: "#/responses/Forbidden"
// "404":
// $ref: "#/responses/NotFound"
// "500":
// $ref: "#/responses/InternalServerError"
func instanceNVRAMGUIDGet(d *Daemon, r *http.Request) response.Response {
// Parse the recursion field.
recursion, err := strconv.Atoi(r.FormValue("recursion"))
if err != nil || recursion < 0 {
recursion = 0
}
if recursion > 1 {
recursion = 1
}
projectName := request.ProjectParam(r)
name, err := pathVar(r, "name")
if err != nil {
return response.SmartError(err)
}
guid, err := pathVar(r, "guid")
if err != nil {
return response.SmartError(err)
}
store, _, resp := getNVRAMStore(d, r, projectName, name)
if resp != nil {
return resp
}
vars, ok := store.Vars[guid]
if !ok {
return response.SmartError(api.StatusErrorf(http.StatusNotFound, "GUID not found"))
}
var out any
switch recursion {
case 0:
res := make([]string, 0, len(vars))
for varName := range vars {
res = append(res, api.NewURL().Path(version.APIVersion, "instances", name, "nvram", guid, varName).Project(projectName).String())
}
sort.Strings(res)
out = res
case 1:
for name, v := range vars {
_ = uefi.Dissect(v, guid, name)
}
out = vars
}
return response.SyncResponse(true, out)
}
// swagger:operation GET /1.0/instances/{name}/nvram/{guid}/{var} instances instance_nvram_guid_var_get
//
// Get the NVRAM variable
//
// If the `Accept` header is set to `application/octet-stream`, the raw binary value of the variable
// is returned.
//
// Only supported for VMs.
//
// ---
// produces:
// - application/json
// - application/octet-stream
// parameters:
// - in: path
// name: name
// description: Instance name
// type: string
// required: true
// - in: path
// name: guid
// description: Variable GUID
// type: string
// required: true
// example: 8be4df61-93ca-11d2-aa0d-00e098032b8c
// - in: path
// name: var
// description: Variable name
// type: string
// example: BootOrder
// - in: query
// name: project
// description: Project name
// type: string
// example: default
// responses:
// "200":
// description: NVRAM variable
// schema:
// type: object
// description: Sync response
// properties:
// type:
// type: string
// description: Response type
// example: sync
// status:
// type: string
// description: Status description
// example: Success
// status_code:
// type: integer
// description: Status code
// example: 200
// metadata:
// $ref: "#/definitions/InstanceNVRAMVariable"
// "400":
// $ref: "#/responses/BadRequest"
// "403":
// $ref: "#/responses/Forbidden"
// "404":
// $ref: "#/responses/NotFound"
// "500":
// $ref: "#/responses/InternalServerError"
func instanceNVRAMGUIDVarGet(d *Daemon, r *http.Request) response.Response {
projectName := request.ProjectParam(r)
name, err := pathVar(r, "name")
if err != nil {
return response.SmartError(err)
}
guid, err := pathVar(r, "guid")
if err != nil {
return response.SmartError(err)
}
varName, err := pathVar(r, "var")
if err != nil {
return response.SmartError(err)
}
store, _, resp := getNVRAMStore(d, r, projectName, name)
if resp != nil {
return resp
}
vars, ok := store.Vars[guid]
if !ok {
return response.SmartError(api.StatusErrorf(http.StatusNotFound, "GUID not found"))
}
v, ok := vars[varName]
if !ok {
return response.SmartError(api.StatusErrorf(http.StatusNotFound, "Variable not found"))
}
if r.Header.Get("Accept") == "application/octet-stream" {
return response.DevIncusResponse(http.StatusOK, string(v.Binary), "raw", false)
}
_ = uefi.Dissect(v, guid, varName)
return response.SyncResponse(true, v)
}
// swagger:operation DELETE /1.0/instances/{name}/nvram/{guid}/{var} instances instance_nvram_guid_var_delete
//
// Delete the NVRAM variable
//
// Only supported for VMs.
//
// ---
// produces:
// - application/json
// parameters:
// - in: path
// name: name
// description: Instance name
// type: string
// required: true
// - in: path
// name: guid
// description: Variable GUID
// type: string
// required: true
// example: 8be4df61-93ca-11d2-aa0d-00e098032b8c
// - in: path
// name: var
// description: Variable name
// type: string
// example: BootOrder
// - in: query
// name: project
// description: Project name
// type: string
// example: default
// responses:
// "200":
// $ref: "#/responses/EmptySyncResponse"
// "400":
// $ref: "#/responses/BadRequest"
// "403":
// $ref: "#/responses/Forbidden"
// "404":
// $ref: "#/responses/NotFound"
// "500":
// $ref: "#/responses/InternalServerError"
func instanceNVRAMGUIDVarDelete(d *Daemon, r *http.Request) response.Response {
projectName := request.ProjectParam(r)
name, err := pathVar(r, "name")
if err != nil {
return response.SmartError(err)
}
guid, err := pathVar(r, "guid")
if err != nil {
return response.SmartError(err)
}
varName, err := pathVar(r, "var")
if err != nil {
return response.SmartError(err)
}
store, inst, resp := getNVRAMStore(d, r, projectName, name)
if resp != nil {
return resp
}
if inst.IsRunning() {
return response.BadRequest(fmt.Errorf("UEFI variables cannot be deleted on running VMs"))
}
vars, ok := store.Vars[guid]
if !ok {
return response.SmartError(api.StatusErrorf(http.StatusNotFound, "GUID not found"))
}
_, ok = vars[varName]
if !ok {
return response.SmartError(api.StatusErrorf(http.StatusNotFound, "Variable not found"))
}
delete(store.Vars[guid], varName)
err = inst.SetNVRAM(store)
if err != nil {
response.SmartError(err)
}
return response.EmptySyncResponse
}

View File

@ -202,6 +202,28 @@ var instanceDebugRepairCmd = APIEndpoint{
Post: APIEndpointAction{Handler: instanceDebugRepairPost, AccessHandler: allowPermission(auth.ObjectTypeInstance, auth.EntitlementCanEdit, "name")},
}
var instanceNVRAMCmd = APIEndpoint{
Name: "instanceNVRAM",
Path: "instances/{name}/nvram",
Get: APIEndpointAction{Handler: instanceNVRAMGet, AccessHandler: allowPermission(auth.ObjectTypeInstance, auth.EntitlementCanView, "name")},
}
var instanceNVRAMGUIDCmd = APIEndpoint{
Name: "instanceNVRAM",
Path: "instances/{name}/nvram/{guid}",
Get: APIEndpointAction{Handler: instanceNVRAMGUIDGet, AccessHandler: allowPermission(auth.ObjectTypeInstance, auth.EntitlementCanView, "name")},
}
var instanceNVRAMGuidVarCmd = APIEndpoint{
Name: "instanceNVRAM",
Path: "instances/{name}/nvram/{guid}/{var}",
Delete: APIEndpointAction{Handler: instanceNVRAMGUIDVarDelete, AccessHandler: allowPermission(auth.ObjectTypeInstance, auth.EntitlementCanEdit, "name")},
Get: APIEndpointAction{Handler: instanceNVRAMGUIDVarGet, AccessHandler: allowPermission(auth.ObjectTypeInstance, auth.EntitlementCanView, "name")},
}
type instanceAutostartList []instance.Instance
func (slice instanceAutostartList) Len() int {

View File

@ -3311,3 +3311,12 @@ The following server configuration key is also added:
* `authorization.openfga.tls.identifier`: certificate attribute (`fingerprint`
or `name`) used as the OpenFGA user when a TLS client is authorized by
OpenFGA (defaults to `name`).
## `instance_nvram`
This adds new endpoints to manage virtual machines UEFI variables:
* `GET /1.0/instances/{name}/nvram`, to get all UEFI variables
* `GET /1.0/instances/{name}/nvram/{guid}`, to get UEFI variables under the given GUID
* `GET /1.0/instances/{name}/nvram/{guid}/{var}`, to get specific UEFI variables
* `DELETE /1.0/instances/{name}/nvram/{guid}/{var}`, to delete specific UEFI variables

View File

@ -2049,6 +2049,32 @@ definitions:
title: InstanceFull is a combination of Instance, InstanceBackup, InstanceState and InstanceSnapshot.
type: object
x-go-package: github.com/lxc/incus/v7/shared/api
InstanceNVRAMVariable:
properties:
attributes:
description: Variable attributes.
items:
type: string
type: array
x-go-name: Attributes
binary:
description: Binary data.
items:
format: uint8
type: integer
type: array
x-go-name: Binary
data:
description: Dissected data.
x-go-name: Data
timestamp:
description: Authenticated variable timestamp.
format: date-time
type: string
x-go-name: Timestamp
title: InstanceNVRAMVariable represents a UEFI variable.
type: object
x-go-package: github.com/lxc/incus/v7/shared/api
InstancePortForwardPost:
properties:
address:
@ -11326,6 +11352,420 @@ paths:
summary: Get an NBD connection for all of the instance's disks
tags:
- instances
/1.0/instances/{name}/nvram:
get:
description: |-
Returns a list of NVRAM variable GUIDs (URLs).
Only supported for VMs.
operationId: instance_nvram_get
parameters:
- description: Instance name
in: path
name: name
required: true
type: string
- description: Project name
example: default
in: query
name: project
type: string
produces:
- application/json
responses:
"200":
description: API endpoints
schema:
description: Sync response
properties:
metadata:
description: List of endpoints
example: |-
[
"/1.0/instances/foo/nvram/8be4df61-93ca-11d2-aa0d-00e098032b8c",
"/1.0/instances/foo/nvram/d9bee56e-75dc-49d9-b4d7-b534210f637a",
]
items:
type: string
type: array
status:
description: Status description
example: Success
type: string
status_code:
description: Status code
example: 200
type: integer
type:
description: Response type
example: sync
type: string
type: object
"400":
$ref: '#/responses/BadRequest'
"403":
$ref: '#/responses/Forbidden'
"404":
$ref: '#/responses/NotFound'
"500":
$ref: '#/responses/InternalServerError'
summary: Get the NVRAM variable GUIDs
tags:
- instances
/1.0/instances/{name}/nvram/{guid}:
get:
description: |-
Returns a map of variable names (URLs).
Only supported for VMs.
operationId: instance_nvram_guid_get
parameters:
- description: Instance name
in: path
name: name
required: true
type: string
- description: GUID
in: path
name: guid
required: true
type: string
- description: Project name
example: default
in: query
name: project
type: string
produces:
- application/json
responses:
"200":
description: API endpoints
schema:
description: Sync response
properties:
metadata:
description: List of endpoints
example: |-
[
"/1.0/instances/foo/nvram/8be4df61-93ca-11d2-aa0d-00e098032b8c/Boot0000",
"/1.0/instances/foo/nvram/8be4df61-93ca-11d2-aa0d-00e098032b8c/BootOrder"
]
items:
type: string
type: array
status:
description: Status description
example: Success
type: string
status_code:
description: Status code
example: 200
type: integer
type:
description: Response type
example: sync
type: string
type: object
"400":
$ref: '#/responses/BadRequest'
"403":
$ref: '#/responses/Forbidden'
"404":
$ref: '#/responses/NotFound'
"500":
$ref: '#/responses/InternalServerError'
summary: Get the NVRAM variable names under the given GUID
tags:
- instances
/1.0/instances/{name}/nvram/{guid}/{var}:
delete:
description: Only supported for VMs.
operationId: instance_nvram_guid_var_delete
parameters:
- description: Instance name
in: path
name: name
required: true
type: string
- description: Variable GUID
example: 8be4df61-93ca-11d2-aa0d-00e098032b8c
in: path
name: guid
required: true
type: string
- description: Variable name
example: BootOrder
in: path
name: var
type: string
- description: Project name
example: default
in: query
name: project
type: string
produces:
- application/json
responses:
"200":
$ref: '#/responses/EmptySyncResponse'
"400":
$ref: '#/responses/BadRequest'
"403":
$ref: '#/responses/Forbidden'
"404":
$ref: '#/responses/NotFound'
"500":
$ref: '#/responses/InternalServerError'
summary: Delete the NVRAM variable
tags:
- instances
get:
description: |-
If the `Accept` header is set to `application/octet-stream`, the raw binary value of the variable
is returned.
Only supported for VMs.
operationId: instance_nvram_guid_var_get
parameters:
- description: Instance name
in: path
name: name
required: true
type: string
- description: Variable GUID
example: 8be4df61-93ca-11d2-aa0d-00e098032b8c
in: path
name: guid
required: true
type: string
- description: Variable name
example: BootOrder
in: path
name: var
type: string
- description: Project name
example: default
in: query
name: project
type: string
produces:
- application/json
- application/octet-stream
responses:
"200":
description: NVRAM variable
schema:
description: Sync response
properties:
metadata:
$ref: '#/definitions/InstanceNVRAMVariable'
status:
description: Status description
example: Success
type: string
status_code:
description: Status code
example: 200
type: integer
type:
description: Response type
example: sync
type: string
type: object
"400":
$ref: '#/responses/BadRequest'
"403":
$ref: '#/responses/Forbidden'
"404":
$ref: '#/responses/NotFound'
"500":
$ref: '#/responses/InternalServerError'
summary: Get the NVRAM variable
tags:
- instances
/1.0/instances/{name}/nvram/{guid}?recursion=1:
get:
description: |-
Returns a map of NVRAM variable GUIDs and their dissected values.
Only supported for VMs.
operationId: instance_nvram_guid_get_recursion1
parameters:
- description: Instance name
in: path
name: name
required: true
type: string
- description: GUID
in: path
name: guid
required: true
type: string
- description: Project name
example: default
in: query
name: project
type: string
produces:
- application/json
responses:
"200":
description: NVRAM variables
schema:
description: Sync response
properties:
metadata:
additionalProperties:
$ref: '#/definitions/InstanceNVRAMVariable'
description: Namespaced UEFI variables
type: object
status:
description: Status description
example: Success
type: string
status_code:
description: Status code
example: 200
type: integer
type:
description: Response type
example: sync
type: string
type: object
"400":
$ref: '#/responses/BadRequest'
"403":
$ref: '#/responses/Forbidden'
"404":
$ref: '#/responses/NotFound'
"500":
$ref: '#/responses/InternalServerError'
summary: Get the NVRAM variables under the given GUID
tags:
- instances
/1.0/instances/{name}/nvram?recursion=1:
get:
description: |-
Returns a map of NVRAM variable GUIDs and their associated names (URLs).
Only supported for VMs.
operationId: instance_nvram_get_recursion1
parameters:
- description: Instance name
in: path
name: name
required: true
type: string
- description: Project name
example: default
in: query
name: project
type: string
produces:
- application/json
responses:
"200":
description: API endpoints
schema:
description: Sync response
properties:
metadata:
additionalProperties:
description: List of endpoints
items:
type: string
type: array
description: UEFI variables
example: |-
{
"8be4df61-93ca-11d2-aa0d-00e098032b8c": [
"/1.0/instances/foo/nvram/8be4df61-93ca-11d2-aa0d-00e098032b8c/Boot0000",
"/1.0/instances/foo/nvram/8be4df61-93ca-11d2-aa0d-00e098032b8c/BootOrder"
]
}
type: object
status:
description: Status description
example: Success
type: string
status_code:
description: Status code
example: 200
type: integer
type:
description: Response type
example: sync
type: string
type: object
"400":
$ref: '#/responses/BadRequest'
"403":
$ref: '#/responses/Forbidden'
"404":
$ref: '#/responses/NotFound'
"500":
$ref: '#/responses/InternalServerError'
summary: Get the NVRAM variable GUIDs and names
tags:
- instances
/1.0/instances/{name}/nvram?recursion=2:
get:
description: |-
Returns a map of NVRAM variable GUIDs and their dissected values.
Only supported for VMs.
operationId: instance_nvram_get_recursion2
parameters:
- description: Instance name
in: path
name: name
required: true
type: string
- description: Project name
example: default
in: query
name: project
type: string
produces:
- application/json
responses:
"200":
description: NVRAM variables
schema:
description: Sync response
properties:
metadata:
additionalProperties:
additionalProperties:
$ref: '#/definitions/InstanceNVRAMVariable'
description: Namespaced UEFI variables
type: object
description: UEFI variables
type: object
status:
description: Status description
example: Success
type: string
status_code:
description: Status code
example: 200
type: integer
type:
description: Response type
example: sync
type: string
type: object
"400":
$ref: '#/responses/BadRequest'
"403":
$ref: '#/responses/Forbidden'
"404":
$ref: '#/responses/NotFound'
"500":
$ref: '#/responses/InternalServerError'
summary: Get the NVRAM variables
tags:
- instances
/1.0/instances/{name}/port-forward:
post:
consumes:

View File

@ -90,6 +90,7 @@ import (
"github.com/lxc/incus/v7/shared/revert"
"github.com/lxc/incus/v7/shared/subprocess"
localtls "github.com/lxc/incus/v7/shared/tls"
"github.com/lxc/incus/v7/shared/uefi"
"github.com/lxc/incus/v7/shared/units"
"github.com/lxc/incus/v7/shared/util"
)
@ -12193,3 +12194,65 @@ func buildDataFileInfo(nodeName string, m *qmp.Monitor, driveConf deviceConfig.M
reverter.Success()
return dataDev, nil
}
// GetNVRAM gets the NVRAM.
func (d *qemu) GetNVRAM() (*uefi.Store, error) {
if !d.IsRunning() {
// Mount the instance's config volume.
_, err := d.mount()
if err != nil {
return nil, err
}
defer logger.WarnOnError(d.unmount, "Failed to unmount instance")
_, err = os.Stat(d.nvramPath())
if errors.Is(err, os.ErrNotExist) {
// The NVRAM hasnt been initialized yet.
err = d.setupNvram()
if err != nil {
return nil, err
}
}
}
nvRAM, err := os.ReadFile(d.nvramPath())
if err != nil {
return nil, fmt.Errorf("Failed opening NVRAM file: %w", err)
}
return uefi.ParseNVRAM(nvRAM)
}
// SetNVRAM sets the NVRAM.
func (d *qemu) SetNVRAM(store *uefi.Store) error {
// Mount the instance's config volume.
_, err := d.mount()
if err != nil {
return err
}
defer logger.WarnOnError(d.unmount, "Failed to unmount instance")
_, err = os.Stat(d.nvramPath())
if errors.Is(err, os.ErrNotExist) {
// The NVRAM hasnt been initialized yet.
err = d.setupNvram()
if err != nil {
return err
}
}
f, err := os.Create(d.nvramPath())
if err != nil {
return fmt.Errorf("Failed opening NVRAM file: %w", err)
}
b, err := store.Bytes()
if err != nil {
return err
}
_, err = f.Write(b)
return err
}

View File

@ -24,6 +24,7 @@ import (
"github.com/lxc/incus/v7/shared/idmap"
"github.com/lxc/incus/v7/shared/ioprogress"
"github.com/lxc/incus/v7/shared/osinfo"
"github.com/lxc/incus/v7/shared/uefi"
)
// HookStart hook used when instance has started.
@ -226,6 +227,8 @@ type VM interface {
ConsoleLog() (string, error)
ConsoleScreenshot(screenshotFile *os.File) error
DumpGuestMemory(w *os.File, format string) error
GetNVRAM() (*uefi.Store, error)
SetNVRAM(store *uefi.Store) error
}
// CriuMigrationArgs arguments for CRIU migration.

View File

@ -558,6 +558,7 @@ var APIExtensions = []string{
"instance_port_forward",
"unix_block_limits",
"authorization_client_routing",
"instance_nvram",
}
// APIExtensionsCount returns the number of available API extensions.

234
po/de.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: LXD\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-13 05:46+0000\n"
"Last-Translator: Dklfajsjfi49wefklsf32 "
"<nlincus@users.noreply.hosted.weblate.org>\n"
@ -672,6 +672,20 @@ msgstr ""
msgid "'%s' isn't a supported file type"
msgstr "'%s' ist kein unterstützter Dateityp"
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, fuzzy, c-format
msgid "(error: %w)"
msgstr "Fehler: %v\n"
#: cmd/incus/low_level.go:464
#, fuzzy
msgid "(no timestamp)"
msgstr "Zeitstempel:\n"
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -794,7 +808,7 @@ msgstr ""
msgid "A client certificate is already present"
msgstr "Ein Client Zertifikat ist bereits erstellt worden"
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -833,6 +847,10 @@ msgstr "APP"
msgid "ARCHITECTURE"
msgstr "ARCHITEKTUR"
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
#, fuzzy
msgid "AUTH TYPE"
@ -1095,7 +1113,7 @@ msgstr "Alternativer Zertifikatsbezeichnung"
msgid "Always follow symbolic links in source path"
msgstr ""
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, fuzzy, c-format
msgid "An instance path is required for %s"
msgstr "Anhalten des Containers fehlgeschlagen!"
@ -1652,7 +1670,8 @@ msgstr "Clustering aktiviert"
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -2154,15 +2173,6 @@ msgstr ""
msgid "Date: %s"
msgstr "Erstellt: %s"
#: cmd/incus/debug.go:27
msgid "Debug commands"
msgstr ""
#: cmd/incus/debug.go:28
#, fuzzy
msgid "Debug commands for instances"
msgstr "Befehle in einer Instanz ausführen"
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr ""
@ -2464,7 +2474,7 @@ msgstr ""
msgid "Directory to run the command in (default /root)"
msgstr ""
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr ""
@ -2755,7 +2765,8 @@ msgstr "Alternatives config Verzeichnis."
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -3041,7 +3052,7 @@ msgid ""
"`2006/01/02 15:04 MST` format)"
msgstr ""
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
#, fuzzy
msgid "Export a virtual machine's memory state"
msgstr "kann nicht zum selben Container Namen kopieren"
@ -3090,7 +3101,7 @@ msgstr "Storage Buckets exportieren"
msgid "Export storage buckets as tarball."
msgstr "Storage Buckets als Dateien (.tar) exportieren."
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -3161,7 +3172,7 @@ msgstr "Check ob Instanz existiert fehlgeschlagen \"%s:%s\": %w"
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr ""
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, fuzzy, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -3252,8 +3263,8 @@ msgstr "Akzeptiere Zertifikat"
msgid "Failed starting sshfs: %w"
msgstr "Akzeptiere Zertifikat"
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, fuzzy, c-format
msgid "Failed to accept incoming connection: %w"
msgstr "Akzeptiere Zertifikat"
@ -3338,7 +3349,7 @@ msgstr "Akzeptiere Zertifikat"
msgid "Failed to delete original instance after copying it: %w"
msgstr "kann nicht zum selben Container Namen kopieren"
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, fuzzy, c-format
msgid "Failed to dump instance memory: %w"
msgstr "kann nicht zum selben Container Namen kopieren"
@ -3358,13 +3369,23 @@ msgstr "Akzeptiere Zertifikat"
msgid "Failed to find project: %w"
msgstr ""
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, fuzzy, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr "kann nicht zum selben Container Namen kopieren"
#: cmd/incus/low_level.go:496
#, fuzzy, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr "kann nicht zum selben Container Namen kopieren"
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, fuzzy, c-format
msgid "Failed to join cluster: %w"
msgstr "kann nicht zum selben Container Namen kopieren"
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, fuzzy, c-format
msgid "Failed to listen for connection: %w"
msgstr "Akzeptiere Zertifikat"
@ -3374,7 +3395,7 @@ msgstr "Akzeptiere Zertifikat"
msgid "Failed to load configuration: %s"
msgstr ""
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, fuzzy, c-format
msgid "Failed to open source file %q: %v"
@ -3611,16 +3632,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
"disable headers and \",header\" to enable it if missing, e.g. csv,header"
@ -3642,7 +3664,7 @@ msgstr ""
msgid "Format (table|compact)"
msgstr ""
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr ""
@ -3705,6 +3727,14 @@ msgstr ""
msgid "GPUs:"
msgstr ""
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
msgid "GUID NAME"
msgstr ""
#: cmd/incus/remote.go:926
#, fuzzy
msgid "Generate a client token derived from the client certificate"
@ -3849,6 +3879,14 @@ msgstr "Anhalten des Containers fehlgeschlagen!"
msgid "Get the key as an instance property"
msgstr ""
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
#, fuzzy
msgid "Get values for cluster group configuration keys"
@ -3944,7 +3982,7 @@ msgid ""
"container or virtual-machine)."
msgstr "Profil %s erstellt\n"
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr ""
@ -4021,6 +4059,10 @@ msgstr ""
msgid "INSTANCE NAME"
msgstr ""
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -4194,7 +4236,7 @@ msgstr "Herunterfahren des Containers erzwingen."
msgid "Import storage bucket"
msgstr "Kein Zertifikat für diese Verbindung"
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr ""
@ -4202,17 +4244,17 @@ msgstr ""
msgid "Import type, backup or iso (default \"backup\")"
msgstr ""
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, fuzzy, c-format
msgid "Importing bucket: %s"
msgstr "Herunterfahren des Containers erzwingen."
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, fuzzy, c-format
msgid "Importing custom volume: %s"
msgstr "Herunterfahren des Containers erzwingen."
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, fuzzy, c-format
msgid "Importing instance: %s"
msgstr "Herunterfahren des Containers erzwingen."
@ -4261,7 +4303,7 @@ msgstr ""
msgid "Instance name is: %s"
msgstr ""
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr ""
@ -4279,6 +4321,11 @@ msgstr "'/' ist kein gültiges Zeichen im Namen eines Sicherungspunktes\n"
msgid "Instance type"
msgstr ""
#: cmd/incus/low_level.go:502
#, fuzzy, c-format
msgid "Invalid GUID: %s"
msgstr "Ungültiges Ziel %s"
#: cmd/incus/cluster.go:1673
#, fuzzy
msgid "Invalid IP address or DNS name"
@ -4551,6 +4598,10 @@ msgid ""
" L - Location of the DHCP Lease (e.g. its cluster member)"
msgstr ""
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
#, fuzzy
msgid "List address sets across all projects"
@ -5458,6 +5509,15 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr ""
#: cmd/incus/low_level.go:33
msgid "Low-level commands"
msgstr ""
#: cmd/incus/low_level.go:34
#, fuzzy
msgid "Low-level commands for instances"
msgstr "Befehle in einer Instanz ausführen"
#: cmd/incus/network.go:976
#, fuzzy
msgid "Lower device"
@ -5546,6 +5606,11 @@ msgstr "Veröffentliche Abbild"
msgid "Make the image public"
msgstr "Veröffentliche Abbild"
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
#, fuzzy
msgid "Manage NVRAM on virtual machines"
msgstr "kann nicht zum selben Container Namen kopieren"
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr ""
@ -5910,12 +5975,12 @@ msgid ""
"If no target path is provided, start an SSH SFTP listener instead."
msgstr ""
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
#, fuzzy
msgid "Mount files from instances"
msgstr "kann nicht zum selben Container Namen kopieren"
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid ""
"Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
@ -5991,17 +6056,17 @@ msgstr ""
msgid "NAT"
msgstr ""
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
#, fuzzy
msgid "NBD access to a block storage volume"
msgstr "Kein Zertifikat für diese Verbindung"
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
#, fuzzy
msgid "NBD access to all of a virtual machine's disks"
msgstr "Kein Zertifikat für diese Verbindung"
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -6010,22 +6075,22 @@ msgid ""
"device name."
msgstr ""
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, fuzzy, c-format
msgid "NBD client connected %q"
msgstr "Entferntes Administrator Passwort"
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, fuzzy, c-format
msgid "NBD client disconnected %q"
msgstr "Entferntes Administrator Passwort"
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr ""
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, c-format
msgid "NBD listening on %v"
msgstr ""
@ -6866,7 +6931,7 @@ msgstr "kann nicht zum selben Container Namen kopieren"
msgid "Push files into instances"
msgstr "kann nicht zum selben Container Namen kopieren"
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
@ -6880,6 +6945,10 @@ msgstr ""
msgid "Query virtual machine images"
msgstr ""
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr ""
@ -7494,7 +7563,7 @@ msgstr "Alternatives config Verzeichnis."
msgid "Set a keepalive timeout for a remote"
msgstr ""
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr ""
@ -7852,7 +7921,7 @@ msgstr "Anhalten des Containers fehlgeschlagen!"
msgid "Set the key as an instance property"
msgstr ""
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr ""
@ -8177,7 +8246,7 @@ msgstr ""
msgid "Source:"
msgstr ""
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr ""
@ -8394,6 +8463,10 @@ msgstr ""
msgid "TARGET"
msgstr ""
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr ""
@ -8421,12 +8494,12 @@ msgstr ""
msgid "Target path %q already exists"
msgstr "entfernte Instanz %s existiert bereits"
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
#, fuzzy
msgid "Target path and --listen flag cannot be used together"
msgstr "--refresh kann nur mit Containern verwendet werden"
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr ""
@ -8868,6 +8941,11 @@ msgstr ""
msgid "Type: %s"
msgstr ""
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr ""
@ -8944,7 +9022,8 @@ msgstr "Unbekannter Befehl %s für Abbild"
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -8983,6 +9062,10 @@ msgstr "Unbekannter Befehl %s für Abbild"
msgid "Unknown output type %q"
msgstr "Unbekannter Befehl %s für Abbild"
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
#, fuzzy
msgid "Unset a cluster group's configuration keys"
@ -9304,6 +9387,11 @@ msgstr "Profil %s erstellt\n"
msgid "User aborted delete operation"
msgstr ""
#: cmd/incus/low_level.go:415
#, fuzzy
msgid "VARIABLE NAME"
msgstr "DATEINAME"
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -9880,12 +9968,6 @@ msgid ""
"standard output."
msgstr ""
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -9917,7 +9999,7 @@ msgid ""
" To create a symlink /bar in instance foo whose target is baz."
msgstr ""
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid ""
"incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
@ -10008,6 +10090,12 @@ msgid ""
" List instances with their running state and user comment."
msgstr ""
#: cmd/incus/low_level.go:65
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/monitor.go:43
msgid ""
"incus monitor --type=logging\n"
@ -10667,7 +10755,7 @@ msgstr "Profil %s erstellt\n"
msgid "network or integration"
msgstr "Profil %s erstellt\n"
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, fuzzy, c-format
msgid "new %s name"
msgstr "Name"
@ -10784,7 +10872,7 @@ msgstr "sshfs wurde gestoppt"
msgid "sshfs mounting %q on %q"
msgstr "sshfs mounted %q auf %q"
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
#, fuzzy
msgid "stdin can only be used once, with no other source arguments"
msgstr "--target kann nicht mit Instanzen verwendet werden"
@ -10797,7 +10885,7 @@ msgstr ""
msgid "tarball"
msgstr ""
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, fuzzy, c-format
msgid "target %s"
msgstr "<Ziel>"
@ -10854,11 +10942,15 @@ msgid "value"
msgstr ""
#: cmd/incus/usage/usage.go:868
msgid "variable"
msgstr ""
#: cmd/incus/usage/usage.go:869
#, fuzzy
msgid "volume"
msgstr "Spalten"
#: cmd/incus/usage/usage.go:869
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr ""
@ -10872,7 +10964,7 @@ msgstr "j"
msgid "yes"
msgstr "ja"
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr ""
@ -10995,10 +11087,6 @@ msgstr ""
#~ msgid "Invalid instance path: %q"
#~ msgstr "Ungültige Quelle %s"
#, fuzzy, c-format
#~ msgid "Invalid path %s"
#~ msgstr "Ungültiges Ziel %s"
#, fuzzy
#~ msgid "Invalid snapshot name"
#~ msgstr "Ungültige Quelle %s"

225
po/el.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: incus\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-13 05:44+0000\n"
"Last-Translator: Anonymous <noreply@weblate.org>\n"
"Language-Team: Greek <https://hosted.weblate.org/projects/incus/cli/el/>\n"
@ -416,6 +416,19 @@ msgstr ""
msgid "'%s' isn't a supported file type"
msgstr ""
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, c-format
msgid "(error: %w)"
msgstr ""
#: cmd/incus/low_level.go:464
msgid "(no timestamp)"
msgstr ""
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -527,7 +540,7 @@ msgstr ""
msgid "A client certificate is already present"
msgstr ""
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -565,6 +578,10 @@ msgstr ""
msgid "ARCHITECTURE"
msgstr ""
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr ""
@ -794,7 +811,7 @@ msgstr ""
msgid "Always follow symbolic links in source path"
msgstr ""
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, c-format
msgid "An instance path is required for %s"
msgstr ""
@ -1309,7 +1326,8 @@ msgstr ""
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -1768,14 +1786,6 @@ msgstr ""
msgid "Date: %s"
msgstr ""
#: cmd/incus/debug.go:27
msgid "Debug commands"
msgstr ""
#: cmd/incus/debug.go:28
msgid "Debug commands for instances"
msgstr ""
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr ""
@ -2028,7 +2038,7 @@ msgstr ""
msgid "Directory to run the command in (default /root)"
msgstr ""
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr ""
@ -2291,7 +2301,8 @@ msgstr ""
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -2518,7 +2529,7 @@ msgid ""
"`2006/01/02 15:04 MST` format)"
msgstr ""
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
msgid "Export a virtual machine's memory state"
msgstr ""
@ -2557,7 +2568,7 @@ msgstr ""
msgid "Export storage buckets as tarball."
msgstr ""
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -2625,7 +2636,7 @@ msgstr ""
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr ""
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -2716,8 +2727,8 @@ msgstr ""
msgid "Failed starting sshfs: %w"
msgstr ""
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, c-format
msgid "Failed to accept incoming connection: %w"
msgstr ""
@ -2802,7 +2813,7 @@ msgstr ""
msgid "Failed to delete original instance after copying it: %w"
msgstr ""
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, c-format
msgid "Failed to dump instance memory: %w"
msgstr ""
@ -2822,13 +2833,23 @@ msgstr ""
msgid "Failed to find project: %w"
msgstr ""
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr ""
#: cmd/incus/low_level.go:496
#, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr ""
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, c-format
msgid "Failed to join cluster: %w"
msgstr ""
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, c-format
msgid "Failed to listen for connection: %w"
msgstr ""
@ -2838,7 +2859,7 @@ msgstr ""
msgid "Failed to load configuration: %s"
msgstr ""
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, c-format
msgid "Failed to open source file %q: %v"
@ -3074,16 +3095,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
"disable headers and \",header\" to enable it if missing, e.g. csv,header"
@ -3105,7 +3127,7 @@ msgstr ""
msgid "Format (table|compact)"
msgstr ""
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr ""
@ -3168,6 +3190,14 @@ msgstr ""
msgid "GPUs:"
msgstr ""
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
msgid "GUID NAME"
msgstr ""
#: cmd/incus/remote.go:926
msgid "Generate a client token derived from the client certificate"
msgstr ""
@ -3297,6 +3327,14 @@ msgstr ""
msgid "Get the key as an instance property"
msgstr ""
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
msgid "Get values for cluster group configuration keys"
msgstr ""
@ -3378,7 +3416,7 @@ msgid ""
"container or virtual-machine)."
msgstr ""
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr ""
@ -3453,6 +3491,10 @@ msgstr ""
msgid "INSTANCE NAME"
msgstr ""
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -3614,7 +3656,7 @@ msgstr ""
msgid "Import storage bucket"
msgstr ""
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr ""
@ -3622,17 +3664,17 @@ msgstr ""
msgid "Import type, backup or iso (default \"backup\")"
msgstr ""
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, c-format
msgid "Importing bucket: %s"
msgstr ""
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, c-format
msgid "Importing custom volume: %s"
msgstr ""
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, c-format
msgid "Importing instance: %s"
msgstr ""
@ -3679,7 +3721,7 @@ msgstr ""
msgid "Instance name is: %s"
msgstr ""
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr ""
@ -3697,6 +3739,11 @@ msgstr ""
msgid "Instance type"
msgstr ""
#: cmd/incus/low_level.go:502
#, c-format
msgid "Invalid GUID: %s"
msgstr ""
#: cmd/incus/cluster.go:1673
msgid "Invalid IP address or DNS name"
msgstr ""
@ -3957,6 +4004,10 @@ msgid ""
" L - Location of the DHCP Lease (e.g. its cluster member)"
msgstr ""
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
msgid "List address sets across all projects"
msgstr ""
@ -4841,6 +4892,14 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr ""
#: cmd/incus/low_level.go:33
msgid "Low-level commands"
msgstr ""
#: cmd/incus/low_level.go:34
msgid "Low-level commands for instances"
msgstr ""
#: cmd/incus/network.go:976
msgid "Lower device"
msgstr ""
@ -4921,6 +4980,10 @@ msgstr ""
msgid "Make the image public"
msgstr ""
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
msgid "Manage NVRAM on virtual machines"
msgstr ""
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr ""
@ -5245,11 +5308,11 @@ msgid ""
"If no target path is provided, start an SSH SFTP listener instead."
msgstr ""
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
msgid "Mount files from instances"
msgstr ""
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid ""
"Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
@ -5322,15 +5385,15 @@ msgstr ""
msgid "NAT"
msgstr ""
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
msgid "NBD access to a block storage volume"
msgstr ""
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
msgid "NBD access to all of a virtual machine's disks"
msgstr ""
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -5339,22 +5402,22 @@ msgid ""
"device name."
msgstr ""
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, c-format
msgid "NBD client connected %q"
msgstr ""
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, c-format
msgid "NBD client disconnected %q"
msgstr ""
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr ""
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, c-format
msgid "NBD listening on %v"
msgstr ""
@ -6157,7 +6220,7 @@ msgstr ""
msgid "Push files into instances"
msgstr ""
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
@ -6171,6 +6234,10 @@ msgstr ""
msgid "Query virtual machine images"
msgstr ""
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr ""
@ -6733,7 +6800,7 @@ msgstr ""
msgid "Set a keepalive timeout for a remote"
msgstr ""
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr ""
@ -7060,7 +7127,7 @@ msgstr ""
msgid "Set the key as an instance property"
msgstr ""
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr ""
@ -7355,7 +7422,7 @@ msgstr ""
msgid "Source:"
msgstr ""
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr ""
@ -7560,6 +7627,10 @@ msgstr ""
msgid "TARGET"
msgstr ""
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr ""
@ -7587,11 +7658,11 @@ msgstr ""
msgid "Target path %q already exists"
msgstr ""
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
msgid "Target path and --listen flag cannot be used together"
msgstr ""
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr ""
@ -8024,6 +8095,11 @@ msgstr ""
msgid "Type: %s"
msgstr ""
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr ""
@ -8096,7 +8172,8 @@ msgstr ""
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -8135,6 +8212,10 @@ msgstr ""
msgid "Unknown output type %q"
msgstr ""
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
msgid "Unset a cluster group's configuration keys"
msgstr ""
@ -8414,6 +8495,10 @@ msgstr ""
msgid "User aborted delete operation"
msgstr ""
#: cmd/incus/low_level.go:415
msgid "VARIABLE NAME"
msgstr ""
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -8939,12 +9024,6 @@ msgid ""
"standard output."
msgstr ""
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -8972,7 +9051,7 @@ msgid ""
" To create a symlink /bar in instance foo whose target is baz."
msgstr ""
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid ""
"incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
@ -9063,6 +9142,12 @@ msgid ""
" List instances with their running state and user comment."
msgstr ""
#: cmd/incus/low_level.go:65
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/monitor.go:43
msgid ""
"incus monitor --type=logging\n"
@ -9547,7 +9632,7 @@ msgstr ""
msgid "network or integration"
msgstr ""
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, c-format
msgid "new %s name"
msgstr ""
@ -9656,7 +9741,7 @@ msgstr ""
msgid "sshfs mounting %q on %q"
msgstr ""
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
msgid "stdin can only be used once, with no other source arguments"
msgstr ""
@ -9668,7 +9753,7 @@ msgstr ""
msgid "tarball"
msgstr ""
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, c-format
msgid "target %s"
msgstr ""
@ -9725,10 +9810,14 @@ msgid "value"
msgstr ""
#: cmd/incus/usage/usage.go:868
msgid "volume"
msgid "variable"
msgstr ""
#: cmd/incus/usage/usage.go:869
msgid "volume"
msgstr ""
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr ""
@ -9742,7 +9831,7 @@ msgstr ""
msgid "yes"
msgstr ""
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr ""

230
po/es.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: lxd\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-13 05:41+0000\n"
"Last-Translator: Kazantsev Mikhail <kazan417@mail.ru>\n"
"Language-Team: Spanish <https://hosted.weblate.org/projects/incus/cli/es/>\n"
@ -671,6 +671,19 @@ msgstr ""
msgid "'%s' isn't a supported file type"
msgstr "%s no es un tipo de archivo soportado."
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, c-format
msgid "(error: %w)"
msgstr ""
#: cmd/incus/low_level.go:464
msgid "(no timestamp)"
msgstr ""
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -792,7 +805,7 @@ msgstr ""
msgid "A client certificate is already present"
msgstr "Certificado del cliente almacenado en el servidor: "
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -830,6 +843,10 @@ msgstr ""
msgid "ARCHITECTURE"
msgstr "ARQUITECTURA"
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr ""
@ -1066,7 +1083,7 @@ msgstr "Acepta certificado"
msgid "Always follow symbolic links in source path"
msgstr ""
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, fuzzy, c-format
msgid "An instance path is required for %s"
msgstr "Dispositivo %s añadido a %s"
@ -1595,7 +1612,8 @@ msgstr ""
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -2074,16 +2092,6 @@ msgstr ""
msgid "Date: %s"
msgstr "Auto actualización: %s"
#: cmd/incus/debug.go:27
#, fuzzy
msgid "Debug commands"
msgstr "Comandos:"
#: cmd/incus/debug.go:28
#, fuzzy
msgid "Debug commands for instances"
msgstr "Aliases:"
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr ""
@ -2357,7 +2365,7 @@ msgstr "El directorio importado no está disponible en esta plataforma"
msgid "Directory to run the command in (default /root)"
msgstr ""
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr ""
@ -2635,7 +2643,8 @@ msgstr ""
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -2865,7 +2874,7 @@ msgid ""
"`2006/01/02 15:04 MST` format)"
msgstr ""
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
#, fuzzy
msgid "Export a virtual machine's memory state"
msgstr "Copiando la imagen: %s"
@ -2911,7 +2920,7 @@ msgstr "Aliases:"
msgid "Export storage buckets as tarball."
msgstr "No se puede proveer el nombre del container a la lista"
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -2979,7 +2988,7 @@ msgstr "Nombre del Miembro del Cluster"
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr ""
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, fuzzy, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -3070,8 +3079,8 @@ msgstr "Acepta certificado"
msgid "Failed starting sshfs: %w"
msgstr "Acepta certificado"
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, fuzzy, c-format
msgid "Failed to accept incoming connection: %w"
msgstr "Acepta certificado"
@ -3156,7 +3165,7 @@ msgstr "Acepta certificado"
msgid "Failed to delete original instance after copying it: %w"
msgstr "Perfil para aplicar al nuevo contenedor"
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, fuzzy, c-format
msgid "Failed to dump instance memory: %w"
msgstr "Nombre del Miembro del Cluster"
@ -3176,13 +3185,23 @@ msgstr "Acepta certificado"
msgid "Failed to find project: %w"
msgstr ""
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, fuzzy, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr "Nombre del Miembro del Cluster"
#: cmd/incus/low_level.go:496
#, fuzzy, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr "Nombre del Miembro del Cluster"
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, fuzzy, c-format
msgid "Failed to join cluster: %w"
msgstr "Nombre del Miembro del Cluster"
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, fuzzy, c-format
msgid "Failed to listen for connection: %w"
msgstr "Acepta certificado"
@ -3192,7 +3211,7 @@ msgstr "Acepta certificado"
msgid "Failed to load configuration: %s"
msgstr ""
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, fuzzy, c-format
msgid "Failed to open source file %q: %v"
@ -3429,16 +3448,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
"disable headers and \",header\" to enable it if missing, e.g. csv,header"
@ -3460,7 +3480,7 @@ msgstr ""
msgid "Format (table|compact)"
msgstr ""
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr ""
@ -3523,6 +3543,14 @@ msgstr ""
msgid "GPUs:"
msgstr ""
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
msgid "GUID NAME"
msgstr ""
#: cmd/incus/remote.go:926
#, fuzzy
msgid "Generate a client token derived from the client certificate"
@ -3664,6 +3692,14 @@ msgstr ""
msgid "Get the key as an instance property"
msgstr ""
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
#, fuzzy
msgid "Get values for cluster group configuration keys"
@ -3754,7 +3790,7 @@ msgid ""
"container or virtual-machine)."
msgstr ""
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr ""
@ -3831,6 +3867,10 @@ msgstr ""
msgid "INSTANCE NAME"
msgstr ""
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -4001,7 +4041,7 @@ msgstr "No se puede proveer el nombre del container a la lista"
msgid "Import storage bucket"
msgstr "Aliases:"
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr ""
@ -4009,17 +4049,17 @@ msgstr ""
msgid "Import type, backup or iso (default \"backup\")"
msgstr ""
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, fuzzy, c-format
msgid "Importing bucket: %s"
msgstr "No se puede proveer el nombre del container a la lista"
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, fuzzy, c-format
msgid "Importing custom volume: %s"
msgstr "No se puede proveer el nombre del container a la lista"
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, fuzzy, c-format
msgid "Importing instance: %s"
msgstr "No se puede proveer el nombre del container a la lista"
@ -4069,7 +4109,7 @@ msgstr ""
msgid "Instance name is: %s"
msgstr "Nombre del contenedor es: %s"
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr ""
@ -4087,6 +4127,11 @@ msgstr "Nombre del contenedor es: %s"
msgid "Instance type"
msgstr ""
#: cmd/incus/low_level.go:502
#, fuzzy, c-format
msgid "Invalid GUID: %s"
msgstr "Nombre del contenedor es: %s"
#: cmd/incus/cluster.go:1673
#, fuzzy
msgid "Invalid IP address or DNS name"
@ -4353,6 +4398,10 @@ msgid ""
" L - Location of the DHCP Lease (e.g. its cluster member)"
msgstr ""
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
#, fuzzy
msgid "List address sets across all projects"
@ -5256,6 +5305,16 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr ""
#: cmd/incus/low_level.go:33
#, fuzzy
msgid "Low-level commands"
msgstr "Comandos:"
#: cmd/incus/low_level.go:34
#, fuzzy
msgid "Low-level commands for instances"
msgstr "Aliases:"
#: cmd/incus/network.go:976
msgid "Lower device"
msgstr ""
@ -5337,6 +5396,11 @@ msgstr ""
msgid "Make the image public"
msgstr ""
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
#, fuzzy
msgid "Manage NVRAM on virtual machines"
msgstr "Copiando la imagen: %s"
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr ""
@ -5681,12 +5745,12 @@ msgid ""
"If no target path is provided, start an SSH SFTP listener instead."
msgstr ""
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
#, fuzzy
msgid "Mount files from instances"
msgstr "Aliases:"
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid ""
"Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
@ -5760,17 +5824,17 @@ msgstr ""
msgid "NAT"
msgstr ""
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
#, fuzzy
msgid "NBD access to a block storage volume"
msgstr "No se puede proveer el nombre del container a la lista"
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
#, fuzzy
msgid "NBD access to all of a virtual machine's disks"
msgstr "No se puede proveer el nombre del container a la lista"
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -5779,22 +5843,22 @@ msgid ""
"device name."
msgstr ""
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, c-format
msgid "NBD client connected %q"
msgstr ""
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, c-format
msgid "NBD client disconnected %q"
msgstr ""
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr ""
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, c-format
msgid "NBD listening on %v"
msgstr ""
@ -6616,7 +6680,7 @@ msgstr "Nombre del Miembro del Cluster"
msgid "Push files into instances"
msgstr ""
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
@ -6630,6 +6694,10 @@ msgstr ""
msgid "Query virtual machine images"
msgstr ""
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr ""
@ -7222,7 +7290,7 @@ msgstr "Perfil %s creado"
msgid "Set a keepalive timeout for a remote"
msgstr ""
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr ""
@ -7566,7 +7634,7 @@ msgstr ""
msgid "Set the key as an instance property"
msgstr ""
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr ""
@ -7878,7 +7946,7 @@ msgstr ""
msgid "Source:"
msgstr ""
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr ""
@ -8088,6 +8156,10 @@ msgstr ""
msgid "TARGET"
msgstr ""
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr ""
@ -8115,11 +8187,11 @@ msgstr ""
msgid "Target path %q already exists"
msgstr "El dispostivo ya existe: %s"
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
msgid "Target path and --listen flag cannot be used together"
msgstr ""
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr ""
@ -8558,6 +8630,11 @@ msgstr ""
msgid "Type: %s"
msgstr "Expira: %s"
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr ""
@ -8631,7 +8708,8 @@ msgstr ""
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -8670,6 +8748,10 @@ msgstr ""
msgid "Unknown output type %q"
msgstr ""
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
#, fuzzy
msgid "Unset a cluster group's configuration keys"
@ -8983,6 +9065,10 @@ msgstr "Perfil %s creado"
msgid "User aborted delete operation"
msgstr ""
#: cmd/incus/low_level.go:415
msgid "VARIABLE NAME"
msgstr ""
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -9519,12 +9605,6 @@ msgid ""
"standard output."
msgstr ""
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -9552,7 +9632,7 @@ msgid ""
" To create a symlink /bar in instance foo whose target is baz."
msgstr ""
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid ""
"incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
@ -9643,6 +9723,12 @@ msgid ""
" List instances with their running state and user comment."
msgstr ""
#: cmd/incus/low_level.go:65
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/monitor.go:43
msgid ""
"incus monitor --type=logging\n"
@ -10132,7 +10218,7 @@ msgstr "Perfil %s creado"
msgid "network or integration"
msgstr "Perfil %s creado"
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, c-format
msgid "new %s name"
msgstr ""
@ -10245,7 +10331,7 @@ msgstr ""
msgid "sshfs mounting %q on %q"
msgstr ""
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
#, fuzzy
msgid "stdin can only be used once, with no other source arguments"
msgstr "--container-only no se puede pasar cuando la fuente es una instantánea"
@ -10258,7 +10344,7 @@ msgstr ""
msgid "tarball"
msgstr ""
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, c-format
msgid "target %s"
msgstr ""
@ -10315,11 +10401,15 @@ msgid "value"
msgstr ""
#: cmd/incus/usage/usage.go:868
msgid "variable"
msgstr ""
#: cmd/incus/usage/usage.go:869
#, fuzzy
msgid "volume"
msgstr "Columnas"
#: cmd/incus/usage/usage.go:869
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr ""
@ -10333,7 +10423,7 @@ msgstr ""
msgid "yes"
msgstr ""
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr ""

236
po/fr.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: LXD\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-13 05:47+0000\n"
"Last-Translator: Varlorg <varlorg@gmail.com>\n"
"Language-Team: French <https://hosted.weblate.org/projects/incus/cli/fr/>\n"
@ -683,6 +683,20 @@ msgstr ""
msgid "'%s' isn't a supported file type"
msgstr "'%s' n'est pas un format de fichier pris en charge"
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, fuzzy, c-format
msgid "(error: %w)"
msgstr "erreur : %v"
#: cmd/incus/low_level.go:464
#, fuzzy
msgid "(no timestamp)"
msgstr "Horodatage:"
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -801,7 +815,7 @@ msgstr "=> Requête %d :"
msgid "A client certificate is already present"
msgstr "Un certificat client est déjà présent"
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -839,6 +853,10 @@ msgstr "APP"
msgid "ARCHITECTURE"
msgstr "ARCHITECTURE"
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr "TYPE D'AUTHENTIFICATION"
@ -1093,7 +1111,7 @@ msgstr "Nom alternatif du certificat"
msgid "Always follow symbolic links in source path"
msgstr "Toujours suivre les liens symboliques source"
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, fuzzy, c-format
msgid "An instance path is required for %s"
msgstr "Certaines instances n'ont pas réussi à %s"
@ -1631,7 +1649,8 @@ msgstr "Clustering activé"
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -2127,14 +2146,6 @@ msgstr "Le démon continue de fonctionner après %ds d'attente"
msgid "Date: %s"
msgstr "Date : %s"
#: cmd/incus/debug.go:27
msgid "Debug commands"
msgstr "Commandes de débogage"
#: cmd/incus/debug.go:28
msgid "Debug commands for instances"
msgstr "Commandes de débogage pour les instances"
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr "ID VLAN par défaut"
@ -2394,7 +2405,7 @@ msgstr "L'importation de répertoire n'est pas disponible sur cette plateforme"
msgid "Directory to run the command in (default /root)"
msgstr "Dossier dans lequel exécuter la commande (/root par défaut)"
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr ""
"Désactivez l'authentification lorsque vous utilisez SSH SFTP en mode écoute"
@ -2681,7 +2692,8 @@ msgstr "Clé de configuration invalide"
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -2974,7 +2986,7 @@ msgid ""
"`2006/01/02 15:04 MST` format)"
msgstr ""
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
msgid "Export a virtual machine's memory state"
msgstr "Exporter létat de la mémoire dune machine virtuelle"
@ -3017,7 +3029,7 @@ msgstr "Exporter un bucket de stockage"
msgid "Export storage buckets as tarball."
msgstr "Exporter un bucket de stockage en tarball."
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -3090,7 +3102,7 @@ msgstr "Échec de la vérification de l'existence de l'instance \"%s\" : %w"
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr "Échec de la connexion au SFTP de l'instance pour le client %q: %v"
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -3185,8 +3197,8 @@ msgstr "Échec de l'exécution de la commande: %w"
msgid "Failed starting sshfs: %w"
msgstr "Échec du démarrage de sshfs: %w"
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, c-format
msgid "Failed to accept incoming connection: %w"
msgstr "Échec de l'acceptation de la connexion entrante: %w"
@ -3273,7 +3285,7 @@ msgid "Failed to delete original instance after copying it: %w"
msgstr ""
"Échec de la suppression de l'instance originale après l'avoir copiée: %w"
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, fuzzy, c-format
msgid "Failed to dump instance memory: %w"
msgstr "Échec de la mise à jour de l'état du membre du cluster: %w"
@ -3294,13 +3306,23 @@ msgstr ""
msgid "Failed to find project: %w"
msgstr "Échec de la recherche du projet: %w"
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, fuzzy, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr "Échec de la mise à jour de l'état du membre du cluster: %w"
#: cmd/incus/low_level.go:496
#, fuzzy, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr "Échec de la mise à jour de l'état du membre du cluster: %w"
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, c-format
msgid "Failed to join cluster: %w"
msgstr "Échec de l'adhésion au cluster: %w"
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, c-format
msgid "Failed to listen for connection: %w"
msgstr "Échec de la mise en écoute des demandes de connexion: %w"
@ -3310,7 +3332,7 @@ msgstr "Échec de la mise en écoute des demandes de connexion: %w"
msgid "Failed to load configuration: %s"
msgstr "Échec du chargement de la configuration : %s"
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, c-format
msgid "Failed to open source file %q: %v"
@ -3573,16 +3595,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
"disable headers and \",header\" to enable it if missing, e.g. csv,header"
@ -3607,7 +3630,7 @@ msgstr "Format (pem|pfx)"
msgid "Format (table|compact)"
msgstr "Format (table|compact)"
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr "Format de lexport mémoire (elf, win-dmp, kdump-zlib, kdump-raw-zlib…)"
@ -3671,6 +3694,15 @@ msgstr "GPU:"
msgid "GPUs:"
msgstr "GPUs:"
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
#, fuzzy
msgid "GUID NAME"
msgstr "NOM"
#: cmd/incus/remote.go:926
#, fuzzy
msgid "Generate a client token derived from the client certificate"
@ -3819,6 +3851,14 @@ msgstr "Copie de l'image : %s"
msgid "Get the key as an instance property"
msgstr "Obtenir la clé en tant que propriété d'instance"
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
msgid "Get values for cluster group configuration keys"
msgstr ""
@ -3921,7 +3961,7 @@ msgstr ""
"Pour un instantané, préciser son nom (le type doit être explicitement "
"défini)."
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr ""
@ -3999,6 +4039,10 @@ msgstr "IMAGES"
msgid "INSTANCE NAME"
msgstr "NOM DE L'INSTANCE"
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -4176,7 +4220,7 @@ msgstr "Importer une sauvegarde dinstance"
msgid "Import storage bucket"
msgstr "Importer un bucket de stockage"
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr "Le type d'importation doit être \"backup\" ou \"iso\""
@ -4185,17 +4229,17 @@ msgstr "Le type d'importation doit être \"backup\" ou \"iso\""
msgid "Import type, backup or iso (default \"backup\")"
msgstr "Type d'importation: \"backup\" ou \"iso\" (par défaut \"backup\")"
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, c-format
msgid "Importing bucket: %s"
msgstr "Import du bucket : %s"
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, c-format
msgid "Importing custom volume: %s"
msgstr "Import du volume personnalisé : %s"
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, c-format
msgid "Importing instance: %s"
msgstr "Import de linstance : %s"
@ -4247,7 +4291,7 @@ msgstr "Instance déconnectée pour le client %q"
msgid "Instance name is: %s"
msgstr "Le nom de linstance est : %s"
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
#, fuzzy
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr ""
@ -4268,6 +4312,11 @@ msgstr "Le nom de linstance est : %s"
msgid "Instance type"
msgstr "Type d'instance"
#: cmd/incus/low_level.go:502
#, fuzzy, c-format
msgid "Invalid GUID: %s"
msgstr "Cible invalide %s"
#: cmd/incus/cluster.go:1673
#, fuzzy
msgid "Invalid IP address or DNS name"
@ -4553,6 +4602,10 @@ msgstr ""
" t : type\n"
" L : localisation du bail DHCP (membre du cluster)"
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
#, fuzzy
msgid "List address sets across all projects"
@ -5949,6 +6002,16 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr "Commandes dadministration de bas niveau pour les clusters"
#: cmd/incus/low_level.go:33
#, fuzzy
msgid "Low-level commands"
msgstr "Commandes de débogage"
#: cmd/incus/low_level.go:34
#, fuzzy
msgid "Low-level commands for instances"
msgstr "Commandes de débogage pour les instances"
#: cmd/incus/network.go:976
#, fuzzy
msgid "Lower device"
@ -6034,6 +6097,11 @@ msgstr "Rendre limage publique"
msgid "Make the image public"
msgstr "Rendre limage publique"
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
#, fuzzy
msgid "Manage NVRAM on virtual machines"
msgstr "Créer une nouvelle machine virtuelle"
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr "Gérer les réseaux et y attacher des instances"
@ -6387,11 +6455,11 @@ msgid ""
"If no target path is provided, start an SSH SFTP listener instead."
msgstr ""
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
msgid "Mount files from instances"
msgstr "Monter des fichiers depuis une instance"
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid ""
"Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
@ -6481,17 +6549,17 @@ msgstr "NOM"
msgid "NAT"
msgstr "NAT"
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
#, fuzzy
msgid "NBD access to a block storage volume"
msgstr "Supprimer un volume de stockage personnalisé"
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
#, fuzzy
msgid "NBD access to all of a virtual machine's disks"
msgstr "Supprimer un volume de stockage personnalisé"
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -6500,22 +6568,22 @@ msgid ""
"device name."
msgstr ""
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, fuzzy, c-format
msgid "NBD client connected %q"
msgstr "Client SSH %q connecté"
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, fuzzy, c-format
msgid "NBD client disconnected %q"
msgstr "Client SSH déconnecté %q"
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr ""
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, fuzzy, c-format
msgid "NBD listening on %v"
msgstr "Le SFTP SSH écoute sur %v"
@ -7344,7 +7412,7 @@ msgstr "Transfert de l'image : %s"
msgid "Push files into instances"
msgstr "Création du conteneur"
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
@ -7358,6 +7426,10 @@ msgstr "Le chemin de la requête doit commencer par « / »"
msgid "Query virtual machine images"
msgstr ""
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
#, fuzzy
msgid "RESOURCE"
@ -7956,7 +8028,7 @@ msgstr "Définir des clefs de configuration sur un membre du cluster"
msgid "Set a keepalive timeout for a remote"
msgstr ""
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr ""
@ -8307,7 +8379,7 @@ msgstr "Copie de l'image : %s"
msgid "Set the key as an instance property"
msgstr ""
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr ""
@ -8616,7 +8688,7 @@ msgstr ""
msgid "Source:"
msgstr "Source:"
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr ""
@ -8827,6 +8899,10 @@ msgstr "PRIS LE"
msgid "TARGET"
msgstr "CIBLE"
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr "JETON"
@ -8854,11 +8930,11 @@ msgstr "La cible nest pas dans un cluster"
msgid "Target path %q already exists"
msgstr "Le chemin cible %q existe déjà"
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
msgid "Target path and --listen flag cannot be used together"
msgstr ""
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr "Le chemin cible doit être un répertoire"
@ -9326,6 +9402,11 @@ msgstr "Type de pair («local» ou «remote»)"
msgid "Type: %s"
msgstr "Type : %s"
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr "ILLIMITÉ"
@ -9401,7 +9482,8 @@ msgstr ""
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -9440,6 +9522,10 @@ msgstr "Clef inconnue : %s"
msgid "Unknown output type %q"
msgstr "Type de sortie inconnu : %q"
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
msgid "Unset a cluster group's configuration keys"
msgstr "Supprimer une clef de configuration dun groupe de serveurs"
@ -9746,6 +9832,11 @@ msgstr "Lopération a été annulée par lutilisateur"
msgid "User aborted delete operation"
msgstr "Lopération de suppression a été annulée par lutilisateur"
#: cmd/incus/low_level.go:415
#, fuzzy
msgid "VARIABLE NAME"
msgstr "FICHIER"
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -10312,12 +10403,6 @@ msgid ""
"standard output."
msgstr ""
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -10345,7 +10430,7 @@ msgid ""
" To create a symlink /bar in instance foo whose target is baz."
msgstr ""
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid ""
"incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
@ -10441,6 +10526,12 @@ msgid ""
" List instances with their running state and user comment."
msgstr ""
#: cmd/incus/low_level.go:65
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/monitor.go:43
msgid ""
"incus monitor --type=logging\n"
@ -10989,7 +11080,7 @@ msgstr "intégration réseau"
msgid "network or integration"
msgstr "Lister les intégrations réseau"
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, c-format
msgid "new %s name"
msgstr "%s (nouveau nom)"
@ -11098,7 +11189,7 @@ msgstr "sshfs s'est arrêté"
msgid "sshfs mounting %q on %q"
msgstr "sshfs monté %q sur %q"
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
#, fuzzy
msgid "stdin can only be used once, with no other source arguments"
msgstr "--all ne peut pas être utilisé avec dautres arguments"
@ -11111,7 +11202,7 @@ msgstr "cible du lien symbolique"
msgid "tarball"
msgstr "tarball"
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, c-format
msgid "target %s"
msgstr "%s cible"
@ -11169,10 +11260,15 @@ msgid "value"
msgstr "valeur"
#: cmd/incus/usage/usage.go:868
#, fuzzy
msgid "variable"
msgstr "désactivé"
#: cmd/incus/usage/usage.go:869
msgid "volume"
msgstr "volume"
#: cmd/incus/usage/usage.go:869
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr "UUID dalerte"
@ -11186,7 +11282,7 @@ msgstr "o"
msgid "yes"
msgstr "oui"
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr "zone"
@ -11363,10 +11459,6 @@ msgstr "« %s»"
#~ msgid "Invalid instance path: %q"
#~ msgstr "Chemin dinstance invalide : %q"
#, fuzzy, c-format
#~ msgid "Invalid path %s"
#~ msgstr "Cible invalide %s"
#, fuzzy
#~ msgid "Invalid snapshot name"
#~ msgstr "Le nom du conteneur est : %s"

227
po/id.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: incus\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-13 05:49+0000\n"
"Last-Translator: Kazantsev Mikhail <kazan417@mail.ru>\n"
"Language-Team: Indonesian <https://hosted.weblate.org/projects/incus/cli/id/"
@ -417,6 +417,19 @@ msgstr ""
msgid "'%s' isn't a supported file type"
msgstr "'%s' bukan tipe berkas yang didukung"
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, fuzzy, c-format
msgid "(error: %w)"
msgstr "galat: %v"
#: cmd/incus/low_level.go:464
msgid "(no timestamp)"
msgstr ""
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -530,7 +543,7 @@ msgstr "=> Query %d:"
msgid "A client certificate is already present"
msgstr ""
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -569,6 +582,10 @@ msgstr "APP"
msgid "ARCHITECTURE"
msgstr "ARSITEKTUR"
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr "TIPE AUTH"
@ -799,7 +816,7 @@ msgstr ""
msgid "Always follow symbolic links in source path"
msgstr ""
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, fuzzy, c-format
msgid "An instance path is required for %s"
msgstr "Beberapa instansi gagal %s"
@ -1318,7 +1335,8 @@ msgstr ""
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -1777,14 +1795,6 @@ msgstr ""
msgid "Date: %s"
msgstr "Tanggal: %s"
#: cmd/incus/debug.go:27
msgid "Debug commands"
msgstr ""
#: cmd/incus/debug.go:28
msgid "Debug commands for instances"
msgstr ""
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr "ID VLAN baku"
@ -2042,7 +2052,7 @@ msgstr "Impor direktori tidak tersedia di platform ini"
msgid "Directory to run the command in (default /root)"
msgstr ""
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr "Nonaktifkan autentikasi saat menggunakan pendengar SSH SFTP"
@ -2306,7 +2316,8 @@ msgstr ""
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -2534,7 +2545,7 @@ msgid ""
"`2006/01/02 15:04 MST` format)"
msgstr ""
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
msgid "Export a virtual machine's memory state"
msgstr ""
@ -2575,7 +2586,7 @@ msgstr ""
msgid "Export storage buckets as tarball."
msgstr ""
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -2643,7 +2654,7 @@ msgstr ""
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr ""
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -2734,8 +2745,8 @@ msgstr ""
msgid "Failed starting sshfs: %w"
msgstr ""
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, c-format
msgid "Failed to accept incoming connection: %w"
msgstr ""
@ -2820,7 +2831,7 @@ msgstr ""
msgid "Failed to delete original instance after copying it: %w"
msgstr ""
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, c-format
msgid "Failed to dump instance memory: %w"
msgstr ""
@ -2840,13 +2851,23 @@ msgstr ""
msgid "Failed to find project: %w"
msgstr ""
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr ""
#: cmd/incus/low_level.go:496
#, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr ""
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, c-format
msgid "Failed to join cluster: %w"
msgstr ""
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, c-format
msgid "Failed to listen for connection: %w"
msgstr ""
@ -2856,7 +2877,7 @@ msgstr ""
msgid "Failed to load configuration: %s"
msgstr ""
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, c-format
msgid "Failed to open source file %q: %v"
@ -3092,16 +3113,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
"disable headers and \",header\" to enable it if missing, e.g. csv,header"
@ -3123,7 +3145,7 @@ msgstr ""
msgid "Format (table|compact)"
msgstr ""
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr ""
@ -3186,6 +3208,14 @@ msgstr ""
msgid "GPUs:"
msgstr ""
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
msgid "GUID NAME"
msgstr ""
#: cmd/incus/remote.go:926
msgid "Generate a client token derived from the client certificate"
msgstr ""
@ -3316,6 +3346,14 @@ msgstr ""
msgid "Get the key as an instance property"
msgstr ""
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
msgid "Get values for cluster group configuration keys"
msgstr ""
@ -3397,7 +3435,7 @@ msgid ""
"container or virtual-machine)."
msgstr ""
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr ""
@ -3472,6 +3510,10 @@ msgstr ""
msgid "INSTANCE NAME"
msgstr ""
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -3634,7 +3676,7 @@ msgstr ""
msgid "Import storage bucket"
msgstr ""
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr ""
@ -3642,17 +3684,17 @@ msgstr ""
msgid "Import type, backup or iso (default \"backup\")"
msgstr ""
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, c-format
msgid "Importing bucket: %s"
msgstr ""
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, c-format
msgid "Importing custom volume: %s"
msgstr ""
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, c-format
msgid "Importing instance: %s"
msgstr ""
@ -3700,7 +3742,7 @@ msgstr ""
msgid "Instance name is: %s"
msgstr ""
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr ""
@ -3718,6 +3760,11 @@ msgstr "[<remote>:]<instansi> <nama snapshot>"
msgid "Instance type"
msgstr ""
#: cmd/incus/low_level.go:502
#, c-format
msgid "Invalid GUID: %s"
msgstr ""
#: cmd/incus/cluster.go:1673
msgid "Invalid IP address or DNS name"
msgstr ""
@ -3979,6 +4026,10 @@ msgid ""
" L - Location of the DHCP Lease (e.g. its cluster member)"
msgstr ""
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
msgid "List address sets across all projects"
msgstr ""
@ -4865,6 +4916,14 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr ""
#: cmd/incus/low_level.go:33
msgid "Low-level commands"
msgstr ""
#: cmd/incus/low_level.go:34
msgid "Low-level commands for instances"
msgstr ""
#: cmd/incus/network.go:976
msgid "Lower device"
msgstr ""
@ -4945,6 +5004,10 @@ msgstr ""
msgid "Make the image public"
msgstr ""
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
msgid "Manage NVRAM on virtual machines"
msgstr ""
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr ""
@ -5270,11 +5333,11 @@ msgid ""
"If no target path is provided, start an SSH SFTP listener instead."
msgstr ""
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
msgid "Mount files from instances"
msgstr ""
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid ""
"Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
@ -5347,17 +5410,17 @@ msgstr ""
msgid "NAT"
msgstr ""
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
#, fuzzy
msgid "NBD access to a block storage volume"
msgstr "Volume penyimpanan snapshot"
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
#, fuzzy
msgid "NBD access to all of a virtual machine's disks"
msgstr "Volume penyimpanan snapshot"
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -5366,22 +5429,22 @@ msgid ""
"device name."
msgstr ""
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, c-format
msgid "NBD client connected %q"
msgstr ""
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, c-format
msgid "NBD client disconnected %q"
msgstr ""
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr ""
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, c-format
msgid "NBD listening on %v"
msgstr ""
@ -6195,7 +6258,7 @@ msgstr "Volume penyimpanan snapshot"
msgid "Push files into instances"
msgstr ""
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
@ -6209,6 +6272,10 @@ msgstr ""
msgid "Query virtual machine images"
msgstr ""
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr ""
@ -6774,7 +6841,7 @@ msgstr ""
msgid "Set a keepalive timeout for a remote"
msgstr ""
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr ""
@ -7103,7 +7170,7 @@ msgstr ""
msgid "Set the key as an instance property"
msgstr ""
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr ""
@ -7401,7 +7468,7 @@ msgstr ""
msgid "Source:"
msgstr ""
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr ""
@ -7607,6 +7674,10 @@ msgstr ""
msgid "TARGET"
msgstr ""
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr ""
@ -7634,11 +7705,11 @@ msgstr ""
msgid "Target path %q already exists"
msgstr ""
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
msgid "Target path and --listen flag cannot be used together"
msgstr ""
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr ""
@ -8071,6 +8142,11 @@ msgstr ""
msgid "Type: %s"
msgstr ""
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr ""
@ -8143,7 +8219,8 @@ msgstr ""
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -8182,6 +8259,10 @@ msgstr ""
msgid "Unknown output type %q"
msgstr ""
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
msgid "Unset a cluster group's configuration keys"
msgstr ""
@ -8467,6 +8548,11 @@ msgstr ""
msgid "User aborted delete operation"
msgstr ""
#: cmd/incus/low_level.go:415
#, fuzzy
msgid "VARIABLE NAME"
msgstr "NAMA_BERKAS"
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -9000,12 +9086,6 @@ msgid ""
"standard output."
msgstr ""
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -9033,7 +9113,7 @@ msgid ""
" To create a symlink /bar in instance foo whose target is baz."
msgstr ""
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid ""
"incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
@ -9124,6 +9204,12 @@ msgid ""
" List instances with their running state and user comment."
msgstr ""
#: cmd/incus/low_level.go:65
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/monitor.go:43
msgid ""
"incus monitor --type=logging\n"
@ -9613,7 +9699,7 @@ msgstr "Hapus integrasi jaringan"
msgid "network or integration"
msgstr "Hapus integrasi jaringan"
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, c-format
msgid "new %s name"
msgstr ""
@ -9727,7 +9813,7 @@ msgstr ""
msgid "sshfs mounting %q on %q"
msgstr ""
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
#, fuzzy
msgid "stdin can only be used once, with no other source arguments"
msgstr "--expanded tidak bisa dipakai dengan server"
@ -9740,7 +9826,7 @@ msgstr ""
msgid "tarball"
msgstr ""
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, fuzzy, c-format
msgid "target %s"
msgstr "<target>"
@ -9798,10 +9884,15 @@ msgstr ""
#: cmd/incus/usage/usage.go:868
#, fuzzy
msgid "variable"
msgstr "dinonaktifkan"
#: cmd/incus/usage/usage.go:869
#, fuzzy
msgid "volume"
msgstr "Kolom"
#: cmd/incus/usage/usage.go:869
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr ""
@ -9815,7 +9906,7 @@ msgstr "y"
msgid "yes"
msgstr "ya"
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr ""

View File

@ -7,7 +7,7 @@
msgid ""
msgstr "Project-Id-Version: incus\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -389,6 +389,19 @@ msgstr ""
msgid "'%s' isn't a supported file type"
msgstr ""
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, c-format
msgid "(error: %w)"
msgstr ""
#: cmd/incus/low_level.go:464
msgid "(no timestamp)"
msgstr ""
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -498,7 +511,7 @@ msgstr ""
msgid "A client certificate is already present"
msgstr ""
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid "A target file name must be specified when pushing from stdin; the target is a directory"
msgstr ""
@ -534,6 +547,10 @@ msgstr ""
msgid "ARCHITECTURE"
msgstr ""
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr ""
@ -753,7 +770,7 @@ msgstr ""
msgid "Always follow symbolic links in source path"
msgstr ""
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, c-format
msgid "An instance path is required for %s"
msgstr ""
@ -1218,7 +1235,7 @@ msgstr ""
msgid "Clustering enabled"
msgstr ""
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130 cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402 cmd/incus/config_trust.go:589 cmd/incus/image.go:1077 cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054 cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74 cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417 cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118 cmd/incus/network_zone.go:123 cmd/incus/operation.go:152 cmd/incus/profile.go:704 cmd/incus/project.go:522 cmd/incus/remote.go:1041 cmd/incus/snapshot.go:344 cmd/incus/storage.go:666 cmd/incus/storage_bucket.go:467 cmd/incus/storage_bucket.go:863 cmd/incus/storage_volume.go:1492 cmd/incus/storage_volume_snapshot.go:327 cmd/incus/top.go:68 cmd/incus/warning.go:98
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130 cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402 cmd/incus/config_trust.go:589 cmd/incus/image.go:1077 cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/low_level.go:394 cmd/incus/network.go:1054 cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74 cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417 cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118 cmd/incus/network_zone.go:123 cmd/incus/operation.go:152 cmd/incus/profile.go:704 cmd/incus/project.go:522 cmd/incus/remote.go:1041 cmd/incus/snapshot.go:344 cmd/incus/storage.go:666 cmd/incus/storage_bucket.go:467 cmd/incus/storage_bucket.go:863 cmd/incus/storage_volume.go:1492 cmd/incus/storage_volume_snapshot.go:327 cmd/incus/top.go:68 cmd/incus/warning.go:98
msgid "Columns"
msgstr ""
@ -1633,14 +1650,6 @@ msgstr ""
msgid "Date: %s"
msgstr ""
#: cmd/incus/debug.go:27
msgid "Debug commands"
msgstr ""
#: cmd/incus/debug.go:28
msgid "Debug commands for instances"
msgstr ""
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr ""
@ -1886,7 +1895,7 @@ msgstr ""
msgid "Directory to run the command in (default /root)"
msgstr ""
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr ""
@ -2138,7 +2147,7 @@ msgstr ""
msgid "Edit trust configurations as YAML"
msgstr ""
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159 cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432 cmd/incus/config_trust.go:614 cmd/incus/image.go:1124 cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101 cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99 cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443 cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151 cmd/incus/network_zone.go:159 cmd/incus/operation.go:184 cmd/incus/profile.go:748 cmd/incus/project.go:563 cmd/incus/remote.go:1068 cmd/incus/snapshot.go:378 cmd/incus/storage.go:704 cmd/incus/storage_bucket.go:501 cmd/incus/storage_bucket.go:888 cmd/incus/storage_volume.go:1651 cmd/incus/storage_volume_snapshot.go:431 cmd/incus/top.go:96 cmd/incus/warning.go:236
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159 cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432 cmd/incus/config_trust.go:614 cmd/incus/image.go:1124 cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/low_level.go:426 cmd/incus/network.go:1101 cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99 cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443 cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151 cmd/incus/network_zone.go:159 cmd/incus/operation.go:184 cmd/incus/profile.go:748 cmd/incus/project.go:563 cmd/incus/remote.go:1068 cmd/incus/snapshot.go:378 cmd/incus/storage.go:704 cmd/incus/storage_bucket.go:501 cmd/incus/storage_bucket.go:888 cmd/incus/storage_volume.go:1651 cmd/incus/storage_volume_snapshot.go:431 cmd/incus/top.go:96 cmd/incus/warning.go:236
#, c-format
msgid "Empty column entry (redundant, leading or trailing command) in '%s'"
msgstr ""
@ -2327,7 +2336,7 @@ msgstr ""
msgid "Expiry for the new snapshot (either a time span like `1d 3H` or a date in `2006/01/02 15:04 MST` format)"
msgstr ""
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
msgid "Export a virtual machine's memory state"
msgstr ""
@ -2365,7 +2374,7 @@ msgstr ""
msgid "Export storage buckets as tarball."
msgstr ""
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid "Export the current memory state of a running virtual machine into a dump file.\n"
" This can be useful for debugging or analysis purposes."
msgstr ""
@ -2429,7 +2438,7 @@ msgstr ""
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr ""
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407 cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407 cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, c-format
msgid "Failed connecting to instance SFTP: %w"
msgstr ""
@ -2519,7 +2528,7 @@ msgstr ""
msgid "Failed starting sshfs: %w"
msgstr ""
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128 cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128 cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, c-format
msgid "Failed to accept incoming connection: %w"
msgstr ""
@ -2603,7 +2612,7 @@ msgstr ""
msgid "Failed to delete original instance after copying it: %w"
msgstr ""
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, c-format
msgid "Failed to dump instance memory: %w"
msgstr ""
@ -2623,12 +2632,22 @@ msgstr ""
msgid "Failed to find project: %w"
msgstr ""
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr ""
#: cmd/incus/low_level.go:496
#, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr ""
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, c-format
msgid "Failed to join cluster: %w"
msgstr ""
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114 cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114 cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, c-format
msgid "Failed to listen for connection: %w"
msgstr ""
@ -2638,7 +2657,7 @@ msgstr ""
msgid "Failed to load configuration: %s"
msgstr ""
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826 cmd/incus/utils_sftp.go:330
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828 cmd/incus/utils_sftp.go:330
#, c-format
msgid "Failed to open source file %q: %v"
msgstr ""
@ -2854,7 +2873,7 @@ msgstr ""
msgid "Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to disable headers and \",header\" to enable if demanded, e.g. csv,header"
msgstr ""
#: cmd/incus/admin_sql.go:57 cmd/incus/alias.go:118 cmd/incus/cluster.go:173 cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272 cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588 cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143 cmd/incus/network.go:1055 cmd/incus/network.go:1252 cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822 cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/admin_sql.go:57 cmd/incus/alias.go:118 cmd/incus/cluster.go:173 cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272 cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588 cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143 cmd/incus/low_level.go:393 cmd/incus/network.go:1055 cmd/incus/network.go:1252 cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822 cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
msgid "Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to disable headers and \",header\" to enable it if missing, e.g. csv,header"
msgstr ""
@ -2874,7 +2893,7 @@ msgstr ""
msgid "Format (table|compact)"
msgstr ""
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid "Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr ""
@ -2934,6 +2953,14 @@ msgstr ""
msgid "GPUs:"
msgstr ""
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
msgid "GUID NAME"
msgstr ""
#: cmd/incus/remote.go:926
msgid "Generate a client token derived from the client certificate"
msgstr ""
@ -3057,6 +3084,14 @@ msgstr ""
msgid "Get the key as an instance property"
msgstr ""
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
msgid "Get values for cluster group configuration keys"
msgstr ""
@ -3134,7 +3169,7 @@ msgid "Get values for storage volume configuration keys\n"
"For snapshots, add the snapshot name (only if type is one of custom, container or virtual-machine)."
msgstr ""
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr ""
@ -3209,6 +3244,10 @@ msgstr ""
msgid "INSTANCE NAME"
msgstr ""
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -3366,7 +3405,7 @@ msgstr ""
msgid "Import storage bucket"
msgstr ""
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr ""
@ -3374,17 +3413,17 @@ msgstr ""
msgid "Import type, backup or iso (default \"backup\")"
msgstr ""
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, c-format
msgid "Importing bucket: %s"
msgstr ""
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, c-format
msgid "Importing custom volume: %s"
msgstr ""
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, c-format
msgid "Importing instance: %s"
msgstr ""
@ -3431,7 +3470,7 @@ msgstr ""
msgid "Instance name is: %s"
msgstr ""
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr ""
@ -3449,6 +3488,11 @@ msgstr ""
msgid "Instance type"
msgstr ""
#: cmd/incus/low_level.go:502
#, c-format
msgid "Invalid GUID: %s"
msgstr ""
#: cmd/incus/cluster.go:1673
msgid "Invalid IP address or DNS name"
msgstr ""
@ -3702,6 +3746,10 @@ msgid "List DHCP leases\n"
" L - Location of the DHCP Lease (e.g. its cluster member)"
msgstr ""
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
msgid "List address sets across all projects"
msgstr ""
@ -4544,6 +4592,14 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr ""
#: cmd/incus/low_level.go:33
msgid "Low-level commands"
msgstr ""
#: cmd/incus/low_level.go:34
msgid "Low-level commands for instances"
msgstr ""
#: cmd/incus/network.go:976
msgid "Lower device"
msgstr ""
@ -4624,6 +4680,10 @@ msgstr ""
msgid "Make the image public"
msgstr ""
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
msgid "Manage NVRAM on virtual machines"
msgstr ""
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr ""
@ -4937,11 +4997,11 @@ msgid "Mount files from custom storage volumes.\n"
"If no target path is provided, start an SSH SFTP listener instead."
msgstr ""
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
msgid "Mount files from instances"
msgstr ""
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid "Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
msgstr ""
@ -4998,15 +5058,15 @@ msgstr ""
msgid "NAT"
msgstr ""
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
msgid "NBD access to a block storage volume"
msgstr ""
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
msgid "NBD access to all of a virtual machine's disks"
msgstr ""
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid "NBD access to all of a virtual machine's disks\n"
"\n"
"This exposes all the disks of a running virtual machine over a local NBD\n"
@ -5014,22 +5074,22 @@ msgid "NBD access to all of a virtual machine's disks\n"
"device name."
msgstr ""
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, c-format
msgid "NBD client connected %q"
msgstr ""
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, c-format
msgid "NBD client disconnected %q"
msgstr ""
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr ""
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, c-format
msgid "NBD listening on %v"
msgstr ""
@ -5800,7 +5860,7 @@ msgstr ""
msgid "Push files into instances"
msgstr ""
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875 cmd/incus/utils_sftp.go:341
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877 cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
msgstr ""
@ -5813,6 +5873,10 @@ msgstr ""
msgid "Query virtual machine images"
msgstr ""
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr ""
@ -6354,7 +6418,7 @@ msgstr ""
msgid "Set a keepalive timeout for a remote"
msgstr ""
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr ""
@ -6646,7 +6710,7 @@ msgstr ""
msgid "Set the key as an instance property"
msgstr ""
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr ""
@ -6930,7 +6994,7 @@ msgstr ""
msgid "Source:"
msgstr ""
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr ""
@ -7134,6 +7198,10 @@ msgstr ""
msgid "TARGET"
msgstr ""
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr ""
@ -7155,11 +7223,11 @@ msgstr ""
msgid "Target path %q already exists"
msgstr ""
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
msgid "Target path and --listen flag cannot be used together"
msgstr ""
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr ""
@ -7558,6 +7626,11 @@ msgstr ""
msgid "Type: %s"
msgstr ""
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr ""
@ -7622,7 +7695,7 @@ msgstr ""
msgid "Unknown channel type for client %q: %s"
msgstr ""
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165 cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438 cmd/incus/config_trust.go:620 cmd/incus/image.go:1130 cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107 cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105 cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449 cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157 cmd/incus/network_zone.go:165 cmd/incus/operation.go:190 cmd/incus/profile.go:754 cmd/incus/project.go:569 cmd/incus/remote.go:1074 cmd/incus/snapshot.go:384 cmd/incus/storage.go:710 cmd/incus/storage_bucket.go:507 cmd/incus/storage_bucket.go:894 cmd/incus/storage_volume.go:1657 cmd/incus/storage_volume_snapshot.go:437 cmd/incus/top.go:102 cmd/incus/warning.go:242
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165 cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438 cmd/incus/config_trust.go:620 cmd/incus/image.go:1130 cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/low_level.go:432 cmd/incus/network.go:1107 cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105 cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449 cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157 cmd/incus/network_zone.go:165 cmd/incus/operation.go:190 cmd/incus/profile.go:754 cmd/incus/project.go:569 cmd/incus/remote.go:1074 cmd/incus/snapshot.go:384 cmd/incus/storage.go:710 cmd/incus/storage_bucket.go:507 cmd/incus/storage_bucket.go:894 cmd/incus/storage_volume.go:1657 cmd/incus/storage_volume_snapshot.go:437 cmd/incus/top.go:102 cmd/incus/warning.go:242
#, c-format
msgid "Unknown column shorthand char '%c' in '%s'"
msgstr ""
@ -7652,6 +7725,10 @@ msgstr ""
msgid "Unknown output type %q"
msgstr ""
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
msgid "Unset a cluster group's configuration keys"
msgstr ""
@ -7916,6 +7993,10 @@ msgstr ""
msgid "User aborted delete operation"
msgstr ""
#: cmd/incus/low_level.go:415
msgid "VARIABLE NAME"
msgstr ""
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -8406,11 +8487,6 @@ msgid "incus custom volume file pull local v1/foo/etc/hosts .\n"
" To pull /etc/hosts from the custom volume and write its output to standard output."
msgstr ""
#: cmd/incus/debug.go:56
msgid "incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/exec.go:57
msgid "incus exec c1 bash\n"
" Run the \"bash\" command in instance \"c1\"\n"
@ -8435,7 +8511,7 @@ msgid "incus file create foo/bar\n"
" To create a symlink /bar in instance foo whose target is baz."
msgstr ""
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid "incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
"\n"
@ -8507,6 +8583,11 @@ msgid "incus list -c nFs46,volatile.eth0.hwaddr:MAC,config:image.os,devices:et
" List instances with their running state and user comment."
msgstr ""
#: cmd/incus/low_level.go:65
msgid "incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/monitor.go:43
msgid "incus monitor --type=logging\n"
" Only show log messages.\n"
@ -8913,7 +8994,7 @@ msgstr ""
msgid "network or integration"
msgstr ""
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, c-format
msgid "new %s name"
msgstr ""
@ -9021,7 +9102,7 @@ msgstr ""
msgid "sshfs mounting %q on %q"
msgstr ""
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
msgid "stdin can only be used once, with no other source arguments"
msgstr ""
@ -9033,7 +9114,7 @@ msgstr ""
msgid "tarball"
msgstr ""
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, c-format
msgid "target %s"
msgstr ""
@ -9090,10 +9171,14 @@ msgid "value"
msgstr ""
#: cmd/incus/usage/usage.go:868
msgid "volume"
msgid "variable"
msgstr ""
#: cmd/incus/usage/usage.go:869
msgid "volume"
msgstr ""
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr ""
@ -9105,7 +9190,7 @@ msgstr ""
msgid "yes"
msgstr ""
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr ""

230
po/it.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: lxd\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-13 05:45+0000\n"
"Last-Translator: Alberto Donato <ack@users.noreply.hosted.weblate.org>\n"
"Language-Team: Italian <https://hosted.weblate.org/projects/incus/cli/it/>\n"
@ -681,6 +681,19 @@ msgstr ""
msgid "'%s' isn't a supported file type"
msgstr "'%s' non è un tipo di file supportato."
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, c-format
msgid "(error: %w)"
msgstr ""
#: cmd/incus/low_level.go:464
msgid "(no timestamp)"
msgstr ""
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -794,7 +807,7 @@ msgstr ""
msgid "A client certificate is already present"
msgstr "Certificato del client salvato dal server: "
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -832,6 +845,10 @@ msgstr ""
msgid "ARCHITECTURE"
msgstr "ARCHITETTURA"
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr ""
@ -1067,7 +1084,7 @@ msgstr "Accetta certificato"
msgid "Always follow symbolic links in source path"
msgstr ""
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, fuzzy, c-format
msgid "An instance path is required for %s"
msgstr "errore di processamento degli alias %s\n"
@ -1590,7 +1607,8 @@ msgstr ""
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -2067,16 +2085,6 @@ msgstr ""
msgid "Date: %s"
msgstr "Aggiornamento automatico: %s"
#: cmd/incus/debug.go:27
#, fuzzy
msgid "Debug commands"
msgstr "Comandi:"
#: cmd/incus/debug.go:28
#, fuzzy
msgid "Debug commands for instances"
msgstr "Creazione del container in corso"
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr ""
@ -2347,7 +2355,7 @@ msgstr "Import da directory non disponibile su questa piattaforma"
msgid "Directory to run the command in (default /root)"
msgstr ""
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr ""
@ -2627,7 +2635,8 @@ msgstr ""
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -2855,7 +2864,7 @@ msgid ""
"`2006/01/02 15:04 MST` format)"
msgstr ""
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
#, fuzzy
msgid "Export a virtual machine's memory state"
msgstr "Creazione del container in corso"
@ -2901,7 +2910,7 @@ msgstr "Creazione del container in corso"
msgid "Export storage buckets as tarball."
msgstr "Creazione del container in corso"
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -2969,7 +2978,7 @@ msgstr "Il nome del container è: %s"
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr ""
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, fuzzy, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -3060,8 +3069,8 @@ msgstr "Accetta certificato"
msgid "Failed starting sshfs: %w"
msgstr "Accetta certificato"
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, fuzzy, c-format
msgid "Failed to accept incoming connection: %w"
msgstr "Accetta certificato"
@ -3146,7 +3155,7 @@ msgstr "Accetta certificato"
msgid "Failed to delete original instance after copying it: %w"
msgstr "Accetta certificato"
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, fuzzy, c-format
msgid "Failed to dump instance memory: %w"
msgstr "Il nome del container è: %s"
@ -3166,13 +3175,23 @@ msgstr "Accetta certificato"
msgid "Failed to find project: %w"
msgstr ""
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, fuzzy, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr "Il nome del container è: %s"
#: cmd/incus/low_level.go:496
#, fuzzy, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr "Il nome del container è: %s"
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, fuzzy, c-format
msgid "Failed to join cluster: %w"
msgstr "Il nome del container è: %s"
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, fuzzy, c-format
msgid "Failed to listen for connection: %w"
msgstr "Accetta certificato"
@ -3182,7 +3201,7 @@ msgstr "Accetta certificato"
msgid "Failed to load configuration: %s"
msgstr ""
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, fuzzy, c-format
msgid "Failed to open source file %q: %v"
@ -3419,16 +3438,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
"disable headers and \",header\" to enable it if missing, e.g. csv,header"
@ -3450,7 +3470,7 @@ msgstr ""
msgid "Format (table|compact)"
msgstr ""
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr ""
@ -3513,6 +3533,14 @@ msgstr ""
msgid "GPUs:"
msgstr ""
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
msgid "GUID NAME"
msgstr ""
#: cmd/incus/remote.go:926
#, fuzzy
msgid "Generate a client token derived from the client certificate"
@ -3652,6 +3680,14 @@ msgstr ""
msgid "Get the key as an instance property"
msgstr ""
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
#, fuzzy
msgid "Get values for cluster group configuration keys"
@ -3741,7 +3777,7 @@ msgid ""
"container or virtual-machine)."
msgstr ""
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr ""
@ -3818,6 +3854,10 @@ msgstr ""
msgid "INSTANCE NAME"
msgstr ""
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -3985,7 +4025,7 @@ msgstr "Creazione del container in corso"
msgid "Import storage bucket"
msgstr "Creazione del container in corso"
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr ""
@ -3993,17 +4033,17 @@ msgstr ""
msgid "Import type, backup or iso (default \"backup\")"
msgstr ""
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, fuzzy, c-format
msgid "Importing bucket: %s"
msgstr "Creazione del container in corso"
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, fuzzy, c-format
msgid "Importing custom volume: %s"
msgstr "Creazione del container in corso"
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, fuzzy, c-format
msgid "Importing instance: %s"
msgstr "Creazione del container in corso"
@ -4052,7 +4092,7 @@ msgstr ""
msgid "Instance name is: %s"
msgstr "Il nome del container è: %s"
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr ""
@ -4070,6 +4110,11 @@ msgstr "Il nome del container è: %s"
msgid "Instance type"
msgstr ""
#: cmd/incus/low_level.go:502
#, fuzzy, c-format
msgid "Invalid GUID: %s"
msgstr "Proprietà errata: %s"
#: cmd/incus/cluster.go:1673
#, fuzzy
msgid "Invalid IP address or DNS name"
@ -4335,6 +4380,10 @@ msgid ""
" L - Location of the DHCP Lease (e.g. its cluster member)"
msgstr ""
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
#, fuzzy
msgid "List address sets across all projects"
@ -5239,6 +5288,16 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr ""
#: cmd/incus/low_level.go:33
#, fuzzy
msgid "Low-level commands"
msgstr "Comandi:"
#: cmd/incus/low_level.go:34
#, fuzzy
msgid "Low-level commands for instances"
msgstr "Creazione del container in corso"
#: cmd/incus/network.go:976
#, fuzzy
msgid "Lower device"
@ -5321,6 +5380,11 @@ msgstr ""
msgid "Make the image public"
msgstr ""
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
#, fuzzy
msgid "Manage NVRAM on virtual machines"
msgstr "Creazione del container in corso"
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr ""
@ -5669,12 +5733,12 @@ msgid ""
"If no target path is provided, start an SSH SFTP listener instead."
msgstr ""
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
#, fuzzy
msgid "Mount files from instances"
msgstr "Creazione del container in corso"
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid ""
"Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
@ -5748,17 +5812,17 @@ msgstr ""
msgid "NAT"
msgstr ""
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
#, fuzzy
msgid "NBD access to a block storage volume"
msgstr "Creazione del container in corso"
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
#, fuzzy
msgid "NBD access to all of a virtual machine's disks"
msgstr "Creazione del container in corso"
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -5767,22 +5831,22 @@ msgid ""
"device name."
msgstr ""
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, c-format
msgid "NBD client connected %q"
msgstr ""
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, c-format
msgid "NBD client disconnected %q"
msgstr ""
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr ""
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, c-format
msgid "NBD listening on %v"
msgstr ""
@ -6597,7 +6661,7 @@ msgstr "Creazione del container in corso"
msgid "Push files into instances"
msgstr "Creazione del container in corso"
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
@ -6611,6 +6675,10 @@ msgstr ""
msgid "Query virtual machine images"
msgstr ""
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr ""
@ -7202,7 +7270,7 @@ msgstr "Il nome del container è: %s"
msgid "Set a keepalive timeout for a remote"
msgstr ""
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr ""
@ -7542,7 +7610,7 @@ msgstr ""
msgid "Set the key as an instance property"
msgstr ""
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr ""
@ -7854,7 +7922,7 @@ msgstr ""
msgid "Source:"
msgstr ""
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr ""
@ -8064,6 +8132,10 @@ msgstr ""
msgid "TARGET"
msgstr ""
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr ""
@ -8092,11 +8164,11 @@ msgstr ""
msgid "Target path %q already exists"
msgstr "il remote %s esiste già"
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
msgid "Target path and --listen flag cannot be used together"
msgstr ""
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr ""
@ -8534,6 +8606,11 @@ msgstr ""
msgid "Type: %s"
msgstr ""
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr ""
@ -8610,7 +8687,8 @@ msgstr ""
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -8649,6 +8727,10 @@ msgstr ""
msgid "Unknown output type %q"
msgstr ""
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
#, fuzzy
msgid "Unset a cluster group's configuration keys"
@ -8961,6 +9043,10 @@ msgstr "Il nome del container è: %s"
msgid "User aborted delete operation"
msgstr ""
#: cmd/incus/low_level.go:415
msgid "VARIABLE NAME"
msgstr ""
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -9497,12 +9583,6 @@ msgid ""
"standard output."
msgstr ""
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -9530,7 +9610,7 @@ msgid ""
" To create a symlink /bar in instance foo whose target is baz."
msgstr ""
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid ""
"incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
@ -9621,6 +9701,12 @@ msgid ""
" List instances with their running state and user comment."
msgstr ""
#: cmd/incus/low_level.go:65
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/monitor.go:43
msgid ""
"incus monitor --type=logging\n"
@ -10111,7 +10197,7 @@ msgstr "Il nome del container è: %s"
msgid "network or integration"
msgstr "Il nome del container è: %s"
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, c-format
msgid "new %s name"
msgstr ""
@ -10222,7 +10308,7 @@ msgstr ""
msgid "sshfs mounting %q on %q"
msgstr ""
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
msgid "stdin can only be used once, with no other source arguments"
msgstr ""
@ -10234,7 +10320,7 @@ msgstr ""
msgid "tarball"
msgstr ""
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, c-format
msgid "target %s"
msgstr ""
@ -10291,11 +10377,15 @@ msgid "value"
msgstr ""
#: cmd/incus/usage/usage.go:868
msgid "variable"
msgstr ""
#: cmd/incus/usage/usage.go:869
#, fuzzy
msgid "volume"
msgstr "Colonne"
#: cmd/incus/usage/usage.go:869
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr ""
@ -10309,7 +10399,7 @@ msgstr ""
msgid "yes"
msgstr "si"
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr ""

241
po/ja.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: LXD\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-14 14:01+0000\n"
"Last-Translator: KATOH Yasufumi <karma@jazz.email.ne.jp>\n"
"Language-Team: Japanese <https://hosted.weblate.org/projects/incus/cli/ja/>\n"
@ -671,6 +671,20 @@ msgstr "%s の %s 構文は非推奨です; %s\n"
msgid "'%s' isn't a supported file type"
msgstr "'%s' はサポートされないタイプのファイルです"
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, fuzzy, c-format
msgid "(error: %w)"
msgstr "エラー: %v"
#: cmd/incus/low_level.go:464
#, fuzzy
msgid "(no timestamp)"
msgstr "タイムスタンプ:"
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -787,7 +801,7 @@ msgstr "=> クエリ %d:"
msgid "A client certificate is already present"
msgstr "クライアント証明書はすでに存在しています"
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -827,6 +841,10 @@ msgstr "APP"
msgid "ARCHITECTURE"
msgstr "ARCHITECTURE"
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr "AUTH TYPE"
@ -1076,7 +1094,7 @@ msgstr "別の証明署名"
msgid "Always follow symbolic links in source path"
msgstr "常にソースパスの象徴的なリンクに従ってください"
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, fuzzy, c-format
msgid "An instance path is required for %s"
msgstr "一部のインスタンスで %s が失敗しました"
@ -1609,7 +1627,8 @@ msgstr "クラスタリングが有効になりました"
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -2099,14 +2118,6 @@ msgstr "%d 秒のタイムアウトが経過しましたが、デーモンがま
msgid "Date: %s"
msgstr "日付: %s"
#: cmd/incus/debug.go:27
msgid "Debug commands"
msgstr "デバッグコマンド"
#: cmd/incus/debug.go:28
msgid "Debug commands for instances"
msgstr "インスタンスのデバッグコマンド"
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr "デフォルト VLAN ID"
@ -2366,7 +2377,7 @@ msgstr "このプラットフォーム上ではディレクトリのインポー
msgid "Directory to run the command in (default /root)"
msgstr "コマンドを実行するディレクトリ (デフォルト /root)"
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr "SSH SFTP リスナーを使う際に認証を無効化します"
@ -2655,7 +2666,8 @@ msgstr "信頼済みクライアント設定をYAMLで編集します"
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -2940,7 +2952,7 @@ msgstr ""
"新しいスナップショットの有効期限(`1d 3H` のような期間指定もしくは "
"`2006/01/02 15:04 MST` 形式の日時)"
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
msgid "Export a virtual machine's memory state"
msgstr "仮想マシンのメモリ状態をエクスポートします"
@ -2982,7 +2994,7 @@ msgstr "ストレージバケットをエクスポートします"
msgid "Export storage buckets as tarball."
msgstr "ストレージバケットを tarball 形式でエクスポートします。"
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -3055,7 +3067,7 @@ msgstr "インスタンスの存在確認に失敗しました \"%s:%s\": %w"
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr "クライアント %q に対する SFTP インスタンスの接続に失敗しました: %v"
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -3146,8 +3158,8 @@ msgstr "コマンドの実行に失敗しました: %w"
msgid "Failed starting sshfs: %w"
msgstr "sshfs の起動に失敗しました: %w"
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, c-format
msgid "Failed to accept incoming connection: %w"
msgstr "受信接続の受け入れに失敗しました: %w"
@ -3232,7 +3244,7 @@ msgstr "ストレージボリュームのバックアップ作成に失敗しま
msgid "Failed to delete original instance after copying it: %w"
msgstr "移動元のインスタンスをコピーしたあとの削除に失敗しました: %w"
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, c-format
msgid "Failed to dump instance memory: %w"
msgstr "インスタンスのメモリーのダンプに失敗しました: %w"
@ -3252,13 +3264,23 @@ msgstr "ストレージボリュームのバックアップファイルの取得
msgid "Failed to find project: %w"
msgstr "プロジェクトが見つけられませんでした: %w"
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, fuzzy, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr "インスタンスのメモリーのダンプに失敗しました: %w"
#: cmd/incus/low_level.go:496
#, fuzzy, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr "インスタンスのメモリーのダンプに失敗しました: %w"
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, c-format
msgid "Failed to join cluster: %w"
msgstr "クラスターへの join に失敗しました: %w"
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, c-format
msgid "Failed to listen for connection: %w"
msgstr "コネクションのリッスンに失敗しました: %w"
@ -3268,7 +3290,7 @@ msgstr "コネクションのリッスンに失敗しました: %w"
msgid "Failed to load configuration: %s"
msgstr "設定のロードに失敗しました: %s"
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, c-format
msgid "Failed to open source file %q: %v"
@ -3528,16 +3550,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
"disable headers and \",header\" to enable it if missing, e.g. csv,header"
@ -3562,7 +3585,7 @@ msgstr "フォーマット (pem|pfx)"
msgid "Format (table|compact)"
msgstr "フォーマット (table|compact)"
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr ""
@ -3627,6 +3650,15 @@ msgstr "GPU:"
msgid "GPUs:"
msgstr "GPUs:"
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
#, fuzzy
msgid "GUID NAME"
msgstr "NAME"
#: cmd/incus/remote.go:926
msgid "Generate a client token derived from the client certificate"
msgstr "クライアント証明書からクライアントトークンを生成します"
@ -3774,6 +3806,14 @@ msgstr "ストレージボリュームのプロパティからキーに対する
msgid "Get the key as an instance property"
msgstr "key をインスタンスプロパティとして取得します"
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
#, fuzzy
msgid "Get values for cluster group configuration keys"
@ -3860,7 +3900,7 @@ msgstr ""
"lxc storage volume edit [<remote>:]<pool> <volume> < volume.yaml\n"
" pool.yaml の内容でストレージボリュームを更新します。"
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
#, fuzzy
msgid "Get write access to the disk"
msgstr "ディスクへの書き込みアクセス権を取得する"
@ -3938,6 +3978,10 @@ msgstr "IMAGES"
msgid "INSTANCE NAME"
msgstr "インスタンス名"
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -4121,7 +4165,7 @@ msgstr "インスタンスのバックアップをインポートします"
msgid "Import storage bucket"
msgstr "ストレージバケットを一覧表示します"
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr ""
"インポートするタイプは \"backup\" もしくは \"iso\" である必要があります"
@ -4130,17 +4174,17 @@ msgstr ""
msgid "Import type, backup or iso (default \"backup\")"
msgstr "インポートするタイプ。backup もしくは iso (デフォルト \\\"backup\\\")"
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, fuzzy, c-format
msgid "Importing bucket: %s"
msgstr "インスタンスのインポート中: %s"
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, c-format
msgid "Importing custom volume: %s"
msgstr "カスタムボリュームのインポート中: %s"
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, c-format
msgid "Importing instance: %s"
msgstr "インスタンスのインポート中: %s"
@ -4190,7 +4234,7 @@ msgstr "クライアント %q に対するインスタンスが切断されま
msgid "Instance name is: %s"
msgstr "インスタンス名: %s"
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr "SSH SFTP リスナーモードではインスタンスのパスを使用できません"
@ -4208,6 +4252,11 @@ msgstr "インスタンス名: %s"
msgid "Instance type"
msgstr "インスタンスタイプ"
#: cmd/incus/low_level.go:502
#, fuzzy, c-format
msgid "Invalid GUID: %s"
msgstr "不正なパス %s"
#: cmd/incus/cluster.go:1673
#, fuzzy
msgid "Invalid IP address or DNS name"
@ -4504,6 +4553,10 @@ msgstr ""
" u - アップロード日\n"
" t - タイプ"
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
#, fuzzy
msgid "List address sets across all projects"
@ -6069,6 +6122,16 @@ msgstr "クラスターの検査と回復のための低レベルの管理ツー
msgid "Low-level cluster administration commands"
msgstr "低レベルのクラスター管理コマンド"
#: cmd/incus/low_level.go:33
#, fuzzy
msgid "Low-level commands"
msgstr "デバッグコマンド"
#: cmd/incus/low_level.go:34
#, fuzzy
msgid "Low-level commands for instances"
msgstr "インスタンスのデバッグコマンド"
#: cmd/incus/network.go:976
msgid "Lower device"
msgstr "Lower device"
@ -6150,6 +6213,11 @@ msgstr "イメージを public にする"
msgid "Make the image public"
msgstr "イメージを public にする"
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
#, fuzzy
msgid "Manage NVRAM on virtual machines"
msgstr "仮想マシンを作成します"
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr "ネットワークを管理し、インスタンスをネットワークに接続します"
@ -6510,11 +6578,11 @@ msgstr ""
"カスタムストレージボリュームからファイルをマウントします。\n"
"ターゲットパスが提供されていない場合は、代わりにSSH SFTPリスナーを起動します."
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
msgid "Mount files from instances"
msgstr "インスタンスからファイルをマウントします"
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
#, fuzzy
msgid ""
"Mount files from instances.\n"
@ -6606,17 +6674,17 @@ msgstr "NAME"
msgid "NAT"
msgstr "NAT"
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
#, fuzzy
msgid "NBD access to a block storage volume"
msgstr "カスタムストレージボリュームを削除します"
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
#, fuzzy
msgid "NBD access to all of a virtual machine's disks"
msgstr "カスタムストレージボリュームを削除します"
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -6630,22 +6698,22 @@ msgstr ""
"由で公開されます。各ディスクには Incus のデバイス名に基づいた名前の NBD エク"
"スポートとしてアクセスできるようになります。"
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, fuzzy, c-format
msgid "NBD client connected %q"
msgstr "SSH クライアントが %q に接続されました"
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, fuzzy, c-format
msgid "NBD client disconnected %q"
msgstr "SSH クライアントが切断されました %q"
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, fuzzy, c-format
msgid "NBD connection failed: %v"
msgstr "NBD接続が失敗しました: %v"
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, fuzzy, c-format
msgid "NBD listening on %v"
msgstr "SSH SFTP は %v でリッスンしています"
@ -7486,7 +7554,7 @@ msgstr "インスタンス内のファイルを管理します"
msgid "Push files into instances"
msgstr "インスタンス内にファイルをコピーします"
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
@ -7500,6 +7568,10 @@ msgstr "query のパスは / で始める必要があります"
msgid "Query virtual machine images"
msgstr "仮想マシンイメージを対象にします"
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr "RESOURCE"
@ -8110,7 +8182,7 @@ msgstr "クラスターメンバーの設定を行います"
msgid "Set a keepalive timeout for a remote"
msgstr "リモートの Keepalive タイムアウトを設定します"
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr "SSH SFTP リスナーを使う際の認証ユーザーを設定する"
@ -8536,7 +8608,7 @@ msgstr "新しいストレージボリュームをプロファイルに追加し
msgid "Set the key as an instance property"
msgstr "インスタンスプロパティとして設定します"
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr ""
"マウントの代わりに address:port で SSH SFTP リスナーをセットアップします"
@ -8853,7 +8925,7 @@ msgstr ""
msgid "Source:"
msgstr "取得元:"
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
#, fuzzy
msgid "Specific address to listen on"
msgstr "聴くための特定のアドレス"
@ -9063,6 +9135,10 @@ msgstr "TAKEN AT"
msgid "TARGET"
msgstr "TARGET"
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr "TOKEN"
@ -9091,11 +9167,11 @@ msgstr "LXD サーバはクラスタの一部ではありません"
msgid "Target path %q already exists"
msgstr "リモート %s は既に存在します"
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
msgid "Target path and --listen flag cannot be used together"
msgstr "ターゲットのパスと --listen オプションは同時に指定できません"
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr "ターゲットのパスはディレクトリでなければなりません"
@ -9601,6 +9677,11 @@ msgstr "ピアのタイプlocalまたはremote"
msgid "Type: %s"
msgstr "タイプ: %s"
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr "UNLIMITED"
@ -9677,7 +9758,8 @@ msgstr "クライアント %q の未知のチャンネルタイプ: %s"
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -9716,6 +9798,10 @@ msgstr "未知の設定: %s"
msgid "Unknown output type %q"
msgstr "未知の出力タイプ: %q"
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
#, fuzzy
msgid "Unset a cluster group's configuration keys"
@ -10040,6 +10126,11 @@ msgstr "ユーザが削除操作を中断しました"
msgid "User aborted delete operation"
msgstr "ユーザが削除操作を中断しました"
#: cmd/incus/low_level.go:415
#, fuzzy
msgid "VARIABLE NAME"
msgstr "FILENAME"
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -10696,14 +10787,6 @@ msgstr ""
" インスタンスの /etc/hosts ファイルを取得し、カレントディレクトリにコピーし"
"ます。"
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" インスタンス vm1 の ELF フォーマットのメモリーダンプを作成します。"
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -10745,7 +10828,7 @@ msgstr ""
"\t インスタンス foo 内に、ターゲットが baz であるシンボリックリンク /bar を"
"作成します。"
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
#, fuzzy
msgid ""
"incus file mount foo/root fooroot\n"
@ -10882,6 +10965,15 @@ msgstr ""
"lxc list -c ns,user.comment:comment\n"
" 実行状態とユーザコメントとともにインスタンスを一覧表示します。"
#: cmd/incus/low_level.go:65
#, fuzzy
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" インスタンス vm1 の ELF フォーマットのメモリーダンプを作成します。"
#: cmd/incus/monitor.go:43
#, fuzzy
msgid ""
@ -11594,7 +11686,7 @@ msgstr "ネットワークの設定を削除します"
msgid "network or integration"
msgstr "ネットワークの設定を削除します"
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, fuzzy, c-format
msgid "new %s name"
msgstr "ネットワーク名:"
@ -11715,7 +11807,7 @@ msgstr "sshfs が停止しました"
msgid "sshfs mounting %q on %q"
msgstr "sshfs で %q を %q にマウントします"
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
#, fuzzy
msgid "stdin can only be used once, with no other source arguments"
msgstr "--target はインスタンスでは使えません"
@ -11730,7 +11822,7 @@ msgstr "シンボリックリンクのターゲットパス"
msgid "tarball"
msgstr "アーカイブ"
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, fuzzy, c-format
msgid "target %s"
msgstr "<target>"
@ -11792,10 +11884,15 @@ msgid "value"
msgstr "バリュー"
#: cmd/incus/usage/usage.go:868
#, fuzzy
msgid "variable"
msgstr "無効"
#: cmd/incus/usage/usage.go:869
msgid "volume"
msgstr "volume"
#: cmd/incus/usage/usage.go:869
#: cmd/incus/usage/usage.go:870
#, fuzzy
msgid "warning UUID"
msgstr "警告 UUID"
@ -11810,7 +11907,7 @@ msgstr "y"
msgid "yes"
msgstr "yes"
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
#, fuzzy
msgid "zone"
msgstr "ゾーン"
@ -12011,10 +12108,6 @@ msgstr "「%s」"
#~ msgid "Invalid instance path: %q"
#~ msgstr "不正なインスタンスのパス: %q"
#, c-format
#~ msgid "Invalid path %s"
#~ msgstr "不正なパス %s"
#~ msgid "Invalid snapshot name"
#~ msgstr "不正なスナップショット名"

231
po/ka.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: incus\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-22 05:01+0000\n"
"Last-Translator: Temuri Doghonadze <temuri.doghonadze@gmail.com>\n"
"Language-Team: Georgian <https://hosted.weblate.org/projects/incus/cli/ka/>\n"
@ -434,6 +434,20 @@ msgstr ""
msgid "'%s' isn't a supported file type"
msgstr "'%s' მხარდაჭერილი ფაილის ტიპი არაა"
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, fuzzy, c-format
msgid "(error: %w)"
msgstr "შეცდომა: %v"
#: cmd/incus/low_level.go:464
#, fuzzy
msgid "(no timestamp)"
msgstr "დროის შტამპები:"
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -547,7 +561,7 @@ msgstr ""
msgid "A client certificate is already present"
msgstr ""
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -585,6 +599,10 @@ msgstr "APP"
msgid "ARCHITECTURE"
msgstr ""
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr "ავთენ. ტიპი"
@ -815,7 +833,7 @@ msgstr "ალტერნატიული სერტიფიკატი
msgid "Always follow symbolic links in source path"
msgstr ""
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, c-format
msgid "An instance path is required for %s"
msgstr ""
@ -1330,7 +1348,8 @@ msgstr "კლასტერი ჩართულია"
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -1790,14 +1809,6 @@ msgstr ""
msgid "Date: %s"
msgstr "თარიღი: %s"
#: cmd/incus/debug.go:27
msgid "Debug commands"
msgstr ""
#: cmd/incus/debug.go:28
msgid "Debug commands for instances"
msgstr ""
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr "ნაგულისხმევი VLAN ID"
@ -2050,7 +2061,7 @@ msgstr ""
msgid "Directory to run the command in (default /root)"
msgstr ""
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr ""
@ -2313,7 +2324,8 @@ msgstr ""
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -2540,7 +2552,7 @@ msgid ""
"`2006/01/02 15:04 MST` format)"
msgstr ""
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
msgid "Export a virtual machine's memory state"
msgstr ""
@ -2579,7 +2591,7 @@ msgstr ""
msgid "Export storage buckets as tarball."
msgstr ""
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -2647,7 +2659,7 @@ msgstr ""
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr ""
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -2738,8 +2750,8 @@ msgstr ""
msgid "Failed starting sshfs: %w"
msgstr "sshfs-ის გაშვების შეცდომა: %w"
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, c-format
msgid "Failed to accept incoming connection: %w"
msgstr ""
@ -2824,7 +2836,7 @@ msgstr ""
msgid "Failed to delete original instance after copying it: %w"
msgstr ""
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, c-format
msgid "Failed to dump instance memory: %w"
msgstr ""
@ -2844,13 +2856,23 @@ msgstr ""
msgid "Failed to find project: %w"
msgstr ""
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, fuzzy, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr "sshfs-ის გაშვების შეცდომა: %w"
#: cmd/incus/low_level.go:496
#, fuzzy, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr "sshfs-ის გაშვების შეცდომა: %w"
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, c-format
msgid "Failed to join cluster: %w"
msgstr ""
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, c-format
msgid "Failed to listen for connection: %w"
msgstr ""
@ -2860,7 +2882,7 @@ msgstr ""
msgid "Failed to load configuration: %s"
msgstr ""
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, c-format
msgid "Failed to open source file %q: %v"
@ -3096,16 +3118,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
"disable headers and \",header\" to enable it if missing, e.g. csv,header"
@ -3127,7 +3150,7 @@ msgstr ""
msgid "Format (table|compact)"
msgstr ""
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr ""
@ -3190,6 +3213,15 @@ msgstr "GPU:"
msgid "GPUs:"
msgstr "GPU-ები:"
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
#, fuzzy
msgid "GUID NAME"
msgstr "სახელი"
#: cmd/incus/remote.go:926
msgid "Generate a client token derived from the client certificate"
msgstr ""
@ -3319,6 +3351,14 @@ msgstr ""
msgid "Get the key as an instance property"
msgstr ""
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
msgid "Get values for cluster group configuration keys"
msgstr ""
@ -3400,7 +3440,7 @@ msgid ""
"container or virtual-machine)."
msgstr ""
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr ""
@ -3475,6 +3515,10 @@ msgstr "ასლები"
msgid "INSTANCE NAME"
msgstr ""
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -3636,7 +3680,7 @@ msgstr "გაშვებული ასლის მარქაფები
msgid "Import storage bucket"
msgstr ""
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr ""
@ -3644,17 +3688,17 @@ msgstr ""
msgid "Import type, backup or iso (default \"backup\")"
msgstr ""
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, c-format
msgid "Importing bucket: %s"
msgstr ""
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, c-format
msgid "Importing custom volume: %s"
msgstr ""
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, c-format
msgid "Importing instance: %s"
msgstr "მიმდინარეობს გაშვებული ასლის შემოტანა: %s"
@ -3701,7 +3745,7 @@ msgstr "გაშვებული ასლი გაითიშა კლი
msgid "Instance name is: %s"
msgstr "გაშვებული ასლის სახელია: %s"
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr ""
@ -3719,6 +3763,11 @@ msgstr ""
msgid "Instance type"
msgstr "გაშვებული ასლის ტიპი"
#: cmd/incus/low_level.go:502
#, fuzzy, c-format
msgid "Invalid GUID: %s"
msgstr "არასწორი ფორმატი: %s"
#: cmd/incus/cluster.go:1673
msgid "Invalid IP address or DNS name"
msgstr ""
@ -3979,6 +4028,10 @@ msgid ""
" L - Location of the DHCP Lease (e.g. its cluster member)"
msgstr ""
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
msgid "List address sets across all projects"
msgstr ""
@ -4863,6 +4916,15 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr ""
#: cmd/incus/low_level.go:33
msgid "Low-level commands"
msgstr ""
#: cmd/incus/low_level.go:34
#, fuzzy
msgid "Low-level commands for instances"
msgstr "გაშვებული ასლებიდან პროფილების წაშლა"
#: cmd/incus/network.go:976
msgid "Lower device"
msgstr "მოწყობილობის დაწევა"
@ -4943,6 +5005,11 @@ msgstr "ასლის საჯაროდ დაყენება"
msgid "Make the image public"
msgstr ""
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
#, fuzzy
msgid "Manage NVRAM on virtual machines"
msgstr "ვირტუალური მანქანის შექმნა"
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr "გაშვებული ასლების ქსელებთან მიმაგრება და მართვა"
@ -5268,11 +5335,11 @@ msgid ""
"If no target path is provided, start an SSH SFTP listener instead."
msgstr ""
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
msgid "Mount files from instances"
msgstr ""
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid ""
"Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
@ -5345,17 +5412,17 @@ msgstr "სახელი"
msgid "NAT"
msgstr "NAT"
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
#, fuzzy
msgid "NBD access to a block storage volume"
msgstr "მომხმარებლის საცავის ტომების შემოტანა"
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
#, fuzzy
msgid "NBD access to all of a virtual machine's disks"
msgstr "მომხმარებლის საცავის ტომების შემოტანა"
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -5364,22 +5431,22 @@ msgid ""
"device name."
msgstr ""
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, c-format
msgid "NBD client connected %q"
msgstr ""
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, c-format
msgid "NBD client disconnected %q"
msgstr "NBD-ის კლიენტთან კავშირი გაწყდა %q"
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr ""
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, c-format
msgid "NBD listening on %v"
msgstr ""
@ -6183,7 +6250,7 @@ msgstr ""
msgid "Push files into instances"
msgstr ""
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
@ -6197,6 +6264,10 @@ msgstr ""
msgid "Query virtual machine images"
msgstr ""
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr ""
@ -6761,7 +6832,7 @@ msgstr ""
msgid "Set a keepalive timeout for a remote"
msgstr ""
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr ""
@ -7089,7 +7160,7 @@ msgstr ""
msgid "Set the key as an instance property"
msgstr ""
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr ""
@ -7384,7 +7455,7 @@ msgstr ""
msgid "Source:"
msgstr "წყარო:"
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr ""
@ -7590,6 +7661,10 @@ msgstr ""
msgid "TARGET"
msgstr "სამიზნე"
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr "კოდი"
@ -7617,11 +7692,11 @@ msgstr ""
msgid "Target path %q already exists"
msgstr ""
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
msgid "Target path and --listen flag cannot be used together"
msgstr ""
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr ""
@ -8055,6 +8130,11 @@ msgstr ""
msgid "Type: %s"
msgstr "ტიპი: %s"
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr ""
@ -8128,7 +8208,8 @@ msgstr ""
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -8167,6 +8248,10 @@ msgstr "უცნობი გასაღები: %s"
msgid "Unknown output type %q"
msgstr "უცნობი გამოტანის ტიპი %q"
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
msgid "Unset a cluster group's configuration keys"
msgstr ""
@ -8457,6 +8542,11 @@ msgstr ""
msgid "User aborted delete operation"
msgstr ""
#: cmd/incus/low_level.go:415
#, fuzzy
msgid "VARIABLE NAME"
msgstr "ფაილის სახელი"
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -8982,12 +9072,6 @@ msgid ""
"standard output."
msgstr ""
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -9015,7 +9099,7 @@ msgid ""
" To create a symlink /bar in instance foo whose target is baz."
msgstr ""
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid ""
"incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
@ -9106,6 +9190,12 @@ msgid ""
" List instances with their running state and user comment."
msgstr ""
#: cmd/incus/low_level.go:65
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/monitor.go:43
msgid ""
"incus monitor --type=logging\n"
@ -9590,7 +9680,7 @@ msgstr ""
msgid "network or integration"
msgstr ""
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, c-format
msgid "new %s name"
msgstr ""
@ -9699,7 +9789,7 @@ msgstr "sshfs გაჩერებულია"
msgid "sshfs mounting %q on %q"
msgstr ""
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
msgid "stdin can only be used once, with no other source arguments"
msgstr ""
@ -9711,7 +9801,7 @@ msgstr ""
msgid "tarball"
msgstr ""
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, c-format
msgid "target %s"
msgstr "სამიზნე %s"
@ -9769,10 +9859,15 @@ msgid "value"
msgstr "მნიშვნელობა"
#: cmd/incus/usage/usage.go:868
#, fuzzy
msgid "variable"
msgstr "გამორთულია"
#: cmd/incus/usage/usage.go:869
msgid "volume"
msgstr "საცავი"
#: cmd/incus/usage/usage.go:869
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr ""
@ -9786,7 +9881,7 @@ msgstr "წ"
msgid "yes"
msgstr "დიახ"
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr "ზონა"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: incus\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-13 05:44+0000\n"
"Last-Translator: Daniel Dybing <daniel.dybing@gmail.com>\n"
"Language-Team: Norwegian Bokmål <https://hosted.weblate.org/projects/incus/"
@ -431,6 +431,19 @@ msgstr ""
msgid "'%s' isn't a supported file type"
msgstr ""
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, c-format
msgid "(error: %w)"
msgstr ""
#: cmd/incus/low_level.go:464
msgid "(no timestamp)"
msgstr ""
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -542,7 +555,7 @@ msgstr ""
msgid "A client certificate is already present"
msgstr ""
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -580,6 +593,10 @@ msgstr ""
msgid "ARCHITECTURE"
msgstr ""
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr ""
@ -809,7 +826,7 @@ msgstr ""
msgid "Always follow symbolic links in source path"
msgstr ""
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, c-format
msgid "An instance path is required for %s"
msgstr ""
@ -1324,7 +1341,8 @@ msgstr ""
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -1783,14 +1801,6 @@ msgstr ""
msgid "Date: %s"
msgstr ""
#: cmd/incus/debug.go:27
msgid "Debug commands"
msgstr ""
#: cmd/incus/debug.go:28
msgid "Debug commands for instances"
msgstr ""
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr ""
@ -2043,7 +2053,7 @@ msgstr ""
msgid "Directory to run the command in (default /root)"
msgstr ""
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr ""
@ -2306,7 +2316,8 @@ msgstr ""
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -2533,7 +2544,7 @@ msgid ""
"`2006/01/02 15:04 MST` format)"
msgstr ""
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
msgid "Export a virtual machine's memory state"
msgstr ""
@ -2572,7 +2583,7 @@ msgstr ""
msgid "Export storage buckets as tarball."
msgstr ""
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -2640,7 +2651,7 @@ msgstr ""
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr ""
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -2731,8 +2742,8 @@ msgstr ""
msgid "Failed starting sshfs: %w"
msgstr ""
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, c-format
msgid "Failed to accept incoming connection: %w"
msgstr ""
@ -2817,7 +2828,7 @@ msgstr ""
msgid "Failed to delete original instance after copying it: %w"
msgstr ""
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, c-format
msgid "Failed to dump instance memory: %w"
msgstr ""
@ -2837,13 +2848,23 @@ msgstr ""
msgid "Failed to find project: %w"
msgstr ""
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr ""
#: cmd/incus/low_level.go:496
#, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr ""
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, c-format
msgid "Failed to join cluster: %w"
msgstr ""
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, c-format
msgid "Failed to listen for connection: %w"
msgstr ""
@ -2853,7 +2874,7 @@ msgstr ""
msgid "Failed to load configuration: %s"
msgstr ""
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, c-format
msgid "Failed to open source file %q: %v"
@ -3089,16 +3110,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
"disable headers and \",header\" to enable it if missing, e.g. csv,header"
@ -3120,7 +3142,7 @@ msgstr ""
msgid "Format (table|compact)"
msgstr ""
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr ""
@ -3183,6 +3205,14 @@ msgstr ""
msgid "GPUs:"
msgstr ""
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
msgid "GUID NAME"
msgstr ""
#: cmd/incus/remote.go:926
msgid "Generate a client token derived from the client certificate"
msgstr ""
@ -3312,6 +3342,14 @@ msgstr ""
msgid "Get the key as an instance property"
msgstr ""
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
msgid "Get values for cluster group configuration keys"
msgstr ""
@ -3393,7 +3431,7 @@ msgid ""
"container or virtual-machine)."
msgstr ""
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr ""
@ -3469,6 +3507,10 @@ msgstr ""
msgid "INSTANCE NAME"
msgstr ""
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -3630,7 +3672,7 @@ msgstr ""
msgid "Import storage bucket"
msgstr ""
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr ""
@ -3638,17 +3680,17 @@ msgstr ""
msgid "Import type, backup or iso (default \"backup\")"
msgstr ""
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, c-format
msgid "Importing bucket: %s"
msgstr ""
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, c-format
msgid "Importing custom volume: %s"
msgstr ""
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, c-format
msgid "Importing instance: %s"
msgstr ""
@ -3695,7 +3737,7 @@ msgstr ""
msgid "Instance name is: %s"
msgstr ""
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr ""
@ -3713,6 +3755,11 @@ msgstr ""
msgid "Instance type"
msgstr ""
#: cmd/incus/low_level.go:502
#, c-format
msgid "Invalid GUID: %s"
msgstr ""
#: cmd/incus/cluster.go:1673
msgid "Invalid IP address or DNS name"
msgstr ""
@ -3973,6 +4020,10 @@ msgid ""
" L - Location of the DHCP Lease (e.g. its cluster member)"
msgstr ""
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
msgid "List address sets across all projects"
msgstr ""
@ -4857,6 +4908,14 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr ""
#: cmd/incus/low_level.go:33
msgid "Low-level commands"
msgstr ""
#: cmd/incus/low_level.go:34
msgid "Low-level commands for instances"
msgstr ""
#: cmd/incus/network.go:976
msgid "Lower device"
msgstr ""
@ -4937,6 +4996,10 @@ msgstr ""
msgid "Make the image public"
msgstr ""
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
msgid "Manage NVRAM on virtual machines"
msgstr ""
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr ""
@ -5261,11 +5324,11 @@ msgid ""
"If no target path is provided, start an SSH SFTP listener instead."
msgstr ""
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
msgid "Mount files from instances"
msgstr ""
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid ""
"Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
@ -5338,15 +5401,15 @@ msgstr ""
msgid "NAT"
msgstr ""
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
msgid "NBD access to a block storage volume"
msgstr ""
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
msgid "NBD access to all of a virtual machine's disks"
msgstr ""
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -5355,22 +5418,22 @@ msgid ""
"device name."
msgstr ""
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, c-format
msgid "NBD client connected %q"
msgstr ""
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, c-format
msgid "NBD client disconnected %q"
msgstr ""
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr ""
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, c-format
msgid "NBD listening on %v"
msgstr ""
@ -6173,7 +6236,7 @@ msgstr ""
msgid "Push files into instances"
msgstr ""
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
@ -6187,6 +6250,10 @@ msgstr ""
msgid "Query virtual machine images"
msgstr ""
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr ""
@ -6749,7 +6816,7 @@ msgstr ""
msgid "Set a keepalive timeout for a remote"
msgstr ""
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr ""
@ -7076,7 +7143,7 @@ msgstr ""
msgid "Set the key as an instance property"
msgstr ""
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr ""
@ -7371,7 +7438,7 @@ msgstr ""
msgid "Source:"
msgstr ""
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr ""
@ -7576,6 +7643,10 @@ msgstr ""
msgid "TARGET"
msgstr ""
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr ""
@ -7603,11 +7674,11 @@ msgstr ""
msgid "Target path %q already exists"
msgstr ""
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
msgid "Target path and --listen flag cannot be used together"
msgstr ""
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr ""
@ -8040,6 +8111,11 @@ msgstr ""
msgid "Type: %s"
msgstr ""
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr ""
@ -8112,7 +8188,8 @@ msgstr ""
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -8151,6 +8228,10 @@ msgstr ""
msgid "Unknown output type %q"
msgstr ""
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
msgid "Unset a cluster group's configuration keys"
msgstr ""
@ -8430,6 +8511,10 @@ msgstr ""
msgid "User aborted delete operation"
msgstr ""
#: cmd/incus/low_level.go:415
msgid "VARIABLE NAME"
msgstr ""
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -8955,12 +9040,6 @@ msgid ""
"standard output."
msgstr ""
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -8988,7 +9067,7 @@ msgid ""
" To create a symlink /bar in instance foo whose target is baz."
msgstr ""
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid ""
"incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
@ -9079,6 +9158,12 @@ msgid ""
" List instances with their running state and user comment."
msgstr ""
#: cmd/incus/low_level.go:65
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/monitor.go:43
msgid ""
"incus monitor --type=logging\n"
@ -9563,7 +9648,7 @@ msgstr ""
msgid "network or integration"
msgstr ""
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, fuzzy, c-format
msgid "new %s name"
msgstr "navn"
@ -9672,7 +9757,7 @@ msgstr "sshfs har stoppet"
msgid "sshfs mounting %q on %q"
msgstr ""
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
msgid "stdin can only be used once, with no other source arguments"
msgstr ""
@ -9684,7 +9769,7 @@ msgstr ""
msgid "tarball"
msgstr ""
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, c-format
msgid "target %s"
msgstr ""
@ -9741,10 +9826,14 @@ msgid "value"
msgstr ""
#: cmd/incus/usage/usage.go:868
msgid "volume"
msgid "variable"
msgstr ""
#: cmd/incus/usage/usage.go:869
msgid "volume"
msgstr ""
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr ""
@ -9758,7 +9847,7 @@ msgstr "j"
msgid "yes"
msgstr "ja"
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr ""

225
po/nl.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: lxd\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-13 05:43+0000\n"
"Last-Translator: Dklfajsjfi49wefklsf32 "
"<nlincus@users.noreply.hosted.weblate.org>\n"
@ -689,6 +689,19 @@ msgstr ""
msgid "'%s' isn't a supported file type"
msgstr "'%s' is geen ondersteund bestandstype"
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, c-format
msgid "(error: %w)"
msgstr ""
#: cmd/incus/low_level.go:464
msgid "(no timestamp)"
msgstr ""
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -807,7 +820,7 @@ msgstr ""
msgid "A client certificate is already present"
msgstr "Een client certificaat is al aanwezig"
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -846,6 +859,10 @@ msgstr ""
msgid "ARCHITECTURE"
msgstr "ARCHITECTUUR"
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr "AUTHENTICATIE TYPE"
@ -1092,7 +1109,7 @@ msgstr "Alternatieve certificaat naam"
msgid "Always follow symbolic links in source path"
msgstr ""
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, c-format
msgid "An instance path is required for %s"
msgstr ""
@ -1617,7 +1634,8 @@ msgstr "Clustering aan"
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -2089,14 +2107,6 @@ msgstr ""
msgid "Date: %s"
msgstr "Datum: %s"
#: cmd/incus/debug.go:27
msgid "Debug commands"
msgstr ""
#: cmd/incus/debug.go:28
msgid "Debug commands for instances"
msgstr ""
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr ""
@ -2353,7 +2363,7 @@ msgstr ""
msgid "Directory to run the command in (default /root)"
msgstr ""
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr ""
@ -2618,7 +2628,8 @@ msgstr ""
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -2845,7 +2856,7 @@ msgid ""
"`2006/01/02 15:04 MST` format)"
msgstr ""
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
msgid "Export a virtual machine's memory state"
msgstr ""
@ -2886,7 +2897,7 @@ msgstr ""
msgid "Export storage buckets as tarball."
msgstr ""
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -2954,7 +2965,7 @@ msgstr ""
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr ""
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -3045,8 +3056,8 @@ msgstr ""
msgid "Failed starting sshfs: %w"
msgstr ""
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, c-format
msgid "Failed to accept incoming connection: %w"
msgstr ""
@ -3131,7 +3142,7 @@ msgstr ""
msgid "Failed to delete original instance after copying it: %w"
msgstr ""
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, c-format
msgid "Failed to dump instance memory: %w"
msgstr ""
@ -3151,13 +3162,23 @@ msgstr ""
msgid "Failed to find project: %w"
msgstr ""
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr ""
#: cmd/incus/low_level.go:496
#, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr ""
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, c-format
msgid "Failed to join cluster: %w"
msgstr ""
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, c-format
msgid "Failed to listen for connection: %w"
msgstr ""
@ -3167,7 +3188,7 @@ msgstr ""
msgid "Failed to load configuration: %s"
msgstr ""
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, c-format
msgid "Failed to open source file %q: %v"
@ -3403,16 +3424,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
"disable headers and \",header\" to enable it if missing, e.g. csv,header"
@ -3434,7 +3456,7 @@ msgstr ""
msgid "Format (table|compact)"
msgstr ""
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr ""
@ -3497,6 +3519,14 @@ msgstr ""
msgid "GPUs:"
msgstr ""
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
msgid "GUID NAME"
msgstr ""
#: cmd/incus/remote.go:926
#, fuzzy
msgid "Generate a client token derived from the client certificate"
@ -3627,6 +3657,14 @@ msgstr ""
msgid "Get the key as an instance property"
msgstr ""
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
msgid "Get values for cluster group configuration keys"
msgstr "Opvragen waarden van cluster groep configuratie sleutels (keys)"
@ -3708,7 +3746,7 @@ msgid ""
"container or virtual-machine)."
msgstr ""
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr ""
@ -3783,6 +3821,10 @@ msgstr ""
msgid "INSTANCE NAME"
msgstr ""
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -3944,7 +3986,7 @@ msgstr ""
msgid "Import storage bucket"
msgstr ""
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr ""
@ -3952,17 +3994,17 @@ msgstr ""
msgid "Import type, backup or iso (default \"backup\")"
msgstr ""
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, c-format
msgid "Importing bucket: %s"
msgstr ""
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, c-format
msgid "Importing custom volume: %s"
msgstr ""
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, c-format
msgid "Importing instance: %s"
msgstr ""
@ -4009,7 +4051,7 @@ msgstr ""
msgid "Instance name is: %s"
msgstr ""
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr ""
@ -4027,6 +4069,11 @@ msgstr ""
msgid "Instance type"
msgstr ""
#: cmd/incus/low_level.go:502
#, c-format
msgid "Invalid GUID: %s"
msgstr ""
#: cmd/incus/cluster.go:1673
msgid "Invalid IP address or DNS name"
msgstr ""
@ -4288,6 +4335,10 @@ msgid ""
" L - Location of the DHCP Lease (e.g. its cluster member)"
msgstr ""
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
#, fuzzy
msgid "List address sets across all projects"
@ -5174,6 +5225,14 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr ""
#: cmd/incus/low_level.go:33
msgid "Low-level commands"
msgstr ""
#: cmd/incus/low_level.go:34
msgid "Low-level commands for instances"
msgstr ""
#: cmd/incus/network.go:976
msgid "Lower device"
msgstr ""
@ -5254,6 +5313,10 @@ msgstr ""
msgid "Make the image public"
msgstr ""
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
msgid "Manage NVRAM on virtual machines"
msgstr ""
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr ""
@ -5581,11 +5644,11 @@ msgid ""
"If no target path is provided, start an SSH SFTP listener instead."
msgstr ""
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
msgid "Mount files from instances"
msgstr ""
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid ""
"Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
@ -5658,17 +5721,17 @@ msgstr ""
msgid "NAT"
msgstr ""
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
#, fuzzy
msgid "NBD access to a block storage volume"
msgstr "Verwijder aangepaste opslag volumes (storage volume)"
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
#, fuzzy
msgid "NBD access to all of a virtual machine's disks"
msgstr "Verwijder aangepaste opslag volumes (storage volume)"
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -5677,22 +5740,22 @@ msgid ""
"device name."
msgstr ""
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, c-format
msgid "NBD client connected %q"
msgstr ""
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, c-format
msgid "NBD client disconnected %q"
msgstr ""
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr ""
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, c-format
msgid "NBD listening on %v"
msgstr ""
@ -6499,7 +6562,7 @@ msgstr "Verwijder aangepaste opslag volumes (storage volume)"
msgid "Push files into instances"
msgstr ""
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
@ -6513,6 +6576,10 @@ msgstr ""
msgid "Query virtual machine images"
msgstr ""
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr ""
@ -7080,7 +7147,7 @@ msgstr ""
msgid "Set a keepalive timeout for a remote"
msgstr ""
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr ""
@ -7412,7 +7479,7 @@ msgstr ""
msgid "Set the key as an instance property"
msgstr ""
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr ""
@ -7708,7 +7775,7 @@ msgstr ""
msgid "Source:"
msgstr ""
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr ""
@ -7913,6 +7980,10 @@ msgstr ""
msgid "TARGET"
msgstr ""
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr ""
@ -7940,11 +8011,11 @@ msgstr ""
msgid "Target path %q already exists"
msgstr "Alias %s bestaat al"
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
msgid "Target path and --listen flag cannot be used together"
msgstr ""
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr ""
@ -8379,6 +8450,11 @@ msgstr ""
msgid "Type: %s"
msgstr ""
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr ""
@ -8451,7 +8527,8 @@ msgstr ""
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -8490,6 +8567,10 @@ msgstr ""
msgid "Unknown output type %q"
msgstr ""
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
msgid "Unset a cluster group's configuration keys"
msgstr "Verwijder de cluster groep eigenschappen (keys)"
@ -8796,6 +8877,10 @@ msgstr ""
msgid "User aborted delete operation"
msgstr ""
#: cmd/incus/low_level.go:415
msgid "VARIABLE NAME"
msgstr ""
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -9327,12 +9412,6 @@ msgid ""
"standard output."
msgstr ""
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -9360,7 +9439,7 @@ msgid ""
" To create a symlink /bar in instance foo whose target is baz."
msgstr ""
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid ""
"incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
@ -9451,6 +9530,12 @@ msgid ""
" List instances with their running state and user comment."
msgstr ""
#: cmd/incus/low_level.go:65
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/monitor.go:43
msgid ""
"incus monitor --type=logging\n"
@ -9945,7 +10030,7 @@ msgstr "Toon lijst van netwerk integraties"
msgid "network or integration"
msgstr "Toon lijst van netwerk integraties"
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, fuzzy, c-format
msgid "new %s name"
msgstr "naam"
@ -10056,7 +10141,7 @@ msgstr "sshfs is gestopt"
msgid "sshfs mounting %q on %q"
msgstr "sshfs koppelen van %q op %q"
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
#, fuzzy
msgid "stdin can only be used once, with no other source arguments"
msgstr "--target kan niet gebruikt worden met: instances"
@ -10069,7 +10154,7 @@ msgstr ""
msgid "tarball"
msgstr ""
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, c-format
msgid "target %s"
msgstr ""
@ -10126,11 +10211,15 @@ msgid "value"
msgstr ""
#: cmd/incus/usage/usage.go:868
msgid "variable"
msgstr ""
#: cmd/incus/usage/usage.go:869
#, fuzzy
msgid "volume"
msgstr "Kolommen"
#: cmd/incus/usage/usage.go:869
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr ""
@ -10144,7 +10233,7 @@ msgstr "j"
msgid "yes"
msgstr "ja"
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr ""

245
po/pt.po
View File

@ -7,11 +7,11 @@ msgid ""
msgstr ""
"Project-Id-Version: incus\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-20 07:01+0000\n"
"Last-Translator: Américo Monteiro <a_monteiro@gmx.com>\n"
"Language-Team: Portuguese <https://hosted.weblate.org/projects/incus/cli/pt/>"
"\n"
"Language-Team: Portuguese <https://hosted.weblate.org/projects/incus/cli/pt/"
">\n"
"Language: pt\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@ -678,6 +678,20 @@ msgstr "%s a sintaxe de %s está descontinuada; %s\n"
msgid "'%s' isn't a supported file type"
msgstr "'%s' não é um tipo de ficheiro suportado"
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, fuzzy, c-format
msgid "(error: %w)"
msgstr "erro: %v"
#: cmd/incus/low_level.go:464
#, fuzzy
msgid "(no timestamp)"
msgstr "Marcas temporais:"
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -793,7 +807,7 @@ msgstr "=> Consultar %d:"
msgid "A client certificate is already present"
msgstr "Um certificado de cliente já está presente"
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -833,6 +847,10 @@ msgstr "APLICAÇÃO"
msgid "ARCHITECTURE"
msgstr "ARQUITECTURA"
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr "TIPO DE AUTORIZAÇÃO"
@ -1089,7 +1107,7 @@ msgstr "Nome de certificado alternativo"
msgid "Always follow symbolic links in source path"
msgstr "Seguir sempre os links simbólicos no caminho da fonte"
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, c-format
msgid "An instance path is required for %s"
msgstr "E necessário um caminho de instância para %s"
@ -1623,7 +1641,8 @@ msgstr "Ativado o agrupamento"
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -2116,14 +2135,6 @@ msgstr "Daemon ainda a correr após o tempo limite %d"
msgid "Date: %s"
msgstr "Data: %s"
#: cmd/incus/debug.go:27
msgid "Debug commands"
msgstr "Comandos de depuração"
#: cmd/incus/debug.go:28
msgid "Debug commands for instances"
msgstr "Comandos de depuração para instâncias"
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr "ID VLAN predefinido"
@ -2382,7 +2393,7 @@ msgstr "Importação de diretório não está disponível nesta plataforma"
msgid "Directory to run the command in (default /root)"
msgstr "Diretório para correr o comando em (predefinição /root)"
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr "Desativa a autenticação quando se usa escuta SSH SFTP"
@ -2674,7 +2685,8 @@ msgstr "Edita configurações de confiança como YAML"
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -2970,7 +2982,7 @@ msgstr ""
"Expiração para o novo instantâneo (seja em tempo de vida como `1d 3H` ou uma "
"data em formato `2006/01/02 15:04 MST`)"
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
msgid "Export a virtual machine's memory state"
msgstr "Exporta estado de memória de uma máquina virtual"
@ -3012,7 +3024,7 @@ msgstr "Exporta bucket de armazenamento"
msgid "Export storage buckets as tarball."
msgstr "Exporta buckets de armazenamento como tarball."
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -3085,7 +3097,7 @@ msgstr "Falha ao verificar se instância %s existe: %w"
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr "Falha ao ligar a instância SFTP para cliente %q: %v"
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -3179,8 +3191,8 @@ msgstr "Falhou ao iniciar comando: %w"
msgid "Failed starting sshfs: %w"
msgstr "Falhou ao iniciar sshfs: %w"
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, c-format
msgid "Failed to accept incoming connection: %w"
msgstr "Falhou ao aceitar ligação a chegar: %w"
@ -3265,7 +3277,7 @@ msgstr "Falhou ao criar salvaguarda de volume de armazenamento: %w"
msgid "Failed to delete original instance after copying it: %w"
msgstr "Falhou ao apagar instância original após a copiar: %w"
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, c-format
msgid "Failed to dump instance memory: %w"
msgstr "Falhou ao despejar memória de instância: %w"
@ -3286,13 +3298,23 @@ msgstr ""
msgid "Failed to find project: %w"
msgstr "Falhou ao encontrar projeto: %w"
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, fuzzy, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr "Falhou ao despejar memória de instância: %w"
#: cmd/incus/low_level.go:496
#, fuzzy, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr "Falhou ao despejar memória de instância: %w"
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, c-format
msgid "Failed to join cluster: %w"
msgstr "Falhou ao juntar a agrupamento: %w"
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, c-format
msgid "Failed to listen for connection: %w"
msgstr "Falhou ao escutar por ligação: %w"
@ -3302,7 +3324,7 @@ msgstr "Falhou ao escutar por ligação: %w"
msgid "Failed to load configuration: %s"
msgstr "Falhou ao carregar configuração: %s"
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, c-format
msgid "Failed to open source file %q: %v"
@ -3561,16 +3583,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
"disable headers and \",header\" to enable it if missing, e.g. csv,header"
@ -3595,7 +3618,7 @@ msgstr "Formato (pem|pfx)"
msgid "Format (table|compact)"
msgstr "Formato (table|compact)"
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr ""
@ -3670,6 +3693,15 @@ msgstr "GPU:"
msgid "GPUs:"
msgstr "GPUs:"
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
#, fuzzy
msgid "GUID NAME"
msgstr "NOME"
#: cmd/incus/remote.go:926
msgid "Generate a client token derived from the client certificate"
msgstr "Gera um testemunho de cliente derivado do certificado de cliente"
@ -3815,6 +3847,14 @@ msgstr "Obtém a chave como uma propriedade de volume de armazenamento"
msgid "Get the key as an instance property"
msgstr "Obtém a chave como uma propriedade de instância"
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
msgid "Get values for cluster group configuration keys"
msgstr "Obtém valores para chaves de configuração de grupo de agrupamento"
@ -3905,7 +3945,7 @@ msgstr ""
"Para instantâneos, adicione o nome do instantâneo (apenas se o tipo for um "
"de custom, container ou virtual-machine)."
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr "Obter acesso de escrita ao disco"
@ -3980,6 +4020,10 @@ msgstr "IMAGENS"
msgid "INSTANCE NAME"
msgstr "NOME DE INSTÂNCIA"
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -4150,7 +4194,7 @@ msgstr "Importa salvaguardas da instância"
msgid "Import storage bucket"
msgstr "Importa bucket de armazenamento"
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr "Tipo de importação precisa ser \"backup\" ou \"iso\""
@ -4158,17 +4202,17 @@ msgstr "Tipo de importação precisa ser \"backup\" ou \"iso\""
msgid "Import type, backup or iso (default \"backup\")"
msgstr "Tipo de importação, backup ou iso (predefinição \"backup\")"
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, c-format
msgid "Importing bucket: %s"
msgstr "A importar bucket: %s"
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, c-format
msgid "Importing custom volume: %s"
msgstr "A importar volume personalizado: %s"
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, c-format
msgid "Importing instance: %s"
msgstr "A importar instância: %s"
@ -4215,7 +4259,7 @@ msgstr "Instância desligada para cliente %q"
msgid "Instance name is: %s"
msgstr "Nome da instância é: %s"
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr "O caminho da instância não pode ser usado no modo de escuta SSH SFTP"
@ -4233,6 +4277,11 @@ msgstr "Nome de instantâneo de instância é: %s"
msgid "Instance type"
msgstr "Tipo de instância"
#: cmd/incus/low_level.go:502
#, fuzzy, c-format
msgid "Invalid GUID: %s"
msgstr "Caminho inválido %s"
#: cmd/incus/cluster.go:1673
msgid "Invalid IP address or DNS name"
msgstr "Endereço IP ou nome DNS inválido"
@ -4519,6 +4568,10 @@ msgstr ""
" t - Tipo\n"
" L - Localização do Aluguer DHCP (ex. é membro de agrupamento)"
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
msgid "List address sets across all projects"
msgstr "Lista conjuntos de endereços entre todos os projetos"
@ -6031,6 +6084,16 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr "Comandos de baixo nível de administração de agrupamento"
#: cmd/incus/low_level.go:33
#, fuzzy
msgid "Low-level commands"
msgstr "Comandos de depuração"
#: cmd/incus/low_level.go:34
#, fuzzy
msgid "Low-level commands for instances"
msgstr "Comandos de depuração para instâncias"
#: cmd/incus/network.go:976
msgid "Lower device"
msgstr "Dispositivo baixo"
@ -6111,6 +6174,11 @@ msgstr "Torna a imagem pública"
msgid "Make the image public"
msgstr "Torna a imagem pública"
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
#, fuzzy
msgid "Manage NVRAM on virtual machines"
msgstr "Criar uma máquina virtual"
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr "Gerir e anexar instâncias a redes"
@ -6467,11 +6535,11 @@ msgstr ""
"Se nenhum caminho alvo for fornecido, arranca uma escuta SSH SFTP em vez "
"disso."
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
msgid "Mount files from instances"
msgstr "Monta ficheiros de instâncias"
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid ""
"Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
@ -6559,15 +6627,15 @@ msgstr "NOME"
msgid "NAT"
msgstr "NAT"
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
msgid "NBD access to a block storage volume"
msgstr "Acesso NBD a volume de armazenamento de bloco"
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
msgid "NBD access to all of a virtual machine's disks"
msgstr "Acesso NBD a todos os discos de uma máquina virtual"
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -6583,22 +6651,22 @@ msgstr ""
"seu\n"
"nome de dispositivo Incus."
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, c-format
msgid "NBD client connected %q"
msgstr "Cliente NBD ligado %q"
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, c-format
msgid "NBD client disconnected %q"
msgstr "Cliente NBD desligado %q"
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr "Ligação NBD falhou: %v"
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, c-format
msgid "NBD listening on %v"
msgstr "NBD a escutar em %v"
@ -7414,7 +7482,7 @@ msgstr "Empurra ficheiros para volumes personalizados"
msgid "Push files into instances"
msgstr "Envia ficheiros para instâncias"
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
@ -7428,6 +7496,10 @@ msgstr "Caminho de consulta tem de começar com /"
msgid "Query virtual machine images"
msgstr "Consulta imagens de máquinas virtuais"
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr "RECURSO"
@ -8016,7 +8088,7 @@ msgstr "Define as chaves de configuração de um membro do agrupamento"
msgid "Set a keepalive timeout for a remote"
msgstr "Definir um tempo limite de manter vivo para um remoto"
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr "Define a autenticação do utilizador quando se usa escuta SSH SFTP"
@ -8427,7 +8499,7 @@ msgstr "Define a chave como uma propriedade de volume de armazenamento"
msgid "Set the key as an instance property"
msgstr "Define a chave como uma propriedade de instância"
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr "Configura escuta SSH SFTP no endereço:porto em vez de montar"
@ -8740,7 +8812,7 @@ msgstr ""
msgid "Source:"
msgstr "Fonte:"
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr "Endereço específico onde escutar"
@ -8947,6 +9019,10 @@ msgstr "TOMADO EM"
msgid "TARGET"
msgstr "ALVO"
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr "TESTEMUNHO"
@ -8974,11 +9050,11 @@ msgstr "Alvo não é um agrupamento"
msgid "Target path %q already exists"
msgstr "Caminho alvo %q já existe"
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
msgid "Target path and --listen flag cannot be used together"
msgstr "O caminho do alvo e bandeira --listen não podem ser usados juntamente"
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr "O caminho alvo tem de ser um diretório"
@ -9469,6 +9545,11 @@ msgstr "Tipo de peer (local ou remoto)"
msgid "Type: %s"
msgstr "Tipo: %s"
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr "SEM LIMITE"
@ -9543,7 +9624,8 @@ msgstr "Tipo de canal desconhecido para cliente %q: %s"
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -9582,6 +9664,10 @@ msgstr "Chave desconhecida: %s"
msgid "Unknown output type %q"
msgstr "Tipo de saída desconhecido %q"
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
msgid "Unset a cluster group's configuration keys"
msgstr ""
@ -9895,6 +9981,11 @@ msgstr "Configuração abortada pelo utilizador"
msgid "User aborted delete operation"
msgstr "Operação de apagar abortada pelo utilizador"
#: cmd/incus/low_level.go:415
#, fuzzy
msgid "VARIABLE NAME"
msgstr "NOME DE FICHEIRO"
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -10528,14 +10619,6 @@ msgstr ""
" Para puxar /etc/hosts a partir do volume personalizado e escrever o seu "
"resultado na saída standard."
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Cria uma descarga de memória em formato ELF da instância vm1."
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -10578,7 +10661,7 @@ msgstr ""
"incus file create --type=symlink foo/bar baz\n"
"\t Para criar um link simbólico /bar na instância foo cujo alvo é baz."
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid ""
"incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
@ -10728,6 +10811,15 @@ msgstr ""
" Lista instâncias com o seu estado de funcionamento e comentário de "
"utilizador."
#: cmd/incus/low_level.go:65
#, fuzzy
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Cria uma descarga de memória em formato ELF da instância vm1."
#: cmd/incus/monitor.go:43
msgid ""
"incus monitor --type=logging\n"
@ -11459,7 +11551,7 @@ msgstr "integração de rede"
msgid "network or integration"
msgstr "rede ou integração"
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, c-format
msgid "new %s name"
msgstr "novo %s nome"
@ -11568,7 +11660,7 @@ msgstr "sshfs parou"
msgid "sshfs mounting %q on %q"
msgstr "sshfs a montar %q em %q"
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
msgid "stdin can only be used once, with no other source arguments"
msgstr "stdin só pode ser usado uma vez, sem nenhuns outros argumentos fonte"
@ -11580,7 +11672,7 @@ msgstr "caminho alvo do link simbólico"
msgid "tarball"
msgstr "tarball"
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, c-format
msgid "target %s"
msgstr "alvo %s"
@ -11637,10 +11729,15 @@ msgid "value"
msgstr "valor"
#: cmd/incus/usage/usage.go:868
#, fuzzy
msgid "variable"
msgstr "desativado"
#: cmd/incus/usage/usage.go:869
msgid "volume"
msgstr "volume"
#: cmd/incus/usage/usage.go:869
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr "UUID de aviso"
@ -11654,7 +11751,7 @@ msgstr "s"
msgid "yes"
msgstr "sim"
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr "zona"
@ -11850,10 +11947,6 @@ msgstr "“%s”"
#~ msgid "Invalid instance path: %q"
#~ msgstr "Caminho de instância inválido: %q"
#, c-format
#~ msgid "Invalid path %s"
#~ msgstr "Caminho inválido %s"
#~ msgid "Invalid snapshot name"
#~ msgstr "Nome de instantâneo inválido"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: lxd\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-13 05:46+0000\n"
"Last-Translator: Kazantsev Mikhail <kazan417@mail.ru>\n"
"Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/"
@ -663,6 +663,19 @@ msgstr ""
msgid "'%s' isn't a supported file type"
msgstr "'%s' não é um tipo de arquivo suportado"
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, c-format
msgid "(error: %w)"
msgstr ""
#: cmd/incus/low_level.go:464
msgid "(no timestamp)"
msgstr ""
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -789,7 +802,7 @@ msgstr ""
msgid "A client certificate is already present"
msgstr "Certificado do cliente armazenado no servidor: "
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -827,6 +840,10 @@ msgstr ""
msgid "ARCHITECTURE"
msgstr "ARQUITETURA"
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr "TIPO DE AUTENTICAÇÃO"
@ -1068,7 +1085,7 @@ msgstr "Aceitar certificado"
msgid "Always follow symbolic links in source path"
msgstr ""
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, fuzzy, c-format
msgid "An instance path is required for %s"
msgstr "Dispositivo %s adicionado a %s"
@ -1602,7 +1619,8 @@ msgstr "Clustering ativado"
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -2099,15 +2117,6 @@ msgstr ""
msgid "Date: %s"
msgstr "Criado: %s"
#: cmd/incus/debug.go:27
msgid "Debug commands"
msgstr ""
#: cmd/incus/debug.go:28
#, fuzzy
msgid "Debug commands for instances"
msgstr "Editar arquivos no container"
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr ""
@ -2387,7 +2396,7 @@ msgstr "A importação de diretório não está disponível nessa plataforma"
msgid "Directory to run the command in (default /root)"
msgstr ""
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr ""
@ -2675,7 +2684,8 @@ msgstr "Editar configurações de perfil como YAML"
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -2903,7 +2913,7 @@ msgid ""
"`2006/01/02 15:04 MST` format)"
msgstr ""
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
#, fuzzy
msgid "Export a virtual machine's memory state"
msgstr "Copiar a imagem: %s"
@ -2947,7 +2957,7 @@ msgstr "Apagar projetos"
msgid "Export storage buckets as tarball."
msgstr "Clustering ativado"
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -3015,7 +3025,7 @@ msgstr "Nome de membro do cluster"
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr ""
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, fuzzy, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -3106,8 +3116,8 @@ msgstr "Aceitar certificado"
msgid "Failed starting sshfs: %w"
msgstr "Aceitar certificado"
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, fuzzy, c-format
msgid "Failed to accept incoming connection: %w"
msgstr "Aceitar certificado"
@ -3192,7 +3202,7 @@ msgstr "Aceitar certificado"
msgid "Failed to delete original instance after copying it: %w"
msgstr "Aceitar certificado"
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, fuzzy, c-format
msgid "Failed to dump instance memory: %w"
msgstr "Nome de membro do cluster"
@ -3212,13 +3222,23 @@ msgstr "Aceitar certificado"
msgid "Failed to find project: %w"
msgstr ""
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, fuzzy, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr "Nome de membro do cluster"
#: cmd/incus/low_level.go:496
#, fuzzy, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr "Nome de membro do cluster"
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, fuzzy, c-format
msgid "Failed to join cluster: %w"
msgstr "Nome de membro do cluster"
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, fuzzy, c-format
msgid "Failed to listen for connection: %w"
msgstr "Aceitar certificado"
@ -3228,7 +3248,7 @@ msgstr "Aceitar certificado"
msgid "Failed to load configuration: %s"
msgstr ""
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, fuzzy, c-format
msgid "Failed to open source file %q: %v"
@ -3465,16 +3485,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
"disable headers and \",header\" to enable it if missing, e.g. csv,header"
@ -3496,7 +3517,7 @@ msgstr ""
msgid "Format (table|compact)"
msgstr ""
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr ""
@ -3559,6 +3580,14 @@ msgstr ""
msgid "GPUs:"
msgstr ""
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
msgid "GUID NAME"
msgstr ""
#: cmd/incus/remote.go:926
#, fuzzy
msgid "Generate a client token derived from the client certificate"
@ -3702,6 +3731,14 @@ msgstr "Desconectar volumes de armazenamento dos perfis"
msgid "Get the key as an instance property"
msgstr ""
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
#, fuzzy
msgid "Get values for cluster group configuration keys"
@ -3796,7 +3833,7 @@ msgid ""
"container or virtual-machine)."
msgstr ""
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr ""
@ -3871,6 +3908,10 @@ msgstr ""
msgid "INSTANCE NAME"
msgstr ""
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -4038,7 +4079,7 @@ msgstr ""
msgid "Import storage bucket"
msgstr "Apagar projetos"
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr ""
@ -4046,17 +4087,17 @@ msgstr ""
msgid "Import type, backup or iso (default \"backup\")"
msgstr ""
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, fuzzy, c-format
msgid "Importing bucket: %s"
msgstr "Editar arquivos no container"
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, fuzzy, c-format
msgid "Importing custom volume: %s"
msgstr "Editar arquivos no container"
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, fuzzy, c-format
msgid "Importing instance: %s"
msgstr "Editar arquivos no container"
@ -4105,7 +4146,7 @@ msgstr ""
msgid "Instance name is: %s"
msgstr ""
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr ""
@ -4123,6 +4164,11 @@ msgstr "Editar arquivos no container"
msgid "Instance type"
msgstr ""
#: cmd/incus/low_level.go:502
#, fuzzy, c-format
msgid "Invalid GUID: %s"
msgstr "Editar arquivos no container"
#: cmd/incus/cluster.go:1673
#, fuzzy
msgid "Invalid IP address or DNS name"
@ -4389,6 +4435,10 @@ msgid ""
" L - Location of the DHCP Lease (e.g. its cluster member)"
msgstr ""
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
#, fuzzy
msgid "List address sets across all projects"
@ -5289,6 +5339,15 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr ""
#: cmd/incus/low_level.go:33
msgid "Low-level commands"
msgstr ""
#: cmd/incus/low_level.go:34
#, fuzzy
msgid "Low-level commands for instances"
msgstr "Editar arquivos no container"
#: cmd/incus/network.go:976
#, fuzzy
msgid "Lower device"
@ -5371,6 +5430,11 @@ msgstr ""
msgid "Make the image public"
msgstr ""
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
#, fuzzy
msgid "Manage NVRAM on virtual machines"
msgstr "Copiar a imagem: %s"
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr ""
@ -5725,12 +5789,12 @@ msgid ""
"If no target path is provided, start an SSH SFTP listener instead."
msgstr ""
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
#, fuzzy
msgid "Mount files from instances"
msgstr "Adicionar perfis aos containers"
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid ""
"Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
@ -5805,17 +5869,17 @@ msgstr ""
msgid "NAT"
msgstr ""
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
#, fuzzy
msgid "NBD access to a block storage volume"
msgstr "Apagar nomes alternativos da imagem"
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
#, fuzzy
msgid "NBD access to all of a virtual machine's disks"
msgstr "Apagar nomes alternativos da imagem"
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -5824,22 +5888,22 @@ msgid ""
"device name."
msgstr ""
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, c-format
msgid "NBD client connected %q"
msgstr ""
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, c-format
msgid "NBD client disconnected %q"
msgstr ""
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr ""
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, c-format
msgid "NBD listening on %v"
msgstr ""
@ -6665,7 +6729,7 @@ msgstr "Editar arquivos no container"
msgid "Push files into instances"
msgstr "Editar arquivos no container"
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
@ -6679,6 +6743,10 @@ msgstr ""
msgid "Query virtual machine images"
msgstr ""
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr ""
@ -7284,7 +7352,7 @@ msgstr "Editar configurações do container ou do servidor como YAML"
msgid "Set a keepalive timeout for a remote"
msgstr ""
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr ""
@ -7634,7 +7702,7 @@ msgstr "Desconectar volumes de armazenamento dos perfis"
msgid "Set the key as an instance property"
msgstr ""
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr ""
@ -7956,7 +8024,7 @@ msgstr ""
msgid "Source:"
msgstr ""
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr ""
@ -8166,6 +8234,10 @@ msgstr ""
msgid "TARGET"
msgstr ""
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr ""
@ -8193,12 +8265,12 @@ msgstr ""
msgid "Target path %q already exists"
msgstr "Alias %s já existe"
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
#, fuzzy
msgid "Target path and --listen flag cannot be used together"
msgstr "--refresh só pode ser usado com containers"
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr ""
@ -8636,6 +8708,11 @@ msgstr ""
msgid "Type: %s"
msgstr ""
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr ""
@ -8712,7 +8789,8 @@ msgstr ""
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -8751,6 +8829,10 @@ msgstr ""
msgid "Unknown output type %q"
msgstr ""
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
#, fuzzy
msgid "Unset a cluster group's configuration keys"
@ -9071,6 +9153,10 @@ msgstr "Editar configurações de perfil como YAML"
msgid "User aborted delete operation"
msgstr ""
#: cmd/incus/low_level.go:415
msgid "VARIABLE NAME"
msgstr ""
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -9608,12 +9694,6 @@ msgid ""
"standard output."
msgstr ""
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -9641,7 +9721,7 @@ msgid ""
" To create a symlink /bar in instance foo whose target is baz."
msgstr ""
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid ""
"incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
@ -9732,6 +9812,12 @@ msgid ""
" List instances with their running state and user comment."
msgstr ""
#: cmd/incus/low_level.go:65
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/monitor.go:43
msgid ""
"incus monitor --type=logging\n"
@ -10220,7 +10306,7 @@ msgstr "Editar configurações de rede como YAML"
msgid "network or integration"
msgstr "Editar configurações de rede como YAML"
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, c-format
msgid "new %s name"
msgstr ""
@ -10333,7 +10419,7 @@ msgstr ""
msgid "sshfs mounting %q on %q"
msgstr ""
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
#, fuzzy
msgid "stdin can only be used once, with no other source arguments"
msgstr "--refresh só pode ser usado com containers"
@ -10346,7 +10432,7 @@ msgstr ""
msgid "tarball"
msgstr ""
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, c-format
msgid "target %s"
msgstr ""
@ -10403,11 +10489,15 @@ msgid "value"
msgstr ""
#: cmd/incus/usage/usage.go:868
msgid "variable"
msgstr ""
#: cmd/incus/usage/usage.go:869
#, fuzzy
msgid "volume"
msgstr "Colunas"
#: cmd/incus/usage/usage.go:869
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr ""
@ -10421,7 +10511,7 @@ msgstr ""
msgid "yes"
msgstr "sim"
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr ""

237
po/ru.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: lxd\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-13 05:45+0000\n"
"Last-Translator: Anonymous <noreply@weblate.org>\n"
"Language-Team: Russian <https://hosted.weblate.org/projects/incus/cli/ru/>\n"
@ -674,6 +674,20 @@ msgstr "%s Синтаксис %s устарел; %s\n"
msgid "'%s' isn't a supported file type"
msgstr "'%s' неподдерживаемый тип файла"
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, fuzzy, c-format
msgid "(error: %w)"
msgstr "ошибка: %v"
#: cmd/incus/low_level.go:464
#, fuzzy
msgid "(no timestamp)"
msgstr "Временные метки:"
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -793,7 +807,7 @@ msgstr "=> Query %d:"
msgid "A client certificate is already present"
msgstr "Сертификат клиента хранится на сервере"
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -833,6 +847,10 @@ msgstr "Приложение"
msgid "ARCHITECTURE"
msgstr "АРХИТЕКТУРА"
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr "Тип авторизации"
@ -1089,7 +1107,7 @@ msgstr "Альтернативное имя сертификата"
msgid "Always follow symbolic links in source path"
msgstr "Всегда переходить по символическим ссылкам в пути к источнику"
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, c-format
msgid "An instance path is required for %s"
msgstr "Для %s требуется путь к экземпляру"
@ -1627,7 +1645,8 @@ msgstr "Кластеризация включена"
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -2127,14 +2146,6 @@ msgstr "Демон продолжает работать после истече
msgid "Date: %s"
msgstr "Дата: %s"
#: cmd/incus/debug.go:27
msgid "Debug commands"
msgstr "Команды отладки"
#: cmd/incus/debug.go:28
msgid "Debug commands for instances"
msgstr "Команды отладки для экземпляров"
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr "VLAN ID по умолчанию"
@ -2395,7 +2406,7 @@ msgstr "На этой платформе недоступен импорт ди
msgid "Directory to run the command in (default /root)"
msgstr "Директория в которой выполняется команда (по умолчанию /root)"
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr "Отключить аутентификацию при использовании SSH SFTP сервера"
@ -2691,7 +2702,8 @@ msgstr "Редактировать конфигураций доверия се
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -2983,7 +2995,7 @@ msgstr ""
"Срок хранения для нового моментального снимка ( Задать временной период "
"вроде `1d 3H` или дату в формате `2006/01/02 15:04 MST`)"
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
msgid "Export a virtual machine's memory state"
msgstr "Экспорт состояния памяти виртуальной машины"
@ -3026,7 +3038,7 @@ msgstr "Экспортировать сегмент хранилища"
msgid "Export storage buckets as tarball."
msgstr "Экспортировать сегмент хранилища в виде сжатого архива."
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -3099,7 +3111,7 @@ msgstr "Ошибка проверки существования экземпл
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr "Не удалось подключиться к экземпляру SFTP для клиента %q: %v"
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -3192,8 +3204,8 @@ msgstr "Не удалось запустить команду: %w"
msgid "Failed starting sshfs: %w"
msgstr "Не удалось запустить sshfs: %w"
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, c-format
msgid "Failed to accept incoming connection: %w"
msgstr "Не удалось принять входящее соединение: %w"
@ -3278,7 +3290,7 @@ msgstr "Не удалось создать резервную копию том
msgid "Failed to delete original instance after copying it: %w"
msgstr "Не удалось удалить исходный экземпляр после его копирования: %w"
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, c-format
msgid "Failed to dump instance memory: %w"
msgstr "Не удалось скопировать память экземпляра: %w"
@ -3298,13 +3310,23 @@ msgstr "Не удалось получить файл резервной коп
msgid "Failed to find project: %w"
msgstr "Проект не найден: %w"
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, fuzzy, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr "Не удалось скопировать память экземпляра: %w"
#: cmd/incus/low_level.go:496
#, fuzzy, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr "Не удалось скопировать память экземпляра: %w"
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, c-format
msgid "Failed to join cluster: %w"
msgstr "Не удалось присоединиться к кластеру: %w"
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, c-format
msgid "Failed to listen for connection: %w"
msgstr "Не удалось запустить принятие соединений: %w"
@ -3314,7 +3336,7 @@ msgstr "Не удалось запустить принятие соединен
msgid "Failed to load configuration: %s"
msgstr "Не удалось загрузить конфигурацию: %s"
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, c-format
msgid "Failed to open source file %q: %v"
@ -3576,16 +3598,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
"disable headers and \",header\" to enable it if missing, e.g. csv,header"
@ -3610,7 +3633,7 @@ msgstr "Формат (pem|pfx)"
msgid "Format (table|compact)"
msgstr "Формат (таблица|компактно)"
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr ""
@ -3677,6 +3700,15 @@ msgstr "граф. проц.:"
msgid "GPUs:"
msgstr "графические процессоры:"
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
#, fuzzy
msgid "GUID NAME"
msgstr "НАЗВАНИЕ"
#: cmd/incus/remote.go:926
msgid "Generate a client token derived from the client certificate"
msgstr "Сгенерировать клиентский токен на основе клиентского сертификата"
@ -3823,6 +3855,14 @@ msgstr "Получить параметр тома хранения"
msgid "Get the key as an instance property"
msgstr "Получить параметр свойства экземпляра"
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
msgid "Get values for cluster group configuration keys"
msgstr "Получить значения параметров конфигурации кластерной группы"
@ -3916,7 +3956,7 @@ msgstr ""
"Для моментальных снимков добавьте название моментального снимка (только если "
"тип custom, container или virtual-machine)."
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr "Получить права записи на диск"
@ -3993,6 +4033,10 @@ msgstr "ОБРАЗЫ"
msgid "INSTANCE NAME"
msgstr "НАЗВАНИЕ ЭКЗЕМПЛЯРА"
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -4166,7 +4210,7 @@ msgstr "Импортировать резервные копии экземпл
msgid "Import storage bucket"
msgstr "Импортировать сегмент хранилища"
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr "Тип импорта должен быть \"backup\" или \"iso\""
@ -4175,17 +4219,17 @@ msgid "Import type, backup or iso (default \"backup\")"
msgstr ""
"Тип импорта: резервная копия или ISO-образ (по умолчанию \"резервная копия\")"
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, c-format
msgid "Importing bucket: %s"
msgstr "Импортирование сегмента хранилища: %s"
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, c-format
msgid "Importing custom volume: %s"
msgstr "Импорт пользовательского тома: %s"
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, c-format
msgid "Importing instance: %s"
msgstr "Импортирование экземпляра: %s"
@ -4232,7 +4276,7 @@ msgstr "Клиент %q отключен от экземпляра"
msgid "Instance name is: %s"
msgstr "Название экземпляра: %s"
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr "В режиме прослушивания SSH SFTP нельзя использовать путь экземпляра"
@ -4250,6 +4294,11 @@ msgstr "Название моментального снимка экземпл
msgid "Instance type"
msgstr "Тип экземпляра"
#: cmd/incus/low_level.go:502
#, fuzzy, c-format
msgid "Invalid GUID: %s"
msgstr "Недопустимый формат: %s"
#: cmd/incus/cluster.go:1673
msgid "Invalid IP address or DNS name"
msgstr "Недопустимый IP адрес или DNS имя"
@ -4540,6 +4589,10 @@ msgstr ""
" t - Тип\n"
" L - Местоположение DHCP-аренды (например, участник кластера)"
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
msgid "List address sets across all projects"
msgstr "Вывести наборы адресов из всех проектов"
@ -6011,6 +6064,16 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr "Низкоуровневые команды администрирования кластера"
#: cmd/incus/low_level.go:33
#, fuzzy
msgid "Low-level commands"
msgstr "Команды отладки"
#: cmd/incus/low_level.go:34
#, fuzzy
msgid "Low-level commands for instances"
msgstr "Команды отладки для экземпляров"
#: cmd/incus/network.go:976
msgid "Lower device"
msgstr "нижестоящее устройство"
@ -6091,6 +6154,11 @@ msgstr "Опубликовать образ"
msgid "Make the image public"
msgstr "Опубликовать этот образ"
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
#, fuzzy
msgid "Manage NVRAM on virtual machines"
msgstr "Создать виртуальную машину"
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr "Управление экземплярами и их подключение к сетям"
@ -6444,11 +6512,11 @@ msgstr ""
"Монтировать файлы из пользовательских томов хранения.\n"
"Если целевой путь не указан, запустить вместо этого SSH SFTP сервер."
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
msgid "Mount files from instances"
msgstr "Монтирование файлов из экземпляров"
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid ""
"Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
@ -6539,15 +6607,15 @@ msgstr "НАЗВАНИЕ"
msgid "NAT"
msgstr "СЕТЕВАЯ ТРАНСЛЯЦИЯ АДРЕСОВ (NAT)"
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
msgid "NBD access to a block storage volume"
msgstr "доступ NBD к блочному тому хранения"
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
msgid "NBD access to all of a virtual machine's disks"
msgstr "доступ NBD ко всем дискам виртуальной машины"
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -6561,22 +6629,22 @@ msgstr ""
"сервер сетевого блочного устройства (NBD), с каждым диском, доступным как\n"
"экспортированное NBD, названное также как и его названия устройства Incus."
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, c-format
msgid "NBD client connected %q"
msgstr "NBD клиент подключен %q"
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, c-format
msgid "NBD client disconnected %q"
msgstr "NBD клиент отключен %q"
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr "Подключение NBD не удалось: %v"
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, c-format
msgid "NBD listening on %v"
msgstr "NBD работает на %v"
@ -7406,7 +7474,7 @@ msgstr "Поместить файлы в пользовательские том
msgid "Push files into instances"
msgstr "Отправка файлов в экземпляры"
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
@ -7420,6 +7488,10 @@ msgstr "Путь запроса должен начаться с /"
msgid "Query virtual machine images"
msgstr "Запрос образов виртуальных машин"
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr "РЕСУРСЫ"
@ -8011,7 +8083,7 @@ msgstr "Задать параметры конфигурации участни
msgid "Set a keepalive timeout for a remote"
msgstr "Задать время ожидания для удаленного сервера"
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr "Задать пользователя для аутентификации при использовании SSH SFTP"
@ -8428,7 +8500,7 @@ msgstr "Задать параметр тома хранения"
msgid "Set the key as an instance property"
msgstr "Задать параметр экземпляра"
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr "Настроить SSH SFTP сервер по адресу:порту вместо монтирования"
@ -8742,7 +8814,7 @@ msgstr ""
msgid "Source:"
msgstr "Источник:"
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr "Конкретный адрес для подключений"
@ -8948,6 +9020,10 @@ msgstr "СДЕЛАН В"
msgid "TARGET"
msgstr "ЦЕЛЬ"
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr "ТОКЕН"
@ -8975,11 +9051,11 @@ msgstr "Цель - не кластер"
msgid "Target path %q already exists"
msgstr "Целевой путь %q уже существует"
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
msgid "Target path and --listen flag cannot be used together"
msgstr "Целевой путь и флаг --listen не могут использоваться вместе"
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr "Целевой путь должен быть директорией"
@ -9471,6 +9547,11 @@ msgstr "Тип точки обмена трафиком (локальная ил
msgid "Type: %s"
msgstr "Тип: %s"
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr "НЕОГРАНИЧЕННО"
@ -9546,7 +9627,8 @@ msgstr "Неизвестный тип канала связи для клиен
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -9585,6 +9667,10 @@ msgstr "Неизвестный параметр: %s"
msgid "Unknown output type %q"
msgstr "Неизвестный тип вывода %q"
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
msgid "Unset a cluster group's configuration keys"
msgstr "Убрать параметров конфигурации кластерной группы"
@ -9887,6 +9973,11 @@ msgstr "Пользователь прервал настройку"
msgid "User aborted delete operation"
msgstr "Пользователь прервал операцию удаления"
#: cmd/incus/low_level.go:415
#, fuzzy
msgid "VARIABLE NAME"
msgstr "ИМЯ ФАЙЛА"
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -10530,14 +10621,6 @@ msgstr ""
" Извлечет файл /etc/hosts из пользовательского тома и записать его "
"содержимое в стандартный вывод."
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Создать дамп памяти экземпляра vm1 в формате ELF."
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -10582,7 +10665,7 @@ msgstr ""
" Создать символическую ссылку /bar в экземпляре foo, целевым объектом "
"которой является baz."
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid ""
"incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
@ -10732,6 +10815,15 @@ msgstr ""
" Отображает список экземпляров с их состоянием работы и комментарием "
"пользователя."
#: cmd/incus/low_level.go:65
#, fuzzy
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Создать дамп памяти экземпляра vm1 в формате ELF."
#: cmd/incus/monitor.go:43
msgid ""
"incus monitor --type=logging\n"
@ -11464,7 +11556,7 @@ msgstr "сетевая интеграция"
msgid "network or integration"
msgstr "сеть или сетевая интеграция"
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, c-format
msgid "new %s name"
msgstr "новое название %s"
@ -11573,7 +11665,7 @@ msgstr "sshfs остановлен"
msgid "sshfs mounting %q on %q"
msgstr "sshfs монтирует %q в %q"
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
msgid "stdin can only be used once, with no other source arguments"
msgstr ""
"Функция stdin может быть использована только один раз, без каких-либо других "
@ -11587,7 +11679,7 @@ msgstr "Целевой путь символической ссылки"
msgid "tarball"
msgstr "архив"
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, c-format
msgid "target %s"
msgstr "цель %s"
@ -11644,10 +11736,15 @@ msgid "value"
msgstr "значение"
#: cmd/incus/usage/usage.go:868
#, fuzzy
msgid "variable"
msgstr "отключено"
#: cmd/incus/usage/usage.go:869
msgid "volume"
msgstr "Том"
#: cmd/incus/usage/usage.go:869
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr "UUID предупреждения"
@ -11661,7 +11758,7 @@ msgstr "да (y)"
msgid "yes"
msgstr "да"
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr "DNS зона"

241
po/sv.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: incus\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-13 05:50+0000\n"
"Last-Translator: Anonymous <noreply@weblate.org>\n"
"Language-Team: Swedish <https://hosted.weblate.org/projects/incus/cli/sv/>\n"
@ -674,6 +674,20 @@ msgstr "%s %s syntax är föråldrad; %s\n"
msgid "'%s' isn't a supported file type"
msgstr "'%s' är inte en filtyp som stöds"
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, fuzzy, c-format
msgid "(error: %w)"
msgstr "fel: %v"
#: cmd/incus/low_level.go:464
#, fuzzy
msgid "(no timestamp)"
msgstr "Tidsstämplar:"
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -786,7 +800,7 @@ msgstr "=> Fråga %d:"
msgid "A client certificate is already present"
msgstr "Ett klientcertifikat finns redan"
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -826,6 +840,10 @@ msgstr "APP"
msgid "ARCHITECTURE"
msgstr "ARKITEKTUR"
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr "AUTENTISERINGSTYP"
@ -1082,7 +1100,7 @@ msgstr "Alternativt certifikatnamn"
msgid "Always follow symbolic links in source path"
msgstr "Följ alltid symboliska länkar i källsökvägen"
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, c-format
msgid "An instance path is required for %s"
msgstr "En instanssökväg krävs för %s"
@ -1612,7 +1630,8 @@ msgstr "Klustering aktiverad"
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -2103,14 +2122,6 @@ msgstr "Daemon körs fortfarande efter %d sekunders timeout"
msgid "Date: %s"
msgstr "Datum: %s"
#: cmd/incus/debug.go:27
msgid "Debug commands"
msgstr "Felsökningskommandon"
#: cmd/incus/debug.go:28
msgid "Debug commands for instances"
msgstr "Felsökningskommandon för instanser"
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr "Standard-VLAN-ID"
@ -2368,7 +2379,7 @@ msgstr "Katalogimport är inte tillgängligt på denna plattform"
msgid "Directory to run the command in (default /root)"
msgstr "Katalog där kommandot ska köras (standard /root)"
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr "Inaktivera autentisering vid användning av SSH SFTP-lyssnare"
@ -2658,7 +2669,8 @@ msgstr "Redigera förtroendekonfigurationer som YAML"
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -2948,7 +2960,7 @@ msgstr ""
"Utgångsdatum för den nya ögonblicksbilden (antingen ett tidsintervall som "
"`1d 3H` eller ett datum i formatet `2006/01/02 15:04 MST`)"
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
msgid "Export a virtual machine's memory state"
msgstr "Exportera en virtuell maskins minnestillstånd"
@ -2990,7 +3002,7 @@ msgstr "Exportera lagringsbehållare"
msgid "Export storage buckets as tarball."
msgstr "Exportera lagringsbuckets som tarball."
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -3063,7 +3075,7 @@ msgstr "Misslyckades med att kontrollera att instansen %s finns: %w"
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr "Misslyckades med att ansluta till instans SFTP för klient %q: %v"
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -3154,8 +3166,8 @@ msgstr "Startkommandot misslyckades: %w"
msgid "Failed starting sshfs: %w"
msgstr "Misslyckades med att starta sshfs: %w"
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, c-format
msgid "Failed to accept incoming connection: %w"
msgstr "Det gick inte att acceptera inkommande anslutning: %w"
@ -3241,7 +3253,7 @@ msgid "Failed to delete original instance after copying it: %w"
msgstr ""
"Det gick inte att ta bort den ursprungliga instansen efter kopieringen: %w"
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, c-format
msgid "Failed to dump instance memory: %w"
msgstr "Misslyckades med att dumpa instansminnet: %w"
@ -3261,13 +3273,23 @@ msgstr "Det gick inte att hämta säkerhetskopian av lagringsvolymen: %w"
msgid "Failed to find project: %w"
msgstr "Projektet kunde inte hittas: %w"
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, fuzzy, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr "Misslyckades med att dumpa instansminnet: %w"
#: cmd/incus/low_level.go:496
#, fuzzy, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr "Misslyckades med att dumpa instansminnet: %w"
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, c-format
msgid "Failed to join cluster: %w"
msgstr "Det gick inte att ansluta till klustret: %w"
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, c-format
msgid "Failed to listen for connection: %w"
msgstr "Misslyckades med att lyssna efter anslutning: %w"
@ -3277,7 +3299,7 @@ msgstr "Misslyckades med att lyssna efter anslutning: %w"
msgid "Failed to load configuration: %s"
msgstr "Konfigurationen kunde inte läsas in: %s"
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, c-format
msgid "Failed to open source file %q: %v"
@ -3541,16 +3563,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
"disable headers and \",header\" to enable it if missing, e.g. csv,header"
@ -3575,7 +3598,7 @@ msgstr "Format (pem|pfx)"
msgid "Format (table|compact)"
msgstr "Format (tabell|kompakt)"
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr ""
@ -3639,6 +3662,15 @@ msgstr "GPU:"
msgid "GPUs:"
msgstr "Grafikkort:"
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
#, fuzzy
msgid "GUID NAME"
msgstr "NAMN"
#: cmd/incus/remote.go:926
msgid "Generate a client token derived from the client certificate"
msgstr "Generera en klienttoken som härrör från klientcertifikatet"
@ -3784,6 +3816,14 @@ msgstr "Hämta nyckeln som en lagringsvolymegenskap"
msgid "Get the key as an instance property"
msgstr "Hämta nyckeln som en instansegenskap"
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
msgid "Get values for cluster group configuration keys"
msgstr "Hämta värden för konfigurationsnycklar för klustergrupper"
@ -3873,7 +3913,7 @@ msgstr ""
"lägger du till snapshotnamnet (endast om typen är custom, container eller "
"virtual-machine)."
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr "Få skrivåtkomst till disken"
@ -3948,6 +3988,10 @@ msgstr "AVBILDNINGAR"
msgid "INSTANCE NAME"
msgstr "INSTANSNAMN"
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -4121,7 +4165,7 @@ msgstr "Importera instansbackuper"
msgid "Import storage bucket"
msgstr "Importera lagringsbehållare"
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr "Importtypen måste vara \"backup\" eller \"iso\""
@ -4129,17 +4173,17 @@ msgstr "Importtypen måste vara \"backup\" eller \"iso\""
msgid "Import type, backup or iso (default \"backup\")"
msgstr "Importtyp, säkerhetskopia eller iso (standard \"säkerhetskopia\")"
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, c-format
msgid "Importing bucket: %s"
msgstr "Importerar bucket: %s"
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, c-format
msgid "Importing custom volume: %s"
msgstr "Importera anpassad volym: %s"
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, c-format
msgid "Importing instance: %s"
msgstr "Importera instans: %s"
@ -4186,7 +4230,7 @@ msgstr "Instans frånkopplad för klient %q"
msgid "Instance name is: %s"
msgstr "Instansnamn är: %s"
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr "Instansvägen kan inte användas i SSH SFTP-lyssnaräge"
@ -4204,6 +4248,11 @@ msgstr "Namnet på instansens ögonblicksbild är: %s"
msgid "Instance type"
msgstr "Instans typ"
#: cmd/incus/low_level.go:502
#, fuzzy, c-format
msgid "Invalid GUID: %s"
msgstr "Ogiltig sökväg %s"
#: cmd/incus/cluster.go:1673
msgid "Invalid IP address or DNS name"
msgstr "Ogiltig IP-adress eller DNS-namn"
@ -4487,6 +4536,10 @@ msgstr ""
" t - Typ\n"
" L - Plats för DHCP-lån (t.ex. dess klustermedlem)"
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
msgid "List address sets across all projects"
msgstr "Lista adressuppsättningar för alla projekt"
@ -5951,6 +6004,16 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr "Kommandon för administration av låg nivåkluster"
#: cmd/incus/low_level.go:33
#, fuzzy
msgid "Low-level commands"
msgstr "Felsökningskommandon"
#: cmd/incus/low_level.go:34
#, fuzzy
msgid "Low-level commands for instances"
msgstr "Felsökningskommandon för instanser"
#: cmd/incus/network.go:976
msgid "Lower device"
msgstr "Nedre enhet"
@ -6031,6 +6094,11 @@ msgstr "Gör avbildningen publik"
msgid "Make the image public"
msgstr "Gör den här bilden offentlig"
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
#, fuzzy
msgid "Manage NVRAM on virtual machines"
msgstr "Skapa en virtuell maskin"
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr "Hantera och anslut instanser till nätverk"
@ -6384,11 +6452,11 @@ msgstr ""
"Montera filer från anpassade lagringsvolymer.\n"
"Om ingen målsökväg anges, starta en SSH SFTP-lyssnare istället."
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
msgid "Mount files from instances"
msgstr "Montera filer från instanser"
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid ""
"Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
@ -6475,15 +6543,15 @@ msgstr "NAMN"
msgid "NAT"
msgstr "NAT"
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
msgid "NBD access to a block storage volume"
msgstr "NBD-åtkomst till en blocklagringsvolym"
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
msgid "NBD access to all of a virtual machine's disks"
msgstr "NBD-åtkomst till alla diskar på en virtuell maskin"
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -6497,22 +6565,22 @@ msgstr ""
" NBD-server, där varje disk kan nås som en NBD-export uppkallad efter \n"
"dess Incus-enhetsnamn."
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, c-format
msgid "NBD client connected %q"
msgstr "NBD-klient ansluten %q"
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, c-format
msgid "NBD client disconnected %q"
msgstr "NBD-klienten frånkopplad %q"
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr "NBD-anslutning misslyckades: %v"
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, c-format
msgid "NBD listening on %v"
msgstr "NBD lyssnar på %v"
@ -7326,7 +7394,7 @@ msgstr "Skicka filer till anpassade volymer"
msgid "Push files into instances"
msgstr "Skicka filer till instanser"
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
@ -7340,6 +7408,10 @@ msgstr "Sökvägen måste börja med /"
msgid "Query virtual machine images"
msgstr "Fråga virtuella maskinavbildningar"
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr "RESURS"
@ -7925,7 +7997,7 @@ msgstr "Ställ in konfigurationsnycklarna för en klustermedlem"
msgid "Set a keepalive timeout for a remote"
msgstr "Ställ in en keepalive-timeout för en fjärr"
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr "Ställ in autentiseringsanvändare vid användning av SSH SFTP-lyssnare"
@ -8334,7 +8406,7 @@ msgstr "Ställ in nyckeln som en lagringsvolymegenskap"
msgid "Set the key as an instance property"
msgstr "Ställ in nyckeln som en instansegenskap"
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr "Konfigurera SSH SFTP-lyssnare på adress:port istället för att montera"
@ -8646,7 +8718,7 @@ msgstr ""
msgid "Source:"
msgstr "Källa:"
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr "Specifik adress att lyssna på"
@ -8852,6 +8924,10 @@ msgstr "TAGET VID"
msgid "TARGET"
msgstr "MÅL"
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr "TOKEN"
@ -8879,11 +8955,11 @@ msgstr "Målet är inte ett kluster"
msgid "Target path %q already exists"
msgstr "Målvägen %q finns redan"
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
msgid "Target path and --listen flag cannot be used together"
msgstr "Målsökvägen och flaggan --listen kan inte användas tillsammans"
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr "Målvägen måste vara en katalog"
@ -9366,6 +9442,11 @@ msgstr "Typ av nätverkspeern (lokal eller fjärrstyrd)"
msgid "Type: %s"
msgstr "Typ: %s"
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr "OBEGRÄNSAD"
@ -9441,7 +9522,8 @@ msgstr "Okänd kanaltyp för klient %q: %s"
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -9480,6 +9562,10 @@ msgstr "Okänd nyckel: %s"
msgid "Unknown output type %q"
msgstr "Okänd utdatatyp %q"
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
msgid "Unset a cluster group's configuration keys"
msgstr "Inaktivera konfigurationsnycklarna för en klustergrupp"
@ -9779,6 +9865,11 @@ msgstr "Användaren avbröt konfigurationen"
msgid "User aborted delete operation"
msgstr "Användaren avbröt raderingsåtgärden"
#: cmd/incus/low_level.go:415
#, fuzzy
msgid "VARIABLE NAME"
msgstr "FILNAMN"
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -10409,14 +10500,6 @@ msgstr ""
" För att hämta /etc/hosts från den anpassade volymen och skriva dess "
"utdata till standard ut."
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Skapar en minnesdump i ELF-format av vm1-instansen."
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -10459,7 +10542,7 @@ msgstr ""
"incus file create --type=symlink foo/bar baz\n"
" Skapar en symlänk /bar i instansen foo med målet baz."
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid ""
"incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
@ -10610,6 +10693,15 @@ msgstr ""
"list -c ns,user.comment:comment Lista\n"
"instanser med deras körningsstatus och användarkommentar."
#: cmd/incus/low_level.go:65
#, fuzzy
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Skapar en minnesdump i ELF-format av vm1-instansen."
#: cmd/incus/monitor.go:43
msgid ""
"incus monitor --type=logging\n"
@ -11332,7 +11424,7 @@ msgstr "nätverk integration"
msgid "network or integration"
msgstr "nätverk eller integration"
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, c-format
msgid "new %s name"
msgstr "nytt %s namn"
@ -11441,7 +11533,7 @@ msgstr "sshfs har stoppat"
msgid "sshfs mounting %q on %q"
msgstr "sshfs monterar %q på %q"
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
msgid "stdin can only be used once, with no other source arguments"
msgstr "stdin kan bara användas en gång, utan andra källargument"
@ -11453,7 +11545,7 @@ msgstr "symlänkens målsökväg"
msgid "tarball"
msgstr "arkiv"
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, c-format
msgid "target %s"
msgstr "mål %s"
@ -11510,10 +11602,15 @@ msgid "value"
msgstr "värde"
#: cmd/incus/usage/usage.go:868
#, fuzzy
msgid "variable"
msgstr "inaktiverad"
#: cmd/incus/usage/usage.go:869
msgid "volume"
msgstr "volymen"
#: cmd/incus/usage/usage.go:869
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr "varning UUID"
@ -11527,7 +11624,7 @@ msgstr "j"
msgid "yes"
msgstr "ja"
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr "zon"
@ -11722,10 +11819,6 @@ msgstr "“%s”"
#~ msgid "Invalid instance path: %q"
#~ msgstr "Ogiltig instansväg: %q"
#, c-format
#~ msgid "Invalid path %s"
#~ msgstr "Ogiltig sökväg %s"
#~ msgid "Invalid snapshot name"
#~ msgstr "Ogiltigt namn på ögonblicksbild"

225
po/ta.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: incus\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-13 05:42+0000\n"
"Last-Translator: Anonymous <noreply@weblate.org>\n"
"Language-Team: Tamil <https://hosted.weblate.org/projects/incus/cli/ta/>\n"
@ -416,6 +416,19 @@ msgstr ""
msgid "'%s' isn't a supported file type"
msgstr ""
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, c-format
msgid "(error: %w)"
msgstr ""
#: cmd/incus/low_level.go:464
msgid "(no timestamp)"
msgstr ""
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -527,7 +540,7 @@ msgstr ""
msgid "A client certificate is already present"
msgstr ""
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -565,6 +578,10 @@ msgstr ""
msgid "ARCHITECTURE"
msgstr ""
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr ""
@ -794,7 +811,7 @@ msgstr ""
msgid "Always follow symbolic links in source path"
msgstr ""
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, c-format
msgid "An instance path is required for %s"
msgstr ""
@ -1309,7 +1326,8 @@ msgstr ""
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -1768,14 +1786,6 @@ msgstr ""
msgid "Date: %s"
msgstr ""
#: cmd/incus/debug.go:27
msgid "Debug commands"
msgstr ""
#: cmd/incus/debug.go:28
msgid "Debug commands for instances"
msgstr ""
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr ""
@ -2028,7 +2038,7 @@ msgstr ""
msgid "Directory to run the command in (default /root)"
msgstr ""
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr ""
@ -2291,7 +2301,8 @@ msgstr ""
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -2518,7 +2529,7 @@ msgid ""
"`2006/01/02 15:04 MST` format)"
msgstr ""
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
msgid "Export a virtual machine's memory state"
msgstr ""
@ -2557,7 +2568,7 @@ msgstr ""
msgid "Export storage buckets as tarball."
msgstr ""
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -2625,7 +2636,7 @@ msgstr ""
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr ""
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -2716,8 +2727,8 @@ msgstr ""
msgid "Failed starting sshfs: %w"
msgstr ""
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, c-format
msgid "Failed to accept incoming connection: %w"
msgstr ""
@ -2802,7 +2813,7 @@ msgstr ""
msgid "Failed to delete original instance after copying it: %w"
msgstr ""
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, c-format
msgid "Failed to dump instance memory: %w"
msgstr ""
@ -2822,13 +2833,23 @@ msgstr ""
msgid "Failed to find project: %w"
msgstr ""
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr ""
#: cmd/incus/low_level.go:496
#, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr ""
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, c-format
msgid "Failed to join cluster: %w"
msgstr ""
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, c-format
msgid "Failed to listen for connection: %w"
msgstr ""
@ -2838,7 +2859,7 @@ msgstr ""
msgid "Failed to load configuration: %s"
msgstr ""
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, c-format
msgid "Failed to open source file %q: %v"
@ -3074,16 +3095,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
"disable headers and \",header\" to enable it if missing, e.g. csv,header"
@ -3105,7 +3127,7 @@ msgstr ""
msgid "Format (table|compact)"
msgstr ""
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr ""
@ -3168,6 +3190,14 @@ msgstr ""
msgid "GPUs:"
msgstr ""
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
msgid "GUID NAME"
msgstr ""
#: cmd/incus/remote.go:926
msgid "Generate a client token derived from the client certificate"
msgstr ""
@ -3297,6 +3327,14 @@ msgstr ""
msgid "Get the key as an instance property"
msgstr ""
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
msgid "Get values for cluster group configuration keys"
msgstr ""
@ -3378,7 +3416,7 @@ msgid ""
"container or virtual-machine)."
msgstr ""
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr ""
@ -3453,6 +3491,10 @@ msgstr ""
msgid "INSTANCE NAME"
msgstr ""
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -3614,7 +3656,7 @@ msgstr ""
msgid "Import storage bucket"
msgstr ""
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr ""
@ -3622,17 +3664,17 @@ msgstr ""
msgid "Import type, backup or iso (default \"backup\")"
msgstr ""
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, c-format
msgid "Importing bucket: %s"
msgstr ""
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, c-format
msgid "Importing custom volume: %s"
msgstr ""
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, c-format
msgid "Importing instance: %s"
msgstr ""
@ -3679,7 +3721,7 @@ msgstr ""
msgid "Instance name is: %s"
msgstr ""
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr ""
@ -3697,6 +3739,11 @@ msgstr ""
msgid "Instance type"
msgstr ""
#: cmd/incus/low_level.go:502
#, c-format
msgid "Invalid GUID: %s"
msgstr ""
#: cmd/incus/cluster.go:1673
msgid "Invalid IP address or DNS name"
msgstr ""
@ -3957,6 +4004,10 @@ msgid ""
" L - Location of the DHCP Lease (e.g. its cluster member)"
msgstr ""
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
msgid "List address sets across all projects"
msgstr ""
@ -4841,6 +4892,14 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr ""
#: cmd/incus/low_level.go:33
msgid "Low-level commands"
msgstr ""
#: cmd/incus/low_level.go:34
msgid "Low-level commands for instances"
msgstr ""
#: cmd/incus/network.go:976
msgid "Lower device"
msgstr ""
@ -4921,6 +4980,10 @@ msgstr ""
msgid "Make the image public"
msgstr ""
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
msgid "Manage NVRAM on virtual machines"
msgstr ""
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr ""
@ -5245,11 +5308,11 @@ msgid ""
"If no target path is provided, start an SSH SFTP listener instead."
msgstr ""
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
msgid "Mount files from instances"
msgstr ""
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid ""
"Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
@ -5322,15 +5385,15 @@ msgstr ""
msgid "NAT"
msgstr ""
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
msgid "NBD access to a block storage volume"
msgstr ""
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
msgid "NBD access to all of a virtual machine's disks"
msgstr ""
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -5339,22 +5402,22 @@ msgid ""
"device name."
msgstr ""
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, c-format
msgid "NBD client connected %q"
msgstr ""
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, c-format
msgid "NBD client disconnected %q"
msgstr ""
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr ""
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, c-format
msgid "NBD listening on %v"
msgstr ""
@ -6157,7 +6220,7 @@ msgstr ""
msgid "Push files into instances"
msgstr ""
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
@ -6171,6 +6234,10 @@ msgstr ""
msgid "Query virtual machine images"
msgstr ""
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr ""
@ -6733,7 +6800,7 @@ msgstr ""
msgid "Set a keepalive timeout for a remote"
msgstr ""
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr ""
@ -7060,7 +7127,7 @@ msgstr ""
msgid "Set the key as an instance property"
msgstr ""
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr ""
@ -7355,7 +7422,7 @@ msgstr ""
msgid "Source:"
msgstr ""
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr ""
@ -7560,6 +7627,10 @@ msgstr ""
msgid "TARGET"
msgstr ""
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr ""
@ -7587,11 +7658,11 @@ msgstr ""
msgid "Target path %q already exists"
msgstr ""
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
msgid "Target path and --listen flag cannot be used together"
msgstr ""
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr ""
@ -8024,6 +8095,11 @@ msgstr ""
msgid "Type: %s"
msgstr ""
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr ""
@ -8096,7 +8172,8 @@ msgstr ""
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -8135,6 +8212,10 @@ msgstr ""
msgid "Unknown output type %q"
msgstr ""
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
msgid "Unset a cluster group's configuration keys"
msgstr ""
@ -8414,6 +8495,10 @@ msgstr ""
msgid "User aborted delete operation"
msgstr ""
#: cmd/incus/low_level.go:415
msgid "VARIABLE NAME"
msgstr ""
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -8939,12 +9024,6 @@ msgid ""
"standard output."
msgstr ""
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -8972,7 +9051,7 @@ msgid ""
" To create a symlink /bar in instance foo whose target is baz."
msgstr ""
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid ""
"incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
@ -9063,6 +9142,12 @@ msgid ""
" List instances with their running state and user comment."
msgstr ""
#: cmd/incus/low_level.go:65
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/monitor.go:43
msgid ""
"incus monitor --type=logging\n"
@ -9547,7 +9632,7 @@ msgstr ""
msgid "network or integration"
msgstr ""
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, c-format
msgid "new %s name"
msgstr ""
@ -9656,7 +9741,7 @@ msgstr ""
msgid "sshfs mounting %q on %q"
msgstr ""
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
msgid "stdin can only be used once, with no other source arguments"
msgstr ""
@ -9668,7 +9753,7 @@ msgstr ""
msgid "tarball"
msgstr ""
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, c-format
msgid "target %s"
msgstr ""
@ -9725,10 +9810,14 @@ msgid "value"
msgstr ""
#: cmd/incus/usage/usage.go:868
msgid "volume"
msgid "variable"
msgstr ""
#: cmd/incus/usage/usage.go:869
msgid "volume"
msgstr ""
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr ""
@ -9742,7 +9831,7 @@ msgstr ""
msgid "yes"
msgstr ""
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: lxd\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-13 05:48+0000\n"
"Last-Translator: meipeter <meipeter114514@outlook.com>\n"
"Language-Team: Chinese (Simplified Han script) <https://hosted.weblate.org/"
@ -671,6 +671,19 @@ msgstr ""
msgid "'%s' isn't a supported file type"
msgstr "“%s”不是受支持的文件类型"
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, c-format
msgid "(error: %w)"
msgstr ""
#: cmd/incus/low_level.go:464
msgid "(no timestamp)"
msgstr ""
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -785,7 +798,7 @@ msgstr "=> 查询 %d"
msgid "A client certificate is already present"
msgstr "客户端证书已存在"
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -824,6 +837,10 @@ msgstr "应用"
msgid "ARCHITECTURE"
msgstr "架构"
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr "认证类型"
@ -1070,7 +1087,7 @@ msgstr "备选证书名称"
msgid "Always follow symbolic links in source path"
msgstr ""
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, c-format
msgid "An instance path is required for %s"
msgstr ""
@ -1590,7 +1607,8 @@ msgstr "已启用集群"
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -2077,14 +2095,6 @@ msgstr "超时 %d 秒后,守护进程仍在运行"
msgid "Date: %s"
msgstr "日期:%s"
#: cmd/incus/debug.go:27
msgid "Debug commands"
msgstr "调试命令"
#: cmd/incus/debug.go:28
msgid "Debug commands for instances"
msgstr "实例的调试命令"
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr "默认 VLAN ID"
@ -2344,7 +2354,7 @@ msgstr "目录导入在此平台上不可用"
msgid "Directory to run the command in (default /root)"
msgstr "运行命令的目录(默认/根目录)"
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr "使用 SSH SFTP 监听器时禁用身份验证"
@ -2629,7 +2639,8 @@ msgstr "将信任配置编辑为 YAML"
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -2894,7 +2905,7 @@ msgid ""
"`2006/01/02 15:04 MST` format)"
msgstr ""
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
msgid "Export a virtual machine's memory state"
msgstr "导出虚拟机内存状态"
@ -2937,7 +2948,7 @@ msgstr "导出存储桶"
msgid "Export storage buckets as tarball."
msgstr "将存储桶导出为 tar 包。"
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -3008,7 +3019,7 @@ msgstr "检查实例是否存在“%s:%s”失败%w"
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr "连接到客户端 %q 的实例 SFTP 失败:%v"
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -3099,8 +3110,8 @@ msgstr "启动命令失败:%w"
msgid "Failed starting sshfs: %w"
msgstr "启动 sshfs 失败:%w"
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, c-format
msgid "Failed to accept incoming connection: %w"
msgstr "接受传入连接失败:%w"
@ -3185,7 +3196,7 @@ msgstr "创建存储卷备份失败:%w"
msgid "Failed to delete original instance after copying it: %w"
msgstr "复制后删除原始实例失败:%w"
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, c-format
msgid "Failed to dump instance memory: %w"
msgstr "转储实例内存失败:%w"
@ -3205,13 +3216,23 @@ msgstr "获取存储卷备份文件失败:%w"
msgid "Failed to find project: %w"
msgstr "找不到项目:%w"
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, fuzzy, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr "转储实例内存失败:%w"
#: cmd/incus/low_level.go:496
#, fuzzy, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr "转储实例内存失败:%w"
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, c-format
msgid "Failed to join cluster: %w"
msgstr "加入集群失败:%w"
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, c-format
msgid "Failed to listen for connection: %w"
msgstr "监听连接失败:%w"
@ -3221,7 +3242,7 @@ msgstr "监听连接失败:%w"
msgid "Failed to load configuration: %s"
msgstr "加载配置失败:%s"
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, fuzzy, c-format
msgid "Failed to open source file %q: %v"
@ -3473,16 +3494,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
#, fuzzy
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
@ -3508,7 +3530,7 @@ msgstr "格式化table|compact"
msgid "Format (table|compact)"
msgstr "格式化table|compact"
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr "内存转储格式(如 elf、win-dmp、kdump-zlib、kdump-raw-zlib 等)"
@ -3571,6 +3593,14 @@ msgstr "GPU"
msgid "GPUs:"
msgstr "GPU"
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
msgid "GUID NAME"
msgstr ""
#: cmd/incus/remote.go:926
#, fuzzy
msgid "Generate a client token derived from the client certificate"
@ -3705,6 +3735,14 @@ msgstr "获取作为存储卷属性的密钥"
msgid "Get the key as an instance property"
msgstr "获取作为实例属性的密钥"
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
msgid "Get values for cluster group configuration keys"
msgstr "获取集群组配置键的值"
@ -3792,7 +3830,7 @@ msgstr ""
"\n"
"对于快照,添加快照名称(当且仅当类型为自定义、容器或虚拟机时)。"
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr ""
@ -3867,6 +3905,10 @@ msgstr ""
msgid "INSTANCE NAME"
msgstr "实例名称"
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -4033,7 +4075,7 @@ msgstr "导入实例备份"
msgid "Import storage bucket"
msgstr "导入存储桶"
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr "导入类型需要是\"backup\"或\"iso\""
@ -4041,17 +4083,17 @@ msgstr "导入类型需要是\"backup\"或\"iso\""
msgid "Import type, backup or iso (default \"backup\")"
msgstr "导入类型backup 或 iso默认“backup”"
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, c-format
msgid "Importing bucket: %s"
msgstr "正在导入存储桶:%s"
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, c-format
msgid "Importing custom volume: %s"
msgstr "正在导入自定义卷:%s"
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, c-format
msgid "Importing instance: %s"
msgstr "正在导入实例:%s"
@ -4098,7 +4140,7 @@ msgstr "客户端 %q 的实例已断开连接"
msgid "Instance name is: %s"
msgstr "实例名称是:%s"
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr "实例路径不能在 SSH SFTP 监听模式下使用"
@ -4116,6 +4158,11 @@ msgstr "实例名称是:%s"
msgid "Instance type"
msgstr "实例类型"
#: cmd/incus/low_level.go:502
#, fuzzy, c-format
msgid "Invalid GUID: %s"
msgstr "无效的路径 %s"
#: cmd/incus/cluster.go:1673
msgid "Invalid IP address or DNS name"
msgstr "无效的 IP 地址或 DNS 名称"
@ -4396,6 +4443,10 @@ msgstr ""
" t - 类型\n"
" L - DHCP 租约位置(例如其集群成员)"
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
msgid "List address sets across all projects"
msgstr "列出所有项目中的地址"
@ -5573,6 +5624,16 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr ""
#: cmd/incus/low_level.go:33
#, fuzzy
msgid "Low-level commands"
msgstr "调试命令"
#: cmd/incus/low_level.go:34
#, fuzzy
msgid "Low-level commands for instances"
msgstr "实例的调试命令"
#: cmd/incus/network.go:976
msgid "Lower device"
msgstr ""
@ -5653,6 +5714,11 @@ msgstr ""
msgid "Make the image public"
msgstr ""
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
#, fuzzy
msgid "Manage NVRAM on virtual machines"
msgstr "创建虚拟机"
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr ""
@ -5980,11 +6046,11 @@ msgid ""
"If no target path is provided, start an SSH SFTP listener instead."
msgstr ""
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
msgid "Mount files from instances"
msgstr ""
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid ""
"Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
@ -6057,17 +6123,17 @@ msgstr ""
msgid "NAT"
msgstr ""
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
#, fuzzy
msgid "NBD access to a block storage volume"
msgstr "删除自定义存储卷"
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
#, fuzzy
msgid "NBD access to all of a virtual machine's disks"
msgstr "删除自定义存储卷"
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -6076,22 +6142,22 @@ msgid ""
"device name."
msgstr ""
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, c-format
msgid "NBD client connected %q"
msgstr ""
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, fuzzy, c-format
msgid "NBD client disconnected %q"
msgstr "实例已断开连接"
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr ""
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, c-format
msgid "NBD listening on %v"
msgstr ""
@ -6899,7 +6965,7 @@ msgstr "删除自定义存储卷"
msgid "Push files into instances"
msgstr "向实例推送文件"
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, fuzzy, c-format
msgid "Pushing %s to %s: %%s"
@ -6913,6 +6979,10 @@ msgstr "查询路径必须以 / 开头"
msgid "Query virtual machine images"
msgstr "查询虚拟机镜像"
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr ""
@ -7488,7 +7558,7 @@ msgstr ""
msgid "Set a keepalive timeout for a remote"
msgstr ""
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr ""
@ -7817,7 +7887,7 @@ msgstr ""
msgid "Set the key as an instance property"
msgstr ""
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr ""
@ -8113,7 +8183,7 @@ msgstr ""
msgid "Source:"
msgstr ""
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr ""
@ -8318,6 +8388,10 @@ msgstr ""
msgid "TARGET"
msgstr ""
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr ""
@ -8345,12 +8419,12 @@ msgstr ""
msgid "Target path %q already exists"
msgstr "目标路径 %q 已存在"
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
#, fuzzy
msgid "Target path and --listen flag cannot be used together"
msgstr "目标路径和 --listen 标记不能一起使用"
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr ""
@ -8785,6 +8859,11 @@ msgstr ""
msgid "Type: %s"
msgstr ""
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr ""
@ -8857,7 +8936,8 @@ msgstr ""
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -8896,6 +8976,10 @@ msgstr ""
msgid "Unknown output type %q"
msgstr ""
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
msgid "Unset a cluster group's configuration keys"
msgstr ""
@ -9195,6 +9279,11 @@ msgstr ""
msgid "User aborted delete operation"
msgstr ""
#: cmd/incus/low_level.go:415
#, fuzzy
msgid "VARIABLE NAME"
msgstr "文件名"
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -9729,12 +9818,6 @@ msgid ""
"standard output."
msgstr ""
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -9762,7 +9845,7 @@ msgid ""
" To create a symlink /bar in instance foo whose target is baz."
msgstr ""
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid ""
"incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
@ -9853,6 +9936,12 @@ msgid ""
" List instances with their running state and user comment."
msgstr ""
#: cmd/incus/low_level.go:65
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/monitor.go:43
msgid ""
"incus monitor --type=logging\n"
@ -10349,7 +10438,7 @@ msgstr "创建网络集成"
msgid "network or integration"
msgstr "创建网络集成"
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, c-format
msgid "new %s name"
msgstr ""
@ -10463,7 +10552,7 @@ msgstr "sshfs 已停止"
msgid "sshfs mounting %q on %q"
msgstr "sshfs 挂载 %q 在 %q"
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
#, fuzzy
msgid "stdin can only be used once, with no other source arguments"
msgstr "--target 不能与实例一起使用"
@ -10476,7 +10565,7 @@ msgstr ""
msgid "tarball"
msgstr ""
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, fuzzy, c-format
msgid "target %s"
msgstr "<目标>"
@ -10533,11 +10622,15 @@ msgid "value"
msgstr ""
#: cmd/incus/usage/usage.go:868
msgid "variable"
msgstr ""
#: cmd/incus/usage/usage.go:869
#, fuzzy
msgid "volume"
msgstr "列"
#: cmd/incus/usage/usage.go:869
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr ""
@ -10551,7 +10644,7 @@ msgstr ""
msgid "yes"
msgstr ""
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr ""
@ -10690,10 +10783,6 @@ msgstr ""
#~ msgid "Invalid instance path: %q"
#~ msgstr "无效的实例路径:%q"
#, c-format
#~ msgid "Invalid path %s"
#~ msgstr "无效的路径 %s"
#~ msgid "Invalid snapshot name"
#~ msgstr "无效的快照名称"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: incus\n"
"Report-Msgid-Bugs-To: lxc-devel@lists.linuxcontainers.org\n"
"POT-Creation-Date: 2026-07-19 01:35+0000\n"
"POT-Creation-Date: 2026-07-22 20:28-0400\n"
"PO-Revision-Date: 2026-07-13 05:46+0000\n"
"Last-Translator: pesder <j_h_liau@yahoo.com.tw>\n"
"Language-Team: Chinese (Traditional Han script) <https://hosted.weblate.org/"
@ -417,6 +417,19 @@ msgstr ""
msgid "'%s' isn't a supported file type"
msgstr "'%s' 不是受支援的檔案類型"
#: cmd/incus/low_level.go:472
msgid "(binary data)"
msgstr ""
#: cmd/incus/low_level.go:477
#, c-format
msgid "(error: %w)"
msgstr ""
#: cmd/incus/low_level.go:464
msgid "(no timestamp)"
msgstr ""
#: cmd/incus/usage/parse.go:244
#, c-format
msgid "(skipped: %s)\n"
@ -531,7 +544,7 @@ msgstr ""
msgid "A client certificate is already present"
msgstr ""
#: cmd/incus/file.go:770 cmd/incus/storage_volume_file.go:803
#: cmd/incus/file.go:771 cmd/incus/storage_volume_file.go:804
msgid ""
"A target file name must be specified when pushing from stdin; the target is "
"a directory"
@ -569,6 +582,10 @@ msgstr ""
msgid "ARCHITECTURE"
msgstr ""
#: cmd/incus/low_level.go:412
msgid "ATTRIBUTES"
msgstr ""
#: cmd/incus/remote.go:1057
msgid "AUTH TYPE"
msgstr ""
@ -798,7 +815,7 @@ msgstr ""
msgid "Always follow symbolic links in source path"
msgstr ""
#: cmd/incus/file.go:974
#: cmd/incus/file.go:978
#, c-format
msgid "An instance path is required for %s"
msgstr ""
@ -1313,7 +1330,8 @@ msgstr ""
#: cmd/incus/cluster.go:172 cmd/incus/cluster.go:1130
#: cmd/incus/cluster_group.go:443 cmd/incus/config_trust.go:402
#: cmd/incus/config_trust.go:589 cmd/incus/image.go:1077
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142 cmd/incus/network.go:1054
#: cmd/incus/image_alias.go:211 cmd/incus/list.go:142
#: cmd/incus/low_level.go:394 cmd/incus/network.go:1054
#: cmd/incus/network.go:1253 cmd/incus/network_allocations.go:74
#: cmd/incus/network_forward.go:122 cmd/incus/network_integration.go:417
#: cmd/incus/network_load_balancer.go:129 cmd/incus/network_peer.go:118
@ -1772,14 +1790,6 @@ msgstr ""
msgid "Date: %s"
msgstr ""
#: cmd/incus/debug.go:27
msgid "Debug commands"
msgstr ""
#: cmd/incus/debug.go:28
msgid "Debug commands for instances"
msgstr ""
#: cmd/incus/network.go:967
msgid "Default VLAN ID"
msgstr ""
@ -2032,7 +2042,7 @@ msgstr ""
msgid "Directory to run the command in (default /root)"
msgstr ""
#: cmd/incus/file.go:922 cmd/incus/storage_volume_file.go:350
#: cmd/incus/file.go:926 cmd/incus/storage_volume_file.go:350
msgid "Disable authentication when using SSH SFTP listener"
msgstr ""
@ -2295,7 +2305,8 @@ msgstr ""
#: cmd/incus/cluster.go:213 cmd/incus/cluster.go:1159
#: cmd/incus/cluster_group.go:477 cmd/incus/config_trust.go:432
#: cmd/incus/config_trust.go:614 cmd/incus/image.go:1124
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521 cmd/incus/network.go:1101
#: cmd/incus/image_alias.go:260 cmd/incus/list.go:521
#: cmd/incus/low_level.go:426 cmd/incus/network.go:1101
#: cmd/incus/network.go:1291 cmd/incus/network_allocations.go:99
#: cmd/incus/network_forward.go:158 cmd/incus/network_integration.go:443
#: cmd/incus/network_load_balancer.go:164 cmd/incus/network_peer.go:151
@ -2522,7 +2533,7 @@ msgid ""
"`2006/01/02 15:04 MST` format)"
msgstr ""
#: cmd/incus/debug.go:51
#: cmd/incus/low_level.go:60
msgid "Export a virtual machine's memory state"
msgstr ""
@ -2561,7 +2572,7 @@ msgstr ""
msgid "Export storage buckets as tarball."
msgstr ""
#: cmd/incus/debug.go:52
#: cmd/incus/low_level.go:61
msgid ""
"Export the current memory state of a running virtual machine into a dump "
"file.\n"
@ -2629,7 +2640,7 @@ msgstr ""
msgid "Failed connecting to instance SFTP for client %q: %v"
msgstr ""
#: cmd/incus/file.go:992 cmd/incus/storage_volume_file.go:407
#: cmd/incus/file.go:996 cmd/incus/storage_volume_file.go:407
#: cmd/incus/storage_volume_file.go:596 cmd/incus/storage_volume_file.go:760
#, c-format
msgid "Failed connecting to instance SFTP: %w"
@ -2720,8 +2731,8 @@ msgstr ""
msgid "Failed starting sshfs: %w"
msgstr ""
#: cmd/incus/debug.go:171 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2655 cmd/incus/utils.go:640
#: cmd/incus/low_level.go:180 cmd/incus/port_forward.go:128
#: cmd/incus/storage_volume.go:2661 cmd/incus/utils.go:640
#, c-format
msgid "Failed to accept incoming connection: %w"
msgstr ""
@ -2806,7 +2817,7 @@ msgstr ""
msgid "Failed to delete original instance after copying it: %w"
msgstr ""
#: cmd/incus/debug.go:84
#: cmd/incus/low_level.go:93
#, c-format
msgid "Failed to dump instance memory: %w"
msgstr ""
@ -2826,13 +2837,23 @@ msgstr ""
msgid "Failed to find project: %w"
msgstr ""
#: cmd/incus/low_level.go:354 cmd/incus/low_level.go:363
#, c-format
msgid "Failed to get instance UEFI variable: %w"
msgstr ""
#: cmd/incus/low_level.go:496
#, c-format
msgid "Failed to get instance UEFI variables: %w"
msgstr ""
#: cmd/incus/cluster.go:1972 cmd/incus/cluster.go:1977
#, c-format
msgid "Failed to join cluster: %w"
msgstr ""
#: cmd/incus/debug.go:156 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2647 cmd/incus/utils.go:625
#: cmd/incus/low_level.go:165 cmd/incus/port_forward.go:114
#: cmd/incus/storage_volume.go:2653 cmd/incus/utils.go:625
#, c-format
msgid "Failed to listen for connection: %w"
msgstr ""
@ -2842,7 +2863,7 @@ msgstr ""
msgid "Failed to load configuration: %s"
msgstr ""
#: cmd/incus/file.go:794 cmd/incus/storage_volume_file.go:826
#: cmd/incus/file.go:796 cmd/incus/storage_volume_file.go:828
#: cmd/incus/utils_sftp.go:330
#, c-format
msgid "Failed to open source file %q: %v"
@ -3078,16 +3099,17 @@ msgstr ""
#: cmd/incus/cluster_group.go:444 cmd/incus/config_template.go:272
#: cmd/incus/config_trust.go:403 cmd/incus/config_trust.go:588
#: cmd/incus/image.go:1078 cmd/incus/image_alias.go:210 cmd/incus/list.go:143
#: cmd/incus/network.go:1055 cmd/incus/network.go:1252
#: cmd/incus/network_acl.go:104 cmd/incus/network_allocations.go:71
#: cmd/incus/network_forward.go:121 cmd/incus/network_integration.go:416
#: cmd/incus/network_load_balancer.go:128 cmd/incus/network_peer.go:117
#: cmd/incus/network_zone.go:121 cmd/incus/network_zone.go:822
#: cmd/incus/operation.go:150 cmd/incus/profile.go:705 cmd/incus/project.go:523
#: cmd/incus/project.go:1000 cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343
#: cmd/incus/storage.go:667 cmd/incus/storage_bucket.go:465
#: cmd/incus/storage_bucket.go:861 cmd/incus/storage_volume.go:1520
#: cmd/incus/storage_volume_snapshot.go:341 cmd/incus/warning.go:99
#: cmd/incus/low_level.go:393 cmd/incus/network.go:1055
#: cmd/incus/network.go:1252 cmd/incus/network_acl.go:104
#: cmd/incus/network_allocations.go:71 cmd/incus/network_forward.go:121
#: cmd/incus/network_integration.go:416 cmd/incus/network_load_balancer.go:128
#: cmd/incus/network_peer.go:117 cmd/incus/network_zone.go:121
#: cmd/incus/network_zone.go:822 cmd/incus/operation.go:150
#: cmd/incus/profile.go:705 cmd/incus/project.go:523 cmd/incus/project.go:1000
#: cmd/incus/remote.go:1040 cmd/incus/snapshot.go:343 cmd/incus/storage.go:667
#: cmd/incus/storage_bucket.go:465 cmd/incus/storage_bucket.go:861
#: cmd/incus/storage_volume.go:1520 cmd/incus/storage_volume_snapshot.go:341
#: cmd/incus/warning.go:99
msgid ""
"Format (csv|json|table|yaml|compact|markdown), use suffix \",noheader\" to "
"disable headers and \",header\" to enable it if missing, e.g. csv,header"
@ -3109,7 +3131,7 @@ msgstr ""
msgid "Format (table|compact)"
msgstr ""
#: cmd/incus/debug.go:62
#: cmd/incus/low_level.go:71
msgid ""
"Format of memory dump (e.g. elf, win-dmp, kdump-zlib, kdump-raw-zlib, ...)"
msgstr ""
@ -3172,6 +3194,14 @@ msgstr ""
msgid "GPUs:"
msgstr ""
#: cmd/incus/low_level.go:383 cmd/incus/low_level.go:413
msgid "GUID"
msgstr ""
#: cmd/incus/low_level.go:414
msgid "GUID NAME"
msgstr ""
#: cmd/incus/remote.go:926
msgid "Generate a client token derived from the client certificate"
msgstr ""
@ -3301,6 +3331,14 @@ msgstr ""
msgid "Get the key as an instance property"
msgstr ""
#: cmd/incus/low_level.go:323
msgid "Get the raw binary variable value"
msgstr ""
#: cmd/incus/low_level.go:319 cmd/incus/low_level.go:320
msgid "Get values for UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:813
msgid "Get values for cluster group configuration keys"
msgstr ""
@ -3382,7 +3420,7 @@ msgid ""
"container or virtual-machine)."
msgstr ""
#: cmd/incus/storage_volume.go:2600
#: cmd/incus/storage_volume.go:2606
msgid "Get write access to the disk"
msgstr ""
@ -3457,6 +3495,10 @@ msgstr ""
msgid "INSTANCE NAME"
msgstr ""
#: cmd/incus/low_level.go:418
msgid "INTERPRETED VALUE"
msgstr ""
#: cmd/incus/info.go:369
#, c-format
msgid "IOMMU group: %v"
@ -3618,7 +3660,7 @@ msgstr ""
msgid "Import storage bucket"
msgstr ""
#: cmd/incus/storage_volume.go:2528
#: cmd/incus/storage_volume.go:2530
msgid "Import type needs to be \"backup\" or \"iso\""
msgstr ""
@ -3626,17 +3668,17 @@ msgstr ""
msgid "Import type, backup or iso (default \"backup\")"
msgstr ""
#: cmd/incus/storage_bucket.go:1531
#: cmd/incus/storage_bucket.go:1533
#, c-format
msgid "Importing bucket: %s"
msgstr ""
#: cmd/incus/storage_volume.go:2537
#: cmd/incus/storage_volume.go:2539
#, c-format
msgid "Importing custom volume: %s"
msgstr ""
#: cmd/incus/import.go:78
#: cmd/incus/import.go:80
#, c-format
msgid "Importing instance: %s"
msgstr ""
@ -3683,7 +3725,7 @@ msgstr ""
msgid "Instance name is: %s"
msgstr ""
#: cmd/incus/file.go:979
#: cmd/incus/file.go:983
msgid "Instance path cannot be used in SSH SFTP listener mode"
msgstr ""
@ -3701,6 +3743,11 @@ msgstr ""
msgid "Instance type"
msgstr ""
#: cmd/incus/low_level.go:502
#, c-format
msgid "Invalid GUID: %s"
msgstr ""
#: cmd/incus/cluster.go:1673
msgid "Invalid IP address or DNS name"
msgstr ""
@ -3961,6 +4008,10 @@ msgid ""
" L - Location of the DHCP Lease (e.g. its cluster member)"
msgstr ""
#: cmd/incus/low_level.go:389 cmd/incus/low_level.go:390
msgid "List UEFI GUIDs and variables"
msgstr ""
#: cmd/incus/network_address_set.go:101
msgid "List address sets across all projects"
msgstr ""
@ -4845,6 +4896,14 @@ msgstr ""
msgid "Low-level cluster administration commands"
msgstr ""
#: cmd/incus/low_level.go:33
msgid "Low-level commands"
msgstr ""
#: cmd/incus/low_level.go:34
msgid "Low-level commands for instances"
msgstr ""
#: cmd/incus/network.go:976
msgid "Lower device"
msgstr ""
@ -4925,6 +4984,10 @@ msgstr ""
msgid "Make the image public"
msgstr ""
#: cmd/incus/low_level.go:246 cmd/incus/low_level.go:247
msgid "Manage NVRAM on virtual machines"
msgstr ""
#: cmd/incus/network.go:41 cmd/incus/network.go:42
msgid "Manage and attach instances to networks"
msgstr ""
@ -5249,11 +5312,11 @@ msgid ""
"If no target path is provided, start an SSH SFTP listener instead."
msgstr ""
#: cmd/incus/file.go:908
#: cmd/incus/file.go:912
msgid "Mount files from instances"
msgstr ""
#: cmd/incus/file.go:909
#: cmd/incus/file.go:913
msgid ""
"Mount files from instances.\n"
"If no target path is provided, start an SSH SFTP listener instead."
@ -5326,15 +5389,15 @@ msgstr ""
msgid "NAT"
msgstr ""
#: cmd/incus/storage_volume.go:2594 cmd/incus/storage_volume.go:2595
#: cmd/incus/storage_volume.go:2600 cmd/incus/storage_volume.go:2601
msgid "NBD access to a block storage volume"
msgstr ""
#: cmd/incus/debug.go:107
#: cmd/incus/low_level.go:116
msgid "NBD access to all of a virtual machine's disks"
msgstr ""
#: cmd/incus/debug.go:108
#: cmd/incus/low_level.go:117
msgid ""
"NBD access to all of a virtual machine's disks\n"
"\n"
@ -5343,22 +5406,22 @@ msgid ""
"device name."
msgstr ""
#: cmd/incus/debug.go:177 cmd/incus/storage_volume.go:2660
#: cmd/incus/low_level.go:186 cmd/incus/storage_volume.go:2666
#, c-format
msgid "NBD client connected %q"
msgstr ""
#: cmd/incus/debug.go:178 cmd/incus/storage_volume.go:2661
#: cmd/incus/low_level.go:187 cmd/incus/storage_volume.go:2667
#, c-format
msgid "NBD client disconnected %q"
msgstr ""
#: cmd/incus/debug.go:194 cmd/incus/storage_volume.go:2666
#: cmd/incus/low_level.go:203 cmd/incus/storage_volume.go:2672
#, c-format
msgid "NBD connection failed: %v"
msgstr ""
#: cmd/incus/debug.go:159 cmd/incus/storage_volume.go:2650
#: cmd/incus/low_level.go:168 cmd/incus/storage_volume.go:2656
#, c-format
msgid "NBD listening on %v"
msgstr ""
@ -6161,7 +6224,7 @@ msgstr ""
msgid "Push files into instances"
msgstr ""
#: cmd/incus/file.go:843 cmd/incus/storage_volume_file.go:875
#: cmd/incus/file.go:845 cmd/incus/storage_volume_file.go:877
#: cmd/incus/utils_sftp.go:341
#, c-format
msgid "Pushing %s to %s: %%s"
@ -6175,6 +6238,10 @@ msgstr ""
msgid "Query virtual machine images"
msgstr ""
#: cmd/incus/low_level.go:416
msgid "RAW VALUE"
msgstr ""
#: cmd/incus/project.go:1083
msgid "RESOURCE"
msgstr ""
@ -6737,7 +6804,7 @@ msgstr ""
msgid "Set a keepalive timeout for a remote"
msgstr ""
#: cmd/incus/file.go:923 cmd/incus/storage_volume_file.go:351
#: cmd/incus/file.go:927 cmd/incus/storage_volume_file.go:351
msgid "Set authentication user when using SSH SFTP listener"
msgstr ""
@ -7064,7 +7131,7 @@ msgstr ""
msgid "Set the key as an instance property"
msgstr ""
#: cmd/incus/file.go:921 cmd/incus/storage_volume_file.go:349
#: cmd/incus/file.go:925 cmd/incus/storage_volume_file.go:349
msgid "Setup SSH SFTP listener on address:port instead of mounting"
msgstr ""
@ -7359,7 +7426,7 @@ msgstr ""
msgid "Source:"
msgstr ""
#: cmd/incus/debug.go:116 cmd/incus/storage_volume.go:2599
#: cmd/incus/low_level.go:125 cmd/incus/storage_volume.go:2605
msgid "Specific address to listen on"
msgstr ""
@ -7564,6 +7631,10 @@ msgstr ""
msgid "TARGET"
msgstr ""
#: cmd/incus/low_level.go:417
msgid "TIMESTAMP"
msgstr ""
#: cmd/incus/cluster.go:1150 cmd/incus/config_trust.go:605
msgid "TOKEN"
msgstr ""
@ -7591,11 +7662,11 @@ msgstr ""
msgid "Target path %q already exists"
msgstr ""
#: cmd/incus/file.go:969 cmd/incus/storage_volume_file.go:401
#: cmd/incus/file.go:973 cmd/incus/storage_volume_file.go:401
msgid "Target path and --listen flag cannot be used together"
msgstr ""
#: cmd/incus/file.go:963 cmd/incus/storage_volume_file.go:396
#: cmd/incus/file.go:967 cmd/incus/storage_volume_file.go:396
msgid "Target path must be a directory"
msgstr ""
@ -8029,6 +8100,11 @@ msgstr ""
msgid "Type: %s"
msgstr ""
#: cmd/incus/low_level.go:590
#, c-format
msgid "UEFI variable %s:%s deleted on %s"
msgstr ""
#: cmd/incus/project.go:1055
msgid "UNLIMITED"
msgstr ""
@ -8101,7 +8177,8 @@ msgstr ""
#: cmd/incus/cluster.go:219 cmd/incus/cluster.go:1165
#: cmd/incus/cluster_group.go:483 cmd/incus/config_trust.go:438
#: cmd/incus/config_trust.go:620 cmd/incus/image.go:1130
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539 cmd/incus/network.go:1107
#: cmd/incus/image_alias.go:266 cmd/incus/list.go:539
#: cmd/incus/low_level.go:432 cmd/incus/network.go:1107
#: cmd/incus/network.go:1297 cmd/incus/network_allocations.go:105
#: cmd/incus/network_forward.go:164 cmd/incus/network_integration.go:449
#: cmd/incus/network_load_balancer.go:170 cmd/incus/network_peer.go:157
@ -8140,6 +8217,10 @@ msgstr ""
msgid "Unknown output type %q"
msgstr ""
#: cmd/incus/low_level.go:552 cmd/incus/low_level.go:553
msgid "Unset UEFI variables"
msgstr ""
#: cmd/incus/cluster_group.go:962
msgid "Unset a cluster group's configuration keys"
msgstr ""
@ -8419,6 +8500,10 @@ msgstr ""
msgid "User aborted delete operation"
msgstr ""
#: cmd/incus/low_level.go:415
msgid "VARIABLE NAME"
msgstr ""
#: cmd/incus/info.go:158 cmd/incus/info.go:267
#, c-format
msgid "VFs: %d"
@ -8946,12 +9031,6 @@ msgid ""
"standard output."
msgstr ""
#: cmd/incus/debug.go:56
msgid ""
"incus debug dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/exec.go:57
msgid ""
"incus exec c1 bash\n"
@ -8979,7 +9058,7 @@ msgid ""
" To create a symlink /bar in instance foo whose target is baz."
msgstr ""
#: cmd/incus/file.go:913
#: cmd/incus/file.go:917
msgid ""
"incus file mount foo/root fooroot\n"
" To mount /root from the instance foo onto the local fooroot directory.\n"
@ -9070,6 +9149,12 @@ msgid ""
" List instances with their running state and user comment."
msgstr ""
#: cmd/incus/low_level.go:65
msgid ""
"incus low-level dump-memory vm1 memory-dump.elf --format=elf\n"
" Creates an ELF format memory dump of the vm1 instance."
msgstr ""
#: cmd/incus/monitor.go:43
msgid ""
"incus monitor --type=logging\n"
@ -9555,7 +9640,7 @@ msgstr ""
msgid "network or integration"
msgstr ""
#: cmd/incus/usage/usage.go:901
#: cmd/incus/usage/usage.go:902
#, c-format
msgid "new %s name"
msgstr ""
@ -9665,7 +9750,7 @@ msgstr ""
msgid "sshfs mounting %q on %q"
msgstr ""
#: cmd/incus/file.go:766
#: cmd/incus/file.go:767
#, fuzzy
msgid "stdin can only be used once, with no other source arguments"
msgstr "--target 不能與實體一起使用"
@ -9678,7 +9763,7 @@ msgstr ""
msgid "tarball"
msgstr ""
#: cmd/incus/usage/usage.go:907
#: cmd/incus/usage/usage.go:908
#, c-format
msgid "target %s"
msgstr ""
@ -9735,10 +9820,14 @@ msgid "value"
msgstr ""
#: cmd/incus/usage/usage.go:868
msgid "volume"
msgid "variable"
msgstr ""
#: cmd/incus/usage/usage.go:869
msgid "volume"
msgstr ""
#: cmd/incus/usage/usage.go:870
msgid "warning UUID"
msgstr ""
@ -9752,7 +9841,7 @@ msgstr ""
msgid "yes"
msgstr ""
#: cmd/incus/usage/usage.go:870
#: cmd/incus/usage/usage.go:871
msgid "zone"
msgstr ""

View File

@ -0,0 +1,40 @@
package api
import (
"encoding/base64"
"time"
)
// InstanceNVRAMVariable represents a UEFI variable.
//
// swagger:model
//
// API extension: instance_nvram.
type InstanceNVRAMVariable struct {
// Binary data.
Binary []byte `json:"binary"`
// Dissected data.
Data any `json:"data,omitempty"`
// Variable attributes.
Attributes []string `json:"attributes"`
// Authenticated variable timestamp.
Timestamp *time.Time `json:"timestamp,omitempty"`
}
// MarshalYAML marshals binary variable data to base64.
func (v *InstanceNVRAMVariable) MarshalYAML() (any, error) {
return struct {
Binary string `yaml:"binary,omitempty"`
Data any `yaml:"data,omitempty"`
Attributes []string `yaml:"attributes"`
Timestamp *time.Time `yaml:"timestamp,omitempty"`
}{
Binary: base64.StdEncoding.EncodeToString(v.Binary),
Data: v.Data,
Attributes: v.Attributes,
Timestamp: v.Timestamp,
}, nil
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,183 @@
package uefi
import (
"fmt"
"strings"
"unicode"
)
// scanCodes is a combination of EFI Scan Codes for `EFI_SIMPLE_TEXT_INPUT_PROTOCOL` and
// `EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL`.
var scanCodes = map[uint16]string{
0x0001: "Up",
0x0002: "Down",
0x0003: "Right",
0x0004: "Left",
0x0005: "Home",
0x0006: "End",
0x0007: "Insert",
0x0008: "Delete",
0x0009: "PageUp",
0x000A: "PageDown",
0x000B: "F1",
0x000C: "F2",
0x000D: "F3",
0x000E: "F4",
0x000F: "F5",
0x0010: "F6",
0x0011: "F7",
0x0012: "F8",
0x0013: "F9",
0x0014: "F10",
0x0015: "F11",
0x0016: "F12",
0x0017: "Esc",
0x0048: "Pause",
0x0068: "F13",
0x0069: "F14",
0x006A: "F15",
0x006B: "F16",
0x006C: "F17",
0x006D: "F18",
0x006E: "F19",
0x006F: "F20",
0x0070: "F21",
0x0071: "F22",
0x0072: "F23",
0x0073: "F24",
0x007F: "Mute",
0x0080: "VolumeUp",
0x0081: "VolumeDown",
0x0100: "BrightnessUp",
0x0101: "BrightnessDown",
0x0102: "Suspend",
0x0103: "Hibernate",
0x0104: "ToggleDisplay",
0x0105: "Recovery",
0x0106: "Eject",
}
// keyboard dissects keyboard data.
var keyboard = wrap(func(r *reader) (any, error) {
keyData, err := r.readU32()
if err != nil {
return nil, err
}
// We can ignore the CRC.
_, err = r.read(4)
if err != nil {
return nil, err
}
bootOption, err := r.readU16()
if err != nil {
return nil, err
}
count := int((keyData >> 30) & 0x3)
// The revision field must be 0x00.
if keyData&0xff != 0 {
return nil, errUnexpectedData
}
parts := []string{}
// Ctrl.
if keyData&(1<<9) != 0 {
parts = append(parts, "Ctrl")
}
// Alt.
if keyData&(1<<10) != 0 {
parts = append(parts, "Alt")
}
// Shift.
if keyData&(1<<8) != 0 {
parts = append(parts, "Shift")
}
// Meta.
if keyData&(1<<11) != 0 {
parts = append(parts, "Meta")
}
// Menu.
if keyData&(1<<12) != 0 {
parts = append(parts, "Menu")
}
// SysRq.
if keyData&(1<<13) != 0 {
parts = append(parts, "SysRq")
}
for range count {
scanCode, err := r.readU16()
if err != nil {
return nil, err
}
unicodeChar, err := r.readU16()
if err != nil {
return nil, err
}
parts = append(parts, keyText(scanCode, unicodeChar))
}
return struct {
BootOption string `json:"boot_option"`
Shortcut string `json:"shortcut"`
}{
BootOption: fmt.Sprintf("Boot%04X", bootOption),
Shortcut: strings.Join(parts, "+"),
}, nil
})
// keyText returns a human-friendly representation of an `EFI_INPUT_KEY`.
func keyText(scanCode uint16, unicodeChar uint16) string {
// Per UEFI semantics, a nonzero scan code represents a special key.
if scanCode != 0 {
name, ok := scanCodes[scanCode]
if ok {
return name
}
if scanCode >= 0x8000 {
return fmt.Sprintf("OEM(0x%04X)", scanCode)
}
return fmt.Sprintf("Scan(0x%04X)", scanCode)
}
switch unicodeChar {
case 0x0000:
return "Null"
case 0x0008:
return "Backspace"
case 0x0009:
return "Tab"
case 0x000A:
return "LF"
case 0x000D:
return "Enter"
case 0x001B:
return "Esc"
case 0x0020:
return "Space"
case 0x002B:
// Avoid ambiguous output such as `Ctrl++`.
return "Plus"
}
r := rune(unicodeChar)
if !unicode.IsPrint(r) {
return fmt.Sprintf("Unicode(%04X)", unicodeChar)
}
return string(unicode.ToUpper(r))
}

417
shared/uefi/dissectors.go Normal file
View File

@ -0,0 +1,417 @@
package uefi
import (
"encoding/base64"
"fmt"
)
// WrapDP wraps a variable dissector.
func wrap[T any](f func(*reader) (T, error)) func([]byte) (any, error) {
return func(b []byte) (any, error) {
r := newReader(b)
v, err := f(r)
if err != nil {
return nil, err
}
if !r.eof() {
return nil, errUnexpectedData
}
return v, nil
}
}
// b8 dissects 8-bit booleans.
var b8 = wrap((*reader).readB8)
// u16 dissects 16-bit integers.
var u16 = wrap((*reader).readU16)
// u32 dissects 32-bit integers.
var u32 = wrap((*reader).readU32)
// zn8 dissects NUL-terminated UTF8 strings.
var zn8 = wrap(func(r *reader) (string, error) { return r.readZn8() })
// z8 dissects UTF8 strings.
var z8 = wrap(func(r *reader) (string, error) { return r.readZ8(r.rem()) })
// bootOrder dissects `BootOrder` and `DriverOrder` variables.
func bootOrder(prefix string, b []byte) (any, error) {
return wrap(func(r *reader) ([]string, error) {
rem := r.rem()
if rem%2 != 0 {
return nil, errUnexpectedData
}
entries := make([]string, rem/2)
for i := range entries {
n, err := r.readU16()
if err != nil {
return nil, err
}
entries[i] = fmt.Sprintf("%s%04X", prefix, n)
}
return entries, nil
})(b)
}
// boot dissects `Boot####`, `Driver####`, `SysPrep####`, `OsRecovery####` and
// `PlatformRecovery####` variables.
var boot = wrap(func(r *reader) (any, error) {
attrs, err := r.readU32()
if err != nil {
return nil, err
}
length, err := r.readU16()
if err != nil {
return nil, err
}
description, err := r.readZn16()
if err != nil {
return nil, err
}
b, err := r.read(int(length))
if err != nil {
return nil, err
}
paths, err := devicePaths(b)
if err != nil {
return nil, err
}
category := ""
cat := attrs & 0x1f00
switch cat {
case 0:
category = "boot"
case 0x100:
category = "app"
default:
category = fmt.Sprintf("0x%x", cat)
}
remaining, err := r.read(r.rem())
if err != nil {
return nil, err
}
return struct {
Active bool `json:"active"`
ForceReconnect bool `json:"force_reconnect"`
Hidden bool `json:"hidden"`
Category string `json:"category"`
Description string `json:"description"`
DevicePaths [][]string `json:"paths"`
OptionalData string `json:"optional_data,omitempty"`
}{
Active: attrs&0x01 != 0,
ForceReconnect: attrs&0x02 != 0,
Hidden: attrs&0x08 != 0,
Category: category,
Description: description,
DevicePaths: paths,
OptionalData: base64.StdEncoding.EncodeToString(remaining),
}, nil
})
// esl dissects EFI signature lists.
func esl(data []byte) (any, error) {
type sigData struct {
Owner string `json:"owner"`
Data []byte `json:"data"`
}
type sigList struct {
Type string `json:"type"`
Header []byte `json:"header,omitempty"`
Entries []sigData `json:"entries"`
}
var db []sigList
r := newReader(data)
for !r.eof() {
start := r.pos()
if start > len(data)-28 {
return nil, errUnexpectedData
}
sigType, err := r.readGUID()
if err != nil {
return nil, err
}
typeStr, err := parseSigType(sigType)
if err != nil {
return nil, err
}
listSize, err := r.readU32()
if err != nil {
return nil, err
}
end := start + int(listSize)
if end > len(data) {
return nil, errUnexpectedData
}
headerSize, err := r.readU32()
if err != nil {
return nil, err
}
if listSize < 28+headerSize {
return nil, errUnexpectedData
}
sigSize, err := r.readU32()
if err != nil {
return nil, err
}
if sigSize < 16 {
return nil, errUnexpectedData
}
header, err := r.read(int(headerSize))
if err != nil {
return nil, err
}
sigBytes := end - r.pos()
if sigBytes%int(sigSize) != 0 {
return nil, errUnexpectedData
}
lst := sigList{Type: typeStr, Header: header}
for r.pos() < end {
owner, err := r.readGUID()
if err != nil {
return nil, err
}
body, err := r.read(int(sigSize) - 16)
if err != nil {
return nil, err
}
lst.Entries = append(lst.Entries, sigData{Owner: owner, Data: body})
}
db = append(db, lst)
}
return db, nil
}
// errorFlag dissects `VarErrorFlag` variables.
var errorFlag = wrap(func(r *reader) (any, error) {
v, err := r.readU8()
if err != nil {
return nil, err
}
if v&0xEE != 0xEE {
return nil, errUnexpectedData
}
return struct {
UserError bool `json:"user_error"`
SystemError bool `json:"system_error"`
}{
UserError: v&0x01 == 0,
SystemError: v&0x10 == 0,
}, nil
})
// attemptOrder dissects `InitialAttemptOrder` variables.
func attemptOrder(b []byte) ([]string, error) {
r := newReader(b)
resp := make([]string, len(b))
for i := 0; !r.eof(); i += 1 {
v, err := r.readU8()
if err != nil {
return nil, err
}
resp[i] = fmt.Sprintf("Attempt %d", v)
}
return resp, nil
}
// tpmVersion dissects `TCG2_CONFIGURATION` and `TCG2_DEVICE_DETECTION` variables.
var tpmVersion = wrap(func(r *reader) (string, error) {
v, err := r.readU8()
if err != nil {
return "", err
}
switch v {
case 0:
return "none", nil
case 1:
return "1.2", nil
case 2:
return "2.0", nil
default:
return "", errUnexpectedData
}
})
// tcg2Version dissects `TCG2_VERSION` variables.
var tcg2Version = wrap(func(r *reader) (any, error) {
ppiVersion, err := r.readZn8(8)
if err != nil {
return nil, err
}
acpiTableRevision, err := r.readU8()
if err != nil {
return nil, err
}
// Padding
_, err = r.read(7)
if err != nil {
return nil, err
}
return struct {
PPIVersion string `json:"ppi_version"`
ACPITableRevision uint8 `json:"acpi_table_revision"`
}{
PPIVersion: ppiVersion,
ACPITableRevision: acpiTableRevision,
}, nil
})
// osIndications dissects `OsIndications` variables.
var osIndications = wrap(func(r *reader) (any, error) {
v, err := r.readU64()
if err != nil {
return nil, err
}
return struct {
BootToFWUI bool `json:"boot_to_fw_ui"`
TimestampRevocation bool `json:"timestamp_revocation"`
FileCapsuleDeliverySupported bool `json:"file_capsule_delivery_supported"`
FMPCapsuleSupported bool `json:"fmp_capsule_supported"`
CapsuleResultVarSupported bool `json:"capsule_result_var_supported"`
StartOSRecovery bool `json:"start_os_recovery"`
StartPlatformRecovery bool `json:"start_platform_recovery"`
JSONConfigDataRefresh bool `json:"json_config_data_refresh"`
Reserved uint64 `json:"reserved,omitempty"`
}{
BootToFWUI: v&0x0000_0000_0000_0001 != 0,
TimestampRevocation: v&0x0000_0000_0000_0002 != 0,
FileCapsuleDeliverySupported: v&0x0000_0000_0000_0004 != 0,
FMPCapsuleSupported: v&0x0000_0000_0000_0008 != 0,
CapsuleResultVarSupported: v&0x0000_0000_0000_0010 != 0,
StartOSRecovery: v&0x0000_0000_0000_0020 != 0,
StartPlatformRecovery: v&0x0000_0000_0000_0040 != 0,
JSONConfigDataRefresh: v&0x0000_0000_0000_0080 != 0,
Reserved: v & 0xFFFF_FFFF_FFFF_FF00,
}, nil
})
// morControlLock dissects `MemoryOverwriteRequestControlLock` variables.
var morControlLock = wrap(func(r *reader) (string, error) {
v, err := r.readU8()
if err != nil {
return "", err
}
switch v {
case 0:
return "unlocked", nil
case 1:
return "locked_without_key", nil
case 2:
return "locked_with_key", nil
default:
return "", errUnexpectedData
}
})
// morControl dissects `MemoryOverwriteRequestControl` variables.
var morControl = wrap(func(r *reader) (any, error) {
v, err := r.readU8()
if err != nil {
return "", err
}
return struct {
ClearMemory bool `json:"clear_memory"`
DisableAutoDetect bool `json:"disable_autodetect"`
Reserved uint8 `json:"reserved,omitempty"`
}{
ClearMemory: v&0x01 != 0,
DisableAutoDetect: v&0x10 != 0,
Reserved: v & 0xEE,
}, nil
})
// certDB dissects `certdb` variables.
var certDB = wrap(func(r *reader) (any, error) {
type certDBEntry struct {
Name string
GUID string
Digest []byte
}
size, err := r.readU32()
if err != nil {
return nil, err
}
if size != uint32(len(r.data)) {
return nil, errUnexpectedData
}
var db []certDBEntry
for !r.eof() {
guid, err := r.readGUID()
if err != nil {
return nil, err
}
err = r.skip(4)
if err != nil {
return nil, err
}
nameSize, err := r.readU32()
if err != nil {
return nil, err
}
digestSize, err := r.readU32()
if err != nil {
return nil, err
}
name, err := r.readZ16(int(nameSize))
if err != nil {
return nil, err
}
digest, err := r.read(int(digestSize))
if err != nil {
return nil, err
}
db = append(db, certDBEntry{Name: name, GUID: guid, Digest: digest})
}
return db, nil
})

175
shared/uefi/guid.go Normal file
View File

@ -0,0 +1,175 @@
package uefi
import (
"strings"
"github.com/google/uuid"
)
const (
// EDK2 Global.
EdkiiVarErrorFlagGuid = "04b37fe8-f6ae-480b-bdd5-37d98c5e89aa"
EfiAuthenticatedVariableGuid = "aaf32c78-947b-439a-a180-2e144ec37792"
EfiCertDbGuid = "d9bee56e-75dc-49d9-b4d7-b534210f637a"
EfiCertPkcs7Guid = "4aafd29d-68df-49ee-8aa9-347d375665a7"
EfiCertRsa2048Guid = "3c5766e8-269c-4e34-aa14-ed776e85b3b6"
EfiCertRsa2048Sha1Guid = "67f8444f-8743-48f1-a328-1eaab8736080"
EfiCertRsa2048Sha256Guid = "e2b36190-879b-4a3d-ad8d-f2e7bba32784"
EfiCertSha1Guid = "826ca512-cf10-4ac9-b187-be01496631bd"
EfiCertSha224Guid = "0b6e5233-a65c-44c9-9407-d9ab83bfc8bd"
EfiCertSha256Guid = "c1c41626-504c-4092-aca9-41f936934328"
EfiCertSha384Guid = "ff3e5307-9fd0-48c9-85f1-8ad56c701e01"
EfiCertSha512Guid = "093e0fae-a6c4-4f50-9f1b-d41e2b89c19a"
EfiCertSm3Guid = "57347f87-7a9b-403a-b93c-dc4afb7a0ebc"
EfiCertX509Guid = "a5c059a1-94e4-4aa7-87b5-ab155c2bf072"
EfiCertX509Sha256Guid = "3bd2a492-96c0-4079-b420-fcf98ef103ed"
EfiCertX509Sha384Guid = "7076876e-80c2-4ee6-aad2-28b349a6865b"
EfiCertX509Sha512Guid = "446dbf63-2502-4cda-bcfa-2465d2b0fe9d"
EfiCertX509Sm3Guid = "60d807e5-10b4-49a9-9331-e40437888d37"
EfiCustomModeEnableGuid = "c076ec0c-7028-4399-a072-71ee5c448b9f"
EfiDebugPortProtocolGuid = "eba4e8d2-3858-41ec-a281-2647ba9660d0"
EfiDhcp6ServiceBindingProtocolGuid = "9fb9a8a1-2f4a-43a6-889c-d0f7b6c47ad5"
EfiGlobalVariableGuid = "8be4df61-93ca-11d2-aa0d-00e098032b8c"
EfiImageSecurityDatabaseGuid = "d719b2cb-3d3a-4596-a3bc-dad00e67656f"
EfiIp4Config2ProtocolGuid = "5b446ed1-e30b-4faa-871a-3654eca36080"
EfiIp6ConfigProtocolGuid = "937fe521-95ae-4d1a-8929-48bcd90ad31a"
EfiMemoryOverwriteControlDataGuid = "e20939be-32d4-41be-a150-897f85d49829"
EfiMemoryOverwriteRequestControlLockGuid = "bb983ccf-151d-40e1-a07b-4a17be168292"
EfiMemoryTypeInformationGuid = "4c19049f-4137-4dd3-9c10-8b97a83ffdfa"
EfiPcAnsiGuid = "e0c14753-f9be-11d2-9a0c-0090273fc14d"
EfiPersistentVirtualCdGuid = "08018188-42cd-bb48-100f-5387d53ded3d"
EfiPersistentVirtualDiskGuid = "5cea02c9-4d07-69d3-269f-4496fbe096f9"
EfiSasDevicePathGuid = "d487ddb4-008b-11d9-afdc-001083ffca4d"
EfiSecureBootEnableDisableGuid = "f0a30bc7-af08-4556-99c4-001009c93a44"
EfiSystemNvDataFvGuid = "fff12b8d-7696-4c8b-a985-2747075b4f50"
EfiUartDevicePathGuid = "37499a9d-542f-4c89-a026-35da142094e4"
EfiVT100Guid = "dfa66065-b419-11d3-9a2d-0090273fc14d"
EfiVT100PlusGuid = "7baec70b-57e0-4c76-8e87-2f9e28088343"
EfiVTUTF8Guid = "ad15a0d6-8bec-4acf-a073-d01de77e2d88"
EfiVendorKeysNvGuid = "9073e4e0-60ec-4b6e-9903-4c223c260f3c"
EfiVirtualCdGuid = "3d5abd30-4175-87ce-6d64-d2ade523c4bb"
EfiVirtualDiskGuid = "77ab535a-45fc-624b-5560-f7b281d1f96e"
IScsiConfigGuid = "4b47d616-a8d6-4552-9d44-ccad2e0f4cf9"
MtcVendorGuid = "eb704011-1402-11d3-8e77-00a0c969723b"
Tcg2ConfigFormSetGuid = "6339d487-26ba-424b-9a5d-687e25d740bc"
// EDK2 Module-local.
BmHardDriveBootVariableGuid = "fab7e9e1-39dd-4f2b-8408-e20e906cb6de"
// External.
ShimLockGuid = "605dab50-e046-4300-abb6-3dd810dd8b23"
)
var guidNames = map[string]string{
// EDK2 Global.
EdkiiVarErrorFlagGuid: "EDKII_VAR_ERROR_FLAG_GUID",
EfiAuthenticatedVariableGuid: "EFI_AUTHENTICATED_VARIABLE_GUID",
EfiCertDbGuid: "EFI_CERT_DB_GUID",
EfiCertPkcs7Guid: "EFI_CERT_PKCS7_GUID",
EfiCertRsa2048Guid: "EFI_CERT_RSA2048_GUID",
EfiCertRsa2048Sha1Guid: "EFI_CERT_RSA2048_SHA1_GUID",
EfiCertRsa2048Sha256Guid: "EFI_CERT_RSA2048_SHA256_GUID",
EfiCertSha1Guid: "EFI_CERT_SHA1_GUID",
EfiCertSha224Guid: "EFI_CERT_SHA224_GUID",
EfiCertSha256Guid: "EFI_CERT_SHA256_GUID",
EfiCertSha384Guid: "EFI_CERT_SHA384_GUID",
EfiCertSha512Guid: "EFI_CERT_SHA512_GUID",
EfiCertSm3Guid: "EFI_CERT_SM3_GUID",
EfiCertX509Guid: "EFI_CERT_X509_GUID",
EfiCertX509Sha256Guid: "EFI_CERT_X509_SHA256_GUID",
EfiCertX509Sha384Guid: "EFI_CERT_X509_SHA384_GUID",
EfiCertX509Sha512Guid: "EFI_CERT_X509_SHA512_GUID",
EfiCertX509Sm3Guid: "EFI_CERT_X509_SM3_GUID",
EfiCustomModeEnableGuid: "EFI_CUSTOM_MODE_ENABLE_GUID",
EfiDebugPortProtocolGuid: "EFI_DEBUGPORT_PROTOCOL_GUID",
EfiDhcp6ServiceBindingProtocolGuid: "EFI_DHCP6_SERVICE_BINDING_PROTOCOL_GUID",
EfiGlobalVariableGuid: "EFI_GLOBAL_VARIABLE",
EfiImageSecurityDatabaseGuid: "EFI_IMAGE_SECURITY_DATABASE_GUID",
EfiIp4Config2ProtocolGuid: "EFI_IP4_CONFIG2_PROTOCOL_GUID",
EfiIp6ConfigProtocolGuid: "EFI_IP6_CONFIG_PROTOCOL_GUID",
EfiMemoryOverwriteControlDataGuid: "MEMORY_ONLY_RESET_CONTROL_GUID",
EfiMemoryOverwriteRequestControlLockGuid: "MEMORY_OVERWRITE_REQUEST_CONTROL_LOCK_GUID",
EfiMemoryTypeInformationGuid: "EFI_MEMORY_TYPE_INFORMATION_GUID",
EfiPcAnsiGuid: "EFI_PC_ANSI_GUID",
EfiPersistentVirtualCdGuid: "EFI_PERSISTENT_VIRTUAL_CD_GUID",
EfiPersistentVirtualDiskGuid: "EFI_PERSISTENT_VIRTUAL_DISK_GUID",
EfiSasDevicePathGuid: "EFI_SAS_DEVICE_PATH_GUID",
EfiSecureBootEnableDisableGuid: "EFI_SECURE_BOOT_ENABLE_DISABLE_GUID",
EfiSystemNvDataFvGuid: "EFI_SYSTEM_NVDATA_FV_GUID",
EfiUartDevicePathGuid: "EFI_UART_DEVICE_PATH_GUID",
EfiVT100Guid: "EFI_VT_100_GUID",
EfiVT100PlusGuid: "EFI_VT_100_PLUS_GUID",
EfiVTUTF8Guid: "EFI_VT_UTF8_GUID",
EfiVendorKeysNvGuid: "EFI_VENDOR_KEYS_NV_GUID",
EfiVirtualCdGuid: "EFI_VIRTUAL_CD_GUID",
EfiVirtualDiskGuid: "EFI_VIRTUAL_DISK_GUID",
IScsiConfigGuid: "ISCSI_CONFIG_GUID",
MtcVendorGuid: "MTC_VENDOR_GUID",
Tcg2ConfigFormSetGuid: "TCG2_CONFIG_FORM_SET_GUID",
// EDK2 Module-local.
BmHardDriveBootVariableGuid: "HD_BOOT_DEVICE_PATH_VARIABLE_GUID",
// External.
ShimLockGuid: "SHIM_LOCK_GUID",
}
// We pre-initialize the aliases with irregular values.
var guidAliases = map[string]string{
"efimemoryoverwritecontroldata": EfiMemoryOverwriteControlDataGuid,
"efimemoryoverwriterequestcontrollock": EfiMemoryOverwriteRequestControlLockGuid,
"bmharddrivebootvariable": BmHardDriveBootVariableGuid,
}
// normalizeGUIDName transforms a GUID name into something easier for us to handle and more
// forgiving to the users.
func normalizeGUIDName(s string) string {
s = strings.ToLower(s)
s = strings.ReplaceAll(s, "-", "")
s = strings.ReplaceAll(s, "_", "")
s = strings.TrimSuffix(s, "guid")
return s
}
// init initializes the aliases slice.
func init() {
for g, name := range guidNames {
guidAliases[normalizeGUIDName(name)] = g
}
}
// GUIDName returns a familiar symbolic name for a known GUID, or the GUID itself.
func GUIDName(g string) string {
name, ok := guidNames[g]
if ok {
return name
}
return g
}
// ParseGUID tries to parse the given string as a GUID.
func ParseGUID(s string) (string, error) {
guid, err := uuid.Parse(s)
if err != nil {
return "", err
}
return guid.String(), nil
}
// ParseGUIDOrName tries to parse the given string as a familiar GUID name, or as a raw GUID.
func ParseGUIDOrName(s string) (string, error) {
guid, ok := guidAliases[normalizeGUIDName(s)]
if ok {
return guid, nil
}
return ParseGUID(s)
}

557
shared/uefi/io.go Normal file
View File

@ -0,0 +1,557 @@
package uefi
import (
"encoding/binary"
"encoding/hex"
"fmt"
"strings"
"time"
"unicode/utf16"
)
// reader is a wrapper to help reading OVMF files.
type reader struct {
data []byte
off int
}
// newReader returns a reader over the given data.
func newReader(data []byte) *reader {
return &reader{data: data}
}
// pos returns the readers position.
func (r *reader) pos() int {
return r.off
}
// rem returns the readers remaining bytes.
func (r *reader) rem() int {
return len(r.data) - r.off
}
// eof returns whether the reader has reached the end.
func (r *reader) eof() bool {
return r.rem() <= 0
}
// seek moves the readers cursor.
func (r *reader) seek(off int) error {
if off < 0 || off > len(r.data) {
return fmt.Errorf("seek outside input: 0x%x", off)
}
r.off = off
return nil
}
// skip skips bytes.
func (r *reader) skip(n int) error {
if n < 0 || r.off+n > len(r.data) {
return errUnexpectedData
}
r.off += n
return nil
}
// read reads raw bytes.
func (r *reader) read(n int) ([]byte, error) {
if n < 0 || r.off+n > len(r.data) {
return nil, fmt.Errorf("unexpected EOF at 0x%x reading %d bytes", r.off, n)
}
out := r.data[r.off : r.off+n]
r.off += n
return out, nil
}
// readB8 reads an 8-bit boolean.
func (r *reader) readB8() (bool, error) {
b, err := r.read(1)
if err != nil {
return false, err
}
v := b[0]
if v != 0 && v != 1 {
return false, errUnexpectedData
}
return v != 0, nil
}
// readU8 reads an 8-bit unsigned integer.
func (r *reader) readU8() (uint8, error) {
b, err := r.read(1)
if err != nil {
return 0, err
}
return b[0], nil
}
// readE8 reads an 8-bit unsigned integer and looks for it in the given map. `fail` controls
// whether the absence of the key in the map is an error or not.
func (r *reader) readE8(enum map[uint8]string, fail bool) (string, error) {
k, err := r.readU8()
if err != nil {
return "", err
}
v, ok := enum[k]
if !ok {
if fail {
return "", errUnexpectedData
}
return fmt.Sprintf("0x%x", k), nil
}
return v, nil
}
// readU16 reads a 16-bit unsigned integer.
func (r *reader) readU16() (uint16, error) {
b, err := r.read(2)
if err != nil {
return 0, err
}
return binary.LittleEndian.Uint16(b), nil
}
// readE16 reads a 16-bit unsigned integer and looks for it in the given map. `fail` controls
// whether the absence of the key in the map is an error or not.
func (r *reader) readE16(enum map[uint16]string, fail bool) (string, error) {
k, err := r.readU16()
if err != nil {
return "", err
}
v, ok := enum[k]
if !ok {
if fail {
return "", errUnexpectedData
}
return fmt.Sprintf("0x%x", k), nil
}
return v, nil
}
// readU32 reads a 32-bit unsigned integer.
func (r *reader) readU32() (uint32, error) {
b, err := r.read(4)
if err != nil {
return 0, err
}
return binary.LittleEndian.Uint32(b), nil
}
// readE32 reads a 32-bit unsigned integer and looks for it in the given map. `fail` controls
// whether the absence of the key in the map is an error or not.
func (r *reader) readE32(enum map[uint32]string, fail bool) (string, error) {
k, err := r.readU32()
if err != nil {
return "", err
}
v, ok := enum[k]
if !ok {
if fail {
return "", errUnexpectedData
}
return fmt.Sprintf("0x%x", k), nil
}
return v, nil
}
// readU64 reads a 64-bit unsigned integer.
func (r *reader) readU64() (uint64, error) {
b, err := r.read(8)
if err != nil {
return 0, err
}
return binary.LittleEndian.Uint64(b), nil
}
// readU64BE reads a big-endian 64-bit unsigned integer.
func (r *reader) readU64BE() (uint64, error) {
b, err := r.read(8)
if err != nil {
return 0, err
}
return binary.BigEndian.Uint64(b), nil
}
// readGUID reads a GUID.
func (r *reader) readGUID() (string, error) {
b, err := r.read(16)
if err != nil {
return "", err
}
return formatGUID(b), nil
}
// readGUIDBE reads a big-endian GUID.
func (r *reader) readGUIDBE() (string, error) {
b, err := r.read(16)
if err != nil {
return "", err
}
return fmt.Sprintf("%x-%x-%x-%x-%x", b[0:4], b[4:6], b[6:8], b[8:10], b[10:16]), nil
}
// readEISA reads an EISA type ID.
func (r *reader) readEISA() (string, error) {
b, err := r.readU32()
if err != nil {
return "", err
}
c1 := byte(b>>10&0x1f) + 'A' - 1
c2 := byte(b>>5&0x1f) + 'A' - 1
c3 := byte(b&0x1f) + 'A' - 1
if c1 < 'A' || c1 > 'Z' || c2 < 'A' || c2 > 'Z' || c3 < 'A' || c3 > 'Z' {
return fmt.Sprintf("0x%08x", b), nil
}
return fmt.Sprintf("%c%c%c%04X", c1, c2, c3, uint16(b>>16)), nil
}
// readEUI64 reads an EUI64 address.
func (r *reader) readEUI64() (string, error) {
b, err := r.read(8)
if err != nil {
return "", err
}
return fmt.Sprintf("%02x-%02x-%02x-%02x-%02x-%02x-%02x-%02x", b[7], b[6], b[5], b[4], b[3], b[2], b[1], b[0]), nil
}
// readEUI64BE reads a big-endian EUI64 address.
func (r *reader) readEUI64BE() (string, error) {
b, err := r.read(8)
if err != nil {
return "", err
}
return fmt.Sprintf("%02x-%02x-%02x-%02x-%02x-%02x-%02x-%02x", b[0], b[1], b[2], b[3], b[4], b[5], b[6], b[7]), nil
}
func (r *reader) _readZ8(n ...int) (string, bool, error) {
var b []byte
maxSize := -1
nul := true
if len(n) > 0 {
maxSize = n[0]
}
if maxSize == 0 {
return "", false, nil
}
v, err := r.readU8()
if err != nil {
return "", false, err
}
for v != 0 {
b = append(b, v)
if len(b) == maxSize {
nul = false
break
}
v, err = r.readU8()
if err != nil {
return "", false, err
}
}
// If we were asked to read more, simply skip the remaining bytes.
rem := maxSize - len(b) - 1
if rem > 0 {
err = r.skip(rem)
if err != nil {
return "", false, err
}
}
return string(b), nul, nil
}
// readZ8 reads an optionally NUL-terminated ASCII/UTF8 string up to the given size, if specified.
func (r *reader) readZ8(n ...int) (string, error) {
s, _, err := r._readZ8(n...)
return s, err
}
// readZn8 reads a NUL-terminated ASCII/UTF8 string up to the given size, if specified.
func (r *reader) readZn8(n ...int) (string, error) {
s, nul, err := r._readZ8(n...)
if !nul {
return "", errUnexpectedData
}
return s, err
}
func (r *reader) _readZ16(n ...int) (string, bool, error) {
var b []uint16
maxSize := -1
nul := true
if len(n) > 0 {
maxSize = n[0]
}
if maxSize == 0 {
return "", false, nil
}
v, err := r.readU16()
if err != nil {
return "", false, err
}
for v != 0 {
b = append(b, v)
if len(b) == maxSize {
nul = false
break
}
v, err = r.readU16()
if err != nil {
return "", false, err
}
}
// If we were asked to read more, simply skip the remaining bytes.
rem := maxSize - len(b) - 1
if rem > 0 {
err = r.skip(2 * rem)
if err != nil {
return "", false, err
}
}
return string(utf16.Decode(b)), nul, nil
}
// readZ16 reads an optionally NUL-terminated UTF16 string up to the given size, if specified.
func (r *reader) readZ16(n ...int) (string, error) {
s, _, err := r._readZ16(n...)
return s, err
}
// readZn16 reads a NUL-terminated UTF16 string up to the given size, if specified.
func (r *reader) readZn16(n ...int) (string, error) {
s, nul, err := r._readZ16(n...)
if !nul {
return "", errUnexpectedData
}
return s, err
}
// readTimestamp reads an EFI time. We consider times to be expressed in UTC and ignore nanoseconds,
// because all our call sites do so. This function returns a nil time if all the read bytes are 0.
func (r *reader) readTimestamp() (*time.Time, error) {
year, err := r.readU16()
if err != nil {
return nil, err
}
month, err := r.readU8()
if err != nil {
return nil, err
}
day, err := r.readU8()
if err != nil {
return nil, err
}
hour, err := r.readU8()
if err != nil {
return nil, err
}
minute, err := r.readU8()
if err != nil {
return nil, err
}
second, err := r.readU8()
if err != nil {
return nil, err
}
// Pad1+Nanosecond+TimeZone+Daylight+Pad2.
err = r.skip(9)
if err != nil {
return nil, err
}
if year == 0 && month == 0 && day == 0 && hour == 0 && minute == 0 && second == 0 {
return nil, nil
}
t := time.Date(int(year), time.Month(month), int(day), int(hour), int(minute), int(second), 0, time.UTC)
return &t, nil
}
// writer is a wrapper to help writing OVMF files.
type writer struct {
data []byte
}
// newWriter returns a writer.
func newWriter() *writer {
return &writer{}
}
// size returns the writers size.
func (w *writer) size() int {
return len(w.data)
}
// write writes raw bytes.
func (w *writer) write(b []byte) error {
w.data = append(w.data, b...)
return nil
}
// writeU8 writes an 8-bit unsigned integer.
func (w *writer) writeU8(v uint8) error {
w.data = append(w.data, v)
return nil
}
// writeU16 writes a 16-bit unsigned integer.
func (w *writer) writeU16(v uint16) error {
b := make([]byte, 2)
binary.LittleEndian.PutUint16(b, v)
w.data = append(w.data, b...)
return nil
}
// writeU16At writes a 16-bit unsigned integer at the given position.
func (w *writer) writeU16At(v uint16, pos int) error {
binary.LittleEndian.PutUint16(w.data[pos:], v)
return nil
}
// writeU32 writes a 32-bit unsigned integer.
func (w *writer) writeU32(v uint32) error {
b := make([]byte, 4)
binary.LittleEndian.PutUint32(b, v)
w.data = append(w.data, b...)
return nil
}
// writeU64 writes a 64-bit unsigned integer.
func (w *writer) writeU64(v uint64) error {
b := make([]byte, 8)
binary.LittleEndian.PutUint64(b, v)
w.data = append(w.data, b...)
return nil
}
// writeGUID reads a GUID.
func (w *writer) writeGUID(guid string) error {
b, err := hex.DecodeString(strings.ReplaceAll(guid, "-", ""))
if err != nil {
return err
}
w.data = append(append(w.data, b[3], b[2], b[1], b[0], b[5], b[4], b[7], b[6]), b[8:]...)
return nil
}
// writeZ8 writes an ASCII/UTF8 string.
func (w *writer) writeZ8(s string, n ...int) error {
size := len(s)
if len(n) > 0 {
size = n[0]
}
b := make([]byte, size)
copy(b, s)
w.data = append(w.data, b...)
return nil
}
// writeZ16 writes an UTF16 string.
func (w *writer) writeZ16(s string, n ...int) error {
size := len(s) * 2
if len(n) > 0 {
size = n[0] * 2
}
b := make([]byte, size)
for i, c := range utf16.Encode([]rune(s)) {
b[i*2] = byte(c)
b[i*2+1] = byte(c >> 8)
}
w.data = append(w.data, b...)
return nil
}
// writeZ16 writes a NUL-terminated UTF16 string.
func (w *writer) writeZn16(s string, n ...int) error {
return w.writeZ16(s + "\x00")
}
// writeTimestamp writes an EFI time. We consider times to be expressed in UTC and ignore
// nanoseconds, because all our call sites do so. This function returns a nil time if all the read
// bytes are 0.
func (w *writer) writeTimestamp(t *time.Time) error {
if t == nil {
return w.write([]byte{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0})
}
err := w.writeU16(uint16(t.Year()))
if err != nil {
return err
}
err = w.writeU8(uint8(t.Month()))
if err != nil {
return err
}
err = w.writeU8(uint8(t.Day()))
if err != nil {
return err
}
err = w.writeU8(uint8(t.Hour()))
if err != nil {
return err
}
err = w.writeU8(uint8(t.Minute()))
if err != nil {
return err
}
err = w.writeU8(uint8(t.Second()))
if err != nil {
return err
}
// Pad1+Nanosecond+TimeZone+Daylight+Pad2.
return w.write([]byte{0, 0, 0, 0, 0, 0, 0, 0, 0})
}

436
shared/uefi/store.go Normal file
View File

@ -0,0 +1,436 @@
package uefi
import (
"bytes"
"errors"
"fmt"
"github.com/lxc/incus/v7/shared/api"
)
type blockMapEntry struct {
Count uint32 `json:"count"`
Size uint32 `json:"size"`
}
// Store is a projection of the on-disk OVMF variable store format.
type Store struct {
Vars map[string]map[string]*api.InstanceNVRAMVariable
attrs uint32
blockMap []blockMapEntry
length uint64
varSize uint32
}
// ParseNVRAM parses the contents of an OVMF NVRAM store.
func ParseNVRAM(data []byte) (*Store, error) {
r := newReader(data)
zeroVector, err := r.read(16)
if err != nil {
return nil, err
}
if !bytes.Equal(zeroVector, []byte{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}) {
return nil, fmt.Errorf("Invalid zero vector: %x", zeroVector)
}
fsguid, err := r.readGUID()
if err != nil {
return nil, err
}
if fsguid != EfiSystemNvDataFvGuid {
return nil, fmt.Errorf("Invalid GUID: %s", fsguid)
}
length, err := r.readU64()
if err != nil {
return nil, err
}
if length > uint64(len(data)) {
return nil, fmt.Errorf("Invalid length: %d", length)
}
sig, err := r.readZ8(4)
if err != nil {
return nil, err
}
if sig != "_FVH" {
return nil, fmt.Errorf("Invalid FVH signature: %s", sig)
}
attrs, err := r.readU32()
if err != nil {
return nil, err
}
hlength, err := r.readU16()
if err != nil {
return nil, err
}
csumHdr, err := r.readU16()
if err != nil {
return nil, err
}
if int(hlength) > len(data) {
return nil, fmt.Errorf("Invalid header length: %d", hlength)
}
if csum16(data[:hlength]) != 0 {
return nil, fmt.Errorf("Invalid header checksum: %x", csumHdr)
}
extHdrOffset, err := r.readU16()
if err != nil {
return nil, err
}
if extHdrOffset != 0 {
return nil, errors.New("FVH with extension header not supported")
}
reserved, err := r.readU8()
if err != nil {
return nil, err
}
if reserved != 0 {
return nil, fmt.Errorf("Wrong value for FVH.Reserved: 0x%x", reserved)
}
rev, err := r.readU8()
if err != nil {
return nil, err
}
if rev != 2 {
return nil, fmt.Errorf("Invalid FVH Revision: 0x%x", rev)
}
var blockMap []blockMapEntry
var totalBytes uint64
for {
blockCnt, err := r.readU32()
if err != nil {
return nil, err
}
blockBytes, err := r.readU32()
if err != nil {
return nil, err
}
if blockCnt == 0 && blockBytes == 0 {
break
}
blockMap = append(blockMap, blockMapEntry{Count: blockCnt, Size: blockBytes})
totalBytes += uint64(blockCnt) * uint64(blockBytes)
}
if totalBytes != length {
return nil, fmt.Errorf("Invalid blockmap: %v", blockMap)
}
if r.pos() != int(hlength) {
return nil, fmt.Errorf("Invalid header length: %d", hlength)
}
vsGUID, err := r.readGUID()
if err != nil {
return nil, err
}
if vsGUID != EfiAuthenticatedVariableGuid {
return nil, fmt.Errorf("Invalid Varstore GUID: %s", vsGUID)
}
varSize, err := r.readU32()
if err != nil {
return nil, err
}
status, err := r.read(8)
if err != nil {
return nil, err
}
if !bytes.Equal(status, []byte{0x5a, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}) {
return nil, fmt.Errorf("Invalid Varstore Status: %x", status)
}
s := &Store{attrs: attrs, blockMap: blockMap, length: length, varSize: varSize, Vars: make(map[string]map[string]*api.InstanceNVRAMVariable)}
for {
start, err := r.readU16()
if err != nil {
return nil, err
}
if start != 0x55aa {
break
}
state, err := r.readU8()
if err != nil {
return nil, err
}
err = r.skip(1)
if err != nil {
return nil, err
}
rawAttributes, err := r.readU32()
if err != nil {
return nil, err
}
err = r.skip(8)
if err != nil {
return nil, err
}
timestamp, err := r.readTimestamp()
if err != nil {
return nil, err
}
err = r.skip(4)
if err != nil {
return nil, err
}
nameLen, err := r.readU32()
if err != nil {
return nil, err
}
dataLen, err := r.readU32()
if err != nil {
return nil, err
}
guid, err := r.readGUID()
if err != nil {
return nil, err
}
name, err := r.readZn16(int(nameLen) / 2)
if err != nil {
return nil, err
}
data, err := r.read(int(dataLen))
if err != nil {
return nil, err
}
if state == 0x3f {
v := api.InstanceNVRAMVariable{Attributes: parseAttributes(rawAttributes), Binary: data, Timestamp: timestamp}
_, ok := s.Vars[guid]
if !ok {
s.Vars[guid] = make(map[string]*api.InstanceNVRAMVariable)
}
s.Vars[guid][name] = &v
}
err = r.seek((r.pos() + 0x3) &^ 0x3)
if err != nil {
return nil, err
}
}
return s, nil
}
// Bytes writes a binary OVMF NVRAM store.
func (s *Store) Bytes() ([]byte, error) {
w := newWriter()
err := w.write([]byte{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0})
if err != nil {
return nil, err
}
err = w.writeGUID(EfiSystemNvDataFvGuid)
if err != nil {
return nil, err
}
err = w.writeU64(s.length)
if err != nil {
return nil, err
}
err = w.writeZ8("_FVH")
if err != nil {
return nil, err
}
err = w.writeU32(s.attrs)
if err != nil {
return nil, err
}
hlenPos := w.size()
err = w.writeU16(0) // Header length to fill later.
if err != nil {
return nil, err
}
err = w.writeU16(0) // Header checksum to fill later.
if err != nil {
return nil, err
}
err = w.writeU16(0) // Extension header.
if err != nil {
return nil, err
}
err = w.writeU8(0) // Reserved.
if err != nil {
return nil, err
}
err = w.writeU8(2) // Revision.
if err != nil {
return nil, err
}
for _, b := range s.blockMap {
err = w.writeU32(b.Count)
if err != nil {
return nil, err
}
err = w.writeU32(b.Size)
if err != nil {
return nil, err
}
}
err = w.writeU32(0)
if err != nil {
return nil, err
}
err = w.writeU32(0)
if err != nil {
return nil, err
}
err = w.writeU16At(uint16(w.size()), hlenPos)
if err != nil {
return nil, err
}
err = w.writeU16At(-csum16(w.data), hlenPos+2)
if err != nil {
return nil, err
}
err = w.writeGUID(EfiAuthenticatedVariableGuid)
if err != nil {
return nil, err
}
err = w.writeU32(s.varSize)
if err != nil {
return nil, err
}
err = w.write([]byte{0x5a, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00})
if err != nil {
return nil, err
}
for guid, vars := range s.Vars {
for name, v := range vars {
err = w.writeU16(0x55aa)
if err != nil {
return nil, err
}
err = w.writeU8(0x3f)
if err != nil {
return nil, err
}
err = w.writeU8(0)
if err != nil {
return nil, err
}
err = w.writeU32(dumpAttributes(v.Attributes))
if err != nil {
return nil, err
}
err = w.writeU64(0)
if err != nil {
return nil, err
}
err = w.writeTimestamp(v.Timestamp)
if err != nil {
return nil, err
}
err = w.writeU32(0)
if err != nil {
return nil, err
}
err = w.writeU32(uint32(len(name)*2 + 2))
if err != nil {
return nil, err
}
err = w.writeU32(uint32(len(v.Binary)))
if err != nil {
return nil, err
}
err = w.writeGUID(guid)
if err != nil {
return nil, err
}
err = w.writeZn16(name)
if err != nil {
return nil, err
}
err = w.write(v.Binary)
if err != nil {
return nil, err
}
for w.size()%4 != 0 {
err = w.writeU8(0)
if err != nil {
return nil, err
}
}
}
}
if uint64(w.size()) > s.length {
return nil, fmt.Errorf("Variables require %d bytes but store length is %d", w.size(), s.length)
}
for uint64(w.size()) < s.length {
err = w.writeU8(0xff)
if err != nil {
return nil, err
}
}
return w.data, nil
}

160
shared/uefi/util.go Normal file
View File

@ -0,0 +1,160 @@
package uefi
import (
"encoding/binary"
"errors"
"fmt"
"net"
)
// errUnexpectedData is a very generic error returned whenever something fails if the parser.
var errUnexpectedData = errors.New("Unexpected data")
// formatGUID formats a GUID.
func formatGUID(guid []byte) string {
return fmt.Sprintf("%08x-%04x-%04x-%x-%x", binary.LittleEndian.Uint32(guid[0:4]), binary.LittleEndian.Uint16(guid[4:6]), binary.LittleEndian.Uint16(guid[6:8]), guid[8:10], guid[10:16])
}
// formatIP formats an IPv4 address.
func formatIP(ip []byte, port ...uint16) string {
var p uint16
if len(port) > 0 {
p = port[0]
}
if p == 0 {
return fmt.Sprintf("%d.%d.%d.%d", ip[0], ip[1], ip[2], ip[3])
}
return fmt.Sprintf("%d.%d.%d.%d:%d", ip[0], ip[1], ip[2], ip[3], p)
}
// formatIP6 formats an IPv6 address.
func formatIP6(ip6 []byte, port ...uint16) string {
var p uint16
if len(port) > 0 {
p = port[0]
}
ip := net.IP(ip6)
if p == 0 {
return fmt.Sprintf("[%s]", ip)
}
return fmt.Sprintf("%s:%d", ip, p)
}
// parseAttributes parses UEFI variable attributes and formats them.
func parseAttributes(rawAttributes uint32) []string {
attributes := []string{}
if rawAttributes&0x0000_0001 != 0 {
attributes = append(attributes, "NON_VOLATILE")
}
if rawAttributes&0x0000_0002 != 0 {
attributes = append(attributes, "BOOTSERVICE_ACCESS")
}
if rawAttributes&0x0000_0004 != 0 {
attributes = append(attributes, "RUNTIME_ACCESS")
}
if rawAttributes&0x0000_0008 != 0 {
attributes = append(attributes, "HARDWARE_ERROR_RECORD")
}
if rawAttributes&0x0000_0010 != 0 {
attributes = append(attributes, "AUTHENTICATED_WRITE_ACCESS")
}
if rawAttributes&0x0000_0020 != 0 {
attributes = append(attributes, "TIME_BASED_AUTHENTICATED_WRITE_ACCESS")
}
if rawAttributes&0x0000_0040 != 0 {
attributes = append(attributes, "APPEND_WRITE")
}
if rawAttributes&0x0000_0080 != 0 {
attributes = append(attributes, "ENHANCED_AUTHENTICATED_ACCESS")
}
return attributes
}
// dumpAttributes packs a list of UEFI variable attributes.
func dumpAttributes(attributes []string) uint32 {
var rawAttributes uint32
for _, attribute := range attributes {
switch attribute {
case "NON_VOLATILE":
rawAttributes = rawAttributes | 0x0000_0001
case "BOOTSERVICE_ACCESS":
rawAttributes = rawAttributes | 0x0000_0002
case "RUNTIME_ACCESS":
rawAttributes = rawAttributes | 0x0000_0004
case "HARDWARE_ERROR_RECORD":
rawAttributes = rawAttributes | 0x0000_0008
case "AUTHENTICATED_WRITE_ACCESS":
rawAttributes = rawAttributes | 0x0000_0010
case "TIME_BASED_AUTHENTICATED_WRITE_ACCESS":
rawAttributes = rawAttributes | 0x0000_0020
case "APPEND_WRITE":
rawAttributes = rawAttributes | 0x0000_0040
case "ENHANCED_AUTHENTICATED_ACCESS":
rawAttributes = rawAttributes | 0x0000_0080
}
}
return rawAttributes
}
// parseSigType parses signature GUIDs and formats them.
func parseSigType(sigType string) (string, error) {
switch sigType {
case EfiCertPkcs7Guid:
return "pkcs7", nil
case EfiCertRsa2048Guid:
return "rsa2048", nil
case EfiCertRsa2048Sha1Guid:
return "rsa2048-sha1", nil
case EfiCertRsa2048Sha256Guid:
return "rsa2048-sha256", nil
case EfiCertSha1Guid:
return "sha1", nil
case EfiCertSha224Guid:
return "sha224", nil
case EfiCertSha256Guid:
return "sha256", nil
case EfiCertSha384Guid:
return "sha384", nil
case EfiCertSha512Guid:
return "sha512", nil
case EfiCertSm3Guid:
return "sm3", nil
case EfiCertX509Guid:
return "x509", nil
case EfiCertX509Sha256Guid:
return "x509-sha256", nil
case EfiCertX509Sha384Guid:
return "x509-sha384", nil
case EfiCertX509Sha512Guid:
return "x509-sha512", nil
case EfiCertX509Sm3Guid:
return "x509-sm3", nil
default:
return "", errUnexpectedData
}
}
// csum16 computes a 16-bit checksum.
func csum16(b []byte) uint16 {
var sum uint16
for i := 0; i < len(b)-1; i += 2 {
sum += binary.LittleEndian.Uint16(b[i : i+2])
}
return sum
}

140
shared/uefi/vars.go Normal file
View File

@ -0,0 +1,140 @@
package uefi
import (
"github.com/lxc/incus/v7/shared/api"
)
// Dissect dissects an UEFI variable.
func Dissect(v *api.InstanceNVRAMVariable, guid string, name string) error {
dissected, err := func() (any, error) {
switch guid {
case EfiGlobalVariableGuid:
hasFourDigits := false
n := len(name)
if n > 4 {
hasFourDigits = true
for _, c := range name[n-4:] {
if c < '0' || c > '9' {
hasFourDigits = false
break
}
}
}
if hasFourDigits {
switch name[:n-4] {
case "Boot", "Driver", "SysPrep", "OsRecovery", "PlatformRecovery":
return boot(v.Binary)
case "Key":
return keyboard(v.Binary)
}
}
switch name {
case "BootOrder":
return bootOrder("Boot", v.Binary)
case "ConIn", "ConOut", "ErrOut":
return devicePath(v.Binary)
case "DriverOrder":
return bootOrder("Driver", v.Binary)
case "KEK", "PK":
return esl(v.Binary)
case "Lang", "PlatformLang":
return zn8(v.Binary)
case "OsIndications":
return osIndications(v.Binary)
case "Timeout":
return u16(v.Binary)
}
case ShimLockGuid:
switch name {
case "MokList":
return esl(v.Binary)
case "SbatLevel":
return z8(v.Binary)
}
case EfiVendorKeysNvGuid:
switch name {
case "VendorKeysNv":
return b8(v.Binary)
}
case EfiCustomModeEnableGuid:
switch name {
case "CustomMode":
return b8(v.Binary)
}
case MtcVendorGuid:
switch name {
case "MTC":
return u32(v.Binary)
}
case EfiSecureBootEnableDisableGuid:
switch name {
case "SecureBootEnable":
return b8(v.Binary)
}
case EfiImageSecurityDatabaseGuid:
switch name {
case "db", "dbr", "dbt", "dbx":
return esl(v.Binary)
}
case EdkiiVarErrorFlagGuid:
switch name {
case "VarErrorFlag":
return errorFlag(v.Binary)
}
case IScsiConfigGuid:
switch name {
case "InitialAttemptOrder":
return attemptOrder(v.Binary)
}
case Tcg2ConfigFormSetGuid:
switch name {
case "TCG2_CONFIGURATION", "TCG2_DEVICE_DETECTION":
return tpmVersion(v.Binary)
case "TCG2_VERSION":
return tcg2Version(v.Binary)
}
case EfiMemoryOverwriteRequestControlLockGuid:
switch name {
case "MemoryOverwriteRequestControlLock":
return morControlLock(v.Binary)
}
case EfiMemoryOverwriteControlDataGuid:
switch name {
case "MemoryOverwriteRequestControl":
return morControl(v.Binary)
}
case BmHardDriveBootVariableGuid:
switch name {
case "HDDP":
return devicePath(v.Binary)
}
case EfiCertDbGuid:
switch name {
case "certdb":
return certDB(v.Binary)
}
}
return nil, errUnexpectedData
}()
if err == nil {
v.Data = dissected
}
return nil
}