AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / user-510887

A. Que's questions

Martin Hope
A. Que
Asked: 2023-07-18 19:39:42 +0800 CST

Usando o comando retry com rsync

  • 10

Tendo problemas com o retrycomando quando emparelhado com rsync. retryé um pacote Debian e afirma que pode "Repetir o comando até que um critério seja atendido, geralmente sucesso". Tentando usá-lo rsyncem uma conexão que às vezes pode falhar. Porém sempre dá o mesmo erro: giving up: No such file or directory:

retry '/usr/bin/rsync -av source destination'
retry: Could not execute 'rsync -av source destination', giving up: No such file or directory

Ambos sourcee destinationexistem. Eu tentei usar o caminho absoluto, aspas simples e duplas, aspas em torno de caminhos e caminhos como variáveis, mas nenhum funcionou. Posso usar a abordagem desta solução , mas é bastante complicado ao criar vários diretórios. Há algo que estou perdendo?

rsync
  • 2 respostas
  • 364 Views
Martin Hope
A. Que
Asked: 2023-07-12 04:48:40 +0800 CST

FIDO2 (YubiKey) para desbloquear LUKS da linha de comando

  • 5

Seguindo o exemplo de como adicionar uma chave FIDO2 de um YubiKey, mas não consigo descobrir como usar o YubiKey para desbloqueá-lo na linha de comando. As instruções falam sobre desbloquear na inicialização - mas não é isso que eu quero.

Configurar

Crie um arquivo de 128 MiB, torne-o um dispositivo de bloco loop0e configure o LUKS.

$ dd if=/dev/urandom of=disk.bin bs=1M count=128 
128+0 records in
128+0 records out
134217728 bytes (134 MB, 128 MiB) copied, 0.534038 s, 251 MB/s
$ losetup /dev/loop0 disk.bin 
$ cryptsetup luksFormat -y /dev/loop0

WARNING!
========
This will overwrite data on /dev/loop0 irrevocably.

Are you sure? (Type 'yes' in capital letters): YES
Enter passphrase for temp.bin: 
Verify passphrase: 

Adicione o Yubikey.

$ systemd-cryptenroll /dev/loop0 --fido2-device=auto  --fido2-with-client-pin=yes
? Please enter current passphrase for disk /dev/loop0: ****                    
Requested to lock with PIN, but FIDO2 device /dev/hidraw9 does not support it, disabling.
Initializing FIDO2 credential on security token.
? (Hint: This might require confirmation of user presence on security token.)
Generating secret key on FIDO2 security token.
? In order to allow secret key generation, please confirm presence on security token.
New FIDO2 token enrolled as key slot 1.

Remova a chave não-FIDO2.

$ cryptsetup -q -v luksKillSlot /dev/loop0 0
Keyslot 0 is selected for deletion.
Key slot 0 removed.
Command successful.

Problema

O que agora? Isso não funciona:

$ cryptsetup open /dev/loop0 loop0_encrypted
Enter passphrase for disk.bin:

Agora tenho um disco LUKS, mas não sei como desbloqueá-lo. Todos os tutoriais que encontrei dizem para fazer modificações /etc/crypttabe dar instruções para montagens na inicialização. Quero montar sem reiniciar e (de preferência) sem modificar /etc/crypttab. o que estou perdendo?

luks
  • 1 respostas
  • 10 Views
Martin Hope
A. Que
Asked: 2022-06-21 14:17:37 +0800 CST

Chave do objeto pai da matriz que contém valor com jq

  • 3

Digamos que eu tenha dados algo assim:

{
  "18" : [ 2, 3, 3 ],
  "28" : [ 2, 2, 7 ],
  "45" : [ 3, 3, 5 ]
}

Gostaria de fazer uma jqconsulta que retornasse a chave/chaves do objeto com o array que contém um determinado valor. Por exemplo, 2 existe nas chaves "18" e "28", e 7 existe apenas em "28". É o nome do objeto pai que estou interessado em encontrar. Dei uma olhada no manual e não consigo encontrar um exemplo de algo assim.

jq
  • 1 respostas
  • 2443 Views
Martin Hope
A. Que
Asked: 2022-02-08 09:39:44 +0800 CST

Bash nomeado pipes, comandos paralelos e status de saída

  • 2

Estou tentando usar um pipe nomeado para poder manter stdouta saída de status de um processo longo. Eu poderia usar stderrpara saída de status, mas gostaria de manter isso para erros. Aqui está um exemplo:

#!/bin/bash
pipe=$(mktemp -u)
mkfifo $pipe

dd if=/dev/zero of=$pipe bs=1M count=1024 status=progress & cat $pipe > test.bin

# ¿¿¿ Status of dd command ???

rm $pipe

O comando não é exatamente o que estou tentando fazer, mas ilustra a combinação de usar um pipe nomeado para a saída de um processo alimentando a entrada de outro. No meu aplicativo, ddé substituído por algum comando de longa duração e catpor ssh. Isso faria o que eu quero, mas não sei como obter o status do ddcomando, pois $?retornaria o status do catcomando. Se isso fosse um pipe, eu poderia usar, PIPESTATUSmas isso não parece funcionar para processos paralelos. No aplicativo real, um (ou ambos) os comandos podem falhar.

Existe uma maneira de obter o status dos processos executados em paralelo? Existe uma maneira melhor de realizar essa tarefa usando algo diferente de pipes nomeados?

bash exit-status
  • 1 respostas
  • 409 Views
Martin Hope
A. Que
Asked: 2022-01-20 20:30:25 +0800 CST

Leitura incremental do tubo

  • 0

Tentar descobrir como ter um script de shell apenas retira blocos de tamanho fixo do stdin. Eu teria pensado que algo assim teria funcionado, mas não funciona:

#!/bin/bash
value=0
while [ "$value" != "-1" ]; do
  read -r -d '' -n 20 value
  if [ "$value" != "-1" ]; then
    dd conv=notrunc status=none of=/path/bigfile.bin bs=1M count=1 seek=$value
  fi
done

Em poucas palavras, estou tentando copiar blocos específicos de um arquivo grande para o mesmo arquivo em um local remoto. Os dados enviados do script de envio possuem um local de bloco (20 bytes) seguido por 1 MiB dos dados a serem gravados nesse local. Termina quando a localização é -1.

Eu tenho uma configuração que funciona bem se estiver executando um programa C compilado, mas gostaria de evitar isso e executar com os comandos shell nativos. O problema é que parece que não ddconsome nenhum dado, e tudo isso é tratado pelo readcomando.

Pode stdinser consumido por vários comandos?

bash shell-script
  • 2 respostas
  • 113 Views

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve