Compartilhando sess?o X11 entre BSD's e Gnu/Linux.

Este artigo t?m como objetivo ensinar aos usu?rios a usar os recursos internos do servidor gr?fico X11 para compartilhar aplicativos entre esta??es de trabalho na rede rodando sistemas como BSD’s e Gnu/Linux.

Para fortificar a seguran?a na comunica??o de nosso exemplo, usaremos o OpenSSH para criar um t?nel seguro entre as esta??es.

Considera??es iniciais:
Descreveremos abaixo o aspecto de software e hardware que usaremos para nosso exemplo:

Esta??o 1
Sistema Operacional: Debian Gnu/Linux 3.0 – R4
XFree86 4.3.0
OpenSSH 3.8.1
Configura??o de rede esta??o 1 (Debian Gnu/Linux):
IP: 10.0.0.1
Netmask 255.0.0.0
Hardware:
PIII 500 Mhz
128 MB-Ram
Video: Savage 4 ( 16MB )

Esta??o 2
Sistema Operacional: FreeBSD 4.8
XFree86 4.3.0
OpenSSH 3.8.3
Configura??o de rede esta??o 2 (FreeBSD):
IP: 10.0.0.2
Netmask: 255.0.0.0
Hardware:
Celerom 500 Mhz
128 MR-Ram
Video: Nvidia GeForce ( 32 MB )

* Descrevi apenas os componentes de hardware que est?o relacionados a performance do X11 para nosso exemplo.

Objetivo
Atrav?s de uma esta??o rodando Debian Gnu/Linux abrir uma sess?o no X11 do FreeBSD e depois carregar o gnome 2.6 que est? instalado neste BSD.

1) Para nosso exemplo iremos usar uma sess?o do X11 na m?quina Debian iniciada no display 5 para compartilhar o gnome do FreeBSD.

Para isso use os comandos abaixo:

#xinit — :5

depois de carregado o servidor gr?fico, iremos conferir o valor de nosso DISPLAY com o comando “echo” e a sa?da deve parecer com o exemplo abaixo:

#echo $DISPLAY
:5.0

2) Ainda na esta??o Debian, usando o terminal virtual disponiv?l pelo comando xinit, agora iremos conectar atrav?s do SSH na esta??o FreeBSD, lembramos que daemon do OpenSSH deve estar iniciado e funcionado corretamente para que possamos proceguir em nosso exemplo.

#ssh usuariobsd@10.0.0.2

3) J? conectado na esta??o FreeBSD atrav?s do terminal virtual disponiv?l pelo xinit, use o comando abaixo para iniciar um xterm na esta??o BSD:

#xterm -display 10.0.0.1:5

Com este comando deve aparecer um outro terminal virtual por?m agora da esta??o 2 (FreeBSD), com este terminal iremos abrir o Gnome para isso use o comando abaixo:

#gnome-session

O Gnome pode demorar um pouco para carregar dependendo do tanto de processos abertos em ambas as m?quinas, tipo de hardware usado e aspectos de rede.

? possiv?l que os recursos de hardware como exemplo a placa de som poder? n?o funcionar adequadamente.

Pronto, com isso voc? ter? o Gnome que est? instalado no FreeBSD rodando em sua esta??o com Debian Gnu/Linux, podendo tamb?m usar os aplicativos e arquivos que est?o na m?quina remota.

Considera??es finais:

Um exemplo pr?tico de uso deste nosso artigo, ? quando o administrador t?m que interagir no servidor gr?fico do usu?rio com ele em produ??o.

Um ponto importante ? que todas os aspectos de profile do usu?rio remoto s?o transferidos para a sess?o aberta do X11.

Lembramos tamb?m que este exemplo tamb?m pode ser executado entre qualquer BSD e tamb?m distribuil??es Gnu/Linux.

At? mais,

Compartilhando sess?o X11 entre BSD’s e Gnu/Linux.

Este artigo t?m como objetivo ensinar aos usu?rios a usar os recursos internos do servidor gr?fico X11 para compartilhar aplicativos entre esta??es de trabalho na rede rodando sistemas como BSD’s e Gnu/Linux.

Para fortificar a seguran?a na comunica??o de nosso exemplo, usaremos o OpenSSH para criar um t?nel seguro entre as esta??es.

Considera??es iniciais:
Descreveremos abaixo o aspecto de software e hardware que usaremos para nosso exemplo:

Esta??o 1
Sistema Operacional: Debian Gnu/Linux 3.0 – R4
XFree86 4.3.0
OpenSSH 3.8.1
Configura??o de rede esta??o 1 (Debian Gnu/Linux):
IP: 10.0.0.1
Netmask 255.0.0.0
Hardware:
PIII 500 Mhz
128 MB-Ram
Video: Savage 4 ( 16MB )

Esta??o 2
Sistema Operacional: FreeBSD 4.8
XFree86 4.3.0
OpenSSH 3.8.3
Configura??o de rede esta??o 2 (FreeBSD):
IP: 10.0.0.2
Netmask: 255.0.0.0
Hardware:
Celerom 500 Mhz
128 MR-Ram
Video: Nvidia GeForce ( 32 MB )

* Descrevi apenas os componentes de hardware que est?o relacionados a performance do X11 para nosso exemplo.

Objetivo
Atrav?s de uma esta??o rodando Debian Gnu/Linux abrir uma sess?o no X11 do FreeBSD e depois carregar o gnome 2.6 que est? instalado neste BSD.

1) Para nosso exemplo iremos usar uma sess?o do X11 na m?quina Debian iniciada no display 5 para compartilhar o gnome do FreeBSD.

Para isso use os comandos abaixo:

#xinit — :5

depois de carregado o servidor gr?fico, iremos conferir o valor de nosso DISPLAY com o comando “echo” e a sa?da deve parecer com o exemplo abaixo:

#echo $DISPLAY
:5.0

2) Ainda na esta??o Debian, usando o terminal virtual disponiv?l pelo comando xinit, agora iremos conectar atrav?s do SSH na esta??o FreeBSD, lembramos que daemon do OpenSSH deve estar iniciado e funcionado corretamente para que possamos proceguir em nosso exemplo.

#ssh usuariobsd@10.0.0.2

3) J? conectado na esta??o FreeBSD atrav?s do terminal virtual disponiv?l pelo xinit, use o comando abaixo para iniciar um xterm na esta??o BSD:

#xterm -display 10.0.0.1:5

Com este comando deve aparecer um outro terminal virtual por?m agora da esta??o 2 (FreeBSD), com este terminal iremos abrir o Gnome para isso use o comando abaixo:

#gnome-session

O Gnome pode demorar um pouco para carregar dependendo do tanto de processos abertos em ambas as m?quinas, tipo de hardware usado e aspectos de rede.

? possiv?l que os recursos de hardware como exemplo a placa de som poder? n?o funcionar adequadamente.

Pronto, com isso voc? ter? o Gnome que est? instalado no FreeBSD rodando em sua esta??o com Debian Gnu/Linux, podendo tamb?m usar os aplicativos e arquivos que est?o na m?quina remota.

Considera??es finais:

Um exemplo pr?tico de uso deste nosso artigo, ? quando o administrador t?m que interagir no servidor gr?fico do usu?rio com ele em produ??o.

Um ponto importante ? que todas os aspectos de profile do usu?rio remoto s?o transferidos para a sess?o aberta do X11.

Lembramos tamb?m que este exemplo tamb?m pode ser executado entre qualquer BSD e tamb?m distribuil??es Gnu/Linux.

At? mais,

Posted in Sem categoria

Renomeando v?rios arquivos ao mesmo tempo

Nesta dica vamos renomear 1000 arquivos do formato JPEG para o extens?o jpg.

Criando os 1000 arquivos para fazer o teste:

for ((i=1;i<1000;i++); do touch $i.JPEG; done

verifique os arquivos criados com o comando ls

agora para renomear estes 1000 arquivos para .jpg ? simples basta executar o comando abaixo

for ((i=1;i<1000;i++)); do mv $i.JPEG $i.jpg; done

OK at? aqui tudo bem, agora imagine que estes arquivos tenham nomes alternados por?m todos com a extens?o JPEG.

$ for i in `ls *.JPEG`; do mv $i ${i/.JPEG/.jpg}; done

Talvez fique dific?l para voc? visualizar as sintaxes dos comandos acima, para isso, caso esteja usando o FireFOX basta teclar Ctrl e a tecla +.

Qualquer d?vida entre em contato.

Posted in Sem categoria

Instalando e configurando o qmail

Artigo retirado do site LinuxIT.

Atualizado em 22/08/2004 ?s 15:58:06

Bom a algum tempo prometi um tutorial do qmail, e aqui est? o mesmo. Pois bem, n?o irei fazer uma descri??o do qmail, pois j? existem v?rios artigos que j? fazem isso. Irei simplesmente mostrar como configur?-lo usando o daemontools para controlar os processos de inicializa??o. Lembrando que esta instala??o foi baseada no slackware 9.1.

Ser? instalado: qmail + vpopmail + courier-imap + qmailadmin + autorespond + ezmlm + ucspi-tcp.

Vamos primeiramente criar os diret?rios onde ser?o baixados os sources:

mkdir -p /usr/src/qmailsource/patches
cd /usr/src/qmailsource

agora vamos fazer o download dos pacotes necess?rios:

wget http://www.qmail.org/qmail-1.03.tar.gz
wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz
wget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz
wget http://www.inter7.com/devel/ezmlm-0.53-idx-0.41.tar.gz
wget http://umn.dl.sourceforge.net/sourceforge/vpopmail/vpopmail-5.4.6.tar.gz
wget http://umn.dl.sourceforge.net/sourceforge/qmailadmin/autorespond-2.0.4.tar.gz
wget http://umn.dl.sourceforge.net/sourceforge/qmailadmin/qmailadmin-1.2.1.tar.gz
wget http://umn.dl.sourceforge.net/sourceforge/courier/courier-imap-3.0.7.tar.bz2

cd patches

wget http://www.qmail.org/qmail-1.03-mfcheck.3.patch
wget http://www.qmail.org/qmailqueue-patch
wget http://www.palomine.net/qmail/tarpit.patch
wget http://www.qmail.org/netscape-progress.patch
wget http://www.qmail.org/moni.csi.hu/pub/glibc-2.3.1/qmail-1.03.errno.patch
wget http://www.qmail.org/moni.csi.hu/pub/glibc-2.3.1/ucspi-tcp-0.88.errno.patch
wget http://www.qmail.org/moni.csi.hu/pub/glibc-2.3.1/daemontools-0.76.errno.patch
wget http://www.suspectclass.com/~sgifford/qmail/qmail-0.0.0.0.patch

Instalando o ucspi-tcp

O ucspi-tcp ? um programa que gerencia a inicializa??o do qmail.

cd /usr/src/qmailsource
tar xvzf ucspi-tcp-0.88.tar.gz
cd ucspi-tcp-0.88
patch -p1 < ../patches/ucspi-tcp-0.88.errno.patch
make
make setup check

Instalando o qmail

Veja abaixo a descri??o dos patchs que ser?o instalados:

qmail-1.03.errno.patch – ? o patch que corrige o problema com o gcc 3.

qmailqueue-patch – aplique este patch caso pense em colocar o qmail-scanner.

qmail-0.0.0.0.patch – Este corrigue um bug do qmail, pois ele entende 0.0.0.0 como endere?o ip.

tarpit.patch – Este aqui adiciona um tempo de espera entre cada mensagem, uma especie de anti-spam.

netscape-progress.patch – Este patch corrige um bug do qmail com clients netscape.

Adicionando os usu?rios e grupos.

groupadd nofiles
useradd -g nofiles -d /var/qmail/alias alias
useradd -g nofiles -d /var/qmail qmaild
useradd -g nofiles -d /var/qmail qmaill
useradd -g nofiles -d /var/qmail qmailp
groupadd qmail
useradd -g qmail -d /var/qmail qmailq
useradd -g qmail -d /var/qmail qmailr
useradd -g qmail -d /var/qmail qmails

cd /usr/src/qmailsource
tar xvzf qmail-1.03.tar.gz
patch -p0 < patches/qmail-1.03.errno.patch
patch -p0 < patches/qmailqueue-patch
patch -p0 < patches/qmail-0.0.0.0.patchcd qmail-1.03
patch -p0 < ../patches/tarpit.patch
patch -p0 < ../patches/netscape-progress.patchmkdir /var/qmail
mkdir /etc/qmail
ln -s /etc/qmail /var/qmail/control

make setup check

./config-fast maquina.dominio

cd ~alias
touch .qmail-postmaster .qmail-mailer-daemon .qmail-root
chmod 644 ~alias/.qmail*

Instalando o vpopmail

O vpopmail ? o respons?vel pelos usu?rios, j? que com ele, n?o ? necess?rio ter os usu?rios cadastrados no sistema.

Adicionando o usu?rio e grupo sob o qual o vpopmail ira rodar:

groupadd -g 89 vchkpw
useradd -g vchkpw -u 89 -d /var/vpopmail vpopmail

cd /usr/src/qmailsource
tar xvzf vpopmail-5.4.6.tar.gz
mkdir -p /var/vpopmail/etc

cd vpopmail-5.4.6

./configure –enable-roaming-users=y \
–enable-relay-clear-minutes=30 \
–disable-md5-passwords \
–enable-logging=e \
–enable-valias=y \
–enable-ip-alias-domains=y

make
make install-strip

echo ‘127.:allow,RELAYCLIENT=””‘ >> /var/vpopmail/etc/tcp.smtp
tcprules /var/vpopmail/etc/tcp.smtp.cdb /var/vpopmail/etc/tcp.smtp.tmp < /var/vpopmail/etc/tcp.smtpVamos adicionar uma entrada no crontab para limpar o open-relay ap?s 30 minutos, ou seja ap?s esse tempo o usu?rio ter? que fazer um pop novamente para poder usar o smtp.crontab -l > /tmp/crontab.vpopmail
echo “30 * * * * /var/vpopmail/bin/clearopensmtp >/dev/null 2>&1 ” >> /tmp/crontab.vpopmail
crontab /tmp/crontab.vpopmail -u root
rm /tmp/crontab.vpopmail

Instalando o autorespond

Como o pr?prio nome diz, ele ? um programa que serve para enviar uma resposta autom?tica, definida pelo usu?rio.

cd /usr/src/qmailsource
tar xvzf autorespond-2.0.4.tar.gz
cd autorespond-2.0.4
make
make install

Instalando o ezmlm

ezmlm ? um gerenciador de lista de discurs?es.

cd /usr/src/qmailsource
tar xvzf ezmlm-0.53-idx-0.41.tar.gz
cd ezmlm-0.53-idx-0.41
make
make setup

Instalando o daemontools

O daemontools ? uma cole??o de scripts que serve para gerenciar servi?os em sistemas *UNIX. N? nossa instala??o ele ser? usado para controlar o qmail + vpopmail e o courier-imap.

cd /usr/src/qmailsource
tar xvzf daemontools-0.76.tar.gz
cd admin
mv daemontools-0.76 /usr/local/
chmod 1755 /usr/local/daemontools-0.76
cd /usr/local/daemontools-0.76
patch -p1 < /usr/src/qmailsource/patches/daemontools-0.76.errno.patch
sh package/install

Instalando o Courier-imap

courier-imap ? um excelente servidor pop/imap. Foi feito para ser usado com o qmail, e tem total compatibilidade com o vpopmail.

cd /usr/src/qmailsource
tar xvjf courier-imap-3.0.7.tar.bz2

cd courier-imap-3.0.7
./configure –without-authuserdb \
–without-authpam \
–without-authpwd \
–without-authshadow \
–without-authldap \
–without-authdaemon \
–disable-root-check \
–with-authvchkpw \
–with-mailuser=vpopmail \
–with-mailgroup=vchkpw \
–disable-root-check \
–enable-workarounds-for-imap-client-bugs
make
make install-strip
make install-configure

mkdir -p /var/qmail/supervise/courier-imapd/log

Vamos agora criar os scripts para inicializar o courier-imap, ent?o crie o arquivo /var/qmail/supervise/courier-imapd/run com o seguinte conte?do:

—————————–inicia-aqui—————————–

#!/bin/sh
UIDVPOP=`id -u vpopmail`
GIDVPOP=`id -g vpopmail`
exec /usr/local/bin/softlimit -m 5000000 /usr/local/bin/tcpserver -v -R -H \
-l 0 -u $UIDVPOP -g $GIDVPOP -c 20 0 imap \
/usr/lib/courier-imap/sbin/imaplogin \
/usr/lib/courier-imap/libexec/authlib/authvchkpw \
/usr/lib/courier-imap/bin/imapd Maildir 2>&1

—————————termina-aqui—————————–

crie o arquivo /var/qmail/supervise/courier-imapd/log/run com o seguinte conte?do:

—————————–inicia-aqui—————————–

#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail/courier-imapd

—————————termina-aqui—————————–

E para finalizar a instala??o do courier-imap:

chmod 755 /var/qmail/supervise/courier-imapd/run
chmod 755 /var/qmail/supervise/courier-imapd/log/run
mkdir -p /var/log/qmail/courier-imapd
chown qmaill.nofiles /var/log/qmail/courier-imapd
ln -s /var/qmail/supervise/courier-imapd /service

Instalando o qmailadmin

Qmailadmin ? uma interface web para a administra??o dos usu?rios do seu dom?nio, ou seja atrav?s dele voc? pode adicionar e remover usu?rios, mudar senhas, criar aliases (apelidos). etc.

Obs: ? necess?rio ter um servidor web para poder usar o qmailadmin. Favor instalar o apache. 🙂

cd /usr/src/qmailsource

tar xvzf qmailadmin-1.2.1.tar.gz
cd qmailadmin-1.2.1
./configure –enable-htmldir=/var/www/htdocs \
–enable-cgibindir=/var/www/cgi-bin \
–enable-modify-quota \
–enable-domain-autofill
make
make install-strip

Agora iremos criar o qmailctl, o site Life With Qmail disponibiliza este script, s? que o nosso qmailctl, est? alterado para iniciar o vpopmail e o courier-imap. Ent?o crie o arquivo qmailctl dentro do diret?rio /var/qmail/bin com o seguinte conte?do:

—————————–inicia-aqui—————————–

#!/bin/sh

# description: the qmail MTA

PATH=/var/qmail/bin:/bin:/usr/bin:/usr/local/bin:/usr/local/sbin
export PATH

QMAILDUID=`id -u qmaild`
NOFILESGID=`id -g qmaild`

case “$1” in
start)
echo “Starting qmail”
if svok /service/qmail-send ; then
svc -u /service/qmail-send
else
echo qmail-send supervise not running
fi
if svok /service/qmail-smtpd ; then
svc -u /service/qmail-smtpd
else
echo qmail-smtpd supervise not running
fi
if [ -d /var/lock/subsys ]; then
touch /var/lock/subsys/qmail
fi
if svok /service/qmail-pop3d ; then
svc -u /service/qmail-pop3d
else
echo qmail-pop3d supervise not running
fi
if svok /service/courier-imapd ; then
svc -u /service/courier-imapd
else
echo courier-courier-imapd supervise not running
fi
;;
stop)
echo “Stopping qmail…”
echo ” qmail-smtpd”
svc -d /service/qmail-smtpd
echo ” qmail-send”
svc -d /service/qmail-send
if [ -f /var/lock/subsys/qmail ]; then
rm /var/lock/subsys/qmail
fi
echo ” qmail-pop3d”
svc -d /service/qmail-pop3d
echo ” courier-courier-imapd”
svc -d /service/courier-imapd
;;
stat)
svstat /service/qmail-send
svstat /service/qmail-send/log
svstat /service/qmail-smtpd
svstat /service/qmail-smtpd/log
svstat /service/qmail-pop3d
svstat /service/qmail-pop3d/log
svstat /service/courier-imapd
svstat /service/courier-imapd/log
qmail-qstat
;;
doqueue|alrm|flush)
echo “Flushing timeout table and sending ALRM signal to qmail-send.”
/var/qmail/bin/qmail-tcpok
svc -a /service/qmail-send
;;
queue)
qmail-qstat
qmail-qread
;;
reload|hup)
echo “Sending HUP signal to qmail-send.”
svc -h /service/qmail-send
;;
pause)
echo “Pausing qmail-send”
svc -p /service/qmail-send
echo “Pausing qmail-smtpd”
svc -p /service/qmail-smtpd
echo “Pausing qmail-pop3d”
svc -p /service/qmail-pop3d
echo “Pausing courier-courier-imapd”
svc -p /service/courier-imapd
;;
cont)
echo “Continuing qmail-send”
svc -c /service/qmail-send
echo “Continuing qmail-smtpd”
svc -c /service/qmail-smtpd
echo “Continuing qmail-pop3d”
svc -c /service/qmail-pop3d
echo “Continuing courier-courier-imapd”
svc -c /service/courier-imapd
;;
restart)
echo “Restarting qmail:”
echo “* Stopping qmail-smtpd.”
svc -d /service/qmail-smtpd
echo “* Sending qmail-send SIGTERM and restarting.”
svc -t /service/qmail-send
echo “* Restarting qmail-smtpd.”
svc -u /service/qmail-smtpd
echo “* Restarting qmail-pop3d.”
svc -t /service/qmail-pop3d
echo “* Restarting courier-courier-imapd.”
svc -t /service/courier-imapd
;;
cdb)
tcprules /var/vpopmail/etc/tcp.smtp.cdb /var/vpopmail/etc/tcp.smtp.tmp < /var/vpopmail/etc/tcp.smtp
chmod 644 /var/vpopmail/etc/tcp.smtp.cdb
echo “Reloaded /var/vpopmail/etc/tcp.smtp.”
;;
help)
cat < stop — stops mail service (smtp connections refused, nothing goes out)
start — starts mail service (smtp connection accepted, mail can go out)
pause — temporarily stops mail service (connections accepted, nothing leaves)
cont — continues paused mail service
stat — displays status of mail service
cdb — rebuild the tcpserver cdb file for smtp
restart — stops and restarts smtp, sends qmail-send a TERM & restarts it
doqueue — schedules queued messages for immediate delivery
reload — sends qmail-send HUP, rereading locals and virtualdomains
queue — shows status of queue
alrm — same as doqueue
flush — same as doqueue
hup — same as reload
HELP
;;
*)
echo “Usage: $0 {start|stop|restart|doqueue|flush|reload|stat|pause|cont|cdb|queue|help}”
exit 1
;;
esac

exit 0

—————————termina-aqui—————————–

Dando permiss?o de execu??o e fazendo o link para o qmailctl:

chmod 755 /var/qmail/bin/qmailctl
ln -sf /var/qmail/bin/qmailctl /usr/sbin

Vamor agora criar os scripts para inicializar o qmail:

crie o arquivo /var/qmail/rc com o seguinte conte?do:

—————————-inicia-aqui—————————–

#!/bin/sh

# Using stdout for logging
# Using control/defaultdelivery from qmail-local to deliver messages by default

exec env – PATH=”/var/qmail/bin:$PATH” \
qmail-start “`cat /var/qmail/control/defaultdelivery`”

—————————termina-aqui—————————–

Dando permiss?o de execu??o:

chmod 755 /var/qmail/rc

Definindo qual o tipo de caixa de mensagem que iremos usar:

echo “./Maildir” > /var/qmail/control/defaultdelivery

Criando os diret?rios necess?rios:

mkdir -p /var/qmail/supervise/qmail-send/log
mkdir -p /var/qmail/supervise/qmail-smtpd/log
mkdir -p /var/qmail/supervise/qmail-pop3d/log
mkdir -p /var/log/qmail/smtpd
mkdir -p /var/log/qmail/pop3d

Crie o arquivo /var/qmail/supervise/qmail-send/run com o conte?do:

—————————-inicia-aqui—————————–

#!/bin/sh
exec /var/qmail/rc

—————————termina-aqui—————————–

Agora crie o arquivo /var/qmail/supervise/qmail-send/log/run com o conte?do:

—————————-inicia-aqui—————————–

#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail

—————————termina-aqui—————————–

crie o arquivo /var/qmail/supervise/qmail-smtpd/run com o conte?do:

—————————-inicia-aqui—————————–

#!/bin/sh

QMAILDUID=`id -u qmaild`
NOFILESGID=`id -g qmaild`
MAXSMTPD=`cat /var/qmail/control/concurrencyincoming`
LOCAL=`head -1 /var/qmail/control/me`

if [ -z “$QMAILDUID” -o -z “$NOFILESGID” -o -z “$MAXSMTPD” -o -z “$LOCAL” ]; then
echo QMAILDUID, NOFILESGID, MAXSMTPD, or LOCAL is unset in
echo /var/qmail/supervise/qmail-smtpd/run
exit 1
fi

if [ ! -f /var/qmail/control/rcpthosts ]; then
echo “No /var/qmail/control/rcpthosts!”
echo “Refusing to start SMTP listener because it’ll create an open relay”
exit 1
fi

exec /usr/local/bin/softlimit -m 5000000 \
/usr/local/bin/tcpserver -v -R -l “$LOCAL” -x /var/vpopmail/etc/tcp.smtp.cdb -c “$MAXSMTPD” \
-u “$QMAILDUID” -g “$NOFILESGID” 0 smtp /var/qmail/bin/qmail-smtpd 2>&1

—————————termina-aqui—————————–

crie o arquivo /var/qmail/supervise/qmail-smtpd/log/run com o conte?do:

—————————-inicia-aqui—————————–

#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail/smtpd

—————————termina-aqui—————————–

crie o arquivo /var/qmail/supervise/qmail-pop3d/run com o conte?do:

—————————-inicia-aqui—————————–

#!/bin/sh
DOMAIN=`cat /etc/qmail/defaultdomain`
exec /usr/local/bin/softlimit -m 5000000 \
/usr/local/bin/tcpserver -v -R -H -l 0 0 110 /var/qmail/bin/qmail-popup \
$DOMAIN /var/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir 2>&1

—————————termina-aqui—————————–

Crie o arquivo /var/qmail/supervise/qmail-pop3d/log/run com o conte?do:

—————————-inicia-aqui—————————–

#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail/pop3d

—————————termina-aqui—————————–

e para finalizar:

echo 20 > /var/qmail/control/concurrencyincoming
chmod 644 /var/qmail/control/concurrencyincoming
chmod 755 /var/qmail/supervise/qmail-send/run
chmod 755 /var/qmail/supervise/qmail-send/log/run
chmod 755 /var/qmail/supervise/qmail-smtpd/run
chmod 755 /var/qmail/supervise/qmail-smtpd/log/run
chmod 755 /var/qmail/supervise/qmail-pop3d/run
chmod 755 /var/qmail/supervise/qmail-pop3d/log/run
chown qmaill /var/log/qmail /var/log/qmail/smtpd /var/log/qmail/pop3d
echo 30 > /var/qmail/control/tarpitcount
echo 60 > /var/qmail/control/tarpitdelay
ln -s /var/qmail/supervise/qmail-send /var/qmail/supervise/qmail-smtpd /var/qmail/supervise/qmail-pop3d /service

Pronto, agora voc? tem um excelente servidor de email configurado.

Para adicionar o dom?nio entre no diret?rio /var/vpopmail/bin e digite:

./vadddomain dominio.com.br

o resultado ser?:

root@gubia:/var/vpopmail/bin# ./vadddomain linuxti.pro.br
Please enter password for postmaster:
enter password again:

Agora que seu dom?nio est? criado, basta apenas adicionar os usu?rios. Caso queira usar o qmailadmin para cadastr?-los, pois com ele ? muito mais f?cil e c?modo, pois tem uma interface simples e amig?vel. ent?o digite no seu browser:

http://ip_do_servidor/cgi-bin/qmailadmin

Vai aparecer a tela inicial do qmailadmin, ae ? s? preencher os dados e adicionar os usu?rios.

Para configurar a conta nos clientes de email outlook, evolution, thunderbird, etc. Voc? tem que colocar o nome do usuario@dominio.com.br, pois a autentica??o ? feita assim.

Fiz tamb?m um script que faz toda esta instala??o de forma autom?tica, para baix?-lo v? na sess?o scripts e fa?a o download ou clique aqui.

Espero ter ajudado,

Cl?udio Borges

claudio@onerd.com.br

www.linuxti.pro.br

Posted in Sem categoria

Coladores de documenta??o projeto FreePOST/FSBOX…..

O projeto projeto FreePOST, foi adotado pelo projeto FSBOX.org para disponibilizar de forma r?pida e f?cil, o suporte a usu?rios de aplicativos baseados em software livre, atrav?s de documenta??o e sistemas de f?rum.

Para colaborar, entre nos links abaixo e cadastre-se:

Cadastro FreePOST/FSBOX.org
http://fsbox.org/busca/registro.php

Cadastro F?rum FSBOX.org
http://fsbox.org/forum/

Agradecemos a todos a colabora??o

Para informa??oes por e-mail:

colaboradores@fsbox.org

Posted in Sem categoria

Reposit?rio de pacotes para Debian Gnu/Linux

O projeto FSBOX.org est? disponibilizando agora um Mirror de pacotes para distribui??o Debian Gnu/Linux para serem baixados via Apt-Get.
Para adicionar nosso Mirror em seu sistema, basta adicionar a linha abaixo em seu arquivo /etc/sources.list

deb http://fsbox.org/mirror-debian debs/

ou ainda

deb http://fsbox.hopto.org/mirror-debian debs/

Posted in Sem categoria

CMS para portal Typo3

Esta dica vai para aqueles que est?o querendo instalar um CMS/Portal para gerenciar grandes quantidades de informa??es e que seja leve, r?pido e f?cil de gerenciar, a dica est? no link abaixo, o Typo3 ? um CMS modular com suporte a Multiplos sites e ainda melhor desempenho para fazer buscas na base de dados que ? MySQL.

O link para download do projeto ?:

http://typo3.org/download/installer/

Vale a pena conferir…

Posted in Sem categoria

Ger?nciamento avan?ado de discos com LVM.

Este artigo foi originalmente postado no site Dicas-L da Universiade Unicamp.

Colabora??o: Rodrigo Klein Santos

Infelizmente o assunto ? bastante extenso, mas ao decorrer do tutorial
vou sempre dar exemplos para tornar a leitura
bastante did?tica e clara.

Vamos falar sobre uma ferramenta bastante difundida, o LVM, mas que as
vezes por falta de informa??o
acaba deixando de ser usada.

O LVM (Logical Volume Manager) ? um “Ger?nciador de Volumes L?gicos”,
bastante flexivel, sua implementa??o no Linux
segue os mesmos padr?es (comandos) do HP-UX, ent?o este tutorial
servir? tamb?m para o HP-UX, visto a similaridade
dos comandos.

Oque muda no HP-UX, ? que pra saber quais s?o os discos usa o comando

# /usr/sbin/ioscan -fC disk

N?o pense que voc? n?o precisaria do LVM, por saber usar o “parted”,
s?o coisas distintas, o LVM vai bem mais al?m
do que simplesmente aumentar uma parti??o…

Quando come?amos a instala??o de um novo servidor, geralmente j? temos
em mente qual ser? a sua aplica??o,
a partir dessas informa??es, definimos quantos filesystems teremos,
qual vai ser o tamanho deles, quantos
discos etc…

Mas como nem tudo ? perfeito, esse servidor pode ter depois um trafego
maior do que o esperado, um numero de
usuarios maior do que planejamos, enfim, s?o varias possibilidades que
podem definitivamente te dar algum trabalho extra,
de ter que aumentar uma parti??o, adcionar mais um disco, mas como
fazer isso da melhor maneira possivel e sem traumas ?

A resposta est? no LVM…

O objetivo deste tutorial ? tornar mais facil o uso do LVM por
usu?rios de todos os niveis, visto que o LVM
vem se tornando um importante recurso na administra??o de servidores.

Antes de iniciar a parte pr?tica, vamos entender alguns conceitos do LVM…

PV = Phisical Volume : O disco em si, a parti??o fisica do disco.

PE = Phisical Extends : Extens?es fisicas, ou seja, pequenos peda?os
de um VG, um VG ? dividido em varios PEs

VG = Volume Group : Como o nome j? diz, grupo de volumes.
Um VG ? responsavel por agrupar um ou mais
dicos/Parti??es (PV – Volumes fisicos).

LV = Logical Volume : ? o volume l?gico, ou seja, ? uma parti??o
(l?gica) de um VG (Volume f?sico).

Algumas observa??es importantes…

– Para alterar um LVOL, voc? deve desmonta-lo antes.
– NUNCA deixe de fazer backup (fa?a dois, cuidado nunca ? demais)
antes de alterar uma configura??o de LVM.
– Voc? pode ter mais de um VG em um mesmo sistema (VG01, VG02, VG03),
cada qual com um ou mais discos…
– N?o misture discos SCSI/SATA/IDE em um mesmo VG, isso afeta a
performance visto que eles tem velocidades diferentes,
se voc? estiver nesta situa??o, fa?a VGs distintos para cada tipo.
– NUNCA deixe de fazer backup (por via das d?vidas estou escrecendo
novamente esta observa??o!).
– N?o tenha medo de usar LVM, ele j? ? usado a bastante em *nix e
bastante seguro, voc? s? tem a ganhar com sua utiliza??o.

No exemplo abaixo usaremos um disco de 20GB para ilustrar…

Vamos criar varias parti?oes no mesmo disco para melhor ilustrar o uso
de LVM, lembramos que no caso de v?rios discos
voc? criaria uma parti??o por disco.

Criamos 4 parti??es no /dev/hdd

Saida do FDISK

Disk /dev/hdd: 20.0 GB, 20060135424 bytes
16 heads, 63 sectors/track, 38869 cylinders
Units = cilindros of 1008 * 512 = 516096 bytes

Dispositivo Boot Start End Blocks Id System
/dev/hdd1 1 9689 4883224+ 83 Linux
/dev/hdd2 9690 19378 4883256 83 Linux
/dev/hdd3 19379 29067 4883256 83 Linux
/dev/hdd4 29068 38756 4883256 83 Linux

Notem que elas est?o com o “tipo” Linux (default do fdisk na hora d
cria??o), prontas para receber o filesystem (ext2, ext3, reiserfs etc),
mas n?o pra receberem LVM, precisamos alterar isso..

[root@server root]# fdisk /dev/hdd

O n?mero de cilindros para este disco est? configurado para 38869.
N?o existe nada de errado, mas isto ? maior que 1024,
e pode em certas configura??es causar problemas com:
1) programas que executam em tempo de inicializa??o (vers?es velhas do LILO)
2) inicializa??o e programas de particionamento de outros OSs
(p.ex., DOS FDISK, OS/2 FDISK)

Comando (m para ajuda): p

Disk /dev/hdd: 20.0 GB, 20060135424 bytes
16 heads, 63 sectors/track, 38869 cylinders
Units = cilindros of 1008 * 512 = 516096 bytes

Dispositivo Boot Start End Blocks Id System
/dev/hdd1 1 9689 4883224+ 83 Linux
/dev/hdd2 9690 19378 4883256 83 Linux
/dev/hdd3 19379 29067 4883256 83 Linux
/dev/hdd4 29068 38756 4883256 83 Linux

Comando (m para ajuda): t
N?mero da parti??o (1-4): 1
C?digo hexadecimal (digite L para listar os c?digos): 8e
O tipo da parti??o 1 foi alterado para 8e (Linux LVM)

Comando (m para ajuda): t
N?mero da parti??o (1-4): 2
C?digo hexadecimal (digite L para listar os c?digos): 8e
O tipo da parti??o 2 foi alterado para 8e (Linux LVM)

Comando (m para ajuda): t
N?mero da parti??o (1-4): 3
C?digo hexadecimal (digite L para listar os c?digos): 8e
O tipo da parti??o 3 foi alterado para 8e (Linux LVM)

Comando (m para ajuda): t
N?mero da parti??o (1-4): 4
C?digo hexadecimal (digite L para listar os c?digos): 8e
O tipo da parti??o 4 foi alterado para 8e (Linux LVM)

Comando (m para ajuda): p

Disk /dev/hdd: 20.0 GB, 20060135424 bytes
16 heads, 63 sectors/track, 38869 cylinders
Units = cilindros of 1008 * 512 = 516096 bytes

Dispositivo Boot Start End Blocks Id System
/dev/hdd1 1 9689 4883224+ 8e Linux LVM
/dev/hdd2 9690 19378 4883256 8e Linux LVM
/dev/hdd3 19379 29067 4883256 8e Linux LVM
/dev/hdd4 29068 38756 4883256 8e Linux LVM

Comando (m para ajuda): w
A tabela de parti??es foi alterada!

Chamando ioctl() para reler tabela de parti??es.
Sincronizando discos.
[root@server root]#

Notem que alteramos o tipo da parti??o para “Linux LVM”. *Acima voc?
pode notar como isso foi feito no fdisk, para maiores informa??es digite
‘h’ no fdisk ou consulte o manual.

Agora vamos dizer ao LVM oque (quais PVs) temos disponivel pra ele.

Criando os PVs.

[root@server root]# pvcreate /dev/hdd1
No physical volume label read from /dev/hdd1
Physical volume “/dev/hdd1” successfully created
[root@server root]# pvcreate /dev/hdd2
No physical volume label read from /dev/hdd2
Physical volume “/dev/hdd2” successfully created
[root@server root]# pvcreate /dev/hdd3
No physical volume label read from /dev/hdd3
Physical volume “/dev/hdd3” successfully created
[root@server root]# pvcreate /dev/hdd4
No physical volume label read from /dev/hdd4
Physical volume “/dev/hdd4” successfully created
[root@server root]#

Pronto, j? mostramos para o LVM que ele tem 4 PVs disponiveis…
Mas como sei se ele sabe disso ???

Use o comando.. #pvdisplay

[root@server root]# pvdisplay
— NEW Physical volume —
PV Name /dev/hdd1
VG Name
PV Size 4,66 GB
Allocatable NO
PE Size (KByte) 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID RiWHqR-gyYe-jlIQ-pjku-cdI8-cQ8M-Lkj2Y4

— NEW Physical volume —
PV Name /dev/hdd2
VG Name
PV Size 4,66 GB
Allocatable NO
PE Size (KByte) 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID oEcEui-mhig-RF06-fBd5-opAK-1Psf-bV1FLp

— NEW Physical volume —
PV Name /dev/hdd3
VG Name
PV Size 4,66 GB
Allocatable NO
PE Size (KByte) 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID SwPpNo-Q1NR-OYPU-Tkah-y3ps-GsRs-3W4pSG

— NEW Physical volume —
PV Name /dev/hdd4
VG Name
PV Size 4,66 GB
Allocatable NO
PE Size (KByte) 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID BFGFCi-2rKb-As0v-ucBy-ghkn-y869-yXcIm0

Criamos 4 PVs (Phisical Volume) em um disco… *Vale lembrar que esses
PVs podem (e ? o comum) estarem em discos separados, estamos fazendo em
um mesmo disco por n?o poder utilizar mais que um disco aqui (o servidor
? de produ??o!). 😉

Vamos criar 2 VGs… cada um com 2 PVs, usando o comando #vgcreate

[root@server root]# vgcreate VG01 /dev/hdd1 /dev/hdd2
Volume group “VG01” successfully created
[root@server root]# vgcreate VG02 /dev/hdd3 /dev/hdd4
Volume group “VG02” successfully created
[root@server root]#

Com o comando #vgcreate , criei 2 VGs, com o nome de VG01 e VG02 *
O nome pode ser qualquer um, eu fa?o com VG01 e VG02, por ficar
mais facil de identificar mas voc? pode criar por exemplo com nome
‘bancodedados’,’email’,’www’ e por ai vai…

Vamos verificar se os VGs foram criados com o comando #vgdisplay.

[root@server root]# vgdisplay
— Volume group —
VG Name VG02
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 255
Cur LV 0
Open LV 0
Max PV 255
Cur PV 2
Act PV 2
VG Size 9,31 GB
PE Size 4,00 MB
Total PE 2384
Alloc PE / Size 0 / 0
Free PE / Size 2384 / 9,31 GB
VG UUID iWiIv6-L0FT-K0gV-JzJh-a8l5-1ouZ-H4r3yN

— Volume group —
VG Name VG01
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 255
Cur LV 0
Open LV 0
Max PV 255
Cur PV 2
Act PV 2
VG Size 9,31 GB
PE Size 4,00 MB
Total PE 2384
Alloc PE / Size 0 / 0
Free PE / Size 2384 / 9,31 GB
VG UUID B0o0rf-zvO1-uYT0-GW9L-kOez-H37z-0RzHIh

Podemos ver que realmente criamos 2 VG, cada um com 2 PV…

Vamos agora explicar algumas linhas (as mais importantes) da saida do
comando #vgdisplay

Nome do VG:
VG Name VG02

Acesso:
VG Access read/write

Status:
VG Status resizable

Numero maximo de LVs (Logical Volume) :
MAX LV 255

Numero de LVs no VG :
Cur LV 0

Numero de LVs montados :
Open LV 0

Numero maximo de PVs no VG :
Max PV 255

Numero atual de PVs no VG :
Cur PV 2

Tamanho do VG em GB/MB :
VG Size 9,31 GB

Tamanho de cada PE no VG (padr?o 4MB) :
PE Size 4,00 MB

Quantidade de PEs no VG. (multiplique este numero por 4 para saber o
tamanho do VG) :
Total PE 2384

Numero de PEs alocados :
Alloc PE / Size 0 / 0

Numero de PEs livres :
Free PE / Size 2384 / 9,31 GB

Acima explicamos a saida do #vgdisplay, atentem bastante para os valores
em PE, que geralmente s?o os mais importantes.

Agora que j? temos os VGs, temos que criar os LVs (LVOL), vamos utilizar
o comando #lvcreate.

[root@server root]# lvcreate -l 1000 -n LV01 VG01
Logical volume “LV01” created

Para verificar oque voc? fez, use o comando #lvdisplay
Explicando o comando…

lvcreate -l -n criar o LV>

Dica : Voc? tamb?m pode usar o L (Mai?sculo) para determinar o tamanho
em MB, para maiores informa??es #man lvcreate .

[root@server root]# lvdisplay
— Logical volume —
LV Name /dev/VG01/LV01
VG Name VG01
LV UUID rQw1cG-jppl-TSJj-1wVw-8kud-oE5L-Jr1c46
LV Write Access read/write
LV Status available
# open 0
LV Size 3,91 GB
Current LE 1000
Segments 1
Allocation next free (default)
Read ahead sectors 0
Block device 253:0

Criamos um LV com 3.91GB, mas como se eu n?o informei o tamanho ?
Informamos sim o tamanho, mas em PE, e vamos lembrar que cada PE equivale
a 4MB…

Logo 1000 x 4 = 4gb , que em miudos deu 3.91GB.

S? a titulo de curiosidade, vou novamente executar o comando
vgdisplay, para ver oque mudou…

[root@server root]# vgdisplay VG01
— Volume group —
VG Name VG01
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 2
VG Access read/write
VG Status resizable
MAX LV 255
Cur LV 1
Open LV 0
Max PV 255
Cur PV 2
Act PV 2
VG Size 9,31 GB
PE Size 4,00 MB
Total PE 2384
Alloc PE / Size 1000 / 3,91 GB
Free PE / Size 1384 / 5,41 GB
VG UUID B0o0rf-zvO1-uYT0-GW9L-kOez-H37z-0RzHIh

Notem as linhas:

Cur LV 1

Alloc PE / Size 1000 / 3,91 GB
Free PE / Size 1384 / 5,41 GB

Dispensa explica??es, visto que j? falamos sobre o assunto um pouco
acima… Dica : Use o comando #vgdisplay com a op??o ‘-v’ para ter
maiores informa??es sobre o VG.

J? criamos um VG, um LV mas ainda n?o estamos utilizando eles. Agora
basta formatar o mesmo com o filesystem desejado e come?ar a utilizar.

Por exemplo, vamos formatar ele com ext2.

Vamos formatar onde ? /dev/hdd1, /dev/hdd2 ??? N?o..! Lembra do comando
lvdisplay, l? temos o local que devemos usar agora, que nada mais ? do
que uma parti??o (l?gica) do LVM.

Vamos formatar este com o sistema de arquivos ext2.

Ele est? em /dev//

[root@server root]# mke2fs /dev/VG01/LV01
mke2fs 1.35 (28-Feb-2004)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
768544 inodes, 1536000 blocks
76800 blocks (5.00%) reserved for the super user
First data block=0
47 block groups
32768 blocks per group, 32768 fragments per group
16352 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736

Writing inode tables: done
Writing superblocks and filesystem accounting information:
done

This filesystem will be automatically checked every 25 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.

Agora vamos montar o sistema de arquivos….

[root@server root]# mkdir /LVM1

[root@server root]# mount /dev/VG01/LV01 /LVM1

[root@server root]# df -h
Sist. Arq. Tam Usad Disp Uso% Montado em
/dev/hda2 28G 16G 10G 62% /
/dev/hda1 145M 5,9M 132M 5% /boot
none 507M 0 507M 0% /dev/shm
/dev/mapper/VG01-LV01
3,9G 33M 3,7G 1% /LVM1

Pronto, o seu LVM est? pronto pra usar… Mas ainda n?o conseguimos
ver a principal utilidade do LVM com os exemplos acima.. A principal
utilidade do LVM ? que voc? pode aumentar ou diminuir seu LV…

Como exemplo vamos aumentar o nosso primeiro LV.

Ele tem 3.9GB

Usaremos o comando #lvextend

[root@server root]# umount /LVM1

[root@server root]# lvextend -l+500 /dev/VG01/LV01
Extending logical volume LV01 to 5,86 GB
Logical volume LV01 successfully resized

[root@server root]# mount /dev/VG01/LV01 /LVM1/
[root@server root]# df -h
Sist. Arq. Tam Usad Disp Uso% Montado em
/dev/hda2 28G 16G 10G 62% /
/dev/hda1 145M 5,9M 132M 5% /boot
none 507M 0 507M 0% /dev/shm
/dev/mapper/VG01-LV01
5,8G 20K 5,5G 1% /LVM1

Aumentamos o nosso LV01 em mais 500 PEs, totalizando agora 5,86GB (antes 3,9GB).
Mas n?o aumentamos ainda o sistema de arquivos nos novos PEs..

Para isso usaremos o #resize2fs.

Desmonte o seu LV antes.

[root@server root]# umount /LVM1

[root@server root]# resize2fs /dev/VG01/LV01
resize2fs 1.35 (28-Feb-2004)
The filesystem is already 1536000 blocks long. Nothing to do!

Nota.. Para sistemas de arquivos reiserfs, utilize o comando #resize_reiserfs

Pronto, agora j? aumentamos um determinado LV, mas e como reduzi-lo ???

Essa op??o tamb?m ? bastante comum, visto que as vezes podemos ter
necessidade de mais espa?o em disco e n?o temos a op??o de comprar ou
colocar mais um disco, oque podemos fazer ? diminuir um determinado LV
para poder alocar mais PEs em outro LV. Vale lembrar que eles devem
estar no mesmo VG.

Utilizaremos o comando #lvreduce.

*Neste caso, fa?a backup, pois voc? VAI perder seus dados.. O Backup
? importante tanto pra aumentar o LV quanto para diminuir, mas no
caso de aumentar, voc? s? perde dados se der algum problema ‘anormal’
(ex: queda de energia durante o processo), mas mesmo assim ? bastante
importante fazer backup, nunca se sabe !

[root@server root]# umount /LVM1/
[root@server root]# lvreduce -l-800 /dev/VG01/LV01
WARNING: Reducing active logical volume to 2,73 GB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce LV01? [y/n]: y
Logical volume LV01 successfully resized

[root@server root]# mke2fs /dev/VG01/LV01
mke2fs 1.35 (28-Feb-2004)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
359040 inodes, 716800 blocks
35840 blocks (5.00%) reserved for the super user
First data block=0
22 block groups
32768 blocks per group, 32768 fragments per group
16320 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912

Writing inode tables: done
Writing superblocks and filesystem accounting information:
done

This filesystem will be automatically checked every 27 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.

[root@server root]# mount /dev/VG01/LV01 /LVM1/
[root@server root]# df -h
Sist. Arq. Tam Usad Disp Uso% Montado em
/dev/hda2 28G 16G 10G 62% /
/dev/hda1 145M 5,9M 132M 5% /boot
none 507M 0 507M 0% /dev/shm

/dev/mapper/VG01-LV01
2,7G 20K 2,6G 1% /LVM1

Utilizamos o #lvreduce para diminuir o tamanho de um LV.

Mas existem casos tamb?m que temos que aumentar o tamano de um VG, e
como fariamos ?
Como temos 4 PVs, vamos tirar um do VG02 e colocar no VG01.

Vamos criar um segundo LV (LV02) no VG01 para preencher todo o espa?o
do VG01 (para ilustrar um caso real), para que quando
adcionar o novo PV, ele aumente o espa?o em PE que ? de 0 (zero).

*Relembrando – lvcreate -l -n

[root@server root]# lvcreate -l 1684 -n LV02 VG01
Logical volume “LV02” created

[root@server root]# mkfs.ext2 /dev/VG01/LV02
mke2fs 1.35 (28-Feb-2004)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
863264 inodes, 1724416 blocks
86220 blocks (5.00%) reserved for the super user
First data block=0
53 block groups
32768 blocks per group, 32768 fragments per group
16288 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Writing inode tables: done
Writing superblocks and filesystem accounting information:
done

This filesystem will be automatically checked every 39 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.

[root@server root]# vgdisplay VG01
— Volume group —
VG Name VG01
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 7
VG Access read/write
VG Status resizable
MAX LV 255
Cur LV 2
Open LV 1
Max PV 255
Cur PV 2
Act PV 2
VG Size 9,31 GB
PE Size 4,00 MB
Total PE 2384
Alloc PE / Size 2384 / 9,31 GB
Free PE / Size 0 / 0
VG UUID B0o0rf-zvO1-uYT0-GW9L-kOez-H37z-0RzHIh

Podemos notar que agora o VG01 n?o tem mais nenhum PE livre.
Free PE / Size 0 / 0

Abaixo vamos conferir o resultado de um #df e do comando vgdisplay,
agora com os dois
LVs

[root@server root]# mkdir /LVM2
[root@server root]# mount /dev/VG01/LV02 /LVM2

[root@server root]# df -h
Sist. Arq. Tam Usad Disp Uso% Montado em
/dev/hda2 28G 16G 10G 62% /
/dev/hda1 145M 5,9M 132M 5% /boot
none 507M 0 507M 0% /dev/shm
/dev/mapper/VG01-LV01
2,7G 20K 2,6G 1% /LVM1
/dev/mapper/VG01-LV02
6,5G 20K 6,2G 1% /LVM2

Podemos notar agora que o nosso VG est? com todos os seus PEs alocados, mas
temos a situa??o que preciso aumentar a parti??o LV01, como fa?o ?

[root@server root]# vgdisplay -v VG01
Using volume group(s) on command line
Finding volume group “VG01”
— Volume group —
VG Name VG01
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 7
VG Access read/write
VG Status resizable
MAX LV 255
Cur LV 2
Open LV 2
Max PV 255
Cur PV 2
Act PV 2
VG Size 9,31 GB
PE Size 4,00 MB
Total PE 2384
Alloc PE / Size 2384 / 9,31 GB
Free PE / Size 0 / 0
VG UUID B0o0rf-zvO1-uYT0-GW9L-kOez-H37z-0RzHIh

— Logical volume —
LV Name /dev/VG01/LV01
VG Name VG01
LV UUID rQw1cG-jppl-TSJj-1wVw-8kud-oE5L-Jr1c46
LV Write Access read/write
LV Status available
# open 1
LV Size 2,73 GB
Current LE 700
Segments 1
Allocation next free (default)
Read ahead sectors 0
Block device 253:0

— Logical volume —
LV Name /dev/VG01/LV02
VG Name VG01
LV UUID SXgnqF-GZrH-dEax-LKno-4y44-SRp3-Q9rFU4
LV Write Access read/write
LV Status available
# open 1
LV Size 6,58 GB
Current LE 1684
Segments 2
Allocation next free (default)
Read ahead sectors 0
Block device 253:1

— Physical volumes —
PV Name /dev/hdd1
PV UUID RiWHqR-gyYe-jlIQ-pjku-cdI8-cQ8M-Lkj2Y4
PV Status allocatable
Total PE / Free PE 1192 / 0

PV Name /dev/hdd2
PV UUID oEcEui-mhig-RF06-fBd5-opAK-1Psf-bV1FLp
PV Status allocatable
Total PE / Free PE 1192 / 0

N?o tenho mais discos, apenas tenho PV sobrando no VG02, por isso vou
tirar ele de l? e colocar no VG01 para depois aumentar o espa?o daquela
parti??o.

Utilizaremos o comando #vgreduce.

[root@server root]# vgreduce VG02 /dev/hdd3
Removed “/dev/hdd3” from volume group “VG02”

[root@server root]# vgdisplay -v VG02
Using volume group(s) on command line
Finding volume group “VG02”
— Volume group —
VG Name VG02
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 2
VG Access read/write
VG Status resizable
MAX LV 255
Cur LV 0
Open LV 0
Max PV 255
Cur PV 1
Act PV 1
VG Size 4,66 GB
PE Size 4,00 MB
Total PE 1192
Alloc PE / Size 0 / 0
Free PE / Size 1192 / 4,66 GB
VG UUID iWiIv6-L0FT-K0gV-JzJh-a8l5-1ouZ-H4r3yN

— Physical volumes —
PV Name /dev/hdd4
PV UUID BFGFCi-2rKb-As0v-ucBy-ghkn-y869-yXcIm0
PV Status allocatable
Total PE / Free PE 1192 / 1192

Notamos que o PV /dev/hdd3 n?o est? mais no VG02.

Agora vamos adciona-lo ao nosso VG01 que est? necessitando de espa?o.

[root@server root]# vgextend VG01 /dev/hdd3
Volume group “VG01” successfully extended

Agora vamos verificar que o nosso VG01 tem mais PEs livres (n?o tinha,
estava com 0, lembra ?), devido a nossa a??o de adcionar mais um PV
neste VG.

Comando #vgdisplay

[root@server root]# vgdisplay VG01
— Volume group —
VG Name VG01
System ID
Format lvm2
Metadata Areas 3
Metadata Sequence No 8
VG Access read/write
VG Status resizable
MAX LV 255
Cur LV 2
Open LV 2
Max PV 255
Cur PV 3
Act PV 3
VG Size 13,96 GB
PE Size 4,00 MB
Total PE 3575
Alloc PE / Size 2384 / 9,31 GB
Free PE / Size 1191 / 4,65 GB
VG UUID B0o0rf-zvO1-uYT0-GW9L-kOez-H37z-0RzHIh

Agora o nosso VG01 tem mais 1191 PEs disponiveis, e vou adcionar ele ao LV01

Abaixo a sequencia de comandos para verificar e para adcionar.

[root@server root]# lvextend -l+1191 /dev/VG01/LV01
Extending logical volume LV01 to 7,39 GB
Logical volume LV01 successfully resized

[root@server root]# resize2fs /dev/VG01/LV01
resize2fs 1.35 (28-Feb-2004)
Please run ‘e2fsck -f /dev/VG01/LV01’ first.

[root@server root]# e2fsck -f /dev/VG01/LV01
e2fsck 1.35 (28-Feb-2004)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/VG01/LV01: 11/359040 files (0.0% non-contiguous), 11281/716800 blocks

[root@server root]# resize2fs /dev/VG01/LV01
resize2fs 1.35 (28-Feb-2004)
Resizing the filesystem on /dev/VG01/LV01 to 1936384 (4k) blocks.
The filesystem on /dev/VG01/LV01 is now 1936384 blocks long.

[root@server root]# mount /dev/VG01/LV01 /LVM1
[root@server root]# df -h
Sist. Arq. Tam Usad Disp Uso% Montado em
/dev/hda2 28G 16G 10G 62% /
/dev/hda1 145M 5,9M 132M 5% /boot
none 507M 0 507M 0% /dev/shm
/dev/mapper/VG01-LV02
6,5G 20K 6,2G 1% /LVM2
/dev/mapper/VG01-LV01
7,3G 20K 7,0G 1% /LVM1

Notem que a nossa parti??o LVM1 (LV01) j? est? redimensionada.

Abaixo a titulo did?tico, vou apagar o VG02, j? que n?o o utilizamos,
criamos ele
apenas para fins did?ticos, e vamos apaga-lo para demonstrar mais
alguns comandos
do pacote LVM

Vou criar um LV no VG02 apenas para demonstrar como deleta-lo.

[root@server root]# lvcreate -l1000 -n LV03 VG02
Logical volume “LV03” created

[root@server root]# vgdisplay -v VG02
Using volume group(s) on command line
Finding volume group “VG02”
— Volume group —
VG Name VG02
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 255
Cur LV 1
Open LV 0
Max PV 255
Cur PV 1
Act PV 1
VG Size 4,66 GB
PE Size 4,00 MB
Total PE 1192
Alloc PE / Size 1000 / 3,91 GB
Free PE / Size 192 / 768,00 MB
VG UUID iWiIv6-L0FT-K0gV-JzJh-a8l5-1ouZ-H4r3yN

— Logical volume —
LV Name /dev/VG02/LV03
VG Name VG02
LV UUID PPAHOG-v4d2-hClM-nUKy-crnG-0V3A-kwb6pw
LV Write Access read/write
LV Status available
# open 0
LV Size 3,91 GB
Current LE 1000
Segments 1
Allocation next free (default)
Read ahead sectors 0
Block device 253:2

— Physical volumes —
PV Name /dev/hdd4
PV UUID BFGFCi-2rKb-As0v-ucBy-ghkn-y869-yXcIm0
PV Status allocatable
Total PE / Free PE 1192 / 192

Deletando o LV (LV03) que acabamos de criar.

[root@server root]# lvremove /dev/VG02/LV03
Do you really want to remove active logical volume “LV03”? [y/n]: y
Logical volume “LV03” successfully removed

[root@server root]# vgdisplay -v VG02
Using volume group(s) on command line
Finding volume group “VG02”
— Volume group —
VG Name VG02
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 255
Cur LV 0
Open LV 0
Max PV 255
Cur PV 1
Act PV 1
VG Size 4,66 GB
PE Size 4,00 MB
Total PE 1192
Alloc PE / Size 0 / 0
Free PE / Size 1192 / 4,66 GB
VG UUID iWiIv6-L0FT-K0gV-JzJh-a8l5-1ouZ-H4r3yN

— Physical volumes —
PV Name /dev/hdd4
PV UUID BFGFCi-2rKb-As0v-ucBy-ghkn-y869-yXcIm0
PV Status allocatable
Total PE / Free PE 1192 / 1192

Deletando o VG02

[root@server root]# vgremove VG02
Volume group “VG02” successfully removed

Deletando o PV do LVM, vamos supor que este disco tenha dado problemas fisicos,
e voc? v?i tirar este disco (neste caso ? uma parti??o), mas em
produ??o seria um disco.

comando #pvremove

[root@server root]# pvremove /dev/hdd4
Labels on physical volume “/dev/hdd4” successfully wiped
You have new mail in /var/spool/mail/root

Coloque outro disco, particione, formate pra LVM, crie o PV,
adcione ele a um VG, e depois a um LV… Bem vindo ao LVM. 🙂

*Dica: caso algum VG esteja inativo, ative-o com o comando #vgchange
-ay , isso ativar? todos os VGs disponiveis.
——————————————————————–

Posted in Sem categoria

Comandos para ger?nciamento de processos

PSTREE

O comando Pstree assim como o comando ( ps ) t?m a fun??o de listar processos, a diferen?a ? que o Pstree lista os processos de forma mais organizada como uma ?rvore de processos e suas ramifica??es dos processos filhos.

Segue abaixo um exemplo de sintaxe de comando:

#pstree -aGhp

Entendendo as flags

-a: Exibe os argumentos de linha de comando dos processos listados
-G: Muda o padr?o do tra?o de caracteres para o padr?o VT100
-h: Destaca o processo atualmente lista e seus ancestrais
-p: exibe o PID dos processos

A id?ia b?sica do comando j? foi passado agora caso queira mais informa??es use o Man Page do comando.

PIDOF

O comando pidof exibe uma lista dos PID’s dos processos atualmente em execu??o

Olhe o exemplo abaixo:

Digamos que voc? queira saber os PID’s do processos do ger?nciador de janelas KDE:

#pidof -x kdeinit

a sa?da seria a lista dos processos iniciados pelo kdeinit

Posted in Sem categoria

Instalando e configurando o Proftpd no Debian Gnu/Linux

Neste artigo estaremos dando um exemplo de instala??o e configura??o do servidor de FTP Proftpd no Debian Gnu/Linux.

Consider??es iniciais:

Sistema Operacional usado para este artigo Debian Gnu/Linux 3.0 R4, kernel 2.4.28
Hardware: Pentium III 500 Mhz, 128 MB Ram 40 GB de HD

Distribui??o das parti??es no sistema do servidor de FTP

/boot – 30 MB
/swap – 256 MB
/var – 10 GB
/usr – 2GB
/home – 27 GB ( parti??o no qual iremos usar para armazenar as contas de FTP )

Instala??o:

A instala??o do servidor de FTP Proftpd ? aparentemente simples, em nosso caso usaremos o apt-get para baixar os pacotes necess?rios, para isso entre como super-usu?rio logo ap?s abra um terminal e execute os comandos abaixo:

#apt-cache search profptd

Verifique se a lista de mirrors configurada em seu Apt-Get possui o pacote proftpd caso n?o adicione as linhas abaixo em seu arquivo /etc/apt/sources.list:

deb http://security.debian.org/ stable/updates main
deb http://fsbox.org/mirror-debian debs/
deb http://ftp.br.debian.org/debian/ testing main
deb-src http://ftp.br.debian.org/debian/ testing main

Atualize a base de arquivos do Apt-Get com o comando:

#apt-get update

Tendo os mirrors adicionados em seu Apt-Get com o devido pacote necess?rio, execute o comando abaixo para instalar o Proftpd:

#apt-get install proftpd

O pacote ser? instalado e logo ap?s da instala??o ser concluida o backend Debconf far? algumas perguntas no qual voc? dever? responder para configurar o Proftpd em seu sistema, a primeira ?:

Run proftpd from inetd or standalone ?

Caso queira que o proftpd seja configurado sob o “super daemon” Inetd selecione com o cursor e tecle “Enter”, caso queira usar o proftpd como Daemon selecione “standalone” e tecle “Enter”.

Dica: Caso voc? tenha muitos aplicativos que est?o configurados para rodar pelo Inetd e voc? ir? efetuar muitos testes no que diz reiniciar o Proftpd muitas vezes at? ficar de acordo com suas necessidades, acho melhor voc? configurar o Proftpd para iniciar pelo pr?prio daemon proftpd.

Abaixo, um exemplo de arquivo de configura??o do Protftpd.

# =======================================
# Exemplo do arquivo /etc/proftpd.conf
# Neste arquivo tentei exemplificar um modelo de arquivo
# no qual possui requisitos m?nimos de seguran?a.
# Caso queira customizar o proftpd.conf aconselho ler o Man Page
# ou consultar o site do projeto.
# Andr? Jaccon
# =======================================

# This is a basic ProFTPD configuration file (rename it to
# ‘proftpd.conf’ for actual use. It establishes a single server
# and a single anonymous login. It assumes that you have a user/group
# “nobody/nogroup” and “ftp” for normal operation and anon.

ServerName “Meu Servidor de FTP”
ServerType standalone
DeferWelcome off
ServerIdent off

MultilineRFC2228 on
DefaultServer on
ShowSymlinks on
AllowOverwrite on

DirFakeUser on
DirFakeGroup on

TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200

DisplayLogin welcome.msg
DisplayFirstChdir .message
ListOptions “-l”

DenyFilter \*.*/

# Uncomment this if you are using NIS or LDAP to retrieve passwords:
#PersistentPasswd off

# Uncomment this if you would use TLS module:
#TLSEngine on

# Uncomment this if you would use quota module:
#Quotas on
WtmpLog off
SystemLog /var/proftpd/proftpd.log
TransferLog /var/proftpd/xferlog

# Port 21 is the standard FTP port.
Port 21

# To prevent DoS attacks, set the maximum number of child processes
# to 30. If you need to allow more than 30 concurrent connections
# at once, simply increase this value. Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd)
MaxInstances 30

# Set the user and group that the server normally runs at.
User nobody
Group nogroup
DefaultRoot ~ # chroot Jail support

# Normally, we want files to be overwriteable.

# Umask 022 is a good standard umask to prevent new files and dirs
# (second parm) from being group and world writable.
Umask 022 022

AllowOverwrite on

# A basic anonymous configuration, no upload directories.

# These lines are marked with ##proftpd.deb anon access## so that they
# can be recognized, and edited by postinst. You can remove them once
# you’re sure you don’t want to keep them around.

##proftpd.deb anon access##
##proftpd.deb anon access## User ftp
##proftpd.deb anon access## Group nogroup
##proftpd.deb anon access## # We want clients to be able to login with “anonymous” as well as “ftp”
##proftpd.deb anon access## UserAlias anonymous ftp
##proftpd.deb anon access##
##proftpd.deb anon access## RequireValidShell off

RequireValidShell off
#AuthUserFile /etc/proftpd/passwd.proftpd

##proftpd.deb anon access##
##proftpd.deb anon access## # Limit the maximum number of anonymous logins
##proftpd.deb anon access## MaxClients 10
##proftpd.deb anon access##
##proftpd.deb anon access## # We want ‘welcome.msg’ displayed at login, and ‘.message’ displayed
##proftpd.deb anon access## # in each newly chdired directory.
##proftpd.deb anon access## DisplayLogin welcome.msg
##proftpd.deb anon access## DisplayFirstChdir .message
##proftpd.deb anon access##
##proftpd.deb anon access## # Limit WRITE everywhere in the anonymous chroot
##proftpd.deb anon access##
##proftpd.deb anon access## ##proftpd.deb anon access## DenyAll
##proftpd.deb anon access##
##proftpd.deb anon access##

##proftpd.deb anon access##
##proftpd.deb anon access## # Uncomment this if you’re brave.
##proftpd.deb anon access## #
##proftpd.deb anon access## # # Umask 022 is a good standard umask to prevent new files and dirs
##proftpd.deb anon access## # # (second parm) from being group and world writable.
##proftpd.deb anon access## # Umask 022 022
##proftpd.deb anon access## # ##proftpd.deb anon access## # DenyAll
##proftpd.deb anon access## #
##proftpd.deb anon access## # ##proftpd.deb anon access## # AllowAll
##proftpd.deb anon access## #
##proftpd.deb anon access## #

##proftpd.deb anon access##
##proftpd.deb anon access##

Posted in Sem categoria

Rep?sitorio de pacotes interno atrav?s do APache

Um dos maiores problemas para usu?rio e administradores de sistemas, ? quando possuimos diversas esta??es de trabalho para ger?nciar, configurar e atualizar e temos que baixar de reposit?rios de pacotes Apt-Get pela internet em todas as esta??es, gerando assim um alto tr?fego na rede, e diminuindo dependendo da quantidade de m?quinas e do link de internet, considerav?lmente a performance e a produtividade.

Com isso a melhor solu??o ? criar um reposit?rio de pacotes local,ao inv?s de baixarmos da internet todos os pacotes necess?rios para nossas instala??es em todas as esta??es de trabalho, baixamos em uma ?nica m?quina e depois copiamos para um reposit?rio de pacotes local, que ser?o baixados e instalados pela rede interna.

Neste artigo estaremos exemplificando como configurar um reposit?rio de pacotes para Apt-Get no Debian Gnu/Linux, e resolvendo assim o desperdicio tr?fego na internet.

Informa??es sobre o sistema

Debian Gnu/Linux R4 /i386-2.4.28
Servidor Web Apache 1.3.33

Pacotes necess?rios
dpkg
dpkg-dev
gzip
apache

Considera??es Iniciais
Para que possamos dar sequ?ncia neste artigo, devemos ter em mente que os pacotes mencionados acima est?o devidamente instalados e configurados em nossa m?quina que ser? o reposit?rio de pacotes, abaixo estarei passando um r?pido exemplo de insta??o e configura??o dos aplicativos acima.
Caso voc? j? possua os pacotes acima instalados e configurados, favor desconsiderar o exemplo de instala??o e configura??o abaixo:

1) Adicionando os mirrors necess?rios para baixar os pacotes atrav?s de um Mirror Externo de Apt-Get, para isso acrescente em seu arquivo /etc/apt/sources.list as linha abaixo:

deb http://security.debian.org stable/updates main
deb http://ftp.br.debian.org/debian/ stable main
deb-src http://ftp.br.debian.org/debian/ stable main
deb http://ftp.us.debian.org/debian stable main
deb-src http://ftp.us.debian.org/debian/ stable main

Obs: No ato do desenvolvimento deste artigo os Mirrors acima possuiam os pacotes necess?rios para est? instala??o, caso voc? tenha problemas para encontrar os pacotes mencionados usando os mirrors acima, verifique o site www.apt-get.org para procurar uma rela??o de Mirrors atualizada.

2) Atualizando o banco de pacotes do Apt e instalando os pacotes necess?rios:
#apt-get update ; apt-get install dpkg-dev apache gzip

3) A configura??o do servidor Apache ? um assunto muito amplo para exemplicar aqui e tamb?m foge do f?co principal deste artigo, por?m para que ele funcione b?sicamente para nosso exemplo devemos editar o arquivo /etc/apache/httpd.conf e seguir o exemplo b?sico de configura??o abaixo:

Procure pela linha ServerName geralmente localizado na linha 310 deste arquivo, caso ServerName esteja comentado, substitua pelo nome de seu servidor web
Ex:

ServerName ws1.fsbox.org

Depois procure pela linha DocumentRoot, e verifique para onde est? apontando o diret?rio de p?ginas p?blicas do Apache
Ex:

DocumentRoot /var/www

Salve e saia do arquivo;

5) Reinicie o servidor Apache para que as altera??es feitas possam entrar em vigor
#/etc/init.d/apache restart
ou
#/etc/init.d/apache stop ; /etc/init.d/apache start

Preparando os arquivos e diret?rios

Para nosso exemplo criei no meu diret?rio p?blico do Apache que est? localizado em /var/www/, um diret?rio chamado mirror-Debian e dentro dele uma pasta chamada debs no qual ficar?o armazenados os pacotes de extens?o .deb
#mkdir -p /var/www/mirror-Debian/debs

Agora devemos fazer backup de todos os arquivos .deb do diret?rio /var/cache/apt/archiver/ para o diret?rio /var/www/mirror-Debian/debs, para isso use o comando:

#cp -Rv /var/cache/apt/archives/*.deb /var/www/mirror-Debian/debs

Logo ap?s devemos criar um arquivo vazio para armazenar as informa??es destes pacotes
Ex:
#touch /var/www/mirror-Debian/arquivo
Obs: N?o ? obrigat?rio que o nome do arquivo seja arquivo, criei este nome para ficar mais f?cil a compreens?o.

Feito isso, devemos ent?o usar o aplicativo dpkg-scanpackages para gerar o conte?do do arquivo de classifica??o dos pacotes existentes dentro do diret?rio debs:
#cd /var/www/mirror-Debian ; dpkg-scanpackages debs arquivo | gzip > debs/Packages.gz

Finalizando
Para finalizar vamos mudar o usu?rio e grupo no qual pertence os diret?rios e sub-diret?rios do exemplo acima:
#chown -Rv www-data.www-data /var/www/mirror-Debian

Com o comando acima passamos todos os arquivos e diret?rios acima a pertencerem ao usu?rio padr?o do apache que ? www-data.

Depois basta, voc? adicionar no arquivo /etc/apt/sources.list de suas esta??es de trabalho locais o novo Mirror interno
Ex:
echo “deb http://192.168.0.1/mirror-Debian debs/” > /etc/apt/sources.list, ? claro que depois ser? necess?rio fazer o update da base de pacotes do Apt-Get com o comando
#apt-get update

Acredito que isso voc? ter? seu Mirror interno de Apt-Get, e resolver? assim seu problema de atualiza??o das esta??es de trabalho.

Qualquer problema ? s? entrar em contato.

At? mais.

Posted in Sem categoria