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-291147

lonix's questions

Martin Hope
lonix
Asked: 2024-12-13 19:01:29 +0800 CST

Bash extglob com padrão ignorado

  • 7

Suponha que eu tenha estes arquivos:

foo/bar/baz/test.js
foo/bar/baz/test.min.js

Se eu correr:

shopt -s globstar
shopt -s extglob
echo foo/bar/**/*!(.min).js

...que ainda assim corresponderá ao test.min.jsarquivo.

Como posso ignorar isso?

bash
  • 1 respostas
  • 20 Views
Martin Hope
lonix
Asked: 2024-01-15 18:44:37 +0800 CST

Por que o VPS com Debian padrão contém dispositivo cdrom?

  • 5

Recentemente configurei um Debian 12 VPS com uma nova empresa de hospedagem. Tem:

/media/cdrom -> cdrom0/
/media/cdrom0/

E em /etc/fstab:

/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto     0       0

Os VPSs Debian da minha antiga empresa de hospedagem não têm isso. A nova empresa de hospedagem é bem conhecida e respeitável, mas fiquei surpreso, pois garante aos clientes que apenas imagens simples do Debian serão usadas, sem modificação.

Por que o dispositivo cdrom seria instalado para um VPS? Eu quero removê-lo; poderia ser necessário para algo como um processo de recuperação?

(Ou talvez meu antigo hoster desabilite o cdrom, e o novo hoster provisione corretamente o estoque debian?)

debian
  • 1 respostas
  • 22 Views
Martin Hope
lonix
Asked: 2023-12-30 14:28:25 +0800 CST

Expanda uma lista de arquivos incluindo globs, que são definidos em um arquivo

  • 5

Estou usando o bash. Suponha que eu tenha um arquivo chamado filelist, que contém uma lista de arquivos:

stuff/**/*.csv     # to keep it simple (without loops), assume just one entry
#*.txt
#foo.md
#bar.bin

E quero expandir isso:

ls $(cat filelist)

Eu recebo:

ls: não é possível acessar 'stuff/**/*.csv': esse arquivo ou diretório não existe

O que eu quero é expandir isso em uma lista de arquivos que eu possa enviar para meu aplicativo principal para processamento. Como eu posso fazer isso?

bash
  • 1 respostas
  • 45 Views
Martin Hope
lonix
Asked: 2023-08-06 09:32:40 +0800 CST

Como o docker scratch container executa meu aplicativo sem um shell?

  • 7

Um contêiner docker baseado na scratchimagem não possui um shell.

Então, como ele executa o binário que coloco dentro?

linux
  • 1 respostas
  • 249 Views
Martin Hope
lonix
Asked: 2023-06-09 11:29:10 +0800 CST

Existe uma diferença entre permissões de arquivo e modo?

  • 5

Os termos "permissão de arquivo" e "modo de arquivo" geralmente são usados ​​de forma intercambiável. No entanto, algumas ferramentas usam exclusivamente um termo ou outro. Curiosamente, a venerável chmodferramenta refere-se especificamente ao "modo de arquivo".

Existe alguma diferença técnica ou histórica entre eles?

linux
  • 2 respostas
  • 50 Views
Martin Hope
lonix
Asked: 2023-05-26 08:00:12 +0800 CST

Detectar alterações feitas na imagem VPS linux pela empresa de hospedagem

  • 5

Minha empresa de hospedagem VPS injeta "extras" em novas imagens Debian (e outras) VPS - scripts, configuração de rede, telemetria, etc.

Como posso comparar um novo VPS com a imagem oficial, para ver quais alterações foram feitas pela empresa de hospedagem?

linux
  • 1 respostas
  • 27 Views
Martin Hope
lonix
Asked: 2022-06-21 18:12:12 +0800 CST

autossh sempre sai com erro

  • 0

Eu usei o alias sshpara autossh -M0por conveniência, e funciona bem.

No entanto, sempre sai com erro, o que causa problemas com meus scripts.

por exemplo

ssh me@myserver 'true'      # equivalent to:  autossh -M0 me@myserver 'true'
echo $?     # 1

Como faço para corrigir isso?

(Uma solução alternativa em scripts, para usar /usr/bin/sshem vez de ssh. Mas gostaria de corrigir isso, se possível.)

ssh autossh
  • 1 respostas
  • 46 Views
Martin Hope
lonix
Asked: 2022-06-17 02:59:35 +0800 CST

Debounce inotifywait para arquivos grandes

  • 1

Eu carrego arquivos para implantação em um diretório remoto. Esse servidor remoto possui um script que observa o diretório em busca de novos arquivos:

inotifywait --monitor --event create --format '%f' --quiet /foo

Quando um novo arquivo é detectado, o processo de implantação é iniciado.

O problema é que o upload leva tempo - e o arquivo é detectado assim que começa a ser gravado. Portanto, a implantação falha ao tentar usar um arquivo parcial.

Existe uma maneira de debounce inotifywaitpara que ele relate o novo arquivo somente depois que ele for totalmente criado?

bash shell-script
  • 1 respostas
  • 101 Views
Martin Hope
lonix
Asked: 2022-04-08 19:08:29 +0800 CST

Configure o apt para ignorar as atualizações menores de um pacote

  • 0

Para alguns aptpacotes, não quero pequenas atualizações.

É possível configurar o apt para ignorar atualizações menores para um pacote específico e não me perguntar sobre essas versões mesmo ao atualizar seu banco de dados ( apt update).

UPDATE
(Isso é tecnicamente possível, já que os pacotes apt não precisam seguir o versionamento semântico?)

ubuntu apt
  • 1 respostas
  • 182 Views
Martin Hope
lonix
Asked: 2022-04-07 15:55:23 +0800 CST

A desinstalação do flatpak tem opção de limpeza como o apt

  • 0

Tem flatpakuma opção de "limpeza" de desinstalação como apt?

Objetivo: desinstalar um aplicativo e todos os arquivos de configuração .

flatpak
  • 1 respostas
  • 177 Views
Martin Hope
lonix
Asked: 2022-03-13 18:18:12 +0800 CST

Use xargs e kill no script com sinal opcional

  • 3

Um script para encerrar um servidor em uma determinada porta:

#!/bin/bash

PORT="$1"
SIGNAL="$2"

if [ "${SIGNAL}" != "" ]; then SIGNAL=" -${SIGNAL}"; fi

lsof -i:"${PORT}" |\
  grep -e "localhost:${PORT}" -e TCP -e LISTEN |\
  tr -s ' ' |\
  cut -d' ' -f2 |\
  tee /dev/tty |\
  xargs --no-run-if-empty kill "$SIGNAL"

Funciona:killbyport 4242

Mas se eu quiser fazer um kill -9eu faria: killbyport 4242 9, e esse erro:

kill: (-9): No such process

Os xargse killnão estão cooperando – como faço para corrigir isso?

(PS: Eu quero consertar este script, em vez de alterá-lo para outra coisa. Está quase funcionando.)

bash ubuntu
  • 3 respostas
  • 531 Views
Martin Hope
lonix
Asked: 2020-02-23 00:36:11 +0800 CST

Como acesso os arquivos principais de um Kindle?

  • 0

Se eu montar um Kindle (na minha máquina Ubuntu), ele me mostra vários arquivos e bancos de dados relacionados a livros, metadados, etc.

Mas não vejo o sistema operacional real e seus arquivos - estou vendo-os e não percebo, ou estão ocultos de alguma forma? Como faço para acessar o sistema operacional real?

(O que procuro é encontrar os arquivos de log. A última atualização estragou meu dispositivo e espero que haja um registro da versão anterior do firmware em algum lugar, para que eu possa reverter.)

kernel hardware
  • 1 respostas
  • 32 Views
Martin Hope
lonix
Asked: 2020-01-17 01:31:00 +0800 CST

Suprimir informações e erros do sftp, mas mostrar o progresso

  • 0

eu tenho isto

sftp -q my_host:my_dir 1>/dev/null 2>&1 <<EOF
  some_command
  some_command
  some_command
  some_command
  put foo bar
  some_command
  exit
EOF

Isso suprime:

  • banner e motd devido a-q
  • informações e erros devidos a 1>/dev/null 2>&1(por exemplo, não é possível excluir o arquivo, o diretório existe)

Mas também suprime puto medidor de progresso de .

Posso mostrar o progresso, mas não informações e erros?

bash sftp
  • 1 respostas
  • 187 Views
Martin Hope
lonix
Asked: 2019-11-18 00:12:21 +0800 CST

Execute o tmux no login ssh

  • 5

Eu quero que o tmux inicie no login ssh.

O conselho típico é adicionar isso a ~/.bashrc:

if [ -z "$TMUX" ] && [ -n "$SSH_TTY" ] && [[ $- =~ i ]]; then
  tmux attach-session -t mysession 2>/dev/null || tmux new-session -s mysession
fi

Mas quando eu faço login, recebo este erro do tmux:

servidor perdido

...E então estou na festança como de costume.


ATUALIZAR

Quando eu adiciono um sono:

if [ -z "$TMUX" ] && [ -n "$SSH_TTY" ] && [[ $- =~ i ]]; then
  tmux attach-session -t mysession 2>/dev/null || $(sleep 1 && tmux new-session -s mysession)
fi

...então funciona. Estranho! Qual é a razão?

bash
  • 1 respostas
  • 4055 Views
Martin Hope
lonix
Asked: 2019-09-19 01:43:03 +0800 CST

Alterando o editor padrão

  • 2

Existem duas maneiras de alterar o editor padrão:

  • update-alternatives --set editor /bin/nano
  • export EDITOR='/bin/nano'
    adicionado a ~/.bashrc(único usuário) ou /etc/profile.d/(todos os usuários)

Existe alguma diferença/nuance entre eles? por exemplo, disponibilidade em várias distribuições?


ATUALIZAR

Há tambémselect-editor

linux
  • 1 respostas
  • 188 Views
Martin Hope
lonix
Asked: 2019-09-18 07:50:55 +0800 CST

Execute a função .bashrc como sudo [duplicado]

  • -1
Essa pergunta já tem respostas aqui :
Executando uma função de script Bash com Sudo (9 respostas)
Execute nvm (função bash) via sudo (3 respostas)
sudo não está executando o bashrc conforme o esperado (1 resposta)
Posso executar um comando carregado de .bashrc com sudo? (2 respostas)
Fechado há 3 anos .

Eu adicionei isso ~/.bashrcpara fornecer cauda colorida:

tailc () {
  tail $@ | ccze
}

E eu posso executá-lo assim:tailc -f -n 10 foo/log.txt

Mas não posso usá-lo em um arquivo privilegiado:

sudo tailc -f -n 10 /var/log/syslog

Erro:

bash: tailc: comando não encontrado

Eu sei que posso fazer assim: sudo bash -i -c '...'mas quero saber se consigo rodar sem aquela sintaxe mais complicada. O que posso fazer para poder apenas digitar sudo tailc ...?

BTW, eu adicionei essa função /root/.bashrctambém, mas isso também não ajudou.

bash
  • 1 respostas
  • 859 Views
Martin Hope
lonix
Asked: 2019-09-14 01:53:52 +0800 CST

Sintaxe iptables moderna para especificar uma nova conexão

  • 1

Sou novo no iptables e confuso com as mudanças da CLI ao longo dos anos. Vejo muitos exemplos que parecem fazer a mesma coisa, mas com sintaxe diferente.

Estes são exatamente os mesmos , ou há alguma nuance entre eles:

  • -p tcp -m state --state NEW
  • -p tcp -m conntrack --ctstate NEW
  • -p tcp -m tcp --syn/-p tcp --syn

Se forem exatamente iguais, usarei -p tcp --syn, o que simplificaria/encurtaria minha configuração.

iptables
  • 1 respostas
  • 127 Views
Martin Hope
lonix
Asked: 2019-09-14 00:58:58 +0800 CST

Mapeando regra ufw para iptables

  • 1

Estou mudando do ufw para o iptables.

Existe uma regra padrão de "limite" no ufw, que entra em ação se um endereço IP iniciar mais de 6 conexões em 30 segundos ( sudo ufw limit ssh). Eu uso essa regra de limite para tráfego SSH (porta 22).

Eu li tantas maneiras diferentes de fazer isso no iptables, que é apenas confuso. Não tenho certeza se devo usar o connlimitou limitou algum outro módulo.

Qual é a maneira mais simples de mapear essa regra 1:1 para o iptables?

ubuntu
  • 2 respostas
  • 718 Views
Martin Hope
lonix
Asked: 2019-09-11 00:03:56 +0800 CST

É seguro remover o snap no Ubuntu Server?

  • 6

Eu não uso snap e nunca instalo pacotes snap.

Em um novo Ubuntu Server 18.04, snap listmostra:

Nenhum snap está instalado ainda.

É seguro removê-lo?

Não tenho certeza de quais dependências estranhas estão acontecendo em segundo plano - então não quero quebrar acidentalmente o sistema agora ou no futuro. (Eu quero ter certeza, porque na área de trabalho do Ubuntu, mesmo que eu não use o snap, o próprio sistema operacional usa.)

ubuntu
  • 1 respostas
  • 4884 Views
Martin Hope
lonix
Asked: 2018-09-24 06:23:49 +0800 CST

Desativar um serviço systemd após o tempo ocioso

  • 10

Eu quero que um serviço seja iniciado sob demanda e não na inicialização. Para fazer isso, eu poderia usar a ativação do soquete do systemd (com os arquivos de serviço e soquete).

Mas este é um servidor com recursos limitados, portanto, após algum tempo (por exemplo, 1 hora) de inatividade, quero interromper o serviço (até que seja acionado novamente). Como eu posso fazer isso?

Eu olhei através de alguma documentação, mas não consigo descobrir se isso é suportado.


Atualização:
Supondo que isso não seja suportado, o caso de uso provavelmente ainda é bastante comum. Qual seria uma boa maneira / solução alternativa para conseguir isso?

linux systemd
  • 3 respostas
  • 2281 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