etc

São exemplos de arquivos armazenados neste diretório
/etc
  |-- adjtime
  |-- at.allow
  |-- at.deny
  |-- bashrc
  |-- confissue
  |-- conf.modules
  |-- crontab
  |-- csh.login
  |-- default
  |        |-- useradd
  |-- DIR_COLORS
  |-- exports
  |-- fdprm
  |-- fstab
  |-- ftpusers
  |-- gettydefs
  |-- group
  |-- gshadow
  |-- host.conf
  |-- hosts
  |-- hosts.allow
  |-- hosts.deny
  |-- inetd.conf
  |-- inittab
  |-- issue
  |-- issue.net
  |-- ld.so.cache
  |-- lilo.conf
  |-- login.defs
  |-- man.config
  |-- motd
  |-- mtab
  |-- mtools
  |-- nologin
  |-- passwd
  |-- printcap
  |-- profile
  |-- profile.d
  |        |-- lang.sh
  |-- protocols
  |-- quota.conf
  |-- rc.d
  |        |-- init.d
  |        |-- rc
  |        |-- rc.local
  |        |-- rc.sysinit
  |-- rpc
  |-- securetty
  |-- services
  |-- shadow
  |-- shells
  |-- shutdown.allow
  |-- skel
  |-- sudoers
  |-- sysconfig
  |        |-- hwconf
  |-- syslog.conf
  |-- termcap
  |-- versão-conectiva
  |-- X11
  |        |-- prefdm

adjtime

Este arquivo possui o fator de correção para o RTC (real time clock, ou seja, relógio de tempo real).


at.allow

Este arquivo possui a lista dos usuários que podem usar o comando at.

Se este arquivo não existir, todos os usuários têm permissão. Se este arquivo estiver vazio, apenas o root pode executar o comando at.


at.deny

Este arquivo possui a lista dos usuários que não podem usar o comando at.

Se o arquivo /etc/at.allow não existir, é verificada a existência do arquivo at.deny e todos os usuários não mencionados no mesmo, recebem permissão para executar o comando at.


bashrc

Este arquivo possui as funções e os aliases disponíveis a todos os usuários do sistema. As letras RC no nome bashrc significa Run Control File (arquivo de controle de execução).

Abaixo mostramos o arquivo padrão da distribuição Conectiva 6.0.

# /etc/bashrc
# Funções e aliases para todo o sistema
# Configurações do ambiente devem ser feitas no arquivo /etc/profile
alias which="type -path"
alias l="ls -laF --color=tty"
alias ls="ls --color=tty"
alias m="minicom -s -con -L"
alias minicom="minicom -s -con -L"
alias tm="tail -f /var/log/messages"
alias tmm="tail -f /var/log/maillog"
alias tms="tail -f /var/log/secure"
alias cds="cd /etc/rc.d/init.d && ls"
alias fd="mount /dev/fd0 /mnt/floppy; cd /mnt/floppy && ls"
alias ufd="cd /mnt && umount floppy && ls"
alias ldir="mount /mnt/floppy && l /mnt/floppy && umount /mnt/floppy"

confissue

Este arquivo é usado como tela de inicialização, no modo texto, dos usuários do sistema.

Na distribuição Conectiva Linux, este arquivo foi substituído pelos arquivos issue e issue.net.


conf.modules

Este arquivo possui a configuração dos módulos do kernel. Abaixo temos o arquivo padrão do Conectiva 5.0.

alias parport_lowlevel parport_pc


crontab

Este é o arquivo crontab do sistema, ou seja, este é o arquivo que armazena as tarefas agendadas do sistema.

Abaixo temos o arquivo padrão do Conectiva 6.0 onde existem quatro tarefas agendadas.

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly


csh.login

Este é o arquivo de configuração do shell tcsh. Ele é lido durante o login por todos os usuários que utilizam este interpretador de comandos.


default

Este diretório armazena a configuração padrão de alguns comandos dos sistema.


useradd

Este arquivo possui a configuração padrão usada pelo comando useradd.

Abaixo temos o arquivo padrão do Conectiva 6.0. Neste exemplo, temos as seguintes definições: o diretório home do novo usuário é armazenado em /home; a conta não possui data de expiração (valor -1); o shell padrão a ser usado é o bash; os arquivos de configuração a serem copiados para a conta do usuário estão em /etc/skel.

# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel

DIR_COLORS

Este arquivo possui a definição das cores padrão usadas pelo comando ls.


exports

Este arquivo define para o NFS os arquivos que são compartilhado na rede.


fdprm

O nome deste arquivo é acrônimo para "floppy disk parameter table", ou seja, "tabela de parâmetros de floppy disk (disquete)". Este arquivo descreve os formatos de disco a serem lidos pelo drive.


fstab

Este arquivo mostra os dispositivos de hardware disponíveis no seu sistema (isto não significa que estejam montados) e é usado pelo swapon e mount durante o processo de inicialização do sistema. Somente o root (administrador do sistema) pode modificá-lo.

No exemplo abaixo, a primeira linha define a partição raiz, a segunda linha define a partição swap, a terceira linha define a unidade de disquete, a quarta linha define a unidade de CD-ROM, e a quinta linha define o pseudo-diretório /proc.
Sistema de Arquivos Ponto de Montagem Tipo opções dp ord
/dev/hda3 / ext2 defaults 1 1
/dev/hda2 swap swap defaults 0 0
/dev/fd0 /mnt/floppy auto user,noauto 0 0
/dev/cdrom /mnt/cdrom iso9660 noauto,ro 0 0
none /proc proc defaults 0 0
none /dev/pts devpts mode=0622 0 0
As duas primeiras colunas mostram, respectivamente, o nome do sistema de arquivos, e o ponto de montagem.

A terceira coluna mostra o tipo do sistema de arquivos usado, onde, por exemplo:

A quarta coluna exibe as opções de montagem do sistema de arquivos, onde algumas das opções são

A quinta coluna define quais sistemas de arquivos devem ser copiados pelo programa dump. Este programa examina os arquivos e determina quais arquivos devem ser copiados (backup). Um valor zero significa que o sistema não é examinado pelo programa dump. Um valor 1 significa que será feito o backup do sistema de arquivos toda vez que o programa dump for executado.

A sexta coluna define a ordem pela qual os sistemas de arquivos devem ser verificados durante o processo de inicialização pelo programa fsck. O sistema raiz (/) deve ter ordem 1 (primeiro a ser verificado) e os outros sistemas devem ter valor zero (não é verificado) ou valor maior que 1 (é verificado). É possível especificar um mesmo valor para mais de um sistema de arquivos, isto significa que os sistemas serão checados em paralelo.

ftpusers

Este arquivo possui a lista dos usuários autorizados a fazer ftp na máquina.

gettydefs

Este arquivo possui as configurações de velocidade e os parâmetros de tty das linhas usados pelo getty.

Cada entrada em /etc/gettydefs tem o seguinte formato:

entrada# indicadores iniciais # indicadores finais # prompt de acesso #próxima entrada

onde

Caso o getty seja ativado sem um argumento de velocidade, a primeira entrada do /etc/gettydefs é usada como padrão.

group

Este arquivo possui as definições dos grupos do sistema. Existe uma entrada no arquivo para cada grupo de usuários do sistema com as seguintes informações: nome do grupo, senha do grupo (se houver), número de GID (group identification) e a lista dos usuário que pertencem a esse grupo.

Por exemplo, a linha abaixo mostra a entrada criada em etc/group para o grupo sys que tem GID igual a 3 e que possui três membros: root, bin e adm.

sys:x:3:root,bin,adm

gshadow

Este arquivo possui as senhas criptografadas dos grupos do sistema.

Apenas o root (administrador do sistema) tem permissão para acessar o arquivo /etc/gshadow.

O comando grpconv é usado para criar o arquivo gshadow a partir do arquivo /etc/group, enquanto o comando grpunconv executa a operação inversa.


host.conf

Este arquivo configura a ordem de procura dos nomes das máquinas.

order hosts,bind
multi on

hosts

Este arquivo possui os endereços e os nomes das máquinas da rede. Inicialmente, o arquivo apresenta a seguinte configuração padrão

127.0.0.1 localhost localhost.localdomain

hosts.allow

Este arquivo possui a lista das máquinas que possuem autorização para acessar os serviços de rede colocados disponíveis por esta máquina.


hosts.deny

Este arquivo possui a lista das máquinas que não podem acessar os serviços de rede colocados disponíveis por esta máquina.


inetd.conf

Este é o arquivo de configuração dos serviços mantidos pelo servidor INETD. Esses serviços são disponibilizados para as máquinas listadas em /etc/hosts.allow e proibidos para as máquinas listadas em /etc/hosts.deny.


inittab

É o primeiro arquivo lido pelo sistema pois possui a configuração usada pelo processo init. Uma entrada no arquivo inittab tem geralmente o seguinte formato:

label:runlevel:action:process

onde

O arquivo inittab da distribuição Conectiva Linux 5.0 é mostrado abaixo (os comentários foram retirados e a numeração das linhas foi incluída para facilitar a discussão feita em seguida):

1. id:5:initdefault:
2. si::sysinit:/etc/rc.d/rc.sysinit
3. l0:0:wait:/etc/rc.d/rc 0
4. l1:1:wait:/etc/rc.d/rc 1
5. l2:2:wait:/etc/rc.d/rc 2
6. l3:3:wait:/etc/rc.d/rc 3
7. l4:4:wait:/etc/rc.d/rc 4
8. l5:5:wait:/etc/rc.d/rc 5
9. l6:6:wait:/etc/rc.d/rc 6
10. ca::ctrlaltdel:/sbin/shutdown -t3 -r now
11. pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"
12. pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"
13. 1:2345:respawn:/sbin/mingetty tty1
14. 2:2345:respawn:/sbin/mingetty tty2
15. 3:2345:respawn:/sbin/mingetty tty3
16. 4:2345:respawn:/sbin/mingetty tty4
17. 5:2345:respawn:/sbin/mingetty tty5
18. 6:2345:respawn:/sbin/mingetty tty6
19. x:5:respawn:/etc/X11/prefdm -nodaemon

Podemos comentar em relação ao arquivo inittab:


issue

Este arquivo é usado como tela de inicialização, no modo texto, dos usuários do sistema.

Normalmente, este arquivo mostra o nome e a versão do sistema operacional, além do logotipo do Linux.

Em algumas distribuições Linux, este arquivo é criado a cada boot da máquina pelo arquivo /etc/rc.d/rc.local.

Para conhecer os caracteres especiais que podem ser usados neste arquivo, veja mingetty.


issue.net

Este arquivo é usado como tela de inicialização em um login remoto (por exemplo, telnet).

Em algumas distribuições Linux, este arquivo é criado a cada boot da máquina pelo arquivo /etc/rc.d/rc.local.

Para conhecer os caracteres especiais que podem ser usados neste arquivo, veja mingetty.


ld.so.cache

Este arquivo possui as informações sobre as bibliotecas compartilhadas do sistema. Sempre que uma alteração ocorre em bibliotecas compartilhadas em qualquer diretório configurado (arquivo /etc/ld.so.conf), deve-se executar o comando ldconfig para atualizar o arquivo de cache.


ld.so.conf

Este arquivo possui a lista dos diretórios onde são armazenadas as bibliotecas compartilhadas.

Abaixo temos um exemplo do ld.so.conf da distribuição Conectiva Linux 5.0.

/usr/i486-linuxaout/lib
/usr/X11R6/lib
/usr/lib
/usr/i486-linux-libc5/lib

Sempre que este arquivo é atualizado, deve-se executar o programa ldconfig. Este comando lê o arquivo /etc/ld.so.config e atualiza o arquivo /etc/ld.so.cache, que é utilizado pelo carregador dinâmico (biblioteca compartilhada usada para carregar e linkar dinamicamente outras bibliotecas compartilhadas).


lilo.conf

Este é o arquivo de configuração do LILO onde são definidas as diferentes imagens que podem ser usadas no processo de inicialização do sistema. Abaixo mostramos um exemplo deste arquivo (incluimos a numeração das linhas para facilitar a explicação feita em seguida).

1. boot=/dev/hda
2. map=/boot/map
3. install=/boot/boot.b
4. prompt
5. timeout=50
6. message=/boot/message
7. other=/dev/hda1
8.      label=w
9.      table=/dev/hda
10. image=/boot/vmlinuz-2.2.14-19c
11.      label=l
12.      root=/dev/hda3
13.      read-only

Podemos fazer os seguintes comentários sobre o exemplo acima:

A configuração acima permite que qualquer usuário reinicialize o sistema em modo single e passe a ter acesso, sem senha, a qualquer parte do sistema. Para isto basta que o usuário digite na linha de inicialização a seguinte identificação:

l single

A identificação acima faz o sistema inicializar o Linux no modo monousuário (o processo init usa o nível de execução 1). Nenhuma senha é solicitada e o usuário tem acesso imediato à raiz. Esta é uma porta de acesso importante para quem esqueceu a senha do root, mas é também uma porta que pode permitir intrusos indesejáveis. Para fechar esta porta adicione ao lilo.conf os parâmetros restricted e password e em seguida, digite lilo na linha de comando para validar a alteração feita no arquivo lilo.conf.

Vejamos como podemos alterar o arquivo lilo.conf do exemplo acima para impedir que algum usuário entre com a identificação l single.

image=/boot/vmlinuz-2.2.14-19c
label=l
root=/dev/hda3
read-only
password=teste
restricted

A opção password define uma senha que deve ser informada durante a reinicialização do sistema. A opção restricted ameniza um pouco a segurança. Ela diz que a senha é requerida apenas quando são passados parâmetros para o sistema durante a inicialização (o termo single, por exemplo). Portanto, deve-se fornecer a senha teste após a inicialização do sistema em modo single. Naturalmente, as permissões de acesso ao arquivo lilo.conf devem ser alteradas para impedir que este arquivo seja lido por qualquer outro usuário que não o root (use o comando chmod).


login.defs

Este arquivo possui a configuração padrão utilizada pelo comando adduser na criação de novas contas de usuários.

Abaixo temos o arquivo padrão da distribuição Conectiva 6.0. Os comentários (as linhas que começam com #) não estão aqui reproduzidas com o objetivo de facilitar a visualização das diretivas definidas neste arquivo.

MAIL_DIR /var/spool/mail
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_MIN_LEN 5
PASS_WARN_AGE 7
UID_MIN 500
UID_MAX 60000
GID_MIN 500
GID_MAX 60000
CREATE_HOME yes

onde


man.config

Este arquivo possui a lista dos diretórios onde as páginas do manual on-line (comando man) devem ser procuradas, além de definir a ordem em que a pesquisa por uma página do manual é feita. Abaixo mostramos o arquivo padrão do Conectiva 6.0.

FHS
MANPATH /usr/man
MANPATH /usr/share/man
MANPATH /usr/local/man
MANPATH /usr/X11R6/man
MANPATH /usr/lib/perl5/man
MANPATH_MAP /bin /usr/man
MANPATH_MAP /sbin /usr/man
MANPATH_MAP /usr/bin /usr/man
MANPATH_MAP /usr/sbin /usr/man
MANPATH_MAP /usr/local/bin /usr/local/man
MANPATH_MAP /usr/X11R6/bin /usr/X11R6/man
MANPATH_MAP /usr/bin/X11 /usr/X11R6/man
MANPATH_MAP /usr/bin/mh /usr/man
TROFF /usr/bin/groff -Tps -mandoc
NROFF /usr/bin/groff -Tlatin1 -mandoc
EQN /usr/bin/geqn -Tps
NEQN /usr/bin/geqn -Tlatin1
TBL /usr/bin/gtbl
REFER /usr/bin/grefer
PIC /usr/bin/gpic
VGRIND
GRAP
PAGER /usr/bin/less -is
CAT /usr/bin/cat
CMP /usr/bin/cmp -s
COMPRESS /usr/bin/gzip
COMPRESS_EXT .gz
MANSECT 1:8:2:3:4:5:6:7:9:tcl:n:l:p:o
.gz /usr/bin/gunzip -c
.bz2 /usr/bin/bzip2 -c -d
.z
.Z
.F
.Y

Observe a definição da variável de ambiente MANSECT no exemplo acima. É esta variável que define a ordem em que as seções do manual são pesquisadas. Por exemplo, existe o comando de administração do sistema (8) swapon e a chamada de sistema (2) swapon. De acordo com o arquivo mostrado, se o usuário digitar

man swapon

o sistema fornecerá informações sobre o comando swapon, pois o nível 8 é pesquisado antes do nível 2. Para ler sobre a chamada de sistema swapon, o usuário deve digitar

man 2 swapon

motd

O nome deste arquivo é acrônimo para "Message Of The day", ou seja, "mensagem do dia". Ele pode ser usado pelo administrador para enviar mensagens aos usuários do sistema.

O motd é um simples arquivo texto cujo conteúdo é exibido pelo processo login após um login bem sucedido, antes do shell ser executado.


mtab

Este arquivo possui a lista dos sistemas de arquivos que estão montados no Linux.

Os campos exibidos neste arquivo significam: nome do sistema de arquivo, ponto de montagem, tipo do sistema de arquivos, opções de montagem, opção de cópia (backup) do sistema e ordem de verificação do sistema.

No exemplo abaixo, temos dois sistemas de arquivos que foram montados. O primeiro é o /dev/hda3 montado em / e o segundo é o /dev/fd0 montado em /mnt/floppy.

/dev/hda3 / ext2 rw 0 0
none /proc proc rw 0 0
none /dev/pts devpts rw,mode=0622 0 0
/dev/fd0 /mnt/floppy vfat rw,noexec,nosuid,nodev,user=aluno 0 0

Veja a descrição de /etc/fstab para conhecer um pouco sobre as opções de montagem.


mtools

Este é o arquivo configuração do pacote mtools.
nologin

Este arquivo impede que usuários comuns (não são root) acessem o sistema.

Se este arquivo existe, o login permite apenas o acesso do root ao sistema. Se um usuário comum tentar logar, o conteúdo do arquivo nologin é apresentado e o login é recusado.


passwd

Este arquivo possui a lista de usuários do sistema.

Existe uma entrada no arquivo para cada usuário do sistema com as seguintes informações: nome, senha (caso se use shadow password em seu sistema, as senhas criptografadas são armazenadas em /etc/shadow), número de UID (user identification), número de GID (group identification), informações sobre o usuário (inicialmente está vazio), o diretório home do usuário e o shell padrão do usuário. Por exemplo, a linha abaixo mostra a entrada criada em /etc/passwd para o usuário aluno que tem UID e GID iguais a 501.

aluno:x:501:501::/home/aluno:/bin/bash

As informações sobre o usuário (nome, telefone, local de trabalho, etc) são incluídas com o comando chfn e visualizadas com o comando finger.


printcap

Este arquivo possui a configuração das impressoras do sistema.

O exemplo abaixo mostra a definição de uma impressora Epson Stylus Color 600 definida através da ferramenta printtoll.

##PRINTTOOL3## LOCAL uniprint NAxNA a4 {}
##U_EpsonStylusColor stc600ih 1
lp:\
:sd=/var/spool/lpd/lp:\
:mx#0:\
:sh:\
:lp=/dev/lp0:\
:if=/var/spool/lpd/lp/filter:

onde

sd define o diretório de spool;
mx define o tamanho máximo do arquivo (zero = ilimitado);
sh suprime a impressão de cabeçalho de página;
lp define o nome do dispositivo de saída;
if define o filtro usado na impressão dos arquivos.

profile

Este arquivo possui a definição padrão do ambiente do sistema pois abriga as configurações para todos os usuários.

Normalmente, a configuração de aliases e funções é feita no arquivo bashrc
profile.d

Este diretório possui as definições usadas pelos usuários.


lang.sh

Este arquivo define as variáveis de ambiente relacionadas ao idioma padrão do sistema.


protocols

Este arquivo possui a lista dos protocolos Internet DARPA que estão disponíveis para o subsistema TCP/IP. Cada linha deste arquivo possui o seguinte formato:

protocolo número aliases ...

onde

Abaixo mostramos algumas linhas do arquivo protocols da ditribuição Conectiva 6.0.

ip0IP# internet protocol, pseudo protocol number
icmp1ICMP# internet control message protocol
igmp2IGMP# Internet Group Management
ggp3GGP# gateway-gateway protocol
ipencap4IP-ENCAP# IP encapsulated in IP (officially ``IP'')

quota.conf

Este arquivo possui as definições das cotas do sistema. Abaixo temos um exemplo deste arquivo com três definições: a cota padrão para os usuários, a cota padrão para os grupos e a cota para o usuário aluno.

[base]
userdef./dev/hda3 none 35000 40000 -1 -1 604800 604800
groupdef./dev/hda3 none -1 -1 -1 -1 604800 604800
user./dev/hda3 aluno 50000 60000 -1 -1 304200 604800

rc.d

Este diretório possui os arquivos/diretórios usados na inicialização do sistema.

Os scripts relacionados a cada runlevel estão armazenados no diretório rcX.d, onde X é o número de runlevel. Dentro de cada diretório, existem arquivos cujos nomes começam com Snn e Knn, onde nn são dois números.

Os arquivos que começam com a letra S (Start) correspondem a serviços que devem ser inicializados nesse runlevel. Os dois números que seguem a letra S indicam a ordem em que esses processos devem ser inicializados. Normalmente, o último processo a ser inicializado é o rc.local que possui as tarefas específicas da máquina em questão. Os arquivos que começam com K (Kill) indicam quais processos devem ser finalizados naquele runlevel.

Na realidade, os scripts de rcn.d são apenas links lógicos para os scripts reais que estão localizados no diretório /etc/rc.d/init.d.

Na distribuição Conectiva Linux 6.0 temos os seguintes diretórios: rc0.d, rc1.d, rc2.d, rc3.d, rc4.d, rc5.d e rc6.d. Portanto, temos 7 diferentes níveis de inicialização do sistema.


init.d

Este diretório possui os scripts de inicialização do sistema como, por exemplo,


rc

Este arquivo é o script de controle de inicialização do runlevel (nível de execução).

O script rc recebe como parâmetro o número do runlevel a ser inicializado. Por exemplo, o comando rc 5 faz o sistema inicializar o runlevel 5.

Os scripts relacionados a cada runlevel estão armazenados no diretório rcX.d de /etc/rc.d, onde X é o número de runlevel.

Para saber mais sobre os níveis de execução do sistema, veja init.


rc.local

Este arquivo gera, a cada inicialização do sistema, a tela de login do modo texto.

O arquivo rc.local é um script e pode ser usado pelo usuário para incluir outros scripts a serem executados durante o processo de inicialização do sistema.

A seguir mostramos o arquivo padrão da Conectiva Linux 5.0, onde numeramos as linhas para facilitar a discussão feita em seguida.

1. #!/bin/sh
2. # This script will be executed *after* all the other init scripts.
3. # You can put your own initialization stuff in here if you don't
4. # want to do the full Sys V style init stuff.
5. . /etc/profile.d/lang.sh
6. if [ -f /etc/versão-conectiva ] ; then
7.        R=$(cat /etc/versão-conectiva)
8.        # This will overwrite /etc/issue at every boot.
9.        # So, make any changes you
10.      # want to make to /etc/issue here or you will
11.      # lose them when you reboot.
12.      echo "$R" > /etc/issue.net
13.      echo "Kernel $(uname -r)" >> /etc/issue.net
14.      echo >> /etc/issue.net
15.      if [ -x /usr/bin/linux_logo ] ; then
16.          clear > /etc/issue
17.          linux_logo -classic >> /etc/issue
18.          echo "$R" >> /etc/issue
19.          echo >> /etc/issue
20.      else
21.          cat /etc/issue.net > /etc/issue
22.      fi
23. fi

Podemos comentar em relação ao arquivo acima (veja shell para saber mais detalhes sobre criação e execução de scripts):

Note que as linhas de 12 a 14 criam o arquivo /etc/issue.net, enquanto as linhas de 15 a 21 criam o arquivo /etc/issue, a cada inicialização do sistema. Você pode, por exemplo, comentar as linhas do arquivo /etc/rc.d/rc.local e usar os arquivos /etc/issue e /etc/issue.net para exibir mensagens para os usuários do sistema durante o login.


rc.sysinit

Este arquivo é o script de inicialização do sistema e é executado pelo inittab.

São tarefas executadas pelo script rc.sysinit:


rpc

Este arquivo possui a lista dos números e respectivos nomes dos serviços RPC (Remote Procedure Calls) que são usados na implementação de serviços no modelo cliente-servidor.

Cada linha deste arquivo possui o seguinte formato:

serviço número aliases

onde

Abaixo mostramos algumas linhas do arquivo rpc da ditribuição Conectiva 6.0.

portmapper100000portmap sunrpc rpcbind
rstatd100001rstat rup perfmeter rstat_svc
rusersd100002rusers
nfs100003nfsprog
ypserv100004ypprog

securetty

Este arquivo possui a lista dos terminais (tty) nos quais o root pode acessar o sistema.

Este arquivo é usado pelo processo login para verificar se o terminal é considerado seguro para acesso do root.

Abaixo temos o arquivo securetty padrão da distribuição Conectiva 6.0. Note que, neste exemplo, o root pode acessar o sistema de qualquer terminal.

tty1
tty2
tty3
tty4
tty5
tty6
tty7
tty8
tty9
tty10
tty11
tty12

services

Este arquivo possui a lista dos serviços de rede e suas respectivas portas segundo recomendações da IANA (Internet Assigned Numbers Authorith).

Cada linha deste arquivo possui o seguinte formato:

serviço porta/protocolo aliases

onde

Abaixo mostramos algumas linhas do arquivo services da ditribuição Conectiva 6.0.

ftp21/tcp  
fsp21/udpfspd 
ssh22/tcp # SSH Remote Login Protocol
ssh22/udp # SSH Remote Login Protocol
telnet23/tcp  
smtp25/tcpmail 

shadow

Este arquivo possui as senhas criptografadas dos usuários do sistema.

Existe uma entrada no arquivo para cada usuário do sistema com os seguintes campos:

Abaixo temos um exemplo do usuário aluno. Note que os dados do usuário estão separados por dois pontos (":").

aluno:$1$Tcnt$Eisi0J9Wh3fCEsz1:11067:0:99999:7:-1:-1:134537684

Apenas o root (administrador do sistema) tem permissão para acessar o arquivo /etc/shadow.

O comando pwconv é usado para criar o arquivo shadow a partir do arquivo /etc/passwd, enquanto o comando pwunconv executa a operação inversa.


shells

Este arquivo possui a lista dos shells que o sistema suporta.

Abaixo temos o exemplo do arquivo na distribuição Conectiva Linux 5.0, onde o sistema suporta nove diferentes tipos de shells.

/bin/bash
/bin/sh
/bin/ash
/bin/bsh
/bin/bash2
/bin/ksh
/bin/tcsh
/bin/csh
/bin/zsh

shutdown.allow

Este arquivo possui a lista de usuários autorizados a reinicializar o sistema com a combinação de teclas CTRL+ALT+DEL.

Caso este arquivo não exista, todos os usuários possuem autorização. Caso este arquivo exista e esteja vazio, apenas o root (administrador do sistema) tem autorização.


skel

Este diretório possui os arquivos padrão das contas de usuário.

Os arquivos do diretório skel são copiados para o diretório home do usuário durante o processo de criação da conta do usuário (comando adduser).


sudoers

Este arquivo permite que um usuário execute um comando/programa como se fosse outro usuário. Por exemplo, abaixo temos um arquivo sudoers onde o usuário aluno tem autorização para executar os aplicativos vipw e vigr como se fosse o root. Caso seja necessário mais segurança é só remover a palavra NOPASSWD: que aparece na útima linha.

# sudoers file.
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the sudoers man page for the details on how to write a sudoers file.
#
Runas_Alias EXECUTORES = root

# Host alias specification

# User alias specification
User_Alias USUARIOS = aluno

# Cmnd alias specification
Cmnd_Alias PROGRAMAS = /usr/sbin/vipw, /usr/sbin/vigr

# User privilege specification
root ALL=(ALL) ALL
USUARIOS ALL=(EXECUTORES) NOPASSWD:PROGRAMAS

sysconfig

Este diretório possui as configurações de hardware do sistema.


hwconf

Este arquivo possui a lista dos dispositivos de hardware instalados e é usado pela ferramenta kudzu. Abaixo temos um exemplo deste arquivo especificando apenas 3 dispositivos: mouse, CD-ROOM e HD.

-
class: MOUSE
bus: SERIAL
detached: 0
device: ttyS0
driver: ignore
desc: "Generic Serial Mouse"
-
class: CDROM
bus: IDE
detached: 0
device: hdb
driver: ignore
desc: "MATSHITA CR-586"
-
class: HD
bus: IDE
detached: 0
device: hda
driver: ignore
desc: "SAMSUNG VG34323A (4.32GB)"
physical: 14896/9/63
logical: 525/255/63

syslog.conf

Este arquivo é lido pelo daemon syslogd e define onde as mensagens do sistema devem ser armazenadas. As linhas do arquivo syslog.conf possuem a seguinte sintaxe:

seletor ação

onde

São exemplos de tipos de processos que podem gerar mensagens:

TipoProcesso
kernkernel
mailservidor de correio
useraplicações dos usuários
authaplicações que utilizam autenticação

São possíveis níveis de mensagem do sistema:

NívelDescrição
alertmensagens de alerta
critmensagens críticas
debugmensagens de debug
emergmensagens de emergência
errmensagens de erro
infomensagens informativas
nonemensagens sem qualquer classificação
noticeobservações
warningavisos

Abaixo temos o exemplo deste arquivo no Conectiva 5.0 (a numeração do lado esquerdo foi acrescentada para facilitar a explicação feita em seguida).

1. # Log all kernel messages to the console.
2. # Logging much else clutters up the screen.
3. #kern.*             /dev/console
4.
5. # Log anything (except mail) of level info or higher.
6. # Don't log private authentication messages!
7. *.info;mail.none;authpriv.none             /var/log/messages
8.
9. # The authpriv file has restricted access.
10. authpriv.*             /var/log/secure
11.
12. # Log all the mail messages in one place.
13. mail.*             /var/log/maillog
14.
15. # Everybody gets emergency messages, plus log them on another
16. # machine.
17. *.emerg             *
18.
19. # Save mail and news errors of level err and higher in a
20. # special file.
21. uucp,news.crit             /var/log/spooler
22.
23. # Save boot messages also to boot.log
24. local7.*             /var/log/boot.log

Podemos fazer os seguintes comentários sobre o exemplo do arquivo syslog.conf mostrado acima:


termcap

Este arquivo possui a descrição dos diversos tipos de terminais suportados pelo sistema.


versão-conectiva

Este arquivo é padrão da distribuição Conectiva Linux e possui o nome do sistema.


X11

Este diretório possui os arquivos de configuração do sistema X.


prefdm

Este arquivo é um script que define qual o gerenciador do login gráfico será usado pelo sistema.