Mostrando postagens com marcador linux. Mostrar todas as postagens
Mostrando postagens com marcador linux. Mostrar todas as postagens

quinta-feira, 19 de janeiro de 2023

Exportar o serverX ao trocar de usuário no terminal

Executar os comandos abaixo e guardar as respectivas respostas

$ xauth list $DISPLAY
<output1>
$ echo $DISPLAY
<outoput2>


Efetuar a troca do usuário

$ su - <usuario>


Criar, caso não exista, o Xauthority

$ touch $HOME/.Xauthority


Executar os comandos abaixo com as respectivas saídas dos primeiros comandos

$ xauth add <output1> 
$ export DISPLAY=<output2>

Fonte : https://unix.stackexchange.com/questions/476290/x11-forwarding-does-not-work-if-su-to-another-user

quarta-feira, 9 de dezembro de 2020

Limpeza de caches e Swap do Linux

Para limpar o Cache/Buffer de RAM:

$ su -
# sync; echo 1 > /proc/sys/vm/drop_caches
Para limpar entries e inodes:

$ su -
# sync; echo 2 > /proc/sys/vm/drop_caches
Para limpar tudo: Cache/Buffer, entries e Inodes:

$ su -
# sync; echo 3 > /proc/sys/vm/drop_caches
Para limpar o espaço em disco consumido pela SWAP:

$ su -
# swapoff -a && swapon -a;

EXPLICAÇÃO DOS COMANDOS
sync : Vai sincronizar e liberar o buffer do sistema de arquivos, permitindo que você possa limpá-lo sem riscos de corromper nada.

; Executará o comando somente quando o anterior terminar. Somente após a sincronia, o buff poderá ser apagado sem corromper arquivos do sistema.

Escrever 1, 2 ou 3 no arquivo drop_cache vai limpar o cache sem matar nenhum programa, processo ou serviço do sistema.

E por fim, o comando echo fará a escrita no arquivo.

fonte: https://unixuniverse.com.br/linux/ram-buffer-swap

sexta-feira, 7 de dezembro de 2018

Montagem de LVM

# vgdisplay
  VG Name               fedora
  System ID            
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  7
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                4
  Open LV               1
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               <802.48 GiB
  PE Size               4.00 MiB
  Total PE              205434
  Alloc PE / Size       205434 / <802.48 GiB
  Free  PE / Size       0 / 0  
  VG UUID               j6wtTa-Ivga-ZW45-CssS-13iP-eHRI-B123la

# vgrename <VG UUID> <novo VG Name>
# vgchange -a y
# lvscan -a
  ACTIVE            '/dev/<novo VG Name>/root' [<97.66 GiB] inherit
  ACTIVE            '/dev/<novo VG Name>/home' [488.28 GiB] inherit
  ACTIVE            '/dev/<novo VG Name>/swap' [5.82 GiB] inherit
  ACTIVE            '/dev/<novo VG Name>/opt' [<210.72 GiB] inherit
# mkdir -p /mnt/opt
# mount /dev/<novo VG Name>/opt /mnt/opt

Utilizando o RSYNC do linux

Algumas vantagens e características do comando rsync

  • É eficiente copiar e sincronizar arquivos para ou a partir de um computador remoto.
  • Suporta cópia de links, propriedades de arquivos como usuário, grupos e permissões.
  • É mais rápido do que o scp ( Secure Copy ), porque rsync usa protocolo de atualização remota que permite transferir apenas as diferenças entre dois conjuntos de arquivos. Na primeira vez, ele copia todo o conteúdo de um arquivo ou um diretório de origem para o destino, mas a partir da próxima vez, ele copia apenas os blocos alterados e bytes para o destino.
  • Rsync consome menos banda , uma vez que usa o método de compressão e descompressão durante o envio e recebimento de dados em ambas as extremidades.

A sintaxe básica do comando rsync

# Rsync origem destino opções

Algumas opções do comandos rsync

  1. -V: verbose
  2. -R: cópias de dados de forma recursiva (mas não preservam timestamps e permissão durante a transferência de dados
  3. -A: modo de arquivamento, o modo de arquivo permite a cópia de arquivos de forma recursiva e também preserva links simbólicos, permissões de arquivos, posses usuário e grupo e timestamps
  4. -Z: arquivos serão comprimidos
  5. -H: legíveis, saída em um formato legível para humano (esse é muito bom)

Como instalar o rsync no seu computador com Linux

# yum install rsync (para distribuições baseadas em Red Hat)
# apt-get install rsync (para distribuições baseadas em Debian, o Ubuntu por exemplo)
Não esqueça de ver o nosso Ebook Grátis sobre Ubuntu Linux, o Curso Linux Ubuntu, com ele você vai aprender muitos comando para iniciar no Ubuntu.

1. Como copiar / sincronizar arquivo e diretório em um computador local com Rsync

Este comando irá sincronizar um único arquivo em uma máquina local. Aqui neste exemplo, o arquivo planilha.xls está sendo copiado / sincronizado para o diretório /tmp/backups 
[root@e-tient]# rsync -zvh planilha.xls /tmp/backups/
created directory /tmp/backups
planilha.xls
sent 14.71M bytes received 31 bytes 3.27M bytes/sec 

total size is 16.18M speedup is 1.10
No exemplo acima, você pode ver que, se o destino não existe o rsync irá criar um diretório automaticamente.

Copiar / sincronizar um diretório no computador local

O comando abaixo irá transferir ou sincronizar todos os arquivos de um diretório para outro diretório na mesma máquina.
Aqui neste exemplo, /var/apt/apt/archives contém alguns arquivos de pacotes .deb
[root@e-tinet]# rsync -avzh  /var/apt/apt/archives /tmp/backups/

sending incremental file list

/var/apt/apt/archives
...
sent 4.99M bytes  received 92 bytes  3.33M bytes/sec

total size is 4.99M  speedup is 1.00

2. Copiar / sincronizar arquivos e diretório com um computador remoto

Este comando irá sincronizar um diretório a partir de uma máquina local para uma máquina remota.
Por exemplo : Existe uma pasta no seu computador local o mesmo do exemplo anterior “/var/apt/apt/archives”, que contém alguns pacotes .deb,  se quiser que o conteúdo desse diretório local seja enviado para um servidor remoto, você pode usar comando a seguir.
[root@e-tinet]$ rsync -avz /var/apt/apt/archives root@10.1.1.1:/tmp/

root@10.1.1.1's password:

sending incremental file list

...
sent 4993369 bytes  received 91 bytes  399476.80 bytes/sec

total size is 4991313  speedup is 1.00

Copiar / sincronizar um diretório remoto para um computador local

Este comando irá ajudá-lo a sincronizar um diretório remoto para um diretório local. Aqui neste exemplo, um diretório:
/home/e-tinet/textos  que está em um servidor remoto está sendo copiado em seu computador local em /tmp/textos.

[root@pedro]# rsync -avzh root@10.1.1.1:/home/e-tinet/textos /tmp/textos

root@10.1.1.1's password:

receiving incremental file list

created directory /tmp/textos

....
sent 91 bytes  received 4.99M bytes  322.16K bytes/sec

total size is 4.99M  speedup is 1.00

3. Como usar o Rsync rodando com o SSH

Com rsync, podemos usar o SSH ( Secure Shell ) para transferência de dados, usando SSH durante a transferência de nossos dados eles estarão seguros.
Além disso, quando usamos o rsync precisamos informar o usuário / senha, portanto, usando SSH seu login e senha serão enviados de forma criptografada.

Copiar um arquivo de um servidor remoto para um servidor local com SSH

Para especificar um protocolo com rsync usamos o parametro ” -e “.  Aqui neste exemplo, iremos utilizar ” ssh .


root@e-tiner]# rsync -avzhe ssh root@10.1.1.1:/root/install.log /tmp/

root@10.1.1.1's password:

receiving incremental file list

install.log

sent 30 bytes  received 8.12K bytes  1.48K bytes/sec

total size is 30.74K  speedup is 3.77

Copiar um arquivo de um servidor local para um servidor remoto com SSH

[root@pedro]# rsync -avzhe ssh planilha.xls root@10.1.1.1:/backups/

root@10.1.1.1's password:

sending incremental file list

planilha.xls

sent 14.71M bytes  received 31 bytes  1.28M bytes/sec

total size is 16.18M  speedup is 1.10

4. Mostrar progresso na transferência de dados com rsync

Para mostrar o progresso durante a transferência de dados de uma máquina para outra máquina, podemos usar  o ‘–progress’.
[root@e-tinet# rsync -avzhe ssh --progress /home/arquivos root@10.1.1.1:/root/arquivos

root@10.1.1.1's password:

sending incremental file list

created directory /root/arquivos
/home/arquivos/texto.txt
           1.02M 100%        2.72MB/s        0:00:00 (xfer#1, to-check=3/5)
...
sent 4.99M bytes  received 92 bytes  475.56K bytes/sec

total size is 4.99M  speedup is 1.00

5. Usar a opção –include e –exclude

Estas duas opções permite incluir e excluir arquivos de um copias / sincronização.
Aqui neste exemplo, o comando rsync irá incluir arquivos e diretórios apenas que começam com ‘ M ‘ e excluir todos os outros arquivos e diretórios.
OBS.: Excluir da cópia não excluir o arquivo do sistema de arquivos.
[root@e-tinet]# rsync -avze ssh --include 'm*' --exclude '*' root@10.1.1.2:/var/log/ /root/log

root@10.1.1.2's password:

receiving incremental file list

created directory /var/log

./

Requirename

Requireversion

sent 67 bytes  received 167289 bytes  7438.04 bytes/sec

total size is 434176  speedup is 2.59

6. Uso de opção –delete

Se um arquivo ou pasta não existe na origem, mas já existe no destino, você pode apagar o arquivo / diretório existente.
Podemos usar ‘ —delete‘ para apagar os arquivos que não existem no diretório de origem.
Se a origem e  destino estiver  em sincronia, vamos fazer um teste. Crie um arquivo teste.txt no destino.
[root@e-tinet]# touch teste.txt
[root@e-tinet]# rsync -avz --delete root@10.1.1.1:/home/pedrod .
receiving file list ... done
deleting teste.txt
./
sent 26 bytes  received 390 bytes  48.94 bytes/sec
total size is 45305958  speedup is 108908.55
Uma pequena dica adicional: Tome cuidado com essa opção.

7. Defina o tamanho máximo de arquivos que serão transferidos

Você pode especificar o parâmetro “–max-size” para definir o tamanho máximo do arquivo.
Exemplo: Um arquivo de 200k , então este comando irá transferir apenas os arquivos que são iguais ou menores que 200k .
[root@e-tinet]# rsync -avzhe ssh --max-size='200k' /var/log/ root@10.1.1.2:/root/log

root@10.1.1.2's password:

sending incremental file list

created directory /root/log

...
sent 189.79K bytes  received 224 bytes  13.10K bytes/sec

total size is 38.08M  speedup is 200.43

8. Apagar automaticamente arquivos da origem após a transferência bem sucedida

Agora, vamos imaginar que você tenha um servidor web principal e um servidor de backup, é feito um backup diário para esse servidor de backup, agora você não quer manter essa cópia local do backup no seu servidor web.
Então, você vai esperar até que a transferência seja concluída e, em seguida, apagar aqueles arquivos de backup local manualmente?
Claro que não. Esta exclusão automática pode ser feito usando a opção ” –-remove-source-files” .
Seria praticamente um comando “mv”, mas ele pode ser até executado remotamente.
[root@e-tinet]# rsync --remove-source-files -zvh img.jpg /tmp/backups/

img.jpg

sent 14.71M bytes  received 31 bytes  4.20M bytes/sec

total size is 16.18M  speedup is 1.10

9. Usar o parâmetro –dry-run com o Rsync

Se você está aprendendo a trabalhar com rsync e não sabe exatamente um parâmetro ou outro vai fazer, tome muito cuidado pois o Rsync poderá realmente estragar sua pasta de destino, e infelizmente o Ctrl + Z não funciona nesse caso.
Usando esse parâmetro o Rsync não vai fazer nenhuma alteração no destino, apenas vai mostrar o resultado do comando normalmente, assim fica fácil você encontrar algum erro e não correr o risco de fazer uma cópia desastrosa.
root@e-tinet]# rsync --dry-run --remove-source-files -zvh texto.txt /tmp/backups/

texto.tar

sent 35 bytes  received 15 bytes  100.00 bytes/sec

total size is 16.18M  speedup is 323584.00 (DRY RUN)

10. Definir Limite de banda de Transferência de Arquivos

Você pode configurar o limite de banda durante a transferência dos arquivos de uma máquina para outra usando o  ‘ —bwlimit’.
[root@e-tinet]# rsync --bwlimit=100 -avzhe ssh  /var/log/  root@10.1.1.2:/root/log/
root@10.1.1.2's password:
sending incremental file list
sent 324 bytes  received 12 bytes  61.09 bytes/sec
total size is 38.08M  speedup is 113347.05
Então é isso, tem muitas opções o Rsync é uma ferramenta muito utilizada. Hoje eu utilizo muito para fazer backup e sincronização de arquivos, tanto local como remoto.



Fonte: https://e-tinet.com/linux/sincronizacao-de-arquivos-no-linux-rsync/

quinta-feira, 20 de agosto de 2015

Linux - Autenticando com LDAP

Antes de mais nada

Verificar se o ldap possui os auxiliary objectClass posixAccount e posixGroup
caso não tenha

cria-las com base no link abaixo

http://www.zytrax.com/books/ldap/ape/nis.html

Depois para cada usuário que deseja autenticar no linux, o registro dele no ldap deve possuir

 - acrescentar a um grupo que será utilizado no linux
gidNumber: 666
objectClass: posixGroup

- acrescentar ao usuário que se será utilizado  no linux
gidNumber: 666
homeDirectory: /home/rodrigo.teste
objectClass: posixAccount
sn: sobrenome
uid: login
uidNumber: 666

Agora sim podemos começar

Instalar o pacote authconfig
# yum install authconfig

executar o authconfig-gtk
#authconfig-gtk


configure:
User Account DataBase: LDAP
LDAP Serach Base DN: o base dn que contenha os usuarios e os grupos
LDAP Server: basta colcoar o host/ip e a porta localhost:1389
OBS: (alerta de bug) caso a url nao seja ldaps, selecione outro user account e depois volte para o LDAP, irá permitir salvar

Authentication Method: LDAP Password

[Apply]

Para verificar os usuarios
# getent passwd <<uid do ldap>>
ou 
# id <<uid do ldap>>

para testar o login
# su - <<uid do ldap>>

terça-feira, 7 de julho de 2015

Alterando resolução (DPI) do mouse


$ xinput list
⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=10   [slave  pointer  (2)]
⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=9    [slave  keyboard (3)]

$ xinput list-props 10
Device 'SynPS/2 Synaptics TouchPad':
    Device Enabled (144):   1
    Device Accel Profile (266):     1
    Device Accel Constant Deceleration (267):       2.500000
    Device Accel Adaptive Deceleration (268):       1.000000
    Device Accel Velocity Scaling (269):    12.500000
  [ many more settings omitted ] 
$ xinput set-prop 10 267 5.0

Fonte: http://unix.stackexchange.com/questions/90572/how-can-i-set-mouse-sensitivity-not-just-mouse-acceleration

sexta-feira, 6 de fevereiro de 2015

Desvinculando processos e jobs do terminal

Processo que prende o terminal

exec command
[user@localhost ~]$ system-config-users

ctrl + z para parar o processo
^Z
[1]+  Stopped                 system-config-users

bg para colocar ele em segundo plano
[user@localhost ~]$ bg
[1]+ system-config-users &

use o jobs para verificar os processos
[user@localhost ~]$ jobs
[1]+  Running                 system-config-users &

user o disown %<process number> para desvincular do terminal
[smart@localhost ~]$ disown %1


Processo direto desvinculado

execute o comando com o nohup e o "&" no final para colocar em segundo plano
[user@localhost ~]$ nohup system-config-users &


Processo já em andamento

Use o ps para localizar o PID
[user@localhost ~]$ ps ax | grep system-config-user
 4019 pts/2    Sl     0:00 /usr/bin/python /usr/share/system-config-users/system-config-users.py
 4092 pts/2    S+     0:00 grep --color=auto system-config-user

execute um kill -18 <PID> para desvincular ele da sessão do terminal
[user@localhost ~]$ kill -18 4019

segunda-feira, 1 de setembro de 2014

Recuperar boot UEFI sem formatar

ativar partiçoes lvm
# vgchange -a y

listando particoes lvm 
# lvscan

montando estrutura de dados no mnt do live
sudo mount /dev/fedora/root /mnt #caso seja uma particao lvm
sudo mount /dev/sda2 /mnt/boot/efi #sda2 e a particao com o boot UEFI
for i in /dev /dev/pts /proc /sys; do sudo mount -B $i /mnt$i; done;
modprobe efivars # make sure this is loaded
sudo chroot /mnt
apos mudar estrutura de dados
# efibootmgr -c -L Fedora -d /dev/sda -p 2 -l \\EFI\\fedora\\shim.efi -g -w
OBS: para gravar as informacoes no MBR  necessario que o -w esteja na linha que faz a craicao do boot

-c = informa que vai ser criado um boot
-L = nome do Boot a ser criado
-d = dispositivo
-p = particao que contem o UEFI Boot
** importante,  necessario qie seja informado os parametros -d e -p sempre que for feito alguma alreacao no boot, pois sao atraves deles que o bootmamager identifica a particao que devera alterar, se nao for informado as modificaoes ficaram apenas em memoria.
-l = caminho dento do /boot/efi que comtem os arquivos de boot... no linux deve-se utilizar as duas \\
-g = forca a gravacao no mbr
-w = grava as alteracoes feitas


Outra Solucao para resolver o problema,seria alterar o grub.conf dentro do pendrive com o live-fedora e acrescentar o menuentry apontando para a sua maquina, assim quando o pendrive iniciar, aparecera a opcao de boot para o equipamento fisico, mas atencao, quando copiamos o menuentry os discos podem nao bater a numeracao, certifique-se que estejam apontando para o mesmo ...

menuentry 'Fedora (3.15.4-200.fc20.x86_64) 20 (Heisenbug)' --class fedora --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.12.10-300.fc20.x86_64-advanced-139e31ae-e78c-4984-bc6f-7b0614326537' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt6 --hint-efi=hd0,gpt6 --hint-baremetal=ahci0,gpt6  14622b3b-ff28-4162-b4f6-158695bedc22
else
  search --no-floppy --fs-uuid --set=root 14622b3b-ff28-4162-b4f6-158695bedc22
fi
linuxefi /vmlinuz-3.15.4-200.fc20.x86_64 root=/dev/mapper/fedora-root ro rd.lvm.lv=fedora/swap vconsole.font=latarcyrheb-sun16 rd.lvm.lv=fedora/root  rhgb biosdevname=0 quiet LANG=en_US.UTF-8
initrdefi /initramfs-3.15.4-200.fc20.x86_64.img
}

no exemplo acima, eu tive que alterar todos os hd0 por hd1, para identificar qual o numero do dispositivo, durante o boot do live-fedora, entre no console (C) e digite >ls, assim ira listar dos os dispositivos encontrados pelo boot

Fontes: http://linuxwave.blogspot.com.br/2007/11/mounting-lvm-disk-using-ubuntu-livecd.html
http://superuser.com/questions/376470/how-to-reinstall-grub2-efi

quinta-feira, 14 de agosto de 2014

Mensagem de alerta para os terminais linux

echo -e " \e[41;1;37m Fundo Vermelho \e[0m" > /dev/pts/4

echo  imprime textos no prompt

-e desativa o ignore dos scapes

\e Caracter scape que será enterpretado pelo echo dentro da string

[41;1;37m Cor do fundo, estilo da fonte, col da letra

Fundo Vermelho texto a ser apresentado

\e[0m - retorna a configuracao original

> /dev/ptd/4  terminal para onde a mensagem será direcionada

  • 40: Black background
  • 41: Red background
  • 42: Green background
  • 43: Yellow background
  • 44: Blue background
  • 45: Purple background
  • 46: Cyan background
  • 47: White background
  • 0: Normal text
  • 1: Bold or light, depending on terminal
  • 4: Underline text
  • 30: Black
  • 31: Red
  • 32: Green
  • 33: Yellow
  • 34: Blue
  • 35: Purple
  • 36: Cyan
  • 37: White
[root@localhost dev]# echo rodrigo > /dev/tty1
[root@localhost dev]# echo rodrigo > /dev/tty2
[root@localhost dev]# echo rodrigo > /dev/tty3
[root@localhost dev]# echo rodrigo > /dev/tty4
[root@localhost dev]# echo rodrigo > /dev/tty5
[root@localhost dev]# echo rodrigo > /dev/tty6


for i in $(who | awk '{print $2}'); do echo -e " \033[41;1;37m Fundo Vermelho \033[0m" > /dev/$i; done;


#!/bin/bash

# variaveis
corPadrao="\033[0m"
preto="\033[0;30m"
vermelho="\033[0;31m"
verde="\033[0;32m"
marrom="\033[0;33m"
azul="\033[0;34m"
purple="\033[0;35m"
cyan="\033[0;36m"
cinzaClaro="\033[0;37m"
pretoCinza="\033[1;30m"
vermelhoClaro="\033[1;31m"
verdeClaro="\033[1;32m"
amarelo="\033[1;33m"
azulClaro="\033[1;34m"
purpleClaro="\033[1;35m"
cyanClaro="\033[1;36m"
branco="\033[1;37m"

echo "Imprimindo cores"

echo -e " \033[0;30m Preto  \033[0m             --> 0;30 "
echo -e " \033[0;31m Vermelho  \033[0m          --> 0;31 "
echo -e " \033[0;32m Verde  \033[0m             --> 0;32 "
echo -e " \033[0;33m Marrom  \033[0m            --> 0;33 "
echo -e " \033[0;34m Azul  \033[0m              --> 0;34 "
echo -e " \033[0;35m Purple  \033[0m            --> 0;35 "
echo -e " \033[0;36m Cyan  \033[0m              --> 0;36 "
echo -e " \033[0;37m Cinza Claro  \033[0m       --> 0;37 "
echo -e " \033[1;30m Preto Acinzentado \033[0m  --> 1;30 "
echo -e " \033[1;31m Vermelho Claro  \033[0m    --> 1;31 "
echo -e " \033[1;32m Verde Claro  \033[0m       --> 1;32 "
echo -e " \033[1;33m Amarelo \033[0m            --> 1;33 "
echo -e " \033[1;34m Azul  Claro \033[0m        --> 1;34 "
echo -e " \033[1;35m Purple Claro  \033[0m      --> 1;35 "
echo -e " \033[1;36m Cyan  Claro \033[0m        --> 1;36 "
echo -e " \033[1;37m Branco  \033[0m            --> 1;37 "

echo -e " \033[40;1;37m Fundo Preto    \033[0m     --> 40;?;? "
echo -e " \033[41;1;37m Fundo Vermelho \033[0m     --> 41;?;? "
echo -e " \033[42;1;37m Fundo Verde    \033[0m     --> 42;?;? "
echo -e " \033[43;1;37m Fundo Marrom   \033[0m     --> 43;?;? "
echo -e " \033[44;1;37m Fundo Azul     \033[0m     --> 44;?;? "
echo -e " \033[45;1;37m Fundo Purple   \033[0m     --> 45;?;? "
echo -e " \033[46;1;37m Fundo Cyan     \033[0m     --> 46;?;? "
echo -e " \033[47;1;37m Fundo Cinza    \033[0m     --> 47;?;? "

echo -e " \033[4;30m Sublinhado  \033[0m        --> 4;? "
echo -e " \033[5;30m Piscando    \033[0m        --> 5;? "
echo -e " \033[7;30m Invertido   \033[0m        --> 7;? "
echo -e " \033[8;30m Concealed   \033[0m        --> 8;? "


fonte: 
https://www.digitalocean.com/community/tutorials/how-to-customize-your-bash-prompt-on-a-linux-vps


quarta-feira, 11 de junho de 2014

Trocar nome da interface de rede de P8p1 para ETH0

Primeiro, acrecente o parametro biosdevname=0 no grub.conf na linha de load do kernel:
title Fedora (2.6.40.4-5.fc15.x86_64)
 root (hd0,0)
 kernel /boot/vmlinuz-2.6.40.4-5.fc15.x86_64 ro root=/dev/md0 SYSFONT=latarcyrheb-sun16 KEYTABLE=us biosdevname=0 quiet LANG=en_US.UTF-8
 initrd /boot/initramfs-2.6.40.4-5.fc15.x86_64.img
Abra / Crie o arquivo /etc/udev/rules.d/70-persistent-net.rules e utilize o modelo abaixo para definir o nome da interface
Lembre-se de definir corretamente o mac address
# Be sure to put your MAC addresses in the fields below
# SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:11:22:33:44:10", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
# SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:11:22:33:44:11", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
depois basta criar um arquivo ifcfg-ethX em /etc/sysconfig/network-scripts/ lembrando de acertar o mac address, pode-se utilizar o anterior p8p1 como exemplo.
...
HWADDR=00:11:22:33:44:10
...
Reinicie a máquina e pronto.

quinta-feira, 15 de maio de 2014

Rastreando os ips visíveis aos dispositivos de rede

  • Rastreamento Geral
for i in $(ip route | grep -v default | awk '{print $1 "-" $3}'); \
do \
nmap -sP $(echo $i | cut -d \- -f 1) | grep 'Nmap scan' | awk '{print "\033[32m" $5 "\033[39m"}'; \
done | sort | uniq
  • Rastreamento por interface
for i in $(ip route | grep -v default | awk '{print $1 "-" $3}'); \
do \
echo "============================="; \
echo "Rastreando a rede $(echo $i | cut -d \- -f 2)"; \
nmap -sP $(echo $i | cut -d \- -f 1) | grep 'Nmap scan' | awk '{print "\033[32m" $5 "\033[39m"}'; \
done;
  • Rastramento por interface com portas
for i in $(ip route | grep -v default | awk '{print $1 "-" $3}'); \
do echo "============================="; \
echo "Rastreando a rede $(echo $i | cut -d \- -f 2)"; \
nmap $(echo $i | cut -d \- -f 1) | egrep -v 'Not shown' | \
awk '{if ($0 ~ /PORT/) print "\033[33m" $0 "\033[39m"; \
else if ($2 ~ /open/) print "\033[32m" $0 "\033[39m"; \
else if($2 ~ /closed/) print "\033[31m" $0 "\033[39m"; \
else print $0}'; \
done;

terça-feira, 29 de abril de 2014

Rastreando canais e frequencias das redes wifi proximas

  • Para rastrear as frequências e canais
sudo iwlist wlp2s0 scan | egrep "Frequency\:.*\(Channel" | sort | uniq -c | sort -nr ; iwgetid -c
  • Para ober informações das redes
sudo iwlist wlp2s0 scan | egrep "Frequency\:.*\(Channel|ESSID|Quality|Address"

quarta-feira, 26 de março de 2014

Resolvendo problemas de permissão do Policykit / Packagekit para a role update-package

Acrescentar a action abaixo no arquivo

# yum install PackageKit
# vim /usr/share/polkit-1/actions/org.freedesktop.packagekit.policy

...
  <action id="org.freedesktop.packagekit.update-package">
    <description>Update foreign package</description>
    <description xml:lang="pt_BR">Atualiza pacote externo</description>
    <message>Authentication is required to update a package that was not started by yourself</message>
    <message xml:lang="pt_BR">É necessário autenticar para atualizar um pacote que não foi iniciada por você</message>
    <icon_name>package-x-generic</icon_name>
    <defaults>
      <allow_any>no</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>auth_admin</allow_active>
    </defaults>
  </action>
...

quarta-feira, 13 de novembro de 2013

Como determinar varios ips para a mesma placa de rede fedora


Criando ip na rede temporariamente

ifconfig eth0:1 10.151.22.34 up

Creating Virtual Interface and Assign Multiple IP Addresses

Here I have an interface called “ifcfg-eth0“, the default interface for the Ethernet device. If you’ve attached second Ethernet device, then there would be an “ifcfg-eth1” device and so on for each device you’ve attached. These device network files are located in “/etc/sysconfig/network-scripts/” directory. Navigate to the directory and do “ls -l” to list all devices.
# cd /etc/sysconfig/network-scripts/
# ls -l
Sample Output
ifcfg-eth0   ifdown-isdn    ifup-aliases  ifup-plusb     init.ipv6-global
ifcfg-lo     ifdown-post    ifup-bnep     ifup-post      net.hotplug
ifdown       ifdown-ppp     ifup-eth      ifup-ppp       network-functions
ifdown-bnep  ifdown-routes  ifup-ippp     ifup-routes    network-functions-ipv6
ifdown-eth   ifdown-sit     ifup-ipv6     ifup-sit
ifdown-ippp  ifdown-tunnel  ifup-isdn     ifup-tunnel
ifdown-ipv6  ifup           ifup-plip     ifup-wireless
Let’s assume that we want to create three additional virtual interfaces to bind three IP addresses (172.16.16.126172.16.16.127, and 172.16.16.128) to the NIC. So, we need to create three additional alias files, while “ifcfg-eth0” keeps the same primary IP address. This is how we moving forward to setup three aliases to bind the following IP addresses.
Adapter            IP Address                Type
-------------------------------------------------
eth0              172.16.16.25            Primary
eth0:0            172.16.16.26            Alias 1
eth0:1            172.16.16.27            Alias 2
eth0:2            172.16.16.28            Alias 3
Where “:X” is the device (interface) number to create the aliases for interface eth0. For each alias you must assign a number sequentially. For example, we copying existing parameters of interface “ifcfg-eth0” in virtual interfaces called ifcfg-eth0:0ifcfg-eth0:1 and ifcfg-eth0:2. Go into the network directory and create the files as shown below.
# cd /etc/sysconfig/network-scripts/
# cp ifcfg-eth0 ifcfg-eth0:0
# cp ifcfg-eth0 ifcfg-eth0:1
# cp ifcfg-eth0 ifcfg-eth0:2
Open a file “ifcfg-eth0” and view the contents.
[root@tecmint network-scripts]# vi ifcfg-eth0

DEVICE="eth0"
BOOTPROTO=static
ONBOOT=yes
TYPE="Ethernet"
IPADDR=172.16.16.125
NETMASK=255.255.255.224
GATEWAY=172.16.16.100
HWADDR=00:0C:29:28:FD:4C
Here we only need two parameters (DEVICE and IPADDR). So, open each file with VI editor and rename the DEVICE name to its corresponding alias and change the IPADDR address. For example, open files “ifcfg-eth0:0“, “ifcfg-eth0:1” and “ifcfg-eth0:2” using VI editor and change both the parameters. Finally it will look similar to below.
ifcfg-eth0:0
DEVICE="eth0:0"
BOOTPROTO=static
ONBOOT=yes
TYPE="Ethernet"
IPADDR=172.16.16.126
NETMASK=255.255.255.224
GATEWAY=172.16.16.100
HWADDR=00:0C:29:28:FD:4C
ifcfg-eth0:1
DEVICE="eth0:1"
BOOTPROTO=static
ONBOOT=yes
TYPE="Ethernet"
IPADDR=172.16.16.127
NETMASK=255.255.255.224
GATEWAY=172.16.16.100
HWADDR=00:0C:29:28:FD:4C
ifcfg-eth0:2
DEVICE="eth0:2"
BOOTPROTO=static
ONBOOT=yes
TYPE="Ethernet"
IPADDR=172.16.16.128
NETMASK=255.255.255.224
GATEWAY=172.16.16.100
HWADDR=00:0C:29:28:FD:4C
Once, you’ve made all changes, save all your changes and restart/start the network service for the changes to reflect.
[root@tecmint network-scripts]# /etc/init.d/network restart
To verify all the aliases (virtual interface) are up and running, you can use “ifconfig” or “ip” command.
[root@tecmint network-scripts]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.125  Bcast:172.16.16.100  Mask:255.255.255.224
          inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:237 errors:0 dropped:0 overruns:0 frame:0
          TX packets:198 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:25429 (24.8 KiB)  TX bytes:26910 (26.2 KiB)
          Interrupt:18 Base address:0x2000

eth0:0    Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.126  Bcast:172.16.16.100  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:18 Base address:0x2000

eth0:1    Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.127  Bcast:172.16.16.100  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:18 Base address:0x2000

eth0:2    Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.128  Bcast:172.16.16.100  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:18 Base address:0x2000
Ping each of them from different machine. If everything setup correctly, you will get a ping response from each of them.
ping 172.16.16.126
ping 172.16.16.127
ping 172.16.16.128
Sample Output
[root@tecmint ~]# ping 172.16.16.126
PING 172.16.16.126 (172.16.16.126) 56(84) bytes of data.
64 bytes from 172.16.16.126: icmp_seq=1 ttl=64 time=1.33 ms
64 bytes from 172.16.16.126: icmp_seq=2 ttl=64 time=0.165 ms
64 bytes from 172.16.16.126: icmp_seq=3 ttl=64 time=0.159 ms

--- 172.16.16.126 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 0.159/0.552/1.332/0.551 ms

[root@tecmint ~]# ping 172.16.16.127
PING 172.16.16.127 (172.16.16.127) 56(84) bytes of data.
64 bytes from 172.16.16.127: icmp_seq=1 ttl=64 time=1.33 ms
64 bytes from 172.16.16.127: icmp_seq=2 ttl=64 time=0.165 ms
64 bytes from 172.16.16.127: icmp_seq=3 ttl=64 time=0.159 ms

--- 172.16.16.127 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 0.159/0.552/1.332/0.551 ms

[root@tecmint ~]# ping 172.16.16.128
PING 172.16.16.128 (172.16.16.128) 56(84) bytes of data.
64 bytes from 172.16.16.128: icmp_seq=1 ttl=64 time=1.33 ms
64 bytes from 172.16.16.128: icmp_seq=2 ttl=64 time=0.165 ms
64 bytes from 172.16.16.128: icmp_seq=3 ttl=64 time=0.159 ms

--- 172.16.16.128 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 0.159/0.552/1.332/0.551 ms
Seems everything working smoothly, With these new IPs’ you can setup virtual sites in Apache,FTP accounts and many other things.

Assign Multiple IP Address Range

If you would like to create a range of Multiple IP Addresses to a particular interface called “ifcfg-eth0“, we use “ifcfg-eth0-range0” and copy the contains of ifcfg-eth0 on it as shown below.
[root@tecmint network-scripts]# cd /etc/sysconfig/network-scripts/
[root@tecmint network-scripts]# cp -p ifcfg-eth0 ifcfg-eth0-range0
Now open “ifcfg-eth0-range0” file and add “IPADDR_START” and “IPADDR_END” IP address range as shown below.
[root@tecmint network-scripts]# vi ifcfg-eth0-range0

#DEVICE="eth0"
#BOOTPROTO=none
#NM_CONTROLLED="yes"
#ONBOOT=yes
TYPE="Ethernet"
IPADDR_START=172.16.16.126
IPADDR_END=172.16.16.130
IPV6INIT=no
#GATEWAY=172.16.16.100
Save it and restart/start network service
[root@tecmint network-scripts]# /etc/init.d/network restart
Verify that virtual interfaces are created with IP Address.
[root@tecmint network-scripts]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.125  Bcast:172.16.16.100  Mask:255.255.255.224
          inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1385 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1249 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:127317 (124.3 KiB)  TX bytes:200787 (196.0 KiB)
          Interrupt:18 Base address:0x2000

eth0:0     Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.126  Bcast:172.16.16.100  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:18 Base address:0x2000

eth0:1    Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.127  Bcast:172.16.16.100  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:18 Base address:0x2000

eth0:2    Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.128  Bcast:172.16.16.100  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:18 Base address:0x2000

eth0:3    Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.129  Bcast:172.16.16.100  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:18 Base address:0x2000

eth0:4    Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:172.16.16.130  Bcast:172.16.16.100  Mask:255.255.255.224
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:18 Base address:0x2000