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

Yves's questions

Martin Hope
Yves
Asked: 2023-03-29 10:07:59 +0800 CST

Como excluir arquivos de log antigos com logrotate

  • 6

No meu CentOS, existe um Logstash, que gera muitos arquivos de log. Veja como os arquivos de log se parecem:

logstash-2023-03-09.log  logstash-2023-03-20.log                   logstash-deprecation-2023-03-08-1.log.gz  logstash-plain-2023-03-14-1.log.gz  logstash-plain-2023-03-25-1.log.gz
logstash-2023-03-10.log  logstash-2023-03-21.log                   logstash-deprecation-2023-03-09-1.log.gz  logstash-plain-2023-03-15-1.log.gz  logstash-plain-2023-03-26-1.log.gz
logstash-2023-03-11.log  logstash-2023-03-22.log                   logstash-deprecation-2023-03-10-1.log.gz  logstash-plain-2023-03-16-1.log.gz  logstash-plain-2023-03-27-1.log.gz
logstash-2023-03-12.log  logstash-2023-03-23.log                   logstash-deprecation.log                  logstash-plain-2023-03-17-1.log.gz  logstash-plain-2023-03-28-1.log.gz
logstash-2023-03-13.log  logstash-2023-03-24.log                   logstash-json.log                         logstash-plain-2023-03-18-1.log.gz  logstash-plain.log
logstash-2023-03-14.log  logstash-2023-03-25.log                   logstash-plain-2023-03-07-1.log.gz        logstash-plain-2023-03-19-1.log.gz  logstash-slowlog-json.log
logstash-2023-03-15.log  logstash-2023-03-26.log                   logstash-plain-2023-03-09-1.log.gz        logstash-plain-2023-03-20-1.log.gz  logstash-slowlog-plain.log
logstash-2023-03-16.log  logstash-2023-03-27.log                   logstash-plain-2023-03-10-1.log.gz        logstash-plain-2023-03-21-1.log.gz
logstash-2023-03-17.log  logstash-2023-03-28.log                   logstash-plain-2023-03-11-1.log.gz        logstash-plain-2023-03-22-1.log.gz
logstash-2023-03-18.log  logstash-2023-03-29.log                   logstash-plain-2023-03-12-1.log.gz        logstash-plain-2023-03-23-1.log.gz
logstash-2023-03-19.log  logstash-deprecation-2023-03-07-1.log.gz  logstash-plain-2023-03-13-1.log.gz        logstash-plain-2023-03-24-1.log.gz

Todos eles são gerados pelo Logstash.

Agora eu quero usar logrotateneles para remover os arquivos antigos.

Aqui está minha configuração de logrotate:

[envoy@mirror-dfh0splogv logstash]$ cat /etc/logrotate.d/logstash
/var/log/logstash/logstash-20*.log {
    daily
    rotate 15
    compress
    delaycompress
}

/var/log/logstash/logstash-plain*.log.gz {
    daily
    rotate 5
}

O que eu quero é bem simples. Para os logstash-20*.logarquivos, quero manter apenas os 15 arquivos mais recentes. E para o logstash-plain*.log.gz, quero manter apenas os 5 mais recentes.

No entanto, quando executo o comando logrotate --force /etc/logrotate.d/logstash, todos os nomes de arquivo são anexados .1e nenhum arquivo é removido:

logstash-2023-03-09.log.1  logstash-2023-03-20.log.1  logstash-deprecation-2023-03-07-1.log.gz  logstash-plain-2023-03-13-1.log.gz.1  logstash-plain-2023-03-24-1.log.gz.1
logstash-2023-03-10.log.1  logstash-2023-03-21.log.1  logstash-deprecation-2023-03-08-1.log.gz  logstash-plain-2023-03-14-1.log.gz.1  logstash-plain-2023-03-25-1.log.gz.1
logstash-2023-03-11.log.1  logstash-2023-03-22.log.1  logstash-deprecation-2023-03-09-1.log.gz  logstash-plain-2023-03-15-1.log.gz.1  logstash-plain-2023-03-26-1.log.gz.1
logstash-2023-03-12.log.1  logstash-2023-03-23.log.1  logstash-deprecation-2023-03-10-1.log.gz  logstash-plain-2023-03-16-1.log.gz.1  logstash-plain-2023-03-27-1.log.gz.1
logstash-2023-03-13.log.1  logstash-2023-03-24.log.1  logstash-deprecation.log                  logstash-plain-2023-03-17-1.log.gz.1  logstash-plain-2023-03-28-1.log.gz.1
logstash-2023-03-14.log.1  logstash-2023-03-25.log.1  logstash-json.log                         logstash-plain-2023-03-18-1.log.gz.1  logstash-plain.log
logstash-2023-03-15.log.1  logstash-2023-03-26.log.1  logstash-plain-2023-03-07-1.log.gz.1      logstash-plain-2023-03-19-1.log.gz.1  logstash-slowlog-json.log
logstash-2023-03-16.log.1  logstash-2023-03-27.log.1  logstash-plain-2023-03-09-1.log.gz.1      logstash-plain-2023-03-20-1.log.gz.1  logstash-slowlog-plain.log
logstash-2023-03-17.log.1  logstash-2023-03-28.log.1  logstash-plain-2023-03-10-1.log.gz.1      logstash-plain-2023-03-21-1.log.gz.1
logstash-2023-03-18.log.1  logstash-2023-03-29.log    logstash-plain-2023-03-11-1.log.gz.1      logstash-plain-2023-03-22-1.log.gz.1
logstash-2023-03-19.log.1  logstash-2023-03-29.log.1  logstash-plain-2023-03-12-1.log.gz.1      logstash-plain-2023-03-23-1.log.gz.1
logrotate
  • 1 respostas
  • 38 Views
Martin Hope
Yves
Asked: 2023-03-09 15:41:09 +0800 CST

Como imprimir o conteúdo entre a terceira e a quarta aspas duplas

  • 5

Eu tenho alguns logs de um serviço da web em uma máquina Linux. Os logs ficam assim:

{"log":"[2023-03-09T06:39:10.669Z] \"GET /server/prod?blank=true HTTP/1.1\" 200 - 0 874 1 1 \"-\" \"-\" \"aaad-bbb-ccc-dd-eeeee\" \"example.com:22213\" \"172.16.2.1:10080\"\n","stream":"stdout","time":"2023-03-09T06:39:11.935831787Z"}

Como você pode ver, existem algumas aspas duplas. Preciso imprimir o conteúdo entre a terceira e a quarta aspas duplas e entre a 11ª e a 12ª aspas duplas. O que significa que eu quero obter o conteúdo conforme abaixo:

"GET /server/prod?blank=true HTTP/1.1\"   "example.com:22213\"

Eu só me importo com o conteúdo. Eu não me importo "ou \.

text-processing
  • 3 respostas
  • 68 Views
Martin Hope
Yves
Asked: 2022-04-12 23:09:59 +0800 CST

Por que o grep gera "xterm-256color"

  • 1

Estou trabalhando com o Ubuntu 16.04.4 LTS. Eu usei o Mobaxterm para fazer login remotamente.

Quando eu executo grep, algo estranho aconteceu...

me@mymachine:/data/myserver/log/server$ grep -rnH 23423 ./*log
... # outputs of the grep command
me@mymachine:/data/myserver/log/server$ xterm-256colorxterm-256colorxterm-256colorxterm-256color

Eu não consigo entender por que eu tenho a última linha.

Parece que alguém digitou automaticamente xterm-256colorxterm-256colorxterm-256colorxterm-256colorapós executar o comando grep -rnH 23423 ./*log.

Eu tenho que excluí-lo ou digitar Ctrl-ctodas as vezes. É muito chato.

ubuntu grep
  • 1 respostas
  • 131 Views
Martin Hope
Yves
Asked: 2020-02-19 18:44:23 +0800 CST

Como evitar a duplicação ao anexar

  • 0

Estou escrevendo um script bash de configuração para construir algum ambiente no meu Ubuntu.

Uma coisa que precisa ser feita neste script bash é anexar uma função ~/.bashrcpara que ela possa ser executada automaticamente durante o log.

No entanto, por algum motivo, esse script pode ser executado várias vezes. Como resultado, a mesma função é anexada em ~/.bashrcmuitas vezes.

Existe uma maneira de resolver o problema?

bash shell-script
  • 1 respostas
  • 75 Views
Martin Hope
Yves
Asked: 2019-09-28 01:03:19 +0800 CST

Qual hardware é usado pelo buffer

  • -1

Eu sei que o cache é usado para armazenar dados para que solicitações futuras desses dados possam ser atendidas mais rapidamente. Normalmente temos três níveis de cache: L1, L2 e L3 na arquitetura atual do computador. Podemos ver o hardware de cache.

insira a descrição da imagem aqui

Além disso, ouvi falar do buffer, que é usado para organizar o fluxo de E/S. Mas não sei qual hardware é usado pelo buffer. É simplesmente a memória?

Por exemplo, no sistema Linux, free -mpode me mostrar o uso do cache/buff:

insira a descrição da imagem aqui

Se eu estiver certo, buff/cachemostra o tamanho do cache + o tamanho do buffer. Então o tamanho do cache vem do cache L1, L2 e L3, certo? Mas e o tamanho do buffer? Qual hardware é usado pelo buffer?

memory
  • 1 respostas
  • 121 Views
Martin Hope
Yves
Asked: 2019-07-03 23:44:04 +0800 CST

Como grep várias linhas

  • 1

Eu quero encontrar todos os arquivos, que contém duas linhas: abce def. Por exemplo,

xxx
111abc
yyy
222def333

Este arquivo deve ser capturado por grepporque contém abce def.

O que devo fazer? Já tentei grep -rE 'abc.*def' /dir/mas não funciona.

grep regular-expression
  • 3 respostas
  • 2091 Views
Martin Hope
Yves
Asked: 2019-06-07 18:50:39 +0800 CST

por que é `test.sh & | test.sh` errado

  • 3

Eu tenho um script bash chamado test.shcomo abaixo:

#!/bin/bash

while :
do
    echo xxx
    sleep 1
done

Não sei porque ./test.sh & | ./test.shme dá um erro: -bash: syntax error near unexpected token |', considerando que ./test.sh | ./test.she ./test.sh | ./test.sh &funciona.

bash pipe
  • 1 respostas
  • 216 Views
Martin Hope
Yves
Asked: 2019-06-07 01:25:56 +0800 CST

Como atribuir um processo em duas CPUs

  • 2

Eu tenho um servidor Ubuntu, que tem 16 CPUs. ( nproc --allme mostre 16)

Eu escrevi um script bash chamado test.shcomo abaixo:

#!/bin/bash


while :
do
    echo xxx
done

Eu executei: ./test.sh >/dev/null &.

Então eu usei o comando toppara monitorar os usos da CPU e descobri que uma CPU foi usada quase 100% por causa do processo test.sh:

6411 me       20   0   11240   3052   2852 R  93.8  0.0   0:11.71 test.sh
%Cpu5 : 96.7 us,  3.3 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st

Como podemos ver, o processo test.shfoi atribuído na 5ª CPU, que foi usada quase 100%.

É possível atribuir um processo pesado em mais de uma CPU para que possamos fazer mais uso das CPUs? Por que o sistema operacional não atribuiu o processo test.shem mais de uma CPU? É porque o processo test.shnão é pesado o suficiente ou devemos fazer alguma configuração para o sistema operacional fazer isso?

cpu top
  • 2 respostas
  • 3603 Views
Martin Hope
Yves
Asked: 2019-03-15 23:46:29 +0800 CST

Como manter o kern.log fora do syslog

  • 0

Estou trabalhando no Ubuntu 16.04.3 e descobri que poderia obter o log do kernel de dois lugares: /var/log/kern.loge /var/log/syslog. /var/log/syslogcontém outros logs, mas consegui encontrar /var/log/kern.lognele.

Então, é possível manter o kern.logfora do syslog? Quero dizer, eu quero remover o kern.logdo syslog?

Eu tentei remover o module(load="imklog")do , /etc/rsyslog.confmas isso removerá todo o log do kernel do kern.loge do syslog, enquanto o que eu preciso é não tocar no kern.log, apenas remover o log do kernel do syslog.

logs rsyslog
  • 1 respostas
  • 1797 Views
Martin Hope
Yves
Asked: 2019-03-11 19:18:45 +0800 CST

gato não mostra nada

  • 8

Minha equipe está trabalhando em um ambiente de CI.

Um koarquivo chamado x.ko, é sempre gerado a partir do ambiente de CI em um horário regular todos os dias e seu tipo é ELF 64-bit LSB relocatable.

Hoje, descobri que o tipo desse koarquivo se tornou data.

Estou tentando descobrir o motivo.

Eu tento cateste koarquivo, mas a saída não é nada. Então, eu tento cat -et x.ko, e isso me dá muito ^@^@^@^@^@^@^@^@^@^@^@^@^@^@...

Você sabe o que ^@^@^@^@^@^@^@^@^@significa?

files cat
  • 2 respostas
  • 4220 Views
Martin Hope
Yves
Asked: 2019-01-23 22:14:01 +0800 CST

Como um log pode ser impresso para ser exibido durante o desligamento, reinicialização ou inicialização?

  • 1

Como todos sabemos, quando reinicializamos, desligamos ou iniciamos um sistema, alguma mensagem será impressa na tela, aqui está uma captura:

insira a descrição da imagem aqui

Meu sistema é o Ubuntu 16.04, eu sei que essas mensagens de log acima vêm do systemd.

No meu entendimento, um processo de usuário normal pode imprimir coisas na tela porque o sistema fornece três descritores de arquivo: 0, 1 e 2. Podemos encontrá-los em /proc/<PID>/fd/. Aqui está um exemplo:

root@X86-Xenial-6:~# ls /proc/3467/fd
0  1  2  255

O 3467é um programa hello-world, não sei o que 225é mas sei disso 0, 1e 2são entrada padrão, saída padrão e erro padrão.

Então, eu tenho uma pergunta: quando o sistema começa a desligar, reiniciar ou inicializar, o processo do usuário não foi criado ou foi destruído, o que significa que /proc/não existe mais, neste caso, 0e 1não 2existe .

Então, por que a mensagem vinda do systemd pode ser impressa na tela? O kernel pode imprimir coisas porque controla a tela imediatamente, mas não acho que o systemd pertença ao kernel, então como ele poderia imprimir coisas na tela também? Que tipo de função ou API é usada?

debian ubuntu
  • 2 respostas
  • 1139 Views
Martin Hope
Yves
Asked: 2018-11-29 01:44:38 +0800 CST

Quais usuários são necessários no Unix/Linux?

  • 2

Eu quero saber quais usuários são necessários para um sistema Unix/Linux. Encontrei um documento que me dizia que havia três usuários necessários: root, bin e daemon.

Para o usuário bin e o daemon do usuário, ainda não consigo entender para que eles são usados. Aqui está como o doc os descreveu:

Observações: O ID de usuário/ID de grupo do compartimento está incluído para compatibilidade com aplicativos legados. Novos aplicativos não devem mais usar o ID do usuário do compartimento/ID do grupo.
O daemon User ID/Group ID foi usado como um User ID/Group ID sem privilégios para os daemons executarem a fim de limitar seu acesso ao sistema. Geralmente, os daemons agora devem ser executados sob IDs de usuário/grupos individuais para particionar mais daemons uns dos outros.

linux users
  • 1 respostas
  • 342 Views
Martin Hope
Yves
Asked: 2018-11-28 00:29:49 +0800 CST

Por que um serviço não pode ser inicializado na inicialização

  • 1

Eu quero usar systemdpara fazer uma inicialização de serviço na inicialização. No entanto, recebo a mensagem dizendo que o serviço está inativo (morto):

root@mdchost:/lib/systemd/system# systemctl status mdc_freespace_vldy_fusion_node.service
● mdc_freespace_vldy_fusion_node.service - MDC Freespace Vldy Fusion Node
   Loaded: loaded (/lib/systemd/system/mdc_freespace_vldy_fusion_node.service; enabled; vendor preset:
   Active: inactive (dead) since Sat 2018-08-04 01:06:48 BST; 5min ago
  Process: 3841 ExecStartPost=/bin/bash /usr/bin/mdc/base/set_limit.sh FUSI mdc_freespace_vldy_fusion_
  Process: 3838 ExecStart=/usr/bin/mdc/fusion/mdc_freespace_vldy_fusion_node (code=exited, status=0/SU
  Process: 3090 ExecStartPre=/opt/x86/ros/kinetic/bin/rosparam load /etc/mdc/fusion/kinematics_dynamic
  Process: 2266 ExecStartPre=/opt/x86/ros/kinetic/bin/rosparam load /etc/mdc/fusion/freespace_vldy_fus
 Main PID: 3838 (code=exited, status=0/SUCCESS)

Mas eu posso fazer a inicialização manualmente executando o comando:

systemctl restart mdc_freespace_vldy_fusion_node.service

E agora o status do serviço se torna ativo (em execução):

root@mdchost:/lib/systemd/system# systemctl status mdc_freespace_vldy_fusion_node.service
● mdc_freespace_vldy_fusion_node.service - MDC Freespace Vldy Fusion Node
   Loaded: loaded (/lib/systemd/system/mdc_freespace_vldy_fusion_node.service; enabled; vendor preset:
   Active: active (running) since Sat 2018-08-04 01:29:31 BST; 1s ago
  Process: 2065 ExecStartPost=/bin/bash /usr/bin/mdc/base/set_limit.sh FUSI mdc_freespace_vldy_fusion_
  Process: 2017 ExecStartPre=/opt/x86/ros/kinetic/bin/rosparam load /etc/mdc/fusion/kinematics_dynamic
  Process: 1991 ExecStartPre=/opt/x86/ros/kinetic/bin/rosparam load /etc/mdc/fusion/freespace_vldy_fus
 Main PID: 2063 (mdc_freespace_v)
    Tasks: 6
   Memory: 3.5M
      CPU: 469ms
   CGroup: /system.slice/mdc_freespace_vldy_fusion_node.service
           └─2063 /usr/bin/mdc/fusion/mdc_freespace_vldy_fusion_node

Aqui está o meu arquivo de serviço:

[Unit]
Description=My Node
Requires=start_roscore.service
After=start_roscore.service

[Service]
User=mdc
Group=mdc

Type=simple
KillMode=proces
Restart=on-failure
RestartSec=16
StartLimitInterval=0

EnvironmentFile=/usr/bin/mdc/base/env.cfg
EnvironmentFile=/usr/bin/mdc/ros/ros.cfg

ExecStartPre=/opt/x86/ros/kinetic/bin/rosparam load /etc/mdc/fusion/freespace_vldy_fusion_config.yaml
ExecStartPre=/opt/x86/ros/kinetic/bin/rosparam load /etc/mdc/fusion/kinematics_dynamics.yaml

ExecStart=/usr/bin/mdc/fusion/mdc_freespace_vldy_fusion_node
ExecReload=/usr/bin/mdc/fusion/mdc_freespace_vldy_fusion_node

ExecStartPost=/bin/bash /usr/bin/mdc/base/set_limit.sh FUSI mdc_freespace_vldy_fusion_node
systemd startup
  • 1 respostas
  • 151 Views
Martin Hope
Yves
Asked: 2018-09-26 19:11:01 +0800 CST

É possível listar todos os arquivos que são abertos por um processo [duplicado]

  • 2
Essa pergunta já tem respostas aqui :
Listar os arquivos acessados ​​por um programa (7 respostas)
Fechado há 4 anos .

Eu sei que lsofpode listar todos os arquivos que estão sendo abertos por processos em execução.

Se houver um processo, que abrirá um arquivo e será encerrado, não acho que possa capturar o arquivo que é aberto pelo processo lsofporque o processo foi encerrado muito rápido.

Então, estou procurando por uma ferramenta (chamada XXX), permitindo-me fazer o seguinte:

XXX ./my_process args

E a saída do comando deve ser assim:

file1
file2
file3

O que significa que my_processabre três arquivos: file1, file2e file3durante a execução.

files lsof
  • 1 respostas
  • 1462 Views
Martin Hope
Yves
Asked: 2018-09-18 18:46:26 +0800 CST

cgroups: É possível limitar o uso da CPU pelo nome do processo em vez de pelo pid

  • 1

Como sabemos, cgroupspode limitar o uso da CPU de processos. Aqui está um exemplo:

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND          
30142 root      20   0  104m 2520 1024 R 99.7  0.1  14:38.97 sh

Tenho um processo, cujo pid é 30142. Posso limitá-lo conforme abaixo:

mkdir -p /sys/fs/cgroup/memory/foo
echo 1048576 >  /cgroup/memory/foo/memory.limit_in_bytes
echo 30142 > /cgroup/memory/foo/tasks

Como vemos, se eu quiser limitar um processo, primeiro tenho que executá-lo e depois posso limitá-lo de acordo com seu pid. É possível limitar um processo de acordo com seu nome? É possível limitar um processo antes de executá-lo?

cpu ram
  • 1 respostas
  • 1357 Views
Martin Hope
Yves
Asked: 2018-09-14 18:42:13 +0800 CST

free -m: tamanho livre reduzido por causa do cache/buff

  • 1

Estou usando a função rosbagde ROS. rosbagpode gravar muitos dados de outros nós ROS. Em uma palavra, ele irá gerar um arquivo enorme, como um arquivo de 200 MB.

Após gerar tal arquivo, descobri que o buff/cache do sistema aumenta muito. Segue minha captura:

Antes rosbag: insira a descrição da imagem aqui

Depois rosbag: insira a descrição da imagem aqui

Você pode ver que depois rosbagde , buff/cacheaumentou muito, ao mesmo tempo, freediminuiu de 19983 para 10896.

Eu não consigo entender. Pelo que entendi, freesignifica o tamanho livre da RAM, buff/cacheé o tamanho do cache. Por que o cache pode usar o tamanho da RAM? E também descobri que se eu excluísse o arquivo gerado por rosbag, o buff/cachevoltaria de 17999 para 8925. Essa é a ação do sistema? Quando será o buff/cacheaumento? Quando vai buff/cachediminuir?

files cache
  • 1 respostas
  • 511 Views
Martin Hope
Yves
Asked: 2018-09-05 23:19:11 +0800 CST

Qual é a diferença entre mount e mount -o loop

  • 41

Eu tenho um arquivo iso chamado ubuntu.iso.

Eu posso mountcom o comando: mount ubuntu.iso /mnt. Depois de montá-lo, posso vê-lo fora do comando df -h: /dev/loop0 825M 825M 0 100% /mnt.

No entanto, se eu executar o comando mount -o loop ubuntu.iso /mnt, obterei o mesmo resultado.

Como eu sei, o dispositivo de loop nos permite visitar o arquivo iso como um dispositivo, acho que é por isso que adicionamos a opção -o loop. Mas eu posso visitar meu arquivo iso mesmo se eu apenas executar mount ubuntu.iso /mnt.

Então não consigo ver a diferença entre mounte mount -o loop.

mount loop-device
  • 3 respostas
  • 45958 Views
Martin Hope
Yves
Asked: 2018-08-23 22:17:18 +0800 CST

como remontar um diretório inicial de um usuário específico em uma partição

  • 2

Meu sistema é o Ubuntu e há três usuários nele. Além disso, tenho algumas partições: /dev/sda1, /dev/sda2e /dev/sdc1.

Por enquanto, todo o /homediretório está montado no /dev/sda2, toda a raiz /está montada no /dev/sda1.

Minha pergunta é: é possível montar o diretório home de um dos três usuários, como montar /home/user1no /dev/sdc1? Como fazer isso?

mount users
  • 1 respostas
  • 2013 Views
Martin Hope
Yves
Asked: 2018-08-08 17:12:52 +0800 CST

Por que não posso que empurrou

  • 1

Eu tenho usado pushde popdpor um longo tempo enquanto escrevia o script bash. Mas hoje quando executo which pushd, não recebo nada como saída. Eu não consigo entender isso. Eu estava sempre pensando que pushdé simplesmente um comando, assim como cd, lsetc.

Então por que não which pushdme dá nada?

which pushd
  • 1 respostas
  • 1114 Views
Martin Hope
Yves
Asked: 2018-08-06 19:27:23 +0800 CST

É possível dar permissão a um usuário via sudo apenas para um script Bash específico? [duplicado]

  • 2
Essa pergunta já tem resposta aqui :
Permitir que determinados convidados executem determinados comandos (1 resposta)
Fechado há 4 anos .

Sou administrador do meu Ubuntu 16.04.3.

Neste sistema, existem muitos usuários, que estão na lista de sudoers. Estou pensando se posso fazer uma configuração como abaixo:

Eu gostaria de criar um script Bash para cada usuário, cada usuário não pode fazer nada além de executar este script.

Em uma palavra, cada usuário pode me dizer o que quer fazer, e eu coloco isso em um script Bash. Quando eles fazem login, eles não podem fazer nada além de executar este script.

permissions users
  • 1 respostas
  • 1065 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