Usar os comandos "cat" e "echo" é a maneira mais simples de acessar os arquivos deste diretório, mas alguns pontos devem ser observados:
O sistema de arquivos /proc deve estar habilitado no kernel , ou seja, a seguinte chave deve estar configurada
CONFIG_PROC_FS=y |
O sistema de arquivos já deve estar montado, o que pode ser testado como comando
# mount | grep "type proc" none on /proc type proc (rw) |
Voce pode ler e também escrever (geralmente como root) nos arquivos contidos aqui (/proc)
Normalmente, somente as entradas localizadas em /proc/sys/* podem ser alteradas, as demais são somentepara leitura e para obtenção de informações.
O valor de uma entrada pode ser obtido com o comando "cat":
# cat /proc/sys/net/ipv6/conf/all/forwarding 0 |
Um novo valor pode ser definido (se a entrada aceitar a escrita) através do comando "echo":
# echo "1" >/proc/sys/net/ipv6/conf/all/forwarding |
O uso do programa "syysctl" para acessar as chaves do kernel é uma maneira moderna utilizada hoje em dia. Voce também pode usar se o sistema de arquivos /proc não estiver montado. Mas voce só terá acesso às entradas /proc/sys/*!
O programa "sysctl" está incluído no pacote "procps" (em sistemas Red Hat Linux).
A interface do sysctl deve estar habilitada no kernel, então a seguinte chave deve estar habilitada
CONFIG_SYSCTL=y |
O valor de uma entrada pode ser obtida da seguinte maneira:
# sysctl net.ipv6.conf.all.forwarding net.ipv6.conf.all.forwarding = 0 |
Um novo valor pode ser definido (se a entrada aceitar a escrita):
# sysctl -w net.ipv6.conf.all.forwarding=1 net.ipv6.conf.all.forwarding = 1 |
Nota: Não use espaços entre o sinal = para definir os valores. Se forem possíveis diversos valores, coloque-os entre aspas
# sysctl -w net.ipv4.ip_local_port_range="32768 61000" net.ipv4.ip_local_port_range = 32768 61000 |
Nota: Existem versões em campo que mostram "/" ao invés de "."
Para mais detalhes, de uma olhada na manpage do sysctl.
Dica: para achar mais rapidamente as definiçoes, use a opçao "-a" (mostra todas as entradas) junto com o comando "grep".
Existem vários formatos vistos no sistema de arquivos /proc:
BOOLEANO: simplesmente um "0" (falso) ou um "1" (verdadeiro)
INTEIRO: um valor inteiro, também pode ser sem sinal
linhas mais sofisticadas com muitos valores: às vezes uma linha de cabeçalho também é mostrada, senão, uma olhada no código fonte do kernel pode ser necessário para entender o significado dos valores apresentados...