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

sourcejedi's questions

Martin Hope
sourcejedi
Asked: 2024-05-26 23:37:07 +0800 CST

Quando exatamente o ~/snap é criado?

  • 10

Eu tenho uma configuração de backup remoto . Isso usa um sshusuário dedicado. Vamos ligar para o usuáriorsyncbak-ubuntu-vm

Comecei a testar isso no Ubuntu. Dentro do diretório inicial do Ubuntu rsyncbak-ubuntu-vm, o Ubuntu cria um snap/diretório.

Quando o Ubuntu cria o snap/diretório? É quando o usuário é criado? É quando uma sessão PAM é aberta pela primeira vez para o login, por exemplo, porque uma conexão ssh foi aberta?

users
  • 1 respostas
  • 621 Views
Martin Hope
sourcejedi
Asked: 2024-05-21 18:13:39 +0800 CST

Erro Ansible "Nenhum módulo chamado 'ansible.module_utils.six.moves'"

  • 4

Usei uma máquina Fedora 39 para gerenciar uma máquina Fedora 39, com um playbook Ansible. Isso funcionou bem.

Tentei usar o Ubuntu 22.04 para executar o mesmo manual, visando a mesma máquina Fedora 39. Falhou. Por que falhou?

TASK [Gathering Facts] ***************************************************************************************************************
fatal: [alan-laptop]: FAILED! => {"ansible_facts": {}, "changed": false, "failed_modules": {"ansible.legacy.setup": {"failed": true, "module_stderr": "Shared connection to alan-laptop closed.
", "module_stdout": "
Traceback (most recent call last):
  File \"/home/alan-sysop/.ansible/tmp/ansible-tmp-1716281784.2385828-132440-85599417152925/AnsiballZ_setup.py\", line 102, in <module>
    _ansiballz_main()
  File \"/home/alan-sysop/.ansible/tmp/ansible-tmp-1716281784.2385828-132440-85599417152925/AnsiballZ_setup.py\", line 94, in _ansiballz_main
    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
  File \"/home/alan-sysop/.ansible/tmp/ansible-tmp-1716281784.2385828-132440-85599417152925/AnsiballZ_setup.py\", line 37, in invoke_module
    from ansible.module_utils import basic
  File \"/tmp/ansible_ansible.legacy.setup_payload_0vjz3har/ansible_ansible.legacy.setup_payload.zip/ansible/module_utils/basic.py\", line 176, in <module>
ModuleNotFoundError: No module named 'ansible.module_utils.six.moves'
", "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error", "rc": 1}}, "msg": "The following modules failed to execute: ansible.legacy.setup"}

Meu pacote Ansible é a versão 2.10.7+merged+base+2.10.8+dfsg-1ubuntu0.1~esm1.

ansible
  • 1 respostas
  • 85 Views
Martin Hope
sourcejedi
Asked: 2023-05-21 19:28:20 +0800 CST

Não recebendo atualizações do Google Chrome, depois de configurar o apt-cacher-ng

  • 7
  1. Eu configurei um servidor com o apt-cacher-ngpacote.
  2. Configurei um PC para usar este cache. Eu criei /etc/apt/apt.conf.d/02proxy, com esta linha:
Acquire::http::proxy "http://my-server:3142";
  1. Eu instalei o Google Chrome . Ou seja, baixado e instalado google-chrome-stable_current_amd64.deb.

P: Mais tarde, notei um problema ao verificar atualizações de software. O que aconteceu?

No Ubuntu Desktop 22.04, o Software Updater apenas diz "Falha ao baixar as informações do repositório. Verifique sua conexão com a Internet".

Ou no Debian 11 (GNOME), o software mostra um erro pop-up:

Não é possível baixar as atualizações:
E: https://dl.google.com/linux/chrome/deb stable InRelease não está (ainda) disponível (resposta inválida do proxy: HTTP/1.0 CONNECT negado (pergunte ao administrador para habilitar os túneis HTTPS) [IP: meu-servidor-IP 3142]

A execução apt updatemostra o erro completo, tanto no Ubuntu quanto no Debian.

Por fim, se você usa o Ubuntu 22.04, mas passou a usar o aplicativo GNOME Software (por exemplo, para evitar snaps), não há nenhuma mensagem de erro! Parece que as atualizações de segurança para o navegador Chrome serão ignoradas, sem qualquer aviso. Talvez porque seja uma versão mais antiga do software GNOME.

Versões de pacote testadas

  • Atualizador de Software no Ubuntu Desktop 22.04 - gerenciador de atualização 1:22.04.10
  • Software no Debian 11 (GNOME) - gnome-software 3.38.1-1
  • Software no Ubuntu Desktop 22.04 - gnome-software 3.38.1-1
  • apt-cacher-ng 3.6.4-1
apt
  • 1 respostas
  • 54 Views
Martin Hope
sourcejedi
Asked: 2019-09-26 01:15:41 +0800 CST

Transmissão (cliente Gnome BitTorrent) vs firewall no Debian 10

  • 0

Eu instalei firewalldno meu laptop Debian 10. Agora a transmissão não pode ser carregada corretamente. Se eu for em Edit->Preferences->Network e clicar em [Test Port], ele diz que a porta está fechada. Se eu systemctl stop firewalldreiniciar a transmissão, ele diz que a porta está aberta.

Como posso usar o Transmission com um firewall?

firewall
  • 1 respostas
  • 1006 Views
Martin Hope
sourcejedi
Asked: 2019-09-13 09:44:59 +0800 CST

Como/por que o fstrim cortou mais espaço do que eu tenho livre?

  • 0

Como/por que o fstrim cortou mais espaço do que eu tenho livre?

$ df -h /
Filesystem                        Size  Used Avail Use% Mounted on
/dev/mapper/drystone_2019-debian   93G   84G  4.6G  95% /

$ sudo fstrim -v /
/: 8.8 GiB (9395548160 bytes) trimmed

$ uname -r
4.19.0-6-amd64

$ head -n1 /etc/os-release
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
linux
  • 1 respostas
  • 120 Views
Martin Hope
sourcejedi
Asked: 2019-08-17 10:37:35 +0800 CST

"sh -c" não expande parâmetros posicionais, se eu executá-lo de "sudo --login". Existe uma maneira de contornar isso?

  • 6

Eu escrevi um "script embutido" que usa parâmetros posicionais, por exemplo

$ sudo sh -c 'echo "p0=$0" && echo "p1=$1" && echo "p2=$2" && echo "all=$@"' sh 1 2
p0=sh
p1=1
p2=2
all=1 2

Na verdade, quero executar meu script embutido usando o sudo --login. Mas então os parâmetros posicionais não funcionam. Existe uma maneira de fazê-los funcionar?

(Também estou interessado se o comportamento está documentado ou padronizado em algum lugar).

$ sudo --login sh -c 'echo "p0=$0" && echo "p1=$1" && echo "p2=$2" && echo "all=$@"' sh 1 2
p0=-bash
p1=
p2=
all=1 2

Versões de software:

$ sh --version
GNU bash, version 5.0.7(1)-release (x86_64-redhat-linux-gnu)
Copyright (C) 2019 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

$ sudo --version
Sudo version 1.8.27
Sudoers policy plugin version 1.8.27
Sudoers file grammar version 46
Sudoers I/O plugin version 1.8.27
shell-script sudo
  • 1 respostas
  • 494 Views
Martin Hope
sourcejedi
Asked: 2019-08-04 11:22:14 +0800 CST

O Linux realiza "troca oportunista" ou é um mito?

  • 14

Suponha que um programa peça alguma memória, mas não haja memória livre suficiente. Existem várias maneiras diferentes de o Linux responder. Uma resposta é selecionar alguma outra memória usada, que não foi acessada recentemente, e mover essa memória inativa para swap.

No entanto, vejo muitos artigos e comentários que vão além disso. Eles dizem que mesmo quando há uma grande quantidade de memória livre, o Linux às vezes decide escrever memória inativa para trocar. Gravar para swap com antecedência significa que, quando eventualmente quisermos usar essa memória, não teremos que esperar por uma gravação no disco. Eles dizem que esta é uma estratégia deliberada para otimizar o desempenho.

Eles estão certos? Ou isso é um mito? Cite sua(s) fonte(s).

Por favor, entenda esta questão usando as seguintes definições:

  • troca
  • memória livre - a memória "livre" exibida pelo comando free . Este é o MemFreevalor de /proc/meminfo. /proc/meminfoé um arquivo de texto virtual fornecido pelo kernel. Consulte proc(5) ou documentos do RHEL .
  • mesmo quando há uma grande quantidade de memória livre - para fins de argumento, imagine que há mais de 10% de memória livre.

Referências

Aqui estão alguns termos de pesquisa: linux "troca oportunista" OU (trocar "quando o sistema não tem nada melhor para fazer" OU "quando não tem nada melhor para fazer" OU "quando o sistema está ocioso" OU "durante o tempo ocioso")

No segundo resultado mais alto do Google, um usuário do StackExchange pergunta "Por que usar swap quando há espaço livre mais do que suficiente na RAM?" e copia os resultados do freecomando mostrando cerca de 20% de memória livre. Em resposta a esta pergunta específica, vejo que esta resposta é altamente votada:

O Linux começa a trocar antes que a RAM seja preenchida. Isso é feito para melhorar o desempenho e a capacidade de resposta:

  • O desempenho é aumentado porque às vezes a RAM é melhor usada para cache de disco do que para armazenar memória de programa. Portanto, é melhor trocar um programa que está inativo por um tempo e, em vez disso, manter os arquivos usados ​​com frequência no cache.

  • A capacidade de resposta é melhorada pela troca de páginas quando o sistema está ocioso, em vez de quando a memória está cheia e algum programa está sendo executado e solicitando mais RAM para concluir uma tarefa.

A troca diminui a velocidade do sistema, é claro - mas a alternativa à troca não é não trocar, é ter mais RAM ou usar menos RAM.

O primeiro resultado no Google foi marcado como uma duplicata da pergunta acima :-). Nesse caso, o autor da pergunta copiou os detalhes mostrando 7 MemFreeGB de 16 GB. A pergunta tem uma resposta aceita e votada:

Trocar apenas quando não há memória livre é apenas o caso se você definir swappinesscomo 0. Caso contrário, durante o tempo ocioso, o kernel fará a troca de memória. Ao fazer isso, os dados não são removidos da memória, mas uma cópia é feita na partição swap.

Isso significa que, se ocorrer uma situação de esgotamento da memória, ela não precisará gravar no disco imediatamente. Neste caso, o kernel pode apenas sobrescrever as páginas de memória que já foram trocadas, para as quais ele sabe que possui uma cópia dos dados.

O swappinessparâmetro basicamente apenas controla o quanto ele faz isso.

A outra citação não afirma explicitamente que os dados trocados também são retidos na memória. Mas parece que você preferiria essa abordagem, se estiver trocando mesmo quando tiver 20% de memória livre, e o motivo pelo qual está fazendo isso é melhorar o desempenho.

Até onde eu sei, o Linux suporta manter uma cópia dos mesmos dados na memória principal e no espaço de troca.

Também notei a alegação comum de que "troca oportunista" acontece "durante o tempo ocioso". Entendo que isso deve ajudar a me tranquilizar de que esse recurso geralmente é bom para o desempenho. Não incluo isso na minha definição acima, porque acho que já tem detalhes suficientes para fazer uma boa pergunta clara. Eu não quero tornar isso mais complicado do que precisa ser.

Motivação original

atop mostra `swout` (troca) quando tenho gigabytes de memória livre. Por quê?

Existem alguns relatórios como este, de Linux escrevendo para trocar quando há muita memória livre. A "troca oportunista" pode explicar esses relatórios. Ao mesmo tempo, pelo menos uma causa alternativa foi sugerida. Como primeiro passo para analisar as possíveis causas: O Linux alguma vez executa "troca oportunista" conforme definido acima?

No exemplo que relatei, a pergunta já foi respondida. A causa não foi a troca oportunista.

linux memory
  • 2 respostas
  • 2722 Views
Martin Hope
sourcejedi
Asked: 2019-07-29 11:32:42 +0800 CST

Por que o Debian executa "atd" como o usuário "daemon"?

  • 1
$ ps -aux|grep atd
daemon     800  0.0  0.1  27964  2228 ?        Ss   19:11   0:00 /usr/sbin/atd -f
alan-sy+  7042  0.0  0.0  12780   948 pts/0    S+   20:22   0:00 grep atd

$ /sbin/getpcaps 800
Capabilities for `800': = cap_chown,cap_dac_override,cap_dac_read_search,cap_fowner,cap_fsetid,cap_kill,cap_setgid,cap_setuid,cap_setpcap,cap_linux_immutable,cap_net_bind_service,cap_net_broadcast,cap_net_admin,cap_net_raw,cap_ipc_lock,cap_ipc_owner,cap_sys_module,cap_sys_rawio,cap_sys_chroot,cap_sys_ptrace,cap_sys_pacct,cap_sys_admin,cap_sys_boot,cap_sys_nice,cap_sys_resource,cap_sys_time,cap_sys_tty_config,cap_mknod,cap_lease,cap_audit_write,cap_audit_control,cap_setfcap,cap_mac_override,cap_mac_admin,cap_syslog,cap_wake_alarm,cap_block_suspend,cap_audit_read+p

$ ls -l /usr/sbin/atd
-rwxr-xr-x 1 root root 22536 Dec  8  2016 /usr/sbin/atd
# /lib/systemd/system/atd.service
[Unit]
Description=Deferred execution scheduler
Documentation=man:atd(8)

[Service]
ExecStart=/usr/sbin/atd -f
IgnoreSIGPIPE=false

[Install]
WantedBy=multi-user.target

atversão do pacote é 3.1.20-3.

Por que atdcair para o daemonusuário? Isso não acontece no Fedora Linux 30.

atdainda precisa manter todos os recursos, pois pode aceitar solicitações de qualquer usuário e executar tarefas como esse usuário, incluindo root.

O daemonusuário não deve ser usado. Os daemons individuais devem usar suas próprias contas de usuário, se necessário, para limitar os comprometimentos de segurança. ( Provavelmente não importa neste caso, porque o kernel não permite que usuários não-root manipulem processos que retêm qualquer capacidade de root).

debian users
  • 1 respostas
  • 940 Views
Martin Hope
sourcejedi
Asked: 2019-07-28 07:05:31 +0800 CST

A rede virtual virbr0 não pode mais se conectar à internet

  • 0

Eu tenho VMs no virt-manager. Normalmente, eles podem se conectar à internet. Essas VMs estão conectadas à minha rede virtual padrão, device virbr0. Para acessar a internet, a rede virtual é configurada como "encaminhamento de NAT".

Mas as VMs não podem mais se conectar à Internet. Eles podem pinghospedar, no endereço IP 192.168.122.1, que as VMs veem como seu roteador padrão. No entanto, ping google.comtrava por 5 segundos e depois retorna No address associated with hostname.

Eu pensei que isso poderia ser um problema com o firewall do host. Eu tentei systemctl stop firewallde agora sudo iptables-saveaparece como vazio, mas as VMs ainda não podem se conectar à Internet. Estranhamente, ping google.comagora é capaz de resolver um endereço IP, mas não mostra nenhuma resposta de ping, nem erros de ICMP. Ou seja:

PING google.com (216.58.198.174) 56(84) bytes of data.
^C
--- google.com ping statistics ---
44 packets transmitted, 0 received, 100% packet loss, time 44018ms

O que poderia ter dado errado? Como posso descobrir?

firewall libvirt
  • 1 respostas
  • 1461 Views
Martin Hope
sourcejedi
Asked: 2019-07-12 02:51:19 +0800 CST

Por que o tamanho das minhas solicitações de E/S está sendo limitado a cerca de 512K?

  • 4

Eu li /dev/sdausando um tamanho de bloco de 1MiB. O Linux parece limitar as solicitações de IO a512 KiBum tamanho médio de 512KiB. O que esta acontecendo aqui? Existe uma opção de configuração para este comportamento?

$ sudo dd iflag=direct if=/dev/sda bs=1M of=/dev/null status=progress
1545601024 bytes (1.5 GB, 1.4 GiB) copied, 10 s, 155 MB/s
1521+0 records in
1520+0 records out
...

Enquanto meu ddcomando está em execução, rareq-szé 512.

rareq-sz O tamanho médio (em kilobytes) das solicitações de leitura que foram emitidas para o dispositivo.

--man iostat

$ iostat -d -x 3
...
Device            r/s     w/s     rkB/s     wkB/s   rrqm/s   wrqm/s  %rrqm  %wrqm r_await w_await aqu-sz rareq-sz wareq-sz  svctm  %util
sda            309.00    0.00 158149.33      0.00     0.00     0.00   0.00   0.00    5.24    0.00   1.42   511.81     0.00   1.11  34.27
dm-0             0.00    0.00      0.00      0.00     0.00     0.00   0.00   0.00    0.00    0.00   0.00     0.00     0.00   0.00   0.00
dm-1             0.00    0.00      0.00      0.00     0.00     0.00   0.00   0.00    0.00    0.00   0.00     0.00     0.00   0.00   0.00
dm-2             0.00    0.00      0.00      0.00     0.00     0.00   0.00   0.00    0.00    0.00   0.00     0.00     0.00   0.00   0.00
dm-3             0.00    0.00      0.00      0.00     0.00     0.00   0.00   0.00    0.00    0.00   0.00     0.00     0.00   0.00   0.00
...

A versão do kernel é 5.1.15-300.fc30.x86_64. max_sectors_kbé 1280.

$ cd /sys/class/block/sda/queue
$ grep -H . max_sectors_kb max_hw_sectors_kb max_segments max_segment_size optimal_io_size logical_block_size chunk_sectors
max_sectors_kb:1280
max_hw_sectors_kb:32767
max_segments:168
max_segment_size:65536
optimal_io_size:0
logical_block_size:512
chunk_sectors:0

Por padrão eu uso o agendador de E/S BFQ. Eu também tentei repetir o teste depois echo 0 | sudo tee wbt_lat_usec. Eu também tentei repetir o teste depois echo mq-deadline|sudo tee scheduler. Os resultados permaneceram os mesmos.

Além do WBT, usei as configurações padrão para ambos os agendadores de E/S. Por exemplo, para mq-deadline, iosched/read_expireé 500, o que equivale a meio segundo.

Durante o último teste (mq-deadline, WBT desativado), executei btrace /dev/sda. Ele mostra que todas as solicitações foram divididas em duas metades desiguais:

  8,0    0     3090     5.516361551 15201  Q   R 6496256 + 2048 [dd]
  8,0    0     3091     5.516370559 15201  X   R 6496256 / 6497600 [dd]
  8,0    0     3092     5.516374414 15201  G   R 6496256 + 1344 [dd]
  8,0    0     3093     5.516376502 15201  I   R 6496256 + 1344 [dd]
  8,0    0     3094     5.516388293 15201  G   R 6497600 + 704 [dd]
  8,0    0     3095     5.516388891 15201  I   R 6497600 + 704 [dd]
  8,0    0     3096     5.516400193   733  D   R 6496256 + 1344 [kworker/0:1H]
  8,0    0     3097     5.516427886   733  D   R 6497600 + 704 [kworker/0:1H]
  8,0    0     3098     5.521033332     0  C   R 6496256 + 1344 [0]
  8,0    0     3099     5.523001591     0  C   R 6497600 + 704 [0]

X -- split Em [software] raid ou configurações de mapeador de dispositivo, um i/o de entrada pode abranger um dispositivo ou zona interna e precisa ser dividido em pedaços menores para serviço. Isso pode indicar um problema de desempenho devido a uma configuração ruim desse dispositivo raid/dm, mas também pode ser apenas parte das condições normais de limite. dm é notavelmente ruim nisso e clonará muitas E/S.

--man blkparse

Coisas para ignorar emiostat

Ignore o %utilnúmero. Está quebrado nesta versão. ( `dd` está rodando a toda velocidade, mas só vejo 20% de utilização do disco. Por quê? )

Eu pensei que aqu-sz também é afetado por ser baseado em %util . Embora eu achasse que isso significava que seria cerca de três vezes maior aqui (100/34,27).

Ignore o svtmnúmero. "Aviso! Não confie mais neste campo. Este campo será removido em uma versão futura do sysstat."

linux iostat
  • 1 respostas
  • 6010 Views
Martin Hope
sourcejedi
Asked: 2019-06-30 07:36:13 +0800 CST

O que são "shrss" / "shswp" no topo?

  • 1

MEM - Ocupação da memória.

Esta linha contém a quantidade total de memória física ( tot), [...] o tamanho residente da memória compartilhada incluindo tmpfs ( shmem), o tamanho residente da memória compartilhada ( shrss) a quantidade de memória compartilhada atualmente trocada ( shswp) [.. .]

A descrição de shrss/ shswpé muito vaga para mim. O que ele realmente cobre?

MEM | tot 7.7G | free 3.6G | cache 2.1G | dirty 0.3M | buff 258.1M | slab 306.4M | slrec 182.7M | shmem 257.5M | shrss 12.7M | shswp 0.0M | vmbal 0.0M | | hptot 0.0M | hpuse 0.0M |


$ rpm -q atop
atop-2.4.0-1.fc30.x86_64
memory atop
  • 1 respostas
  • 222 Views
Martin Hope
sourcejedi
Asked: 2019-06-29 00:35:00 +0800 CST

Documentation/cpu-load.txt diz que a carga da CPU do Linux *pode* ser enganosa. Existem mitigações novas (ou antigas) que não menciona?

  • 4

linux-5.1/Documentation/cpu-load.txt

[...]

Na maioria dos casos, as /proc/statinformações refletem a realidade de forma bastante próxima, no entanto, devido à natureza de como/quando o kernel coleta esses dados, às vezes não pode ser confiável.

[...]

Se imaginarmos o sistema com uma tarefa que periodicamente queima ciclos da seguinte maneira:

 time line between two timer interrupts
|--------------------------------------|
 ^                                    ^
 |_ something begins working          |
                                      |_ something goes to sleep
                                     (only to be awaken quite soon)

Na situação acima o sistema estará 0% carregado de acordo com o /proc/stat(já que a interrupção do timer sempre acontecerá quando o sistema estiver executando o handler inativo), mas na realidade a carga está próxima de 99%.

Este documento foi adicionado em 2007.

Por exemplo, o escalonador da CPU (por exemplo, função schedule()) foi modificado para medir o tempo toda vez que um processo transita de executável para em espera, se houver uma fonte de tempo suficientemente barata e confiável ( TSC confiável )?

O documento inclui um programa de exemplo, smallhog.c. De acordo com o encadeamento vinculado no LKML.org, ele conseguiu monopolizar a CPU, e o kernel relatou apenas alguns % de uso da CPU ou menos.

Eu tentei compilar e executá-lo no meu sistema atual. O kernel relatou o uso da CPU do programa como cerca de 80%. Assim, a situação parece ter mudado um pouco. Sabemos exatamente por que smallhog.cé menos eficaz neste sistema?

Eu uso o Fedora 30, kernel Linux v5.2.0-rc5 (aproximadamente), rodando no modo de 64 bits em "CPU Intel(R) Core(TM) i5-5300U".

  • lscpumostra constant_tsce nonstop_tsc.
  • journalctl -k | grep -iE "TSC|clocksource"parece que o kernel não encontra nenhum problema com o TSC.
  • cat /sys/devices/system/clocksource/clocksource0mostra "tsc".

Eu vejo que o tópico vinculado diz

Isso não é verdade em todas as arquiteturas, algumas fazem uma contabilidade mais precisa registrando os tempos nas transições de usuário/kernel/interrupção...
De fato. É certamente a maneira como as arquiteturas comuns de PC mais chatas fazem isso.

(Talvez os desenvolvimentos do hrtick possam afetar esse problema? Mesmo que apenas para torná-lo mais difícil de explorar. Ou mais fácil? Ou apenas exigir um código ligeiramente diferente para explorar?).

linux linux-kernel
  • 1 respostas
  • 487 Views
Martin Hope
sourcejedi
Asked: 2019-06-25 03:08:52 +0800 CST

Às vezes, a GUI responde lentamente - ou não responde - ou parece travar - mas o cursor ainda responde rapidamente. Como funciona o ponteiro do mouse?

  • 1

Como o cursor do mouse é implementado no sistema X.org X Windows? Especificamente, como devemos entender esses casos de erro:

1) Lembro-me às vezes de ver a GUI inteira ficar lenta e gaguejar ou parar. Mas o cursor do mouse ainda respondeu muito rapidamente. Por exemplo, isso pode acontecer se você usar muita memória e iniciar o "thrashing". (O sistema está continuamente trocando para o disco e voltando).

2) Outras vezes, os drivers gráficos do Linux costumavam travar. A tela pode estar congelada, corrompida ou algo intermediário. Mas às vezes o cursor do mouse ainda respondia sem problemas, em cima da tela congelada ou corrompida.

Também há dicas de alguns dos problemas (e soluções alternativas) que podem ocorrer com a corrupção do cursor do mouse:

i) Por que entrar no modo de texto e depois voltar ao modo gráfico corrige o desaparecimento do mouse?
ii) Gráficos escurecem, mas cursor do mouse não escurece

xorg x11
  • 1 respostas
  • 202 Views
Martin Hope
sourcejedi
Asked: 2019-06-21 07:17:14 +0800 CST

no topo morreu com status de saída 53

  • 0

eu estava correndo atop. Estava funcionando, mas depois morreu com o status de saída 53.

$ atop
$ echo $?
53

Isso é um bug no atop? Ou meu sistema está falhando?

Detalhes extras preventivos :-)

Eu verifiquei no log do kernel ( dmesg). Não encontrei nada especificamente alarmante, mas houve alguns erros. Veja abaixo.

Este laptop tem sido usado de forma confiável há meses. O kernel não está "contaminado", portanto, não houve mensagens WARN ou OOPS do kernel.

$ cat /proc/sys/kernel/tainted
0
$ rpm -q atop
atop-2.3.0-10.fc28.x86_64

$ uname -r  # My kernel version
5.1.6-200.fc29.x86_64

dmesgme lembrou que recentemente acordei o computador do modo de suspensão e iniciei atopantes que ele adormecesse.

dmesgtambém acontece mostra erros de USB e FAT desde que perdi a conexão com um pendrive mal conectado em algum momento durante isso.

Houve algumas mensagens de hardware durante a retomada da suspensão. Mas não tive nenhum problema visível ao usuário com sono/vigília nos últimos meses.

Há também alguns dmesgerros anteriores.


[40654.082396] PM: suspend exit
[40654.205336] Bluetooth: hci0: Intel Bluetooth firmware file: intel/ibt-hw-37.8.10-fw-1.10.3.11.e.bseq
[40654.517627] Bluetooth: hci0: unexpected event for opcode 0xfc2f
[40654.534651] Bluetooth: hci0: Intel firmware patch completed and activated
[40655.519592] e1000e 0000:00:19.0 eno1: Detected Hardware Unit Hang:
                 TDH                  <0>
                 TDT                  <10>
                 next_to_use          <10>
                 next_to_clean        <0>
               buffer_info[next_to_clean]:
                 time_stamp           <10267d16b>
                 next_to_watch        <1>
                 jiffies              <10267d740>
                 next_to_watch.status <0>
               MAC Status             <80000>
               PHY Status             <7949>
               PHY 1000BASE-T Status  <0>
               PHY Extended Status    <3000>
               PCI Status             <10>
[40656.239991] Process accounting resumed
[40656.318355] e1000e: eno1 NIC Link is Down
...
[41013.654127] usb 2-2: USB disconnect, device number 43
[41013.901953] usb 2-2: new full-speed USB device number 46 using xhci_hcd
[41020.270316] FAT-fs (sdb4): Directory bread(block 22704) failed
[41020.270322] FAT-fs (sdb4): Directory bread(block 22705) failed
[41020.270325] FAT-fs (sdb4): Directory bread(block 22706) failed
[41020.270328] FAT-fs (sdb4): Directory bread(block 22707) failed
[41020.270331] FAT-fs (sdb4): Directory bread(block 22708) failed
[41020.270333] FAT-fs (sdb4): Directory bread(block 22709) failed
[41020.270336] FAT-fs (sdb4): Directory bread(block 22710) failed
[41020.270339] FAT-fs (sdb4): Directory bread(block 22711) failed
[41020.270354] FAT-fs (sdb4): Directory bread(block 22704) failed
[41020.270357] FAT-fs (sdb4): Directory bread(block 22705) failed
[41029.558085] usb 2-2: device descriptor read/64, error -110
[41029.780057] usb 2-2: device descriptor read/64, error -71
[41029.996102] usb 2-2: new full-speed USB device number 47 using xhci_hcd
[41030.110057] usb 2-2: device descriptor read/64, error -71
[41030.332052] usb 2-2: device descriptor read/64, error -71
[41030.434046] usb usb2-port2: attempt power cycle
[41031.061973] usb 2-2: new full-speed USB device number 48 using xhci_hcd
[41031.062086] usb 2-2: Device not responding to setup address.
[41031.266212] usb 2-2: Device not responding to setup address.
[41031.474101] usb 2-2: device not accepting address 48, error -71
[41031.588100] usb 2-2: new full-speed USB device number 49 using xhci_hcd
[41031.588294] usb 2-2: Device not responding to setup address.
[41031.794271] usb 2-2: Device not responding to setup address.
[41032.002095] usb 2-2: device not accepting address 49, error -71
[41032.002202] usb usb2-port2: unable to enumerate USB device
[41070.004040] usb 2-1: new high-speed USB device number 50 using xhci_hcd
[41075.638042] usb 2-1: device descriptor read/64, error -110
[41075.877302] usb 2-1: New USB device found, idVendor=0718, idProduct=063d, bcdDevice= 1.00
[41075.877309] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[41075.877313] usb 2-1: Product: Nano Pro
[41075.877316] usb 2-1: Manufacturer: Imation
[41075.877319] usb 2-1: SerialNumber: 0703335B0AF92D86
[41075.881530] usb-storage 2-1:1.0: USB Mass Storage device detected
[41075.882899] scsi host3: usb-storage 2-1:1.0
[41077.004052] scsi 3:0:0:0: Direct-Access     Imation  Nano Pro         PMAP PQ: 0 ANSI: 4
[41077.005015] sd 3:0:0:0: Attached scsi generic sg1 type 0
[41078.366583] sd 3:0:0:0: [sdc] 15116736 512-byte logical blocks: (7.74 GB/7.21 GiB)
[41078.366732] sd 3:0:0:0: [sdc] Write Protect is off
[41078.366735] sd 3:0:0:0: [sdc] Mode Sense: 23 00 00 00
[41078.366935] sd 3:0:0:0: [sdc] No Caching mode page found
[41078.366939] sd 3:0:0:0: [sdc] Assuming drive cache: write through
[41078.389637]  sdc: sdc1 sdc2 sdc3 sdc4
[41078.392305] sd 3:0:0:0: [sdc] Attached SCSI removable disk

Erros de antes:

$ journalctl -o short-monotonic -k -p err
[   14.953318] alan-laptop kernel: i801_smbus 0000:00:1f.3: Failed to enable SMBus PCI device (-16)
[   15.919042] alan-laptop kernel: uvcvideo: Failed to query (GET_INFO) UVC control 3 on unit 1: -32 (exp. 1).
[   15.974276] alan-laptop kernel: Bluetooth: hci0: unexpected event for opcode 0xfc2f
[   19.812805] alan-laptop kernel: db_root: cannot open: /etc/target
[   35.219443] alan-laptop kernel: Bluetooth: hci0: unexpected event for opcode 0xfc2f
...
[19625.693967] alan-laptop kernel: Bluetooth: hci0: unexpected event for opcode 0xfc2f
[20606.292276] alan-laptop kernel: ACPI Error: Thread 3649118016 cannot release Mutex [PATM] acquired by thread 2284756800 (20190215/exmutex-382)
[20606.292282] alan-laptop kernel: ACPI Error: Aborting method \_SB.PCI0.LPCB.ECDV._Q66 due to previous error (AE_AML_NOT_OWNER) (20190215/psparse-53>
[20609.491788] alan-laptop kernel: Bluetooth: hci0: unexpected event for opcode 0xfc2f
[22006.616549] alan-laptop kernel: Bluetooth: hci0: unexpected event for opcode 0xfc2f
[28469.301081] alan-laptop kernel: Bluetooth: hci0: unexpected event for opcode 0xfc2f
[28472.604260] alan-laptop kernel: Bluetooth: hci0: command 0x0c56 tx timeout
[30297.940165] alan-laptop kernel: Bluetooth: hci0: unexpected event for opcode 0xfc2f
[30355.700904] alan-laptop kernel: mmc0: error -110 doing runtime resume
[30355.939525] alan-laptop kernel: Bluetooth: hci0: unexpected event for opcode 0xfc2f
exit-status atop
  • 1 respostas
  • 303 Views
Martin Hope
sourcejedi
Asked: 2019-06-19 08:02:43 +0800 CST

Minhas marcas d'água baixa e alta parecem mais altas do que o previsto por Documentation/sysctl/vm.txt

  • 1

Motivação

Eu escrevi uma resposta aqui: Qual é o tamanho das reservas de memória de "marca d'água" no meu sistema? A marca d'água "min" para a zona "Normal" apareceu como 31449 páginas. Isso é 125796 KiB - maior que o meu inteiro min_free_kbytes(67584).

A redefinição min_free_kbytesdefine a minmarca d'água desta zona para um nível esperado (por exemplo, 9582 páginas). Mas depois de um tempo, ele volta para o nível superior.

Estou confiante de que isso se deve a boost_watermark() . Aumenta as marcas d'água "min", "low" e "high" na mesma quantidade . watermark_boost_factor é 15000, então o aumento máximo deve ser 150% da marca d'água "alta" original...

Pergunta

Por que minha marca d'água "alta" é tão alta em primeiro lugar? (e também a marca d'água "baixa"):

Como meu watermark_scale_factor é 10, a distância entre "min", "low" e "high" deve ser de apenas 0,1% do tamanho da zona. Mas se eu olhar imediatamente após a redefinição min_free_kbytes, a diferença entre "min" e "low" é de 2% do tamanho da zona. Por quê?

(Também a diferença entre "baixo" e "alto" é de 0,2% do tamanho da zona. Portanto, isso também não é o que esperamos!).

O código que eu pensei que configura as marcas d'água está em __setup_per_zone_wmarks() .

Versão do kernel: 5.0.17-200.fc29.x86_64

De /proc/zoneinfo:

Node 0, zone   Normal
  pages free     74597
        min      9582
        low      34505
        high     36900
        spanned  1173504
        present  1173504
        managed  1140349

Não vejo essa enorme discrepância na zona DMA32. Também não parece que a marca d'água "min" seja aumentada na zona DMA32, talvez porque o kernel prefira alocar da zona "Normal".

Node 0, zone      DMA
...
  pages free     3961
        min      33
        low      41
        high     49
        spanned  4095
        present  3996
        managed  3961
...
Node 0, zone    DMA32
  pages free     334671
        min      7280
        low      9100
        high     10920
        spanned  1044480
        present  888973
        managed  866356
linux linux-kernel
  • 1 respostas
  • 1451 Views
Martin Hope
sourcejedi
Asked: 2019-06-18 07:32:37 +0800 CST

Por que meu min_free_kbytes é maior que o cálculo documentado (e maior que o máximo documentado)?

  • 1

Minha máquina tem cerca de 8 GB de RAM. Por que está min_free_kbytesdefinido para 67584? O comentário do código do kernel diz que eu deveria esperar ver min_free_kbytesdefinido para cerca de 11584. Ele também diz que o maior que ele definiria é 65536.

$ cat /proc/sys/vm/min_free_kbytes
67584

$ free -h
              total        used        free      shared  buff/cache   available
Mem:          7.7Gi       3.2Gi       615Mi       510Mi       3.9Gi       3.7Gi
Swap:         2.0Gi       707Mi       1.3Gi

$ grep -r min_free_kbytes /etc/sysctl*  # No manual configuration
$

$ uname -r  # My kernel version
5.0.17-200.fc29.x86_64

https://elixir.bootlin.com/linux/v5.0.17/source/mm/page_alloc.c#L7567

/*
 * Initialise min_free_kbytes.
 *
 * For small machines we want it small (128k min).  For large machines
 * we want it large (64MB max).  But it is not linear, because network
 * bandwidth does not increase linearly with machine size.  We use
 *
 *  min_free_kbytes = 4 * sqrt(lowmem_kbytes), for better accuracy:
 *  min_free_kbytes = sqrt(lowmem_kbytes * 16)
 *
 * which yields
 *
 * 16MB:    512k
 * 32MB:    724k
 * 64MB:    1024k
 * 128MB:   1448k
 * 256MB:   2048k
 * 512MB:   2896k
 * 1024MB:  4096k
 * 2048MB:  5792k
 * 4096MB:  8192k
 * 8192MB:  11584k
 * 16384MB: 16384k
 */
linux linux-kernel
  • 1 respostas
  • 1879 Views
Martin Hope
sourcejedi
Asked: 2019-06-16 04:21:00 +0800 CST

Por que a memória "Inevitável" é maior que a memória "Mlocked"?

  • 3

Por que a memória "Inevitável" é maior que a memória "Mlocked"?

$ cp /proc/meminfo meminfo
$ grep -iE "lock|evictable" meminfo
Unevictable:      161436 kB
Mlocked:           12772 kB

$ uname -r  # My kernel version
5.0.17-200.fc29.x86_64

Links em segundo plano na memória "Inevitável":

https://superuser.com/questions/1135809/odd-behaviour-with-unevictable-cache-linux-kernel/1449088#1449088

O kernel é compilado com suporte padrão para tmpfs. Não consigo ver nenhum ramfs(ou seja, nenhum sistema de arquivos ram que não pode ser trocado).

$ df -t ramfs
df: no file systems processed

$ cat meminfo
MemTotal:        8042664 kB
MemFree:         3733932 kB
MemAvailable:    5175960 kB
Buffers:          193684 kB
Cached:          1810672 kB
SwapCached:        14628 kB
Active:          2020900 kB
Inactive:        1644208 kB
Active(anon):    1127976 kB
Inactive(anon):   945940 kB
Active(file):     892924 kB
Inactive(file):   698268 kB
Unevictable:      161436 kB
Mlocked:           12772 kB
SwapTotal:       2097148 kB
SwapFree:        1465180 kB
Dirty:               312 kB
Writeback:             0 kB
AnonPages:       1813196 kB
Mapped:           539216 kB
Shmem:            408808 kB
KReclaimable:     160752 kB
Slab:             320584 kB
SReclaimable:     160752 kB
SUnreclaim:       159832 kB
KernelStack:       17792 kB
PageTables:        37288 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     6118480 kB
Committed_AS:   11410784 kB
VmallocTotal:   34359738367 kB
VmallocUsed:           0 kB
VmallocChunk:          0 kB
Percpu:             3424 kB
HardwareCorrupted:     0 kB
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
ShmemPmdMapped:        0 kB
CmaTotal:              0 kB
CmaFree:               0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
Hugetlb:               0 kB
DirectMap4k:      492084 kB
DirectMap2M:     7774208 kB
DirectMap1G:     1048576 kB
[alan@alan-laptop ~]$ 
linux memory
  • 1 respostas
  • 1695 Views
Martin Hope
sourcejedi
Asked: 2019-06-16 00:35:46 +0800 CST

Ativo(anon) + Inativo(anon) é mais do que AnonPages

  • 3
$ grep -iE 'anon' /proc/meminfo
Active(anon):    2962828 kB
Inactive(anon):  1039836 kB
AnonPages:       2599436 kB
AnonHugePages:         0 kB

Q1. Supondo que haja zero "páginas enormes", você sabe por que haveria uma diferença entre Active(anon) + Inactive(anon) e AnonPages?

Q2. Qual é o melhor resumo geral da memória anônima?

Eu olhei para man proc , mas não me diz muito:

Ativo(anon) %lu (desde Linux 2.6.28) [A ser documentado.]

Inativo(anon) %lu (desde Linux 2.6.28) [A ser documentado.]

[...]

AnonPages %lu (desde Linux 2.6.18):

Páginas não suportadas por arquivo mapeadas em tabelas de páginas de espaço do usuário.


$ uname -r  # My kernel version
5.0.17-200.fc29.x86_64

Eu vejo a mesma dicotomia em zoneinfo:

$ getconf PAGESIZE
4096

$ grep -C0 -i anon /proc/zoneinfo
      nr_inactive_anon 261105
      nr_active_anon 742227
--
      nr_isolated_anon 0
--
      nr_anon_pages 651405
--
      nr_anon_transparent_hugepages 0
--
      nr_zone_inactive_anon 0
      nr_zone_active_anon 0
--
      nr_zone_inactive_anon 59018
      nr_zone_active_anon 329082
--
      nr_zone_inactive_anon 202087
      nr_zone_active_anon 413145
$ grep -C0 -E "Node|zone[^_]" /proc/zoneinfo
Node 0, zone      DMA
--
Node 0, zone    DMA32
--
Node 0, zone   Normal
--
Node 0, zone  Movable
--
Node 0, zone   Device
$ cat /proc/meminfo
MemTotal:        8042664 kB
MemFree:         1697716 kB
MemAvailable:    3108172 kB
Buffers:          186476 kB
Cached:          3046440 kB
SwapCached:        14580 kB
Active:          3830020 kB
Inactive:        1738252 kB
Active(anon):    2965992 kB
Inactive(anon):  1044420 kB
Active(file):     864028 kB
Inactive(file):   693832 kB
Unevictable:      276372 kB
Mlocked:           13560 kB
SwapTotal:       2097148 kB
SwapFree:        1465040 kB
Dirty:              7376 kB
Writeback:             0 kB
AnonPages:       2602632 kB
Mapped:           696488 kB
Shmem:           1670792 kB
KReclaimable:     164272 kB
Slab:             327948 kB
SReclaimable:     164272 kB
SUnreclaim:       163676 kB
KernelStack:       21408 kB
PageTables:        42976 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     6118480 kB
Committed_AS:   14143048 kB
VmallocTotal:   34359738367 kB
VmallocUsed:           0 kB
VmallocChunk:          0 kB
Percpu:             3424 kB
HardwareCorrupted:     0 kB
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
ShmemPmdMapped:        0 kB
CmaTotal:              0 kB
CmaFree:               0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
Hugetlb:               0 kB
DirectMap4k:      492084 kB
DirectMap2M:     7774208 kB
DirectMap1G:     1048576 kB
linux memory
  • 1 respostas
  • 4882 Views
Martin Hope
sourcejedi
Asked: 2019-06-14 09:16:44 +0800 CST

O Firefox agora está mordendo o Google? Especificamente, domínios como adservice.google.com?

  • 0

Por exemplo, usando a extensão uMatrix para Firefox, pode-se ver que sites de terceiros geralmente extraem conteúdo de vários domínios de propriedade do Google. Esses domínios incluem adservice.google.com (e adservice.google.co.uk, etc).

adservice.google.com tem acesso a cookies definidos para google.com. Acho que a única razão técnica para preferir usar um subdomínio de google.com aqui é a capacidade de rastrear usuários que fizeram login no Google Apps.

(Acho que outros domínios de terceiros como googleads.g.doubleclick.com ou pagead2.googlesyndication.com não têm essa capacidade. Pesquisando, descobri que também existe um domínio googleadservices.com. Além disso, encontrei uma postagem mencionando isso o Doubleclick Floodlight estava adicionando uma chamada para adservices.google.com .)

Obviamente, esse "rastreamento" pode incluir a capacidade de configurar suas "preferências de publicidade" em sua Conta do Google. Mas se o seu navegador já estiver bloqueando com sucesso o rastreamento de terceiros, você não se importará se o seu navegador também estiver bloqueando o método que o Google usa para verificar se você desativou os anúncios "personalizados" :-).

O Firefox começou a "bloquear cookies de rastreadores de terceiros conhecidos no Firefox" . (Eu li em algum lugar que isso pode ser implementado de forma incremental, mas você definitivamente pode optar por participar).

Clicando na postagem do blog para a documentação detalhada, há atualmente uma lista de bloqueio padrão, mas você também pode optar por "Lista de bloqueio de nível 2. Bloqueia todos os rastreadores detectados. Alguns sites ou conteúdo podem não carregar corretamente". O padrão é "Lista de bloqueio de nível 1 (recomendado). Permite alguns rastreadores para que menos sites sejam interrompidos".

Pergunta : por padrão, o Firefox bloqueia o rastreamento de anúncios de terceiros fornecidos pelo Google por meio da Conta do Google em que você está conectado? Ou o Firefox foi forçado a permitir isso nas configurações padrão, para evitar quebrar algo?

É claro que isso pode entrar em uma "corrida armamentista", mas essa é a natureza do que o Firefox assumiu aqui. Portanto, entendo que quaisquer respostas só podem me informar sobre o status atual ; eles não podem dar garantias sobre o que o Google poderá fazer no futuro.

firefox privacy
  • 1 respostas
  • 474 Views
Martin Hope
sourcejedi
Asked: 2019-06-13 13:58:22 +0800 CST

cron mail no Ubuntu?

  • 3

No meu sistema Debian, tenho uma configuração tradicional de "correio" somente local. A instalação do pacote configurou alguns padrões sensatos. (Talvez tenha me solicitado a aceitar as configurações; não me lembro).

EDIT: No Debian 9 e acima, exim4-daemon-lightnão é mais instalado como parte da "tarefa padrão" do Debian (conjunto de pacotes).

A principal razão pela qual isso é útil é para erros em crontrabalhos (e também attrabalhos), que são entregues como "correio" local.

$ aptitude why exim4-daemon-light
i   exim4 Depends exim4-daemon-light | exim4-daemon-heavy | exim4-daemon-custom
$ aptitude why exim4
i   logrotate Depends    cron | anacron | cron-daemon          
i A cron      Recommends exim4 | postfix | mail-transport-agent

O Fedora Workstation não inclui uma configuração de correio funcional. Você deve optar por instalá-lo e provavelmente precisará fazer alguma configuração extra .

O Ubuntu é baseado no Debian. No Ubuntu Desktop, supondo que você instalou cron(ou at), você terá uma configuração de correio local (funcionando) para ele?

EDIT: Eu acho que no Debian 9 você já precisa escolher instalar um sistema de e-mail se quiser um, apesar das "Recomendas".

(Eu escrevi algumas coisas Ansible que configuram cron jobs em um sistema Debian. Espero mudar o sistema para o Ubuntu Desktop eventualmente. Então estou pensando nas suposições que meus scripts estão fazendo).

ubuntu email
  • 1 respostas
  • 752 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