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

BlackCrystal's questions

Martin Hope
BlackCrystal
Asked: 2022-10-04 23:25:38 +0800 CST

Como fazer backup da configuração do horário de verão antes de aplicar a nova atualização?

  • 3

para verificar a configuração "Daylight Saving Time" para um fuso horário, podemos usar este comando: zdump -v <timezone>
No entanto, às vezes, a política de um país muda. novas atualizações podem ser baixadas e aplicadas por este comando: zic <timezone>
Por exemplo (este é apenas um exemplo, a Austrália não teve alterações):

  [root@test DST]# zdump -v Australia/Canberra | grep '2023'
  Australia/Canberra  Sat Apr  1 15:59:59 2023 UTC = Sun Apr  2 02:59:59 2023 AEDT isdst=1 gmtoff=39600
  Australia/Canberra  Sat Apr  1 16:00:00 2023 UTC = Sun Apr  2 02:00:00 2023 AEST isdst=0 gmtoff=36000 
  Australia/Canberra  Sat Sep 30 15:59:59 2023 UTC = Sun Oct  1 01:59:59 2023 AEST isdst=0 gmtoff=36000
  Australia/Canberra  Sat Sep 30 16:00:00 2023 UTC = Sun Oct  1 03:00:00 2023 AEDT isdst=1 gmtoff=39600
  [root@test DST]# zic australasia
  [root@test DST]# zdump -v Australia/Canberra | grep '2023'
  Australia/Canberra  Sat Apr  2 16:59:59 2023 UTC = Sun Apr  2 02:59:59 2023 AEDT isdst=1 gmtoff=39600
  Australia/Canberra  Sat Apr  2 17:00:00 2023 UTC = Sun Apr  2 02:00:00 2023 AEST isdst=0 gmtoff=36000
  Australia/Canberra  Sat Sep 29 16:59:59 2023 UTC = Sun Oct  1 01:59:59 2023 AEST isdst=0 gmtoff=36000
  Australia/Canberra  Sat Sep 29 17:00:00 2023 UTC = Sun Oct  1 03:00:00 2023 AEDT isdst=1 gmtoff=39600

e se houvesse um erro e eu quisesse restaurar as alterações? existe alguma maneira de fazer backup da configuração anterior e aplicar novas alterações? se é possível fazer backup, como posso restaurá-lo?

centos backup
  • 1 respostas
  • 50 Views
Martin Hope
BlackCrystal
Asked: 2022-05-24 21:17:02 +0800 CST

Como obter valor após o jogo com ou sem espaço?

  • 2

Eu tenho um script bash que possui uma matriz de nomes de banco de dados, conecte-se a cada um deles e execute um procedimento armazenado neles. Eu preciso obter valores da saída do procedimento armazenado e usá-los no restante do script. muitas das saídas são assim:

  CONDBAT= 10000 MDBAT= 400 ADBAT= 143 QUEDBAT= 167924 INADBAT= 0  

então notei que alguns bancos de dados têm saída diferente sem espaço:

  CONDBAT=4000 MDBAT=1200 ADBAT=263 QUEDBAT=7924 INADBAT=0  

Eu preciso pegar o valor depois do QUEDBAT e armazená-lo como uma variável. meu problema é que não consigo obter o valor para ambas as saídas. Eu tentei muitos comandos. por exemplo:

  grep -Eo 'QUEDBAT=([[:space:]]+[^[:space:]]+){1}'
  grep -vE -e 'QUEDBAT=[[:space:]]{4}' -e '^[^[:space:]]*$'
  grep -oP '(?<=QUEDBAT\=)(\s+)?\K([^ ]*)'  

mas eles não retornarão o valor para ambas as saídas. como posso obter o valor após o QUEDBAT ignorando qualquer espaço?

Não consigo escrever scripts separados porque preciso de todas as saídas para todos os bancos de dados em um script. toda vez que eu executo o procedimento armazenado, os valores serão alterados, então você não pode ter certeza de que os valores de cada parte terão 3 ou 4 dígitos. e também não consigo obter o que está entre =e ADBATporque às vezes a ordem da saída não será a mesma.

bash shell-script
  • 5 respostas
  • 231 Views
Martin Hope
BlackCrystal
Asked: 2022-03-17 03:59:30 +0800 CST

Como verificar se o DST (Daylight Saving Time) está inativo nas diferentes versões do CentOS?

  • 0

Tenho poucos servidores com CentOS 7 e 6 como SO. Anteriormente, o horário era alterado duas vezes por ano para o horário de verão e o sistema operacional fazia isso automaticamente em cada servidor.
agora, de repente, foi aprovada uma lei que mudou a política do horário de verão. Eu queria ter certeza de que o horário de verão está desabilitado nesses servidores para que o sistema operacional não mude o horário como antes. Eu quero que essas mudanças aconteçam com base em nosso servidor de horário central.
no CentOS 7 posso verificar se o DST não está ativado por este comando: timedatectl status
output:DST active: no

mas não posso confirmar com segurança no CentOS 6 que o horário de verão está desativado. Procurei em todos os lugares, mas não consegui encontrar um comando nem um arquivo para mostrar isso. então como verificar se o horário de verão está inativo no CentOS 6?

linux centos
  • 1 respostas
  • 1439 Views
Martin Hope
BlackCrystal
Asked: 2020-02-08 22:25:27 +0800 CST

substituir espaço por vírgula em parte específica da linha

  • 0

esta é a saída de uma consulta de banco de dados:

    1 KALI,REGISTERED
    2 KALI,PROCESSING
    3 KALI,RECEIVED
    1 KALI,SUBMITTED
    7 KALI,SUCCEEDED
    4 WEKA,PROCESSING

a saída muda toda vez e talvez o número de linhas seja diferente da última vez que a consulta foi executada, mas o formato é sempre assim: number space word,word. eu preciso que eles sejam assim: number,word,word. Eu tentei lidar com isso com a própria consulta, mas o banco de dados não suportava isso, então decidi lidar com isso com o Linux. eu usei este comando para substituir espaços por vírgula: sed -e 's/\s\+/,/g' command.output.eu recebo isso:

,1,KALI,REGISTERED,
,2,KALI,PROCESSING,
,3,KALI,RECEIVED,
,1,KALI,SUBMITTED,
,7,KALI,SUCCEEDED,
,4,WEKA,PROCESSING,  

mas eu espero algo assim para que eu possa armazená-lo em uma matriz:

1,KALI,REGISTERED
2,KALI,PROCESSING
3,KALI,RECEIVED
1,KALI,SUBMITTED
7,KALI,SUCCEEDED
4,WEKA,PROCESSING  

tentei mais alguns comandos, nenhum deles funcionou. como posso obter essa saída?

text-processing sed
  • 1 respostas
  • 1260 Views
Martin Hope
BlackCrystal
Asked: 2019-10-07 22:27:22 +0800 CST

Array retorna apenas um elemento

  • 1

Estou tentando gerar um script que ftp alguns arquivos para um servidor usando lftp. quando eu executo esses comandos no shell:

DBNAME=TESTDB  
ls -t /data*/${DBNAME,,}Backup/$DBNAME.0.db21.DBPART000.`date +%Y%m%d`*

eu recebo 2 caminhos:

/data4/testdbBackup/TESTDB.0.db1.DBPART000.20191007010004.001
/data5/testdbBackup/TESTDB.0.db1.DBPART000.20191007010004.002

mas quando eu uso este comando para criar um array e fazer um loop por ele, só recebo o primeiro elemento. aqui está o roteiro:

echo "lftp -u $FTPUSER,$FTPPASSWD $FTPSRV  <<end_script
mkdir BackUp
cd BackUp
mkdir $CURRENTDATE
cd $CURRENTDATE
mkdir $IP
cd $IP " >> $FTPFILES
for DBNAME in "${DBNAME_ARRAY[@]}"
do
BACKUP_FILE_COUNT=$(ls -t /data*/${DBNAME,,}Backup/$DBNAME.0.db21.DBPART000.`date +%Y%m%d`*|wc -l)
COUNTER=($(echo $COUNTER + $BACKUP_FILE_COUNT | bc))
mapfile -t BACKUP_FILE_ARRAY < <(ls -t /data*/${DBNAME,,}Backup/$DBNAME.0.db21.DBPART000.`date +%Y%m%d`*)
    for BACKUP_FILE in "${BACKUP_FILE_ARRAY=[@]}"
            do
            echo "lcd $(dirname $BACKUP_FILE)" >> $FTPFILES
            echo "put $(basename $BACKUP_FILE)" >> $FTPFILES
    done
done
echo "quit
end_script
exit 0  " >> $FTPFILES

a saída deste script é:

 lftp -u someuser,somepassword 1.1.1.1  <<end_script
 mkdir BackUp
 cd BackUp
 mkdir 19-10-07
 cd 19-10-07
 mkdir 192.168.22.22
 cd 192.168.22.22
 lcd /data4/testdbBackup
 put TETSTDB.0.db21.DBPART000.20191007010004.001
 quit
 end_script
 exit 0  

nessa parte da mudança de diretórios, espero isso:

lcd /data4/testdbBackup
put TETSTDB.0.db21.DBPART000.20191007010004.001
lcd /data5/testdbBackup
put TETSTDB.0.db21.DBPART000.20191007010004.002

eu também adicionei um echo "${BACKUP_FILE_ARRAY=[@]}"ao meu script e ele tem apenas um elemento.
eu tive esse problema antes nesta questão e usei a solução em muitos scripts e eles funcionaram perfeitamente. O que estou perdendo aqui?

bash
  • 1 respostas
  • 529 Views
Martin Hope
BlackCrystal
Asked: 2019-09-15 21:13:39 +0800 CST

como combinar 2 arrays em um array associativo

  • 2

eu preciso combinar ARRAY1e ARRAY2em uma matriz associativa como ARRAY. estou usando este código:

 mapfile -t ARRAY1 < <(/bin/awk '{ print $ 1 }' /output/gen_branch)
 mapfile -t ARRAY2 < <(/bin/awk '{ print $ 6 }' /output/gen_code )
 declare -A ARRAY

 for ((i=0; $i<${#ARRAY1[@]}; i++))
 do
 ARRAY+=( ["${ARRAY1[i]}"] = "${ARRAY2[i]}" )
 done

 ##added this loop to check output
 for value in "${!ARRAY[@]}"
 do
 echo "branch: $value"
 echo "code: ${ARRAY[$value]}"
 done 

espero que algo assim os use em outras partes do bash (é importante que o valor do primeiro elemento de ARRAY1seja o primeiro elemento de ARRAY2e assim por diante):

ARRAY1=( b1 b2 b3 )
ARRAY2=( c1 c2 c3 )
ARRAY= ( [b1]=c1 [b2]=c2 [b3]=c3 ) 

mas quando executo meu código, recebo este erro:

line 7: ARRAY: [b1]: must use subscript when assigning associative array
line 7: ARRAY: =: must use subscript when assigning associative array
line 7: ARRAY: c1: must use subscript when assigning associative array
(and it goes on like this for every entry)  

acho que estou fazendo tudo errado na linha 7.o que devo fazer para corrigir isso?

bash
  • 1 respostas
  • 3702 Views
Martin Hope
BlackCrystal
Asked: 2019-07-28 22:23:06 +0800 CST

inserir várias linhas no script com sed

  • 0

estou tentando inserir variáveis ​​antes de linha específica no meu script. este é o código que estou usando:

var1=$(echo "database1=")
var2=$(echo "database2=")
var3=$(echo "database3=")

sed -i "/#variables/i \
$var1\
$var2\
$var3" /data1/create_database 

espero que create_databaseseja assim depois de executar o comando acima:

database1=
database2=
database3=
#variables 

mas eu recebo este resultado:

database1= database2= database3=
#variables

tentei algumas maneiras nada funcionou. O que devo fazer?

linux text-processing
  • 3 respostas
  • 2654 Views
Martin Hope
BlackCrystal
Asked: 2019-06-23 19:57:12 +0800 CST

lê a entrada do usuário na matriz até que o usuário insira uma entrada específica

  • 0

Eu preciso criar um bash que receba a entrada do usuário e insira-os em uma matriz até que o usuário insira uma coisa específica. por exemplo, se eu executar o script:

enter variables: 3 4 7 8 ok  

eu recebo esta matriz:array=( 3 4 7 8 )

ou:

enter variables: 15 9 0 24 36 8 1 ok

eu recebo esta matriz:array=( 15 9 0 24 36 8 1 )

como posso conseguir isso?

bash shell-script
  • 1 respostas
  • 2708 Views
Martin Hope
BlackCrystal
Asked: 2019-06-23 03:47:29 +0800 CST

remova a configuração específica do sysctl.conf

  • 0

em algumas das minhas máquinas eu tenho este bloco de configuração em sysctl.conf (os números são diferentes em cada máquina):

#Size Of RAM (In GB):   23
kernel.shmmni=  2547
kernel.shmmax=  365482458
kernel.shmall=  25471984
#kernel.sem=<SEMMSL> <SEMMNS> <SEMOPM> <SEMMNI>
kernel.sem=     325     12496852  74      3654
kernel.msgmni=  1204
kernel.msgmax=  57452
kernel.msgmnb=  74235

a localização deste bloco às vezes é diferente. eu queria escrever um bash que removesse essas configurações antigas e inserisse uma nova configuração. uma vez que é sysctl.conf eu preciso fazê-lo com segurança. como posso removê-los com sedou grepe ter certeza de que apenas este bloco será removido?

grep sed
  • 1 respostas
  • 1024 Views
Martin Hope
BlackCrystal
Asked: 2019-06-13 03:47:03 +0800 CST

Retomar o script Bash após a reinicialização

  • 3

Eu tenho um script bash que altera algumas configurações no sistema operacional e no banco de dados e precisa ser reinicializado, então outros comandos são necessários para serem executados. algo assim:

 newvalue1=
 ip=
 .
 .
 some commands
 .
 .
 reboot
 .
 .
 some other commands

o que fazer para que isso aconteça?

(há 2 outras perguntas como esta na troca de pilha, Q1 e Q2 , mas elas foram feitas há muito tempo e os usuários não estão mais ativos para fazer perguntas. Perguntei novamente para descobrir se há novas ideias e respostas)

bash shell-script
  • 1 respostas
  • 1288 Views
Martin Hope
BlackCrystal
Asked: 2019-06-02 23:37:44 +0800 CST

verifique a saída de um script antes de executar

  • 0

Eu tenho um script bash que faz alguns trabalhos de banco de dados. partes deste roteiro:

DBNAME_ARRAY=( mydb1 mydb2 )  
DB2PATH=/bin/db2
BACKUPLOGPATH=/data1/`date +%y-%m-%d`_BACKUP.out 
IP=170.10.20.11 
.
.
for DBNAME in "${DBNAME_ARRAY[@]}"
do
BACKUPSQL="BACKUP DATABASE $DBNAME TO /dbdata1/${DBNAME,,}Backup"
$DB2PATH connect to $DBNAME 
.
.

antes de executar isso eu quero saber se as variáveis ​​são colocadas em todas as linhas corretamente. Isso é possível?
por exemplo eu quero algo assim:

  BACKUP DATABASE mydb1 TO /dbdata1/mtdb1Backup
  /bin/db2 connect to mydb1 
  BACKUP DATABASE mydb1 TO /dbdata2/mtdb1Backup
  /bin/db2 connect to mydb2  

depois de verificar se está tudo correto, eu os executo.

bash shell-script
  • 1 respostas
  • 206 Views
Martin Hope
BlackCrystal
Asked: 2019-05-13 23:27:08 +0800 CST

como executar um bash que deve ser executado com um usuário específico com outro usuário sem senha

  • 0

Eu tenho 2 usuários. test1que eu criei /sbin/nologine não tem senha. test2que tem sudoprivilégio e tem senha.

Eu tenho este script: /data/tempWork/fazitstque deve ser executado em test2. agora eu quero executar este script com, test1mas eu quero que ele seja executado em test2.

Eu tentei isso como test1:
/bin/su -c "/data/tempWork/fazitst " - test2

mas não funcionou. eu estava executando este comando de um aplicativo, pois não posso usar ssh, não posso depurar isso corretamente. não há registro. Eu tentei este comando com root e funcionou.

mas eu acho que requer senha. então como posso executar meu script com test1under test2sem senha?

bash shell-script
  • 1 respostas
  • 197 Views
Martin Hope
BlackCrystal
Asked: 2019-04-06 21:12:39 +0800 CST

faça uma matriz de uma coluna dinâmica no meio do texto

  • 1

Preciso saber quantas conexões de um aplicativo estão conectadas ao meu banco de dados. para isso devo executar um procedimento armazenado. a saída é como:

  CMD_EXEC: 1
  IFCA_RET: 0
  IFCA_RES: 0
  XS_BYTES: 0
  IFCA_GRES: 0
  GXS_BYTES: 0
  RETURN_CODE: 0
  MSG: NULL

  ROWNUM      TEXT
  1           DSNL200I  -DSNC DISPLAY LOCATION REPORT FOLLOWS-
  2           LOCATION                                       PRDID    T ATT CONNS
  3           ::170.0.0.236                                  SQL09079 S        277
  4           ::170.0.0.243                                  SQL10057 S          0
  5           ::170.0.0.249                                  JCC04160 S          0
  6           ::170.0.0.252                                  JCC03660 S          0
  7           ::170.0.0.204                                  JCC04160 S          0
  8           ::170.0.0.20                                   SQL10057 S          1
  9           ::170.0.0.21                                   JCC03660 S          0
  10          ::170.0.1.21                                   JCC04080 S       1440
  11          ::170.0.1.231                                  JCC03660 S          1
  12          ::170.0.7.2                                    JCC03640 S          0
  13          ::170.0.8.241                                  JCC03640 S          0
  14          ::170.0.8.142                                  JCC03690 S          0
  15          ::192.168.7.2                                  SQL09079 S          0
  16          ::192.168.1.4                                  JCC03650 S          5
  17          ::192.168.1.5                                  JCC03650 S          6
  18          ::192.168.1.0                                  JCC03690 S          0
  19          ::192.168.4.0                                  JCC03610 S          7
  20          ::192.168.4.0                                  JCC03610 S          2
  21          ::192.168.4.0                                  JCC04080 S        504
  22          ::192.168.1.7                                  SQL10055 S          1
  23          DISPLAY LOCATION REPORT COMPLETE

   "ADMIN_COMMAND_DB21" RETURN_STATUS: 0 

a coluna CONNSmostra a contagem de conexões. eu preciso fazer uma matriz com esta coluna e encontrar o seu máximo. por exemplo algo assim:

 #/bin/bash

 #number of logs to offload
 #number of ADBAT
 #number of QUEDBAT
 #number of DSCDBAT
 #nmber of connections

 DB2PATH=/home/db2inst1/sqllib/bin/db2

 $DB2PATH connect to mydb >> /dev/null
 conn_arr=$($DB2PATH "CALL SYSPROC.ADMIN_COMMAND_DB21 ('-dis 
 location',17,LOC,NULL,?,?,?,?,?,?,?,?)"  )
 echo "$conn_arr" | ????
 $DB2PATH connect reset >> /dev/null

Toda vez que este script os resultados e os números das linhas mudam. O que devo usar?

bash shell-script
  • 1 respostas
  • 131 Views
Martin Hope
BlackCrystal
Asked: 2019-03-10 03:44:38 +0800 CST

erro de kernel no CentOS 6.9

  • 0

Recentemente eu vejo essas mensagens no meu /var/log/messegese dmesg | less:

 kernel: INFO: task flush-8:32:1065 blocked for more than 120 seconds.
 kernel:      Not tainted 2.6.32-696.el6.x86_64 #1
 kernel: "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this 
 message.
 kernel: flush-8:32    D 0000000000000004     0  1065      2 0x00000000
 kernel: ffff88063389b840 0000000000000046 0000000000000000 0005120000000001
 kernel: ffff880636304ce0 ffff8806363098c0 00022e760ddb7d3a ffff88062db31360
 kernel: 0000000000011200 000000012494c97a ffff88062e0fbad8 ffff88063389bfd8
 kernel: Call Trace:
 kernel: [<ffffffff811d11e0>] ? sync_buffer+0x0/0x50
 kernel: [<ffffffff8154ae83>] io_schedule+0x73/0xc0
 kernel: [<ffffffff811d1220>] sync_buffer+0x40/0x50
 kernel: [<ffffffff8154b73a>] __wait_on_bit_lock+0x5a/0xc0
 kernel: [<ffffffff811d11e0>] ? sync_buffer+0x0/0x50
 kernel: [<ffffffff8154b818>] out_of_line_wait_on_bit_lock+0x78/0x90
 kernel: [<ffffffff810a68c0>] ? wake_bit_function+0x0/0x50
 kernel: [<ffffffff811d1540>] ? end_buffer_async_write+0x0/0x190
 kernel: [<ffffffff811d13c6>] __lock_buffer+0x36/0x40
 kernel: [<ffffffff811d26c5>] __block_write_full_page+0x305/0x330
 kernel: [<ffffffff811d1540>] ? end_buffer_async_write+0x0/0x190
 kernel: [<ffffffff811d27d0>] block_write_full_page_endio+0xe0/0x120
 kernel: [<ffffffffa0211d00>] ? buffer_unmapped+0x0/0x20 [ext3]
 kernel: [<ffffffff811d2825>] block_write_full_page+0x15/0x20
 kernel: [<ffffffffa021288d>] ext3_ordered_writepage+0x1ed/0x240 [ext3]
 kernel: [<ffffffff81142367>] __writepage+0x17/0x40
 kernel: [<ffffffff8114362d>] write_cache_pages+0x1fd/0x4c0
 kernel: [<ffffffff81009913>] ? __switch_to+0x2f3/0x340
 kernel: [<ffffffff81142350>] ? __writepage+0x0/0x40
 kernel: [<ffffffff81299899>] ? cpumask_next_and+0x29/0x50
 kernel: [<ffffffff81064054>] ? find_busiest_group+0x254/0xa50
 kernel: [<ffffffff81143914>] generic_writepages+0x24/0x30
 kernel: [<ffffffff81143955>] do_writepages+0x35/0x40
 kernel: [<ffffffff811c6f1d>] writeback_single_inode+0xdd/0x290
 kernel: [<ffffffff811c731d>] writeback_sb_inodes+0xbd/0x170
 kernel: [<ffffffff811c747b>] writeback_inodes_wb+0xab/0x1b0
 kernel: [<ffffffff811c7873>] wb_writeback+0x2f3/0x410
 kernel: [<ffffffff8154a68e>] ? schedule+0x3ee/0xb70
 kernel: [<ffffffff811c7b3d>] wb_do_writeback+0x1ad/0x250
 kernel: [<ffffffff8108f000>] ? process_timeout+0x0/0x10
 kernel: [<ffffffff811c7c86>] bdi_writeback_thread+0xa6/0x220
 kernel: [<ffffffff811c7be0>] ? bdi_writeback_thread+0x0/0x220
 kernel: [<ffffffff810a63ae>] kthread+0x9e/0xc0
 kernel: [<ffffffff8100c28a>] child_rip+0xa/0x20
 kernel: [<ffffffff810a6310>] ? kthread+0x0/0xc0
 kernel: [<ffffffff8100c280>] ? child_rip+0x0/0x20  

Hoje uma das máquinas VM foi reinicializada. Quando verifiquei messeges, vi mensagens acima e alguns erros de banco de dados. Essa rede teve um problema e esta máquina perdeu a conexão com seu primário e acabou de reiniciar. Minha pergunta é: quais são essas mensagens do kernel e onde devo procurar por problemas? Eles têm algo a ver com a rede? Isso só acontece em máquinas VM?

centos kernel
  • 1 respostas
  • 460 Views
Martin Hope
BlackCrystal
Asked: 2019-03-03 22:26:59 +0800 CST

saída de watch vários comandos não está claro

  • 0

Estou restaurando um backup de banco de dados no meu servidor e preciso observar a saída df -he restaurar o utilitário db2pd -utilities. Eu tentei isso:
watch -n 2 "db2pd -utilities && df -h
saída (resumido):

    Every 2.0s: db2pd -utilities && df -h    

  Database Member 0 -- Active -- Up 0 days 23:11:19 

  Utilities:
  Address        ID         Type        State      Invoker    Priority   

  0x000000E0     1          RESTORE      0          0          0          


  Progress:
  Address            ID         PhaseNum   CompletedWork                
  0x00003088         1          1          1073745920 bytes                          
  Filesystem            Size  Used Avail Use% Mounted on
 /dev/sda3              39G  824M   36G   3% /
 tmpfs                 253G   16K  253G   1% /dev/shm
 /dev/sda2             194M   36M  149M  20% /boot
 /dev/sda1             200M  264K  200M   1% /boot/efi
 /dev/sda4              20G  215M   19G   2% /home
 /dev/sda5              20G  1.4G   17G   8% /opt
 /dev/sda9             166G  6.6G  151G   5% /tempWork
 /dev/sda7             9.7G  152M  9.0G   2% /tmp
 /dev/sda6              20G  227M   19G   2% /var

na verdade as saídas são mais longas e eu tive que remover algumas partes e elas se combinam e se tornam difíceis de ler. o que devo usar para criar espaço entre eles?

watch whitespace
  • 1 respostas
  • 81 Views
Martin Hope
BlackCrystal
Asked: 2019-02-18 21:48:08 +0800 CST

partições de disco não são montadas em sistemas de arquivos após a reinicialização

  • 0

eu tenho uma máquina VM que reiniciou ontem à noite e não conseguimos conectar a ela via ssh. eu usei console e vi que só /e swapsão montados com lsblko comando:

  NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
  sr0     11:0    1 1024M  0 rom
  sdb      8:16   0    8G  0 disk
  ├─sdb1   8:17   0    2G  0 part 
  └─sdb2   8:18   0    6G  0 part [SWAP]
  sdc      8:32   0   20G  0 disk
  └─sdc1   8:33   0   20G  0 part 
  sde      8:64   0  400M  0 disk
  └─sde1   8:65   0  399M  0 part 
  sda      8:0    0   20G  0 disk
  └─sda1   8:1    0   20G  0 part /
 sdd      8:48   0   20G  0 disk
 └─sdd1   8:49   0   20G  0 part 
 sdf      8:80   0   10G  0 disk
 └─sdf1   8:81   0   10G  0 part   

mas quando eu corri df -h:

  Filesystem      Size  Used Avail Use% Mounted on
  /dev/sda1        20G  1.2G   18G   7% /
  tmpfs           7.8G     0   7.8G   0% /dev/shm
  /dev/sde1        20G    1.2G  18G   7% /boot
  /dev/sdd1        20G    1.2G  18G   7% /data
  /dev/sdc1        20G    1.2G  18G   7% /opt
  /dev/sdb1        20G    1.2G  18G   7% /var
  /dev/sdf1        20G    1.2G  18G   7% /backup

quando eu corri ls -halneles, eles estavam todos vazios, exceto para /. Tentei desmontar e montar partições, recebi um erro de que as partições não são montadas. eu montei todos eles novamente, por exemplo:

mount /dev/sdf1 /backup

e df -h:

 Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        20G  1.2G   18G   7% /
tmpfs           7.8G     0  7.8G   0% /dev/shm
/dev/sde1       387M   40M  327M  11% /boot
/dev/sdd1        20G   14G  4.9G  75% /data
/dev/sdc1        20G  1.4G   18G   8% /opt
/dev/sdb1       2.0G  155M  1.8G   9% /var
/dev/sdf1       9.9G  2.4G  7.0G  26% /backup  

e está tudo bem. reiniciei para testar. Aconteceu novamente. only /e swap foram montados. blkidresultado:

   /dev/sdb1: UUID="3a11afe1-52d5-4e31-96a0-66da2c8e70eb" TYPE="ext3"
   /dev/sdf1: UUID="0e1f69a7-36d9-4af1-a537-afaa211e87d7" TYPE="ext3"
   /dev/sdb2: UUID="416970f8-c21b-419b-90d5-eb8eabb685a6" TYPE="swap"
   /dev/sdc1: UUID="d380ddf8-3476-46b3-8e80-9dd3b394dd13" TYPE="ext3"
   /dev/sde1: UUID="b224fa8a-e909-432e-927e-4a98fe2d74d0" TYPE="ext3"
   /dev/sda1: UUID="9407e385-168c-4e37-9651-1de04406b620" SEC_TYPE="ext2" 
   TYPE="ext3"
   /dev/sdd1: UUID="e8439366-d29d-43c3-ad5e-635855f4e42e" TYPE="ext3"

parte da cat /etc/fstabsaída:

  UUID=9407e385-168c-4e37-9651-1de04406b620 /         ext3    defaults   0 0
  UUID=b224fa8a-e909-432e-927e-4a98fe2d74d0 /boot     ext3    defaults   0 0
  UUID=e8439366-d29d-43c3-ad5e-635855f4e42e /data     ext3    defaults   0 0
  UUID=d380ddf8-3476-46b3-8e80-9dd3b394dd13 /opt      ext3    defaults   0 0
  UUID=3a11afe1-52d5-4e31-96a0-66da2c8e70eb /var      ext3    defaults   0 0
  UUID=416970f8-c21b-419b-90d5-eb8eabb685a6 swap      swap    defaults   0 0
  UUID=0e1f69a7-36d9-4af1-a537-afaa211e87d7 /backup   ext3    defaults   0 0

por que isso acontece?

centos filesystems
  • 3 respostas
  • 4874 Views
Martin Hope
BlackCrystal
Asked: 2019-02-05 23:56:43 +0800 CST

usando awk com a opção if e z

  • -1

quando quero verificar se um valor retornado é inteiro ou não, uso isso no script bash:

  if [ -z "$value" ]
    then
    echo 0
    else
    echo $value
  fi

Eu estava tentando usar a zopção em awk com if. por exemplo eu tenho esta linha:

PRIMARY SECONDARY CONNECTED 350 800  

Eu tentei usar isso:

/bin/awk '{if( -z $1){print "0"}else{print $1}}' script  

não importa se eu substituo $1por $2ou $3ou $4ou $5ele sempre retorna 0. estou usando o awk de forma errada?

bash shell-script
  • 3 respostas
  • 2789 Views
Martin Hope
BlackCrystal
Asked: 2019-01-13 21:22:29 +0800 CST

alterar a senha do root no CentOS 7 [duplicado]

  • 0
Essa pergunta já tem respostas aqui :
Para que é usado o comando chroot ao redefinir uma senha no RHEL/CentOS 7? (2 respostas)
Fechado há 3 anos .

Eu estava lendo sobre como alterar a senha do root no CentOS 7. é totalmente diferente do centOS 6.

alterar senha raiz

Eu queria saber sobre as etapas, por exemplo, por que eu deveria mudar ro? o que exatamente acontece em cada etapa?

centos password
  • 1 respostas
  • 711 Views
Martin Hope
BlackCrystal
Asked: 2018-12-31 02:52:42 +0800 CST

mesmo script em servidores obtém erro

  • 0

Eu tenho esse script em cerca de 20 servidores.

 CASE=$1

 case $CASE in
"multipath")
    status=$(service multipathd status | awk '{gsub(/[.]/,"");print $NF}')
        if [ $status = 'running' ]; then
        echo 0
        else
        echo 1
        fi
  ;;
"hbaport")
        output=0
    port_array=($(cat /sys/class/fc_host/*/port_state))
        for port in ${port_array[@]}
    do
            if [ $port != 'Online' ]; then
        output=1
            fi
        done
            echo $output
  ;;
"netface")
  inter=0
      ifconfig=$(ifconfig)
      interface_array=($(ls -l /etc/sysconfig/network-scripts/ifcfg-* | awk -F '-' '{print $NF}' | grep -iv 'lo'))
      for interface in ${interface_array[@]}
  do
  if [[ $ifconfig == *"$interface"* ]]; then
  operstate=$(cat /sys/class/net/$interface/operstate)
           if [ $operstate != 'up' ]; then
               inter=1
               fi
  fi
      done
      echo $inter
  ;;
 esac

quando executo este comando:
/opt/zabbix_agent/share/scripts/OSscript "netface"
ele retorna:
0
acabei de adicionar este script a um novo servidor e quando executo o comando acima, recebo isso:

: command not foundhare/scripts/OSscript: line 2:
'opt/zabbix_agent/share/scripts/OSscript: line 3: syntax error near 
 unexpected token `in
'opt/zabbix_agent/share/scripts/OSscript: line 3: case $CASE in  

por que eu recebo esse erro? O SO é o CentOS 6.9

bash shell-script
  • 1 respostas
  • 49 Views
Martin Hope
BlackCrystal
Asked: 2018-12-30 04:50:11 +0800 CST

Como criar alias com um comando contém ' e " [duplicado]

  • 10
Essa pergunta já tem respostas aqui :
Como escapar de aspas no shell? (5 respostas)
Fechado no ano passado .

Alguns posts atrás, alguém perguntou como mostrar a memória em porcentagem. Alguém respondeu com:

free | awk '/^Mem/ { printf("free: %.2f %\n", $4/$2 * 100.0) }'

Eu queria saber se posso transformar este comando em um alias em ~/.bashrc. Mas a sintaxe do alias é:

alias aliasname='command'

Como posso fazer isso? Esse comando contém 'e ". Tentei de várias maneiras, mas não funcionou. Isso é mesmo possível? Estou esquecendo de algo?

bash quoting
  • 2 respostas
  • 1021 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