Escolar Documentos
Profissional Documentos
Cultura Documentos
Linux Q&Anewone
Linux Q&Anewone
1) Um novo servidor foi instalado para testes de uma aplicação. Para tal, 3 usuários e
2 grupos precisam ser criados. Os grupos são dev e sysadmin. Os usuários se chamam
carlitos (pertencente ao grupo dev) e juan (do grupo admin), ambos com senha inicial
sun123. Já o usuário de sistema se chama app1, que não deve ter shell.
useradd carlitos
useradd juan
cat /etc/passwd
passwd carlitos
passwd juan
groupadd dev
groupadd admin
Permissões:
w= 4
r= 2
x= 1
fdisk –l
mkswap /app1/swapfile
swapon –a
free -m
5) O time de dev acaba de te informar a aplicação deve usar quase que
exclusivamente memória RAM. Além disso, a aplicação usará muitos arquivos
simultaneamente. Dessa forma, pediram para diminuir a prioridade do uso de
swap do sistema e aumentar o limite de arquivos abertos que o SO comporta.
sysctl -a | grep swap
sysctl –w vm.swappiness=1
vim /etc/sysctl.conf
vm.swappiness=1
fs.file-max=500000
sysctl –p
sysctl -a | grep swap
6) O servidor de aplicação precisa resolver o nome app1 para o IP da
interface eth0. Porém, ainda não configuraram a entrada A no DNS
Server. Como uma medida de contorno, solicitaram a criação de uma
entrada no /etc/hosts da máquina.
cat /etc/resolv.conf
ifconfig
echo "IP_address app1" >> /etc/hosts
ping app1
7) Há um processo no sistema consumindo demasiada
quantidade de CPU. Identifique o processo e finalize
sua execução.
yes > /dev/null &
top
kill -9 PID
8) Solicitaram que você adicione o repositório
epel no sistema, caso não esteja instalado.
amazon-linux-extras install epel
cat /etc/yum.repos.d/epel.repo
yum clean all
yum repolist
9) O time de administração de sitemas verificou que o comando
htop não está instalado no servidor. Verifique qual pacote precisa
ser instalado para executar o comando e instale-o.
yum whatprovides htop
yum install htop -y
10) Você deve configurar um webserver que será usando na intranet da
empresa. Use o Apache e configure um host virtual para a página que será
usada pela equipe de RH. Use um index.html simples, pois a equipe de
front-end ainda está configurando os arquivos html do site.
yum -y install httpd
systemctl enable httpd
systemctl start httpd
systemctl status httpd
curl -v http://app1
vim /etc/httpd/conf.d/rh.conf
<VirtualHost *:80>
ServerName app1.rh.example.com
DocumentRoot "/var/www/html/rh"
</VirtualHost>
<Directory "/var/www/html/rh">
AllowOverride none
Require all granted
</Directory>
httpd -t
vim /var/www/html/rh/index.html
rh
httpd -t
systemctl restart httpd
systemctl status httpd
netstat –ntpl
telnet app1 80
11) Após a configuração do Apache, o time de dev está preocupado com
a saúde do sistema. Como ainda não configuraram monitoramento do
servidor, faça um check-up completo para verificar se há algum
problema.
RAM, SWAP, CPU
uptime #retorna o load nos últimos 1, 5 e 15 min.
top -c #Shift+P = ordena por consumo de cpu, Shift+M = ordena pelo consumo de memória
RAM
free -m #mebibytes
Redes, Rotas
ifconfig
route -n #traz IP's, não nomes
ping
traceroute
Disco
df -h
du -sh* #sh= total em megas
Logs
journalctl -p err
tail -f messages
tail -1000f messages | grep http
App
tail -f /var/log/httpd/access_log
ps aux | grep http
12) O time de sysadmins solicitou um shell script para restartar o Apache
antes do horário comercial, a fim de resolver alguns problemas de
performance dos testes e dar um "refresh" no serviço. Crie o script e
execute para executar de segunda a sexta, 7hrs da manhã.
mkdir /var/scripts
vim /var/scripts/restart-app.sh
#!/bin/bash
systemctl stop httpd
sleep 5
APP_IS_RUNNING=`ps aux | grep -i http | grep -v grep | awk {'print $2'}`
if [ -n "$APP_IS_RUNNING" ]
then
kill -9 `ps aux | grep -i http | grep -v grep | awk {'print $2'}`
fi
systemctl start httpd
chmod +x /var/scripts/restart-app.sh
bash -x /var/scripts/restart-app.sh
vim /etc/cron.d/apache-restart
0 7 * * 1-5 root bash -x /var/scripts/restart-app.sh
systemctl restart crond
13) Crie um link simbólico e um link físico para o
diretório home do usuários carlitos e juan,
respectivamente.
ln -s /var/scripts/restart-app.sh /home/carlitos/restart-app
ln /var/scripts/restart-app.sh /home/juan/restart-app #mapeia usando o inode
ls -il /var/scripts/restart-app.sh
ls -il /home/carlitos/restart-app
ls -il /home/juan/restart-app
Link simbólico falha, pois o path não existe mais. O Link físico funciona, pois é
um arquivo isolado, porém com o mesmo inode
rm /var/scripts/restart-app.sh
ls -il