Showing posts with label LINUX. Show all posts
Showing posts with label LINUX. Show all posts
Monday, September 22, 2014
Montar uma partição comum entre Linux e Windows
Para quem está passando apuros com as permissões na partição tipo "vfat" no Linux, aqui vai a linha para adicionar no fstab e resolver a questão :
UUID=seu_id /seu_mount_point vfat defaults,user,exec,uid=1000,gid=100,umask=000 0 0
Wednesday, August 18, 2010
NIC Bonding ou NIC Teaming no Linux
Este post vai abordar uma forma que pode ser usada nas versões RHEL,Centos,OEL e etc.Para debian a localização dos arquivos mudam um pouco então vai ficar para outro post.
O conceito é ter duas placas de redes trabalhando como se fosse uma.Em ambiente Oracle RAC é muito utilizado .
A imagem abaxo é provida by Google mesmo :
Tenho um server rodando Openfiler(rpath linux),adicionei 2 placas de rede eth1 e eth2 :
eth1 Link encap:Ethernet HWaddr 08:00:27:F9:6C:D1
inet addr:10.7.7.8 Bcast:10.7.7.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fef9:6cd1/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:94 errors:0 dropped:0 overruns:0 frame:0
TX packets:87 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:9532 (9.3 Kb) TX bytes:4078 (3.9 Kb)
eth2 Link encap:Ethernet HWaddr 08:00:27:36:28:DB
inet addr:10.7.7.9 Bcast:10.7.7.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe36:28db/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:410 errors:0 dropped:0 overruns:0 frame:0
TX packets:255 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:54430 (53.1 Kb) TX bytes:40355 (39.4 Kb)
[root@storage1 proc]# cd /etc/sysconfig/network-scripts/
Precisamos editar os arquivos ifcfg-NIC( ex.ifcfg-eth0) .
Vamos deixa-los desta forma :
DEVICE=eth0 USERCTL=no ONBOOT=yes MASTER=bond0 SLAVE=yes BOOTPROTO=none TYPE=Ethernet |
Obs.USERCTL é o parametro de controle espeficando que somente o root poderá ter controle sobre o device.
No parametro DEVICE teremos em um arquivo eth1 eno outro eth2 conforme o device correspodente.
Fiz uma cópia dos arquivos via cp mesmo e mv e temos :
-rw-r--r-- 1 root root 155 Aug 11 16:56 ifcfg-eth1.old
-rw-r--r-- 1 root root 38 Aug 11 20:09 ifcfg-eth0
-rw-r--r-- 1 root root 155 Aug 13 19:10 ifcfg-eth1
-rw-r--r-- 1 root root 155 Aug 13 19:10 ifcfg-eth2
[root@storage1 network-scripts]#
[root@storage1 network-scripts]# more ifcfg-eth2
DEVICE=eth2
USERCTL=no
BOOTPROTO=none
ONBOOT=yes
TYPE=Ethernet
MASTER=bond0
SLAVE=yes
[root@storage1 network-scripts]# more ifcfg-eth1
DEVICE=eth1
USERCTL=no
BOOTPROTO=none
ONBOOT=yes
TYPE=Ethernet
MASTER=bond0
SLAVE=yes
Agora o detalhe.Vamos criar um arquivo para o novo device bond0 e editá-lo:
[root@storage1 network-scripts]# cp ifcfg-eth1.old ifcfg-bond0
[root@storage1 network-scripts]# more ifcfg-bond0
DEVICE=bond0
BOOTPROTO=none
IPADDR=10.7.7.10
NETMASK=255.255.255.0
ONBOOT=yes
USERCTL=no
Arquivos prontos vamos editar o arquivo /etc/modprobe.conf e adcionar as seguintes linhas :
<snip>
alias bond0 bonding
options bond0 miimon=100 mode=1
</snip>
Remover o arquivo desnecessário :
[root@storage1 network-scripts]# rm -rfv ifcfg-eth1.old
removed `ifcfg-eth1.old'
[root@storage1 network-scripts]#
Reiniciar o serviço de rede :
[root@storage1 network-scripts]# service network restart
Shutting down interface bond0: [ OK ]
Shutting down interface eth0: [ OK ]
Shutting down interface eth1: [ OK ]
Shutting down interface eth2: [ OK ]
Shutting down loopback interface: [ OK ]
Removing bonding module: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface bond0: Enslaving eth1 to bond0
Enslaving eth2 to bond0
[ OK ]
Bringing up interface eth0:
Determining IP information for eth0... done.
[ OK ]
[root@storage1 network-scripts]#
Obs.Eu já havia habilitado a bond0,por isso meu output saiu um pouco diferente.
[root@storage1 network-scripts]# ifconfig
bond0 Link encap:Ethernet HWaddr 08:00:27:F9:6C:D1
inet addr:10.7.7.10 Bcast:10.7.7.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fef9:6cd1/64 Scope:Link
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:9281 errors:0 dropped:0 overruns:0 frame:0
TX packets:7506 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1340824 (1.2 Mb) TX bytes:1201622 (1.1 Mb)
eth0 Link encap:Ethernet HWaddr 08:00:27:88:81:1E
inet addr:10.7.7.101 Bcast:10.7.7.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe88:811e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:4819 errors:0 dropped:0 overruns:0 frame:0
TX packets:4413 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:790732 (772.1 Kb) TX bytes:682460 (666.4 Kb)
eth1 Link encap:Ethernet HWaddr 08:00:27:F9:6C:D1
inet addr:10.7.7.10 Bcast:10.7.7.255 Mask:255.255.255.0
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:1091 errors:0 dropped:0 overruns:0 frame:0
TX packets:868 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:137663 (134.4 Kb) TX bytes:128429 (125.4 Kb)
eth2 Link encap:Ethernet HWaddr 08:00:27:F9:6C:D1
inet addr:10.7.7.10 Bcast:10.7.7.255 Mask:255.255.255.0
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:8191 errors:0 dropped:0 overruns:0 frame:0
TX packets:6639 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1203227 (1.1 Mb) TX bytes:1073435 (1.0 Mb)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:107 errors:0 dropped:0 overruns:0 frame:0
TX packets:107 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2342 (2.2 Kb) TX bytes:2342 (2.2 Kb)
[root@storage1 network-scripts]# ping bond0
^C
[root@storage1 network-scripts]# ping 10.7.7.10
PING 10.7.7.10 (10.7.7.10) 56(84) bytes of data.
64 bytes from 10.7.7.10: icmp_seq=0 ttl=64 time=0.521 ms
64 bytes from 10.7.7.10: icmp_seq=1 ttl=64 time=0.090 ms
^C
--- 10.7.7.10 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 0.090/0.305/0.521/0.216 ms, pipe 2
[root@storage1 network-scripts]#
Vamos testar agora de um outro host se realmente está funcionando:
jccorrea|ubuntudesktop /
$ ping 10.7.7.10
PING 10.7.7.10 (10.7.7.10) 56(84) bytes of data.
64 bytes from 10.7.7.10: icmp_seq=1 ttl=64 time=0.347 ms
64 bytes from 10.7.7.10: icmp_seq=2 ttl=64 time=0.261 ms
^C
--- 10.7.7.10 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 999ms
rtt min/avg/max/mdev = 0.261/0.304/0.347/0.043 ms
jccorrea|ubuntudesktop /
$ ssh root@10.7.7.10
root@10.7.7.10's password:
Last login: Fri Aug 13 18:42:44 2010 from 10.7.7.1
[root@storage1 ~]#
[root@storage1 ~]# tcpdump -i bond0 -c 15
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on bond0, link-type EN10MB (Ethernet), capture size 96 bytes
22:24:33.946529 IP 10.7.7.101.ssh > 10.7.7.1.33533: P 473451413:473451525(112) ack 365296259 win 429 <nop,nop,timestamp 3904714 28213627>
22:25:13.982943 IP 10.7.7.1.33533 > 10.7.7.101.ssh: . ack 112 win 23888 <nop,nop,timestamp 28213632 3904714>
22:25:13.982973 IP 10.7.7.101.ssh > 10.7.7.1.33533: P 112:224(112) ack 1 win 429 <nop,nop,timestamp 3904715 28213632>
22:24:33.947043 IP 10.7.7.1.33533 > 10.7.7.101.ssh: . ack 224 win 23888 <nop,nop,timestamp 28213633 3904715>
22:24:33.948205 IP 10.7.7.10.59472 > 172.16.36.1.domain: 48745+ PTR? 1.7.7.10.in-addr.arpa. (39)
22:24:34.484064 IP 10.7.7.1 > 10.7.7.10: ICMP echo request, id 21077, seq 83, length 64
22:24:34.484100 IP 10.7.7.10 > 10.7.7.1: ICMP echo reply, id 21077, seq 83, length 64
22:24:34.868340 IP 10.7.7.1 > 10.7.7.10: ICMP echo request, id 13141, seq 108, length 64
22:24:34.868370 IP 10.7.7.10 > 10.7.7.1: ICMP echo reply, id 13141, seq 108, length 64
22:24:35.484814 IP 10.7.7.1 > 10.7.7.10: ICMP echo request, id 21077, seq 84, length 64
22:24:35.484859 IP 10.7.7.10 > 10.7.7.1: ICMP echo reply, id 21077, seq 84, length 64
22:24:35.867589 IP 10.7.7.1 > 10.7.7.10: ICMP echo request, id 13141, seq 109, length 64
22:24:35.867623 IP 10.7.7.10 > 10.7.7.1: ICMP echo reply, id 13141, seq 109, length 64
22:24:36.483285 IP 10.7.7.1 > 10.7.7.10: ICMP echo request, id 21077, seq 85, length 64
22:24:36.483330 IP 10.7.7.10 > 10.7.7.1: ICMP echo reply, id 21077, seq 85, length 64
15 packets captured
920 packets received by filter
661 packets dropped by kernel
[root@storage1 ~]# ifconfig bond0
bond0 Link encap:Ethernet HWaddr 08:00:27:F9:6C:D1
inet addr:10.7.7.10 Bcast:10.7.7.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fef9:6cd1/64 Scope:Link
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:32466 errors:0 dropped:0 overruns:0 frame:0
TX packets:155434 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:3919603 (3.7 Mb) TX bytes:39208375 (37.3 Mb)
Obs.Caso não suba corretamente tente : modprobe bonding |
Para configurar no Red Hat 5/OEL 5 mudou a localização de um parametro .Agora você coloca o parametro BONDING_OPTS="miimon=100 mode=1" dentro do arquivo /etc/sysconfig/network-scripts/ifcfg-bond0 e no arquivo /etc/modprobe.conf somente deixe a linha alias bond0 bonding .
Tudo deve funcionar Ok.
Uma outra coisa interessante é o parametro mode que pode ser colocado nas versões anteriores no modprobe.conf ou no RHEL 5 no próprio arquivo do device bondn.O default se não espefificar nenhuma parametro é mode=0 ou balance-rr.
“ balance-rr or 0
Round-robin policy: Transmit packets in sequential order from the first available slave through the last. This mode provides load balancing and fault tolerance.”
Enviar pacotes em order sequencial da primeira placa slave para a ultima.Trabalha com load balancing e tolerancia a falhas.
Para testar o mode tive que pesquisar sobre o rpath Linux e o gerenciador de pacotes chamado conary.Para minha sorte um amigo aqui da empresa ,o André me deu uma força!
Link legal:
Abs,
JC
Thursday, July 22, 2010
Oracle on Linux - Load average factor e CPU bottlenecks
Como medir o load avarage corretamente ou a melhor forma utilizada.
Nas tradicionais tools do Linux ou Unix temos o bendito do load average que alguns dizem que significam muita coisa e outros dizem que não significa nada.A verdade é : significa muito sim.
O load avg. pode ser interpretado diretamente quando a maquina possui somente uma(1) CPU.Para maquinas com mais de uma(1) CPU a forma correta é usar o load avg. factor .
Usando o ferramenta top podemos verificar e entender o que o sistema nos mostra sobre CPU bottlenecks.
O load avg. mostra a quantidade de processos que fizeram uso de CPU em um ponto no tempo.
O calculo para medir o load. avg. factor é
load.avg / nr.CPU = load.avg.factor
E o entendimento que se pode ter é a respeito de CPU bottleneck:
load avg. factor < 1 = A distribuição de recurso está dentro da capacidade e se necessário o sistema tem condição de suportar mais carga neste recurso.Enfim,o gargalo não está por aqui.
load avg. factor entre 1 e 2 = a distribuição do recurso de CPU está dentro da capacidade.
load avg. factor > 2 = Sim,o gargalo do sistema “pode” estar aqui.É recomendado continuar a investigação usando outras ferramentas vmstat,sar entre outras.Não só neste caso,mas verificar a distribuição de rotinas ,processos que fazem uso do servidor de forma mais adequada e monitorar se houve mudança no comportamento do sistema no horário de “gargalo”.
Vou usar o meu desktop com Ubuntu 10.04 como exemplo :
Como saber quantas CPU’s existem na maquina ?Existem varias formas : /proc/cpuinfo,top,vmstat e etc..
ex.
jccorrea|mydesktop ~
$ cd /proc/
jccorrea|mydesktop /proc
$ ls |grep cpu
cpuinfo
jccorrea|mydesktop /proc
$ cat cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz
stepping : 11
cpu MHz : 1596.000
cache size : 4096 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 4
apicid : 0
initial apicid : 0
ou o comando top com a opção 1
ex.
jccorrea|mydesktop /proc
$ top
top - 12:22:16 up 5 days, 22:28, 7 users, load average: 0.95, 1.10, 1.10
Tasks: 243 total, 2 running, 241 sleeping, 0 stopped, 0 zombie
Cpu0 : 16.8%us, 3.9%sy, 0.3%ni, 78.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu1 : 9.4%us, 2.6%sy, 0.0%ni, 88.1%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu2 : 11.4%us, 2.5%sy, 0.3%ni, 85.8%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu3 : 5.3%us, 1.2%sy, 0.0%ni, 93.4%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 4124916k total, 3352532k used, 772384k free, 156916k buffers
Swap: 9936888k total, 18436k used, 9918452k free, 729968k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
31948 jccorrea 20 0 206m 107m 22m S 18 2.7 297:34.37 plugin-containe
888 root 20 0 316m 203m 92m S 9 5.0 278:51.67 Xorg
Vamos ver o load average agora:
ex.
top - 12:19:02 up 5 days, 22:25, 7 users, load average: 1.23, 1.24, 1.14
Tasks: 243 total, 2 running, 241 sleeping, 0 stopped, 0 zombie
Cpu(s): 8.1%us, 2.0%sy, 0.2%ni, 89.6%id, 0.1%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 4124916k total, 3344672k used, 780244k free, 157260k buffers
Swap: 9936888k total, 18436k used, 9918452k free, 729888k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
31948 jccorrea 20 0 206m 107m 22m S 19 2.7 296:56.74 plugin-containe
2837 jccorrea 20 0 464m 104m 27m S 7 2.6 3632:16 chrome
888 root 20 0 320m 203m 92m S 3 5.0 278:40.71 Xorg
3132 jccorrea 20 0 118m 53m 25m S 3 1.3 0:39.93 VirtualBox
...
Aqui já temos o número de CPUs que no caso são 4.
Lembrando que o top mostra o load avg: (no momento,5 minutos atras e 15 minutos atrás)
Calculando o load avg.factor usando o snaphot do top :
now - 1.23/4 = 0.3075
5 minutes past = 1.24/4 = 0.31
15 minutes past = 1.14/4 = 0.285
Por aqui está tudo sobre controle .
Vamos ver agora um exemplo com um servidor mais pontente :
[oracle@potente proc]$ top
top - 13:40:11 up 118 days, 8:18, 2 users, load average: 0.35, 0.47, 0.46
Tasks: 376 total, 2 running, 374 sleeping, 0 stopped, 0 zombie
Cpu0 : 0.0%us, 0.3%sy, 0.0%ni, 99.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu1 : 0.3%us, 0.0%sy, 0.0%ni, 99.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu2 : 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu3 : 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu4 : 1.0%us, 0.0%sy, 0.0%ni, 98.7%id, 0.0%wa, 0.0%hi, 0.3%si, 0.0%st
Cpu5 : 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu6 : 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu7 : 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu8 : 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu9 : 0.7%us, 0.3%sy, 0.0%ni, 99.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu10 : 2.0%us, 0.3%sy, 0.0%ni, 97.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu11 : 0.3%us, 0.0%sy, 0.0%ni, 99.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu12 : 18.3%us, 0.3%sy, 0.0%ni, 81.4%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu13 : 0.3%us, 0.3%sy, 0.0%ni, 99.3%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu14 : 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu15 : 0.0%us, 0.0%sy, 0.0%ni, 99.3%id, 0.3%wa, 0.0%hi, 0.3%si, 0.0%st
Mem: 37037264k total, 36884956k used, 152308k free, 185104k buffers
Swap: 39086136k total, 433948k used, 38652188k free, 33778168k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4771 oracle 16 0 15.6g 2.0g 2.0g R 17.9 5.7 36:48.93 oracle
26119 oracle 15 0 15.6g 3.2g 3.2g S 2.7 9.0 0:20.04 oracle
26095 oracle 15 0 15.6g 3.2g 3.1g S 1.0 8.9 0:19.70 oracle
11298 oracle 15 0 15.6g 89m 87m S 0.3 0.2 1733:08 oracle
27260 oracle 15 0 12976 1328 824 R 0.3 0.0 0:00.05 top
Calculando o load avg.factor usando o snaphot do top :
now - 0.35/16 = 0.02
5 minutes past = 0.47/16 = 0.03
15 minutes past = 1.14/16 = 0.03
Vamos aumentar este load avg. no meu desktop :
$ top
top - 16:00:37 up 6 days, 2:06, 7 users, load average: 10.01, 5.42, 2.83
Tasks: 259 total, 1 running, 258 sleeping, 0 stopped, 0 zombie
Cpu(s): 11.1%us, 2.7%sy, 0.1%ni, 6.0%id, 80.0%wa, 0.0%hi, 0.1%si, 0.0%st
Mem: 4124916k total, 4012600k used, 112316k free, 5040k buffers
Swap: 9936888k total, 806524k used, 9130364k free, 154860k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
31948 jccorrea 20 0 206m 27m 7556 S 12 0.7 339:09.89 plugin-containe
5359 jccorrea 20 0 1024m 111m 10m S 11 2.8 0:05.61 java
888 root 20 0 349m 167m 100m S 9 4.2 292:35.67 Xorg
2837 jccorrea 20 0 464m 56m 11m S 8 1.4 3650:16 chrome
5182 jccorrea 20 0 1080m 240m 11m S 7 6.0 0:21.98 java
5261 jccorrea 20 0 1050m 149m 11m S 3 3.7 0:12.24 java
1314 jccorrea 9 -11 158m 11m 9996 S 2 0.3 107:28.12 pulseaudio
Calculando o load avg.factor :
now - 10.01/4 = 2.50
5 minutes past = 5.42/4 = 1.35
15 minutes past = 2.83/4 = 0.71
Como podemos ver neste instante em que fiz um uso maior de aplicativos no meu desktop o recurso de CPU foi maiormente utilizado tanto que no ponto “now” em que foi tirado o snapshot o servidor estava com o consumo de CPU utilizado acima da capacidade.
Nos servidores de banco de dados funciona da mesma forma.Quando monitorado e você verificar auto consumo de CPU fora do normal sempre procure saber o motivo para nunca ser pego “desprovido “de informação .Usando as próprias ferramentas nativas do Linux e Oracle você poderá identificar o processo “causador” do auto consumo.O problema não é o auto consumo em si,mas quando isso acontece outra aplicação/recurso pode ficar sem a devida prioridade e sem o devido recurso de CPU necessário para o seu funcionamento chegando em casos extremos de parar ou deixar de responder as solicitações por falta de recurso.Já vi casos em que não era possível mesmo se logar via ssh no servidor e a unica solução ser ir fisicamente no servidor e fazer o reboot ou na maioria dos casos ele mesmo se encarregava de faze-lô!.
Distribua melhor os recursos no ser servidor e seja feliz !
Espero que este post contribua em algum ponto no seu aprendizado.
Abs,
JC
Subscribe to:
Comments (Atom)