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 / unix / 问题

All perguntas(unix)

Martin Hope
ReflectYourCharacter
Asked: 2025-03-27 21:50:30 +0800 CST

Como posso usar o lsblk para exibir todos os dispositivos, exceto meu dispositivo raiz/principal "sda", onde meu sistema de arquivos raiz é "/"?

  • 6

Eu não imaginaria que seria tão difícil obter esse resultado. É exatamente esse o resultado que desejo da minha configuração.

Eu uso LUKS (então meu sistema é criptografado) e LVM.

Não quero que sda ​​seja exibido porque é onde meu sistema de arquivos raiz vive, e é meu dispositivo raiz. A solução também deve funcionar para sistemas sem LUKS ou LVM, o que significa que deve lidar com todos os cenários.

Estou usando um Debian 12.x e quero exibir todos os dispositivos principais em um comando de linha, se possível, exceto meu dispositivo raiz , independentemente de ser um LVM, LUKS ou não, etc.

O comando deve ser flexível, e não quero usar especificações fixas *--vg-root, etc., se possível.

Comentário de @bertieb: Pela saída adicionada, parece que o ponto de montagem raiz está em um grupo de volumes em um volume criptografado no dispositivo que está se apresentando como sda -- o OP quer que todo o dispositivo e todos os 'dispositivos' de bloco associados sejam eliminados? Ou seja, remova o root vg E o swap, crypt, contendo a partição (sda3) mais outras partições e, finalmente, o dispositivo (sda)

E esse deve ser meu resultado, então todos os dispositivos principais sem, sda porque esse é meu dispositivo raiz, onde meu sistema de arquivos raiz está /, e sem que eu precise especificar detalhes, então posso usá-lo em outros dispositivos/sistemas também, seja LVM, LUKS, etc., sem precisar saber como o root é chamado, ou qual é o UUID, etc.

Não quero ver as partições, apenas os dispositivos principais sem dispositivo raiz, como neste comandolsblk -d -o NAME,SIZE --sort SIZE

Esta é a saída que preciso:

  • Sem sda (já que é o dispositivo raiz que contém meu sistema de arquivos raiz /)

  • Apenas os dispositivos principais são exibidos (independentemente de quantos existam)

  • Nenhuma partição incluída dos outros dispositivos

Não sei como explicar melhor.

RESULTADO QUE PRECISO:
NAME     SIZE
nvme0n1  238.5G

Minha configuração:

$ lsblk -d -o NAME,SIZE --sort SIZE
NAME      SIZE
sda      57,3G
nvme0n1 238,5G
$ lsblk -fs -o NAME
# ROOT DEVICE
sda1
`-sda
sda2
`-sda
desktop--vg-root
`-sdb3_crypt
  `-sda3
    `-sda
...
...
$ lsblk
NAME                 MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINTS
sda                    8:0    1  57,3G  0 disk  
├─sda1                 8:1    1   512M  0 part  /boot/efi
├─sda2                 8:2    1   488M  0 part  /boot
└─sda3                 8:3    1  56,3G  0 part  
  └─sdb3_crypt       254:0    0  56,3G  0 crypt 
    ├─desktop--vg-root   254:1    0  55,3G  0 lvm   /
    └─desktop--vg-swap_1 254:2    0   980M  0 lvm   [SWAP]
nvme0n1              259:0    0 238,5G  0 disk  
└─nvme0n1p1          259:1    0 238,5G  0 part  /user/backup

Eu não quero isso, por exemplo /dev/mapper/desktop--vg-root, sdb3_crypt, sda3não sda.

Mas aqui no exemplo sda, este é o dispositivo raiz, não preciso deste dispositivo na saída.

Infelizmente, ambas as respostas não atendem à minha solução.

MEUS DISPOSITIVOS, MINHA CONFIGURAÇÃO:

NAME           SIZE      
sda            57.3G     
|-sda1         512M      
|-sda2         488M      
`-sda3         56.3G     
`-sdb3_crypt   56.3G     
`-desktop--vg-swap_1980M      
nvme0n1        238.5G    
`-nvme0n1p1    238.5G 

RESULTADO QUE PRECISO:

NAME     SIZE
nvme0n1  238.5G
Configuração do sistema Debian, lsblk e outras informações:
Operating System: Debian GNU/Linux 12 (bookworm)  
Kernel: Linux 6.1.0-22-amd64
Architecture: x86-64

lsblk from util-linux 2.38.1

$ apt-get install --only-upgrade util-linux

util-linux is already the newest version (2.38.1-5+deb12u3)
De @terdon RESULTADO:

mylsblk(){ lsblk -o NAME,SIZE,MOUNTPOINT | awk '$NF!="/"{printf "%-15s%-10s\n", $1,$2}'; }

NAME           SIZE      
sda            57.3G     
|-sda1         512M      
|-sda2         488M      
`-sda3         56.3G     
`-sdb3_crypt   56.3G     
`-desktop--vg-swap_1980M      
nvme0n1        238.5G    
`-nvme0n1p1    238.5G 

$ lsblk -o NAME,SIZE,MOUNTPOINT

NAME                   SIZE MOUNTPOINT
sda                   57.3G 
|-sda1                 512M /boot/efi
|-sda2                 488M /boot
`-sda3                56.3G 
  `-sdb3_crypt        56.3G 
    |-desktop--vg-root    55.3G /
    `-desktop--vg-swap_1  980M [SWAP]
nvme0n1              238.5G 
$ lsblk -o NAME,SIZE,MOUNTPOINT | awk '$NF!="/"{printf "%-15s%-10s\n", $1,$2}';
NAME           SIZE      
sda            57.3G     
|-sda1         512M      
|-sda2         488M      
`-sda3         56.3G     
`-sdb3_crypt   56.3G     
`-desktop--vg-swap_1980M      
nvme0n1        238.5G

$ lsblk -o NAME,SIZE,MOUNTPOINT | awk '$NF=="/"'

|-desktop--vg-root 55.3G /

De Chris Davies RESULTADO:
Root partition: mapper/desktop--vg-root
Root device: 
NAME      SIZE
sda      57.3G
nvme0n1 238.5G
De @muru:

lsblk -d $(findmnt -no source /)

NAME         MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
desktop--vg-root 254:1    0 55,3G  0 lvm  /
debian
  • 2 respostas
  • 268 Views
Martin Hope
user171780
Asked: 2025-03-27 18:43:45 +0800 CST

Acessar rede Windows PC a partir de Linux PC

  • 5

Estou trabalhando em uma máquina Fedora 41. Se eu abrir o navegador de arquivos e na barra de endereço digitar, sftp://some_user@some_linux_PCele pede some_usera senha do e depois disso eu posso ler e gravar arquivos no outro PC Linux. Quero fazer o mesmo, mas onde o PC remoto tem o Windows 11. Isso é possível? Como?

Como sugerido aqui , tentei smb://some_user@some_windows_PC, mas não funciona. Tenho o samba instalado.

No momento, estou usando o Windows RDP com o Remmina, mas é muito desagradável trabalhar com uma conexão de vídeo e está machucando meus olhos.

Preciso habilitar algumas configurações no Windows primeiro?

linux
  • 2 respostas
  • 48 Views
Martin Hope
PersianGulf
Asked: 2025-03-27 03:18:39 +0800 CST

Rotear consulta DNS para meu túnel

  • 5

Tenho o seguinte sistema:

root@debian:~# dpkg -l systemd-resolved
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name             Version      Architecture Description
+++-================-============-============-=================================
ii  systemd-resolved 257.4-3      amd64        systemd DNS resolver
root@debian:~# cat /etc/issue
Debian GNU/Linux trixie/sid \n \l

root@debian:~# ls -l /etc/resolv.conf
lrwxrwxrwx 1 root root 39 Mar 26 20:21 /etc/resolv.conf -> ../run/systemd/resolve/stub-resolv.conf

root@debian:~# cat /run/systemd/resolve/stub-resolv.conf 
# This is /run/systemd/resolve/stub-resolv.conf managed by man:systemd-resolved(8).
# Do not edit.
#
# This file might be symlinked as /etc/resolv.conf. If you're looking at
# /etc/resolv.conf and seeing this text, you have followed the symlink.
#
# This is a dynamic resolv.conf file for connecting local clients to the
# internal DNS stub resolver of systemd-resolved. This file lists all
# configured search domains.
#
# Run "resolvectl status" to see details about the uplink DNS servers
# currently in use.
#
# Third party programs should typically not access this file directly, but only
# through the symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a
# different way, replace this symlink by a static file or a different symlink.
#
# See man:systemd-resolved.service(8) for details about the supported modes of
# operation for /etc/resolv.conf.

nameserver 127.0.0.53
options edns0 trust-ad
search .

Então eu instalei Zebedeeo tunneling e funcionou bem.
E quando eu configurei meu firefoxon localhost:81, o acesso aos sites foi filtrado.

root@debian:~# telnet localhost 81
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

Agora, eu quero usar DNS sobre localhost:81.
Como posso fazer isso?

ATUALIZAÇÃO: O meu resolvectlé:

root@debian:~# resolvectl status
Global
         Protocols: +LLMNR +mDNS -DNSOverTLS DNSSEC=no/unsupported
  resolv.conf mode: stub
       DNS Servers: 8.8.8.8

Link 2 (enp0s31f6)
    Current Scopes: LLMNR/IPv4 mDNS/IPv4
         Protocols: -DefaultRoute +LLMNR +mDNS -DNSOverTLS DNSSEC=no/unsupported
     Default Route: no

Link 3 (wlp58s0)
    Current Scopes: none
         Protocols: -DefaultRoute +LLMNR +mDNS -DNSOverTLS DNSSEC=no/unsupported
     Default Route: no

Link 5 (docker0)
    Current Scopes: none
         Protocols: -DefaultRoute +LLMNR +mDNS -DNSOverTLS DNSSEC=no/unsupported
     Default Route: no
systemd
  • 1 respostas
  • 19 Views
Martin Hope
ALZ
Asked: 2025-03-26 19:48:36 +0800 CST

Degradação de desempenho com rsync em contêiner ou cgroupv2 com limite de MEM

  • 6

Estou enfrentando uma queda significativa de desempenho ao usar o "rsync" para copiar arquivos pela rede de dentro de um contêiner ou cgroup com limites de memória no Oracle Linux 9.2. O problema ocorre com o Red Hat Compatible Kernel (RHCK) 5.14.0-284.11.1.el9_2.x86_64, mas não com o Unbreakable Enterprise Kernel (UEK) 5.15.0-101.103.2.1.el9uek.x86_64.

Detalhes: Configuração: Oracle Linux 9.2 com contêineres/cgroups com limites de memória. Problema: A velocidade de cópia de arquivos pela rede cai drasticamente quando os limites de memória são atingidos, especialmente quando o cache de páginas (arquivos inativos) fica cheio. Testes:

  • Usando "rsync" de dentro de um contêiner ou um cgroup para copiar dados de uma fonte remota.
  • Utilizando a replicação de dados PostgreSQL "pg_basebackup" entre dois contêineres PG (Líder vs. Réplica). Resultados:
  • As altas velocidades iniciais (~100 MBps) caem significativamente (para ~1 MBps) quando os limites de memória são atingidos.

Comandos para reproduzir:

  1. Crie um cgroup com limite de memória e execute o rsync: sudo systemd-run --scope --property=MemoryMax=1G rsync -av --progress rsync://<source_ip>/files /destination_path

  2. Teste com drop_caches no sistema operacional de hospedagem durante rsync lento: free && sync && echo 3 > /proc/sys/vm/drop_caches && free Após o cache ser descartado, o rsync fica rápido novamente até que o limite de MEM seja atingido novamente

Observações:

  • Quando o limite de memória do contêiner é atingido, o cache de páginas (arquivos inativos) fica cheio, levando à degradação da largura de banda da rede.
  • Isso afeta, por exemplo, a replicação do PostgreSQL, causando atraso e potencial perda de dados.

Alguém mais já passou por esse problema? Quaisquer dicas ou sugestões sobre como lidar com isso corretamente (ou talvez soluções alternativas) seriam muito apreciadas!

linux-kernel
  • 1 respostas
  • 17 Views
Martin Hope
ReflectYourCharacter
Asked: 2025-03-26 18:37:42 +0800 CST

Por que a lógica é tratada de forma diferente em rsync '--delete src/*', '--delete src/' e '--delete src/.'

  • 5

Quero copiar e sincronizar diretórios usando rsyncou --deleteem --delete-excludedum script bash ou shell em um sistema Debian.

O diretório não foi sincronizado inicialmente, o que significa que os arquivos foram excluídos na origem.

Verifiquei as duas postagens e depois percebi que era devido ao *.

Portanto, há diferenças entre src/, src/.esrc/*

Não se trata de arquivos ocultos ou algo do tipo.

  • rsync --delete não está funcionando

  • rsync --delete não remove todos os arquivos excluídos

  • rsync não apaga arquivos no diretório de destino

Por que a opção 1 é tratada de forma diferente das opções 2 e 3 em termos de lógica?

Opção 1 (não funciona):

rsync -avr src/* dst/ --delete-excluded

rsync -avr src/* dst/ --delete

Opção 2 (funcionando):

rsync -avr src/ dst/ --delete-excluded

rsync -avr src/ dst/ --delete

Opção 3 (funcionando):

rsync -avr src/. dst/ --delete-excluded

rsync -avr src/. dst/ --delete

Quando excluo arquivos e diretórios em src, eles não são excluídos/sincronizados com /*, mas são com /e /..

Do homem rsync:

--delete Isso diz ao rsync para excluir arquivos estranhos do lado receptor (aqueles que não estão no lado de envio), mas apenas para os diretórios que estão sendo sincronizados. Você deve ter pedido ao rsync para enviar o diretório inteiro (por exemplo, lqdirrq ou lqdir/rq) sem usar um curinga para o conteúdo do diretório (por exemplo, lqdir/*rq), pois o curinga é expandido pelo shell e o rsync recebe uma solicitação para transferir arquivos individuais, não o diretório pai dos arquivos. Arquivos que são excluídos da transferência também são excluídos de serem excluídos, a menos que você use a opção --delete-excluded ou marque as regras como correspondentes apenas no lado de envio (veja os modificadores include/exclude na seção FILTER RULES).

  • rsync(1) - página de manual do Linux

Não é basicamente a mesma coisa?

O que o rsync vê, porque o shell expande a/*, o rsync não conhece mais a pasta pai a/ – ele só recebe uma lista de arquivos/subdiretórios. Ele só compara os arquivos passados ​​com o destino, não com o estado geral. --delete não pode excluir de forma confiável porque o rsync não sabe o que deveria estar dentro de a/.

O diretório principal é especificado com src/, src/.e src/*está certo na lógica ou não, não entendi?

bash
  • 1 respostas
  • 55 Views
Martin Hope
Aleksey
Asked: 2025-03-26 15:27:26 +0800 CST

Como listar serviços que estão apenas na predefinição "desativado" via systemctl?

  • 7

Quero saber quais serviços não iniciam automaticamente com a inicialização do sistema porque PRESETo modo é disabledvia systemctl list-unit-files.

Ambos os comandos produzem uma mensagem de erro:

systemctl list-unit-files --no-pager --preset=disabled
systemctl list-unit-files --no-pager --preset-mode=disabled

Mensagem de erro:

Failed to parse preset mode: disabled.
systemd
  • 2 respostas
  • 71 Views
Martin Hope
MotorCheck
Asked: 2025-03-26 03:56:52 +0800 CST

Usando "less" como um pager com saída condicional e encaminhamento de entrada

  • 5

Como posso usar menos com os seguintes requisitos?

  1. Quero usar menos e rolar para cima e para baixo com as teclas de seta.
  2. Se toda a saída couber na tela, menos deverá sair automaticamente.
  3. Quando eu digito algo e pressiono Enter, less deve sair, e a entrada deve ser passada para leitura ou para uma variável, para que eu possa processá-la.
  4. Não quero usar :q, Ctrl- Cou comandos similares para sair.

Por exemplo, eu corro lsblk | lesse quero inserir um nome de dispositivo como sdx, que deve ser passado para uma variável para processamento posterior. Isso é possível? Gostaria de uma solução.

less
  • 1 respostas
  • 84 Views
Martin Hope
PRouleau
Asked: 2025-03-25 23:49:37 +0800 CST

"ulimit -c 0" é o mesmo que "ulimit -c unlimited"?

  • 5

Estou correto em assumir que os ulimit -c 0conjuntos de tamanho máximo dos arquivos principais criam um valor ilimitado (sem limites)?

Vi referência a, ulimit -c unlimitedmas help ulimitnão menciona 0 nem 'unlimited' no Bash, a distribuição Linux que testei (Rocky Linux 8.10, 9.5, Ubuntu) ou mesmo no Bash 5.2.37 rodando no macOS. No zsh 5.9 no macOS, run-help ulimitmenciona unlimitede hardmas não 0.

ulimit
  • 1 respostas
  • 48 Views
Martin Hope
Stewart
Asked: 2025-03-25 18:34:48 +0800 CST

Suporte a VNC no wayland (debian trixie)

  • 7

Estou planejando migrar para o Debian 13.

Atualmente, uso um dispositivo com tela sensível ao toque no Gnome no Xorg (não no Wayland) porque confio no VNC (especificamente no x11vnc) para monitorar sessões de área de trabalho remota.

Infelizmente, as telas sensíveis ao toque parecem estar com problemas no último mutter (gerenciador de janelas) com Xorg. Como esse problema afeta o Ubuntu 24.04 LTS e já tem 10 meses, não espero que seja corrigido em breve. Portanto, preciso migrar para o Wayland.

No entanto, x11vncnão funciona no Wayland. Tentei alguns outros: tigervnc-scraping-server, wayvnc, mas não consigo me conectar a nenhum deles.

Acho que minha melhor aposta é gnome-remote-desktopque anuncie suporte a VNC, mas parece ter sido criado com o VNC desabilitado. Posso dizer isso porque grdctlsó mostra opções para RDP:

$ grdctl --help
Usage: grdctl [OPTIONS...] COMMAND [SUBCOMMAND]
Comamnds: 
  rdp
    set-port
    enable
    disable 
    ...

Options: 
  --headless
  ...

Como posso fazer o VNC funcionar com o Wayland?

gnome
  • 1 respostas
  • 61 Views
Martin Hope
yael
Asked: 2025-03-25 12:58:00 +0800 CST

Como instalar pacotes DNF usando Yum quando os pacotes Python estão em um local diferente

  • 5

Temos um servidor RHEL 8.10, e o local padrão para pacotes Python é em /usr/lib/python3.6/site-packages/. Isso inclui, é claro, os pacotes DNF localizados em /usr/lib/python3.6/site-packages/dnf.

Instalamos uma nova versão do Python (3.8), e aqui estão os seguintes pacotes:

ls -ltr /usr/lib/python3.8/site-packages/
total 8
-rw-r--r-- 1 root root  126 Aug  6  2023 easy_install.py
drwxr-xr-x 2 root root   82 Mar 24 17:57 __pycache__
drwxr-xr-x 2 root root  170 Mar 24 17:57 setuptools-41.6.0.dist-info
drwxr-xr-x 5 root root   94 Mar 24 17:57 pkg_resources
drwxr-xr-x 6 root root 4096 Mar 24 17:57 setuptools
drwxr-xr-x 2 root root  130 Mar 24 17:57 pip-19.3.1.dist-info
drwxr-xr-x 5 root root   95 Mar 24 17:57 pip

Agora, queremos instalar os pacotes DNF, que devem estar localizados em /usr/lib/python3.8/site-packages/.

O problema é que quando tentamos instalar o DNF usando o seguinte comando:

yum localinstall python3-dnf-4.7.0-20.el8.noarch.rpm

Não está instalado no caminho /usr/lib/python3.8/site-packages/.

Qual é a abordagem correta para instalar os pacotes DNF em /usr/lib/python3.8/site-packages/?

Eu também tentei isso, mas não ajudou

PYTHONPATH=/usr/lib/python3.8/site-packages

yum localinstall  python3-dnf-4.7.0-20.el8.noarch.rpm
Last metadata expiration check: 0:30:53 ago on Mon 24 Mar 2025 06:35:20 PM UTC.
Package python3-dnf-4.7.0-20.el8.noarch is already installed.
Dependencies resolved.
Nothing to do.
Complete!
rhel
  • 1 respostas
  • 36 Views
Prev
Próximo

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