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

sdaau's questions

Martin Hope
sdaau
Asked: 2023-04-08 19:00:40 +0800 CST

Alterar /tmp (para aumentar o espaço disponível) no sistema ao vivo?

  • 9

Eu uso o Ubuntu 20.04, em uma máquina que possui uma unidade de sistema limitada.

Encontrei um script de construção que verifica o tamanho disponível em /tmp, e ele se recusa a ser executado se não encontrar 12 GB disponíveis, que não tenho na unidade do sistema.

No entanto, tenho outra unidade NTFS nesta máquina; como é NTFS, não posso usá-lo diretamente, mas posso criar uma imagem de disco.

Então, pensei em criar uma imagem ext3 de 16 GB na partição NTFS e montá-la como /tmp.

Então, eu tentei:

dd if=/dev/zero of=tmp16.img bs=16M count=0 seek=1024
mkfs.ext3 ./tmp16.img
fdisk -l ./tmp16.img
e2label ./tmp16.img tmp16

Até agora, tudo bem - tudo isso funcionou; mas depois tento montar:

$ sudo mount -o remount /path/to/ntfs/tmp16.img /tmp
mount: /tmp: mount point not mounted or bad option.

Ups, deve ser uma memória antiga minha de algum lugar, que /tmpé uma montagem separada - acontece que, nesta máquina, /tmpnão é uma montagem separada:

$ mount | grep tmp
udev on /dev type devtmpfs (rw,nosuid,noexec,relatime,size=3970256k,nr_inodes=992564,mode=755)
tmpfs on /run type tmpfs (rw,nosuid,nodev,noexec,relatime,size=802768k,mode=755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
tmpfs on /run/snapd/ns type tmpfs (rw,nosuid,nodev,noexec,relatime,size=802768k,mode=755)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=802764k,mode=700,uid=1000,gid=1000)
tmpfs on /run/netns type tmpfs (rw,nosuid,nodev,noexec,relatime,size=802768k,mode=755)

Bem ... existe alguma maneira de eu usar esta imagem de disco como /tmpnesta máquina - e existe uma maneira de fazer isso, sem ter que reiniciar a máquina (o que seria necessário, eu acho, se algo tiver que ser feito int /etc/fstab?)

Se não, existe alguma outra maneira de aproveitar o espaço NTFS disponível e usá-lo como /tmp- de preferência, sem precisar reiniciar a máquina?

hard-disk
  • 1 respostas
  • 240 Views
Martin Hope
sdaau
Asked: 2019-01-27 04:22:28 +0800 CST

O tmux não pediu a senha do sudo para um processo em sessão (autentique-se previamente)?

  • 6

Eu já vi [RESOLVIDO] Por que o sudo pede a senha do usuário na sessão tmux/ssh? · GitHub Gist , e parece que isso está lá por design, mas pensei em perguntar de qualquer maneira:

Digamos que eu use um comando como este:

tmux new-session -d 'sudo udevadm monitor -e' \; attach

Assim que tmuxinicia a nova sessão, ele pede a sudosenha, conforme o esperado. Mas então eu tento "enganar" tentando validar de sudoantemão:

$ sudo --validate
[sudo] password for user:
$ tmux new-session -d 'sudo udevadm monitor -e' \; attach

... e isso pede novamente uma sudosenha assim que tmuxinicia a sessão - mesmo que eu já tenha inserido a senha com sucesso anteriormente.

Então, existe uma maneira de iniciar uma tmuxsessão com (um) processo(s) sudo dentro, com apenas uma validação de senha sudo de antemão?

sudo tmux
  • 1 respostas
  • 1695 Views
Martin Hope
sdaau
Asked: 2018-01-07 03:24:30 +0800 CST

dirs -v não lista a pilha de diretórios?

  • 1

Eu vi Como uso os comandos pushd e popd? , e estou ciente de que com pushd <dir>eu empurraria <dir>para a pilha de diretórios, com popdeu abriria o diretório superior da pilha de diretórios - e com dirs -veu deveria estar visualizando/listando a pilha de diretórios; o post citado dá este exemplo:

$ pushd /home; pushd /var; pushd log

me@myhost:/home$ dirs -v
 0  /home
 1  /var
 2  /tmp

Então, eu estou em:

$ echo $(cat /etc/issue; lsb_release -idcr); uname -a; bash --version | head -1
Ubuntu 14.04.5 LTS \n \l Distributor ID: Ubuntu Description: Ubuntu 14.04.5 LTS Release: 14.04 Codename: trusty
Linux MyPC 4.4.0-104-generic #127~14.04.1-Ubuntu SMP Mon Dec 11 12:44:15 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
GNU bash, version 4.3.11(1)-release (x86_64-pc-linux-gnu)

E estou fazendo este teste em um bashterminal:

user@PC:~$ cd /tmp/
user@PC:tmp$ dirs -v                                            ## just lists, no directory stack
total 32
drwx------ 2 user user 4096 Jan  5 18:22 MozillaMailnews/
prwxrwxr-x 1 user user    0 Jan  6 11:54 SciTE.22933.in|
-rw------- 1 user user    0 Jan  4 12:07 config-err-pY6fcB
drwx------ 2 user user 4096 Jan  6 00:55 firefox_user/
-rw------- 1 user user  275 Jan  6 12:07 h
drwx------ 2 user user 4096 Jan  5 15:43 mozilla_user0/
drwx------ 2 user user 4096 Jan  6 02:11 mozilla_mozillaUser0/
drwx------ 3 user user 4096 Jan  5 10:28 sni-qt_vlc_19957-mFfsIO/
drwx------ 2 user user 4096 Jan  4 12:07 ssh-Ry3s5LesiOrb/
drwx------ 6 root          root          4096 Jan  4 12:07 systemd-generator.yBhsiB/

user@PC:tmp$ pushd /tmp/ssh-Ry3s5LesiOrb/
/tmp/ssh-Ry3s5LesiOrb /tmp
user@PC:ssh-Ry3s5LesiOrb$ dirs -v                               ## again, just lists, no directory stack
total 0
srw------- 1 user user 0 Jan  4 12:07 agent.1477=

user@PC:ssh-Ry3s5LesiOrb$ pushd /tmp/sni-qt_vlc_19957-mFfsIO/
/tmp/sni-qt_vlc_19957-mFfsIO /tmp/ssh-Ry3s5LesiOrb /tmp
user@PC:sni-qt_vlc_19957-mFfsIO$ dirs -v                        ## again, just lists, no directory stack
total 4
drwxrwxr-x 2 user user 4096 Jan  5 10:28 icons/

user@PC:sni-qt_vlc_19957-mFfsIO$ popd
/tmp/ssh-Ry3s5LesiOrb /tmp
user@PC:ssh-Ry3s5LesiOrb$ dirs -v                               ## again, just lists, no directory stack
total 0
srw------- 1 user user 0 Jan  4 12:07 agent.1477=
user@PC:ssh-Ry3s5LesiOrb$ popd
/tmp

Como você pode ver neste trecho, no teste eu nunca consegui dirs -vlistar/imprimir a pilha de diretórios - ele simplesmente lista os arquivos no diretório atual semelhante a ls?!

Então, como posso dirs -vmostrar/imprimir/listar a pilha de diretórios? Como alternativa, existe outro comando que eu possa usar para mostrar/imprimir/listar a pilha de diretórios em um bashterminal?

bash directory
  • 1 respostas
  • 702 Views
Martin Hope
sdaau
Asked: 2017-12-07 12:04:52 +0800 CST

liste o diretório recursivamente, com subcaminho e nós de folha (arquivos) primeiro (para renomear em lote parte dos nomes de arquivos)?

  • 0

Antes de declarar isso uma duplicata, considere que eu precisaria disso por um motivo específico: renomear em lote (ou copiar para um novo nome) de uma estrutura de árvore que contém uma string comum em nomes de arquivos e diretórios. Aqui está um exemplo (experimentado no Ubuntu 14.04, então ferramentas GNU):

cd /tmp
mkdir myproj
mkdir -p myproj/myproj_AA/myproj_BB
touch myproj/myproj_AA/myproj_BB/myproj_CC.dat
mkdir myproj/myproj_AA/myproj_DD
touch myproj/myproj_AA/myproj_DD/myproj_EE.dat
mkdir -p myproj/myproj_XX/myproj_YY
touch myproj/myproj_XX/myproj_YY/myproj_ZZ.dat
mkdir -p myproj/myproj_XX/myproj_WW
touch myproj/myproj_XX/myproj_WW/myproj_QQ.dat
tree myproj # to visualise

Esta estrutura de diretórios se treeparece com isto:

myproj
├── myproj_AA
│   ├── myproj_BB
│   │   └── myproj_CC.dat
│   └── myproj_DD
│       └── myproj_EE.dat
└── myproj_XX
    ├── myproj_WW
    │   └── myproj_QQ.dat
    └── myproj_YY
        └── myproj_ZZ.dat

6 directories, 4 files

Portanto, gostaria que todas as entradas em myproj/, incluindo myproja própria, fossem renomeadas em myTESTprojvez de myproj(onde quer que ocorra como um nome). Então, primeiro preciso obter uma listagem com caminhos relativos em relação ao diretório atual - e então preciso classificá-lo de forma que os filhos mais externos (acho que isso é equivalente a arquivos com os nomes de caminho relativos mais longos, mas não tenho certeza) são os primeiros (porque se eu renomear/mv o diretório primeiro e, em seguida, tentar renomear um arquivo nele, provavelmente usará o antigo nome do diretório como primeiro argumento e falhará, pois o nome agora foi alterado).

Estou ciente de que é ls -R --group-directories-first myproj/necessário usar lsrecursivamente e agrupar diretórios primeiro, mas sua saída é assim:

$ ls -R --group-directories-first myproj/
myproj/:
myproj_AA  myproj_XX

myproj/myproj_AA:
myproj_BB  myproj_DD

myproj/myproj_AA/myproj_BB:
myproj_CC.dat

myproj/myproj_AA/myproj_DD:
myproj_EE.dat

myproj/myproj_XX:
myproj_WW  myproj_YY

myproj/myproj_XX/myproj_WW:
myproj_QQ.dat

myproj/myproj_XX/myproj_YY:
myproj_ZZ.dat

... ou seja, não é uma lista simples com subcaminhos, que eu poderia facilmente alimentarwhile read f; do ...

O mais próximo que cheguei é usar find:

$ find myproj/
myproj/
myproj/myproj_AA
myproj/myproj_AA/myproj_DD
myproj/myproj_AA/myproj_DD/myproj_EE.dat
myproj/myproj_AA/myproj_BB
myproj/myproj_AA/myproj_BB/myproj_CC.dat
myproj/myproj_XX
myproj/myproj_XX/myproj_YY
myproj/myproj_XX/myproj_YY/myproj_ZZ.dat
myproj/myproj_XX/myproj_WW
myproj/myproj_XX/myproj_WW/myproj_QQ.dat

Então, aqui eu tenho uma lista simples de subcaminhos, no entanto, é classificado primeiro o nó raiz em direção aos nós folha - e eu preciso primeiro dos nós folha. E estou tentando coisas como find myproj/ | sort -n, mas parece não fazer diferença. Então se eu fizer algo como:

$ find myproj/ | sort -n | while read f; do mv -v $f $(echo $f | sed 's/myproj/myTESTproj/g'); done
‘myproj/’ -> ‘myTESTproj/’
mv: cannot stat ‘myproj/myproj_AA’: No such file or directory
mv: cannot stat ‘myproj/myproj_AA/myproj_BB’: No such file or directory
mv: cannot stat ‘myproj/myproj_AA/myproj_BB/myproj_CC.dat’: No such file or directory
...

... então a renomeação recursiva pretendida falha imediatamente, pois o nó raiz (diretório) é renomeado primeiro e, portanto, todas as outras referências a ele são inválidas.

Então, como posso obter uma listagem recursiva adequada de um subdiretório com nós de folha primeiro, para usá-lo em uma renomeação em lote como esta?

bash sed
  • 3 respostas
  • 1230 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