Archive for Linux

Problemas em servidores Linux com o fim do horário de verão NTP Brasil

Como atualizar o horário de verão em servidores Linux. Atualizando horário de verão no CentOS Atualizando horário de verão no RedHat Atualizando horário de verão no Debian Atualizando horário de verão no UbuntuEstados que não precisarão mais ajustar os relógios para o horário de verão.
Família: Debian/Ubuntu

Verificando se o horário de verão está com data para mudar.

# zdump -v Brazil/East | grep 2019

Brazil/East  Sun Feb 17 01:59:59 2019 UT = Sat Feb 16 23:59:59 2019 -02 isdst=1 gmtoff=-7200
Brazil/East  Sun Feb 17 02:00:00 2019 UT = Sat Feb 16 23:00:00 2019 -03 isdst=0 gmtoff=-10800
Brazil/East  Sun Nov  3 02:59:59 2019 UT = Sat Nov  2 23:59:59 2019 -03 isdst=0 gmtoff=-10800
Brazil/East  Sun Nov  3 03:00:00 2019 UT = Sun Nov  3 01:00:00 2019 -02 isdst=1 gmtoff=-7200
# zdump -v Brazil/East | grep 2019
 
Brazil/East  Sun Feb 17 01:59:59 2019 UT = Sat Feb 16 23:59:59 2019 -02 isdst=1 gmtoff=-7200
Brazil/East  Sun Feb 17 02:00:00 2019 UT = Sat Feb 16 23:00:00 2019 -03 isdst=0 gmtoff=-10800
Brazil/East  Sun Nov  3 02:59:59 2019 UT = Sat Nov  2 23:59:59 2019 -03 isdst=0 gmtoff=-10800
Brazil/East  Sun Nov  3 03:00:00 2019 UT = Sun Nov  3 01:00:00 2019 -02 isdst=1 gmtoff=-7200
 

Agora iremos atualizar o pacote tzdata:

apt-get update
apt-get --only-upgrade install tzdata

apt-get update
apt-get --only-upgrade install tzdata
 

Vamos verificar novamente se o horário de verão permanece com data para alteração:

# zdump -v Brazil/East | grep 2019
Brazil/East  Sun Feb 17 01:59:59 2019 UT = Sat Feb 16 23:59:59 2019 -02 isdst=1 gmtoff=-7200
Brazil/East  Sun Feb 17 02:00:00 2019 UT = Sat Feb 16 23:00:00 2019 -03 isdst=0 gmtoff=-10800
# zdump -v Brazil/East | grep 2019
Brazil/East  Sun Feb 17 01:59:59 2019 UT = Sat Feb 16 23:59:59 2019 -02 isdst=1 gmtoff=-7200
Brazil/East  Sun Feb 17 02:00:00 2019 UT = Sat Feb 16 23:00:00 2019 -03 isdst=0 gmtoff=-10800

Família: CentOS, Redhat e Fedora

Verificando se o horário de verão está com data para mudar.

# zdump -v Brazil/East | grep 2019
zdump: warning: zone "Brazil/East" abbreviation "-03" lacks alphabetic at start
Brazil/East  Sun Feb 17 01:59:59 2019 UTC = Sat Feb 16 23:59:59 2019 -02 isdst=1 gmtoff=-7200
Brazil/East  Sun Feb 17 02:00:00 2019 UTC = Sat Feb 16 23:00:00 2019 -03 isdst=0 gmtoff=-10800
Brazil/East  Sun Nov  3 02:59:59 2019 UTC = Sat Nov  2 23:59:59 2019 -03 isdst=0 gmtoff=-10800
Brazil/East  Sun Nov  3 03:00:00 2019 UTC = Sun Nov  3 01:00:00 2019 -02 isdst=1 gmtoff=-7200
# zdump -v Brazil/East | grep 2019
zdump: warning: zone "Brazil/East" abbreviation "-03" lacks alphabetic at start
Brazil/East  Sun Feb 17 01:59:59 2019 UTC = Sat Feb 16 23:59:59 2019 -02 isdst=1 gmtoff=-7200
Brazil/East  Sun Feb 17 02:00:00 2019 UTC = Sat Feb 16 23:00:00 2019 -03 isdst=0 gmtoff=-10800
Brazil/East  Sun Nov  3 02:59:59 2019 UTC = Sat Nov  2 23:59:59 2019 -03 isdst=0 gmtoff=-10800
Brazil/East  Sun Nov  3 03:00:00 2019 UTC = Sun Nov  3 01:00:00 2019 -02 isdst=1 gmtoff=-7200
 

Agora iremos atualizar o pacote tzdata.

# yum update tzdata -y

# yum update tzdata -y

Agora vamos verificar novamente se o horário de verão permanece com data para alteração:

# zdump -v Brazil/East | grep 2019
zdump: warning: zone "Brazil/East" abbreviation "-03" lacks alphabetic at start
Brazil/East Sun Feb 17 01:59:59 2019 UTC = Sat Feb 16 23:59:59 2019 -02 isdst=1 gmtoff=-7200
Brazil/East Sun Feb 17 02:00:00 2019 UTC = Sat Feb 16 23:00:00 2019 -03 isdst=0 gmtoff=-10800
 
# zdump -v Brazil/East | grep 2019
zdump: warning: zone "Brazil/East" abbreviation "-03" lacks alphabetic at start
Brazil/East Sun Feb 17 01:59:59 2019 UTC = Sat Feb 16 23:59:59 2019 -02 isdst=1 gmtoff=-7200
Brazil/East Sun Feb 17 02:00:00 2019 UTC = Sat Feb 16 23:00:00 2019 -03 isdst=0 gmtoff=-10800
 

Eu recomendo utilizarem o Ansible ou outro gerenciador de configuração para atualizar o pacote tzdata de todos os hosts, assim não precisará logar em cada um dos servidores para atualizar tzadata.

Creditos: https://www.linuxnaweb.com

Exemplo de direcionamento 301 .htaccess do domínio para um diretório abaixo do public_html

Caso:

WordPress dentro do diretório abaixo:

–> public_html/PAGINA

1 – Criar um arquivo .htaccess dentro do diretório public_html contendo:

A- SiTE.com.br é o nome do meu dominio em questão
B- PÁGINA é o diretório alvo dentro do public_html que quero ter como principal para esse domínio.

RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?SITE.com.br$
RewriteCond %{REQUEST_URI} !^/PAGINA/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /PAGINA/$1
RewriteCond %{HTTP_HOST} ^(www.)?SITE.com.br$
RewriteRule ^(/)?$ PAGINA/index.php [L]

Obs: A última linha direcionei para index.php pois minha pagina esta em php e o primeiro arquivo que o apache por padrão busca é o index.php e index.html

No wordpress setar nos campos siteurl e home da tabela options a url http://www.SITE.com.br

Tabela no mysql crashed “is marked as crashed and last (automatic?) repair failed”

Problem:

#144 - Table './mya2billing/cc_call' is marked as crashed and last (automatic?) repair failed
or 
ERROR 144 - Table 'BLABLABLABLABL' is marked as crashed and last (automatic?) repair failed

If your MySQL process is running, stop it. On Debian/Red Hat/Centos:

sudo service mysql stop
/etc/init.d/mysql stop

Go to your data folder. On Debian:

cd /var/lib/mysql/$DATABASE_NAME

Try running:

myisamchk -r $TABLE_NAME

If that doesn’t work, you can try:

myisamchk -r -v -f $TABLE_NAME

You can start your MySQL server again. On Debian:

sudo service mysql start
or /etc/init.d/mysql start

Brother printers: how to install them in Linux Mint

Linux_Mint_modified_Logo

A Brother printer is nowadays easily installable in Linux Mint. You can apply this how-to:

1. Connect your printer to your computer by means of a USB cable (even when you intend to use it as a network printer later on: for initial installation a USB cable is often needed). Then turn on your printer.

2. Sometimes it’s necessary to add a printer or scanner to the system yourself, by means of the application Printers. In that case the application Printers already contains the driver for your printer, but you have to “indicate” the printer first.

So launch the application Printers. You can use the search box in your menu to find it; it’s present by default in all editions of Linux Mint.

In Printers, click the button Add (with the + sign) and follow the steps it offers you.

But in some cases this driver doesn’t work well: the printed characters are deformed. Or if you have a multifunctional printer, this doesn’t get the scanner part operational: you can only print. Or your printer might simply be too new for the database in your version of Linux Mint. In either of those cases, proceed with step 3:

3. Installing the driver manually isn’t very difficult either, because Brother has issued a generic install script for that: the Driver Install Tool.

With that, you can install not only the printer driver, but also (for a multifunctional printer) the scanner driver.

You can use it as follows:

4. First remove any existing instance of the Brother printer in the application Printers.

5. Go to the download section of the Brother website and look up your printer model.

For “OS Family” you choose Linux.
For “OS Version” you select Linux (deb).
Click the Search button.

Then click the Driver Install Tool and download linux-brprinter-installer.

Save the downloaded file in the folder Downloads. Don’t extract the zipped file, but leave it there just as it is. Note: don’t use the installation how-to on the Brother website, but use the installation how-to on my website instead (see below)!

6. Launch a terminal linux.

d. Now copy/paste the following command into the terminal, in order to unzip the downloaded file (it’s one line):

cd ~/Downloads && gunzip -v ~/Downloads/linux-brprinter*

Press Enter.

7. Use copy/paste to transfer the following line to the terminal:

sudo bash ~/Downloads/linux-brprinter*

Press Enter. Type your password when prompted; this will remain entirely invisible, not even asterisks will show, which is normal.

8. Follow the steps that the installer script presents you. When asked for the printer model name, type it and press Enter.

An example is best: for a Brother DCP-1610W you type:

DCP-1610W

Note: is there at the end of the model name a letter between brackets? Then you probably have to omit that last letter (including the brackets).

Example: for the Brother MFC-L9550CDW(T) it becomes:

MFC-L9550CDW

At the question about the Device URI, you answer N for a USB printer and Y for a network printer.

For a network printer, you select in the next question the last option:
(A): Auto. For that, you type the number of that option and you press Enter.

9. Reboot your computer.

10. Now you may have to solve a problem with the scanner. In 64-bit Linux Mint 19 the location for the supporting library files has changed, and the driver for the scanner feature doesn’t always take that into account. The Brother driver then puts them in /usr/lib64, whereas your operating system expects them in /usr/lib.

So for a 64-bit system, you now need to execute the following three commands in order to make your scanner work well (use copy/paste to transfer them one by one to the terminal, and press Enter after each command):

sudo ln -sf /usr/lib64/libbrscandec*.so* /usr/lib

sudo mkdir -p /usr/lib/sane

sudo ln -sf /usr/lib64/sane/libsane-brother*.so* /usr/lib/sane

11. Then add yourself to the scanner user group. You can use a click-click-click graphical system tool for that, but this varies amongst editions. The terminal works in all editions….

An example is easiest. If your name is Johnny, your username is johnny (no caps), so the terminal command would be:

sudo usermod -a -G scanner johnny

Press Enter.

12.Now open a settings file with Xed, using the following command (use copy/paste to transfer it to the terminal):

xed admin:///lib/udev/rules.d/60-libsane1.rules

(The three consecutive dashes are intentional)

Press Enter.

13. At the very end of the text in that long text file, you see this line:

# LABEL="libsane_rules_end".

Now add the following two lines right above that line: (use copy/paste to transfer them):

# Brother scanners

ATTRS{idVendor}=="04f9", ENV{libsane_matched}="yes"

14. Reboot your computer.

15. Printers with wifi: for wireless setup, it’s necessary to configure your printer to connect to your wireless network automatically. If your printer has a small display of its own, you should be able to set this up by means of that little display (see your manual).

If your printer doesn’t have a display of its own, you might need to boot Windows for this. One time only, because you only need to configure the printer to connect to your wireless network automatically when you turn it on. Reboot into Linux, launch the application Printers, and you should be able to select your network printer wirelessly.

16. You’re done! Your printer should work fine now, including the scanner part (when present).

Regras firewall para openvpn

Regras para passar trafego pelo iptables:

Exemplo:

tun0 – interface openvpn
eth0 – lan

# vpn
iptables -A INPUT -i tun0 -j ACCEPT

# openvpn
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

iptables -A FORWARD -i tun0 -j ACCEPT
iptables -A FORWARD -i tun0 -o eth0 -m state –state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth0 -o tun0 -m state –state RELATED,ESTABLISHED -j ACCEPT

# aceitar a openvpn
iptables -A INPUT -p udp –dport 1195 -j ACCEPT