W serwerze IBM znajduje się kontroler SAS Adaptec 1726-2xx do którego podłączamy kablem miniSAS macierz DS3200.

Serwer

Serwer

Czasami zwykłe skonfigurowanie Volumenów na macierzy IBM nie wystarcza. Jeśli we wbudowanym IBM ServerRAID  8k nie zobaczymy naszego zasobu, postępujemy według poniższych wytycznych.

 

 

 

Komendą lspci -v sprawdzamy czy wykrywa Kontroler:

04:00.0 RAID bus controller: Adaptec AAC-RAID (Rocket) (rev 02)
Subsystem: IBM ServeRAID 8k/8k-l8
Flags: bus master, fast devsel, latency 0, IRQ 17
Memory at c9e00000 (64-bit, non-prefetchable) [size=2M]
Memory at c7fe0000 (64-bit, prefetchable) [size=128K]
I/O ports at 5000 [size=256]
[virtual] Expansion ROM at c7f00000 [disabled] [size=32K]
Capabilities: [40] Express Endpoint, MSI 00
Capabilities: [e0] Message Signalled Interrupts: Mask- 64bit+ Queue=0/2 Enable-
Capabilities: [100] Advanced Error Reporting <?>
Kernel driver in use: aacraid
Kernel modules: aacraid
Dobra, wykrywa.
IBM:~# modinfo mptsas filename:
/lib/modules/2.6.26-2-686/kernel/drivers/message/fusion/mptsas.ko version:
3.04.06 license:        GPL description:    Fusion MPT SAS Host driver author:
LSI Corporation srcversion:     02FD191085BC0C0F7ED3ADC alias:
pci:v00001000d00000062sv*sd*bc*sc*i* alias:
pci:v00001000d00000058sv*sd*bc*sc*i* alias:
pci:v00001000d00000056sv*sd*bc*sc*i* alias:
pci:v00001000d00000054sv*sd*bc*sc*i* alias:
pci:v00001000d00000050sv*sd*bc*sc*i* depends:
mptscsih,mptbase,scsi_mod,scsi_transport_sas vermagic:
2.6.26-2-686 SMP mod_unload modversions 686 parm:
mpt_pt_clear: Clear persistency table: enable=1  (default=MPTSCSIH_PT_CLEAR=0) (int) parm:
max_lun: max lun, default=16895  (int)
W tej wersji serwera (czyli 7979), a konkretnie z poziomu jego BIOSu, nie można skonfigurować Volumenów, należy użyć płytki CD dostarczonej z serwerem, i skorzystać ze specjalnego managera.

Na innych serwerach x3650 M3 w biosie możemy od razu dodać Volumeny.

Nie rozpędzajmy się zbytnio gdyż Linux może nam wykryć do 16TB. Potem należy skompilować nowe jądro i użyć innego systemu plików.

Po aktualizacji postfixa, Zimbra nie odbiera poczty.

logo zimbra

zimbra

Błędy jakie wypisane są w logach:

postfix/postqueue[14174]: fatal: Queue report unavailable – mail system is down

 

logujemy się na użytkownika Zimbry:

su zimbra

 

zimbra@it:/var/log$ postfix check
postfix/postfix-script: warning: not owned by root: /opt/zimbra/postfix-2.7.8.3z
postfix/postfix-script: warning: not owned by root: /opt/zimbra/postfix-2.7.8.3z
postfix/postfix-script: warning: not owned by root: /opt/zimbra/postfix-2.7.8.3z

 

su root

chown root:root /opt/zimbra/postfix-2.7.8.3z/conf/ -R

chown postfix:postfix /opt/zimbra/data/postfix/data/. -R

pamiętając o właściwych ścieżkach dostępu.

 

Jak to nie pomoże to reperujemy uprawnienia wszystkich katalogów komendą:

/opt/zimbra/libexec/zmfixperms –verbose –extended

Teraz resetujemy usługi i patrzymy w logi czy nam kolejnych błędów Zimbra nie wysypuje.

 

Dlaczego ZIMBRA?

  1. Jest darmowa.
  2. Dobra dla niewielkiej firmy i małej ilości kont pocztowych.
  3. Wsparcie na formach dyskusyjnych.
  4. Posiada darmowe narzędzia do naprawy, obsługi, archiwizowania.

 

Oto fragment pliku konfiguracyjnego z częścią dla jednej domeny, przygotowany pod katalog WebMini.

[stextbox id=”grey”]

 

server {
<——>root /home/naszastrona/www;
<——>index index.php index.html index.htm;
<——>
<——>error_log /home/naszastrona/log/error_log.log;
<——>access_log /home/naszastrona/log/access_log.log;
<——>server_name naszastrona.pl www.naszastrona.pl;

<——>location / {
<——><——>try_files $uri $uri/ /index.php?$args;
<——><——>if (!-e $request_filename) {
<——><——><——>rewrite ^/pages/([0-9]+)/(asc|desc)<—>/index.php?mode=page&page=$1&sort=$2 last;
<——><——><——>rewrite ^/arts/([0-9]+)/(asc|desc)<—->/index.php?mode=arts&page=$1&sort=$2 last;
<——><——><——>rewrite ^/tag/(.+)<—->/index.php?mode=tag&tag=$1 last;
<——><——><——>rewrite ^/tags/p/([0-9]+)$<—->/index.php?mode=tags&page=$1 last;
<——><——><——>rewrite ^/tags/?$<—–>/index.php?mode=tags last;
<——><——><——>rewrite ^/dodaj-wpis$<-><——>/index.php?mode=dodaj last;
<——><——><——>rewrite ^/dodaj-artykul$<——>/index.php?mode=dodaj-artykul last;
<——><——><——>rewrite ^/(.*),artykul,(.*)<—>/index.php?mode=article&id=$1 last;
<——><——><——>rewrite ^/(.*),serwis,(.*).html>/index.php?mode=entry&id=$1 last;
<——><——>}
<——>}
<——>
<——>location ~ \.php$ {
<——><——>fastcgi_pass 127.0.0.1:9000;
<——><——>fastcgi_index index.php;
<——><——>include fastcgi_params;
<——>}
<——>location ~* \.(js|css|png|jpg|jpeg|gif|ico)$
{
<–><——>log_not_found off;
<–><——>access_log off;
<–>        expires 30d;
}

<——># deny access to .htaccess files, if Apache’s document root
<——># concurs with nginx’s one
<——>#
<——>location ~ /\minigog {
<——><——>deny all;
<——><——>access_log off;
<——><——>log_not_found off;
<——>}
<——>location ~ /\.ht {
<——><——>deny all;
<——><——>access_log off;
<——><——>log_not_found off;
<——>}
}

[/stextbox]

 

 

Należy pamiętac aby fragnemt:

rewrite ^/(.*),artykul,(.*)<—>/index.php?mode=article&id=$1 last;
rewrite ^/(.*),serwis,(.*).html>/index.php?mode=entry&id=$1 last;

dopasować do tego jakie mamy ustawienia w pliku config.php (zamiast artytuk może być -art-, a zamiast serwis – strona-).

Czyli (fragment config.php)

[stextbox id=”grey”]// tag w przyjaznych linkach wpisow, taki sam musi sie znalezc w pliku .htaccess
$config[‚url_tag_e’] = ‚serwis’;

// tag w przyjaznych linkach artykulow, taki sam musi sie znalezc w pliku .htaccess
$config[‚url_tag_a’] = ‚artykul’;

// wybierz format prezentacji przyjaznych linkow
# 1 – domena.pl/12345/Tytul_wpisu/wpis.html
# 2 – domena.pl/wpis-12345/Tytul_wpisu.html
# 3 – domena.pl/12345,wpis,Tytul-wpisu.html
# 4 – domena.pl/12345-wpis-Tytul.wpisu
$config[‚url_format’] = ‚3’;[/stextbox]

Jeśli przyjrzeć się liście konfiguracji, zobaczymy że brak jest współpracy z plikami jpg,

 


Path: /usr/share/ImageMagick-6.7.1/configure.xml

Name          Value
-------------------------------------------------------------------------------
CC            x86_64-pc-linux-gnu-gcc -std=gnu99 -std=gnu99
CFLAGS        -fopenmp -mtune=generic -O2 -pipe -Wall -pthread
CODER_PATH    /usr/lib64/ImageMagick-6.7.1/modules-Q16/coders
CONFIGURE     ./configure  '--prefix=/usr' '--build=x86_64-pc-linux-gnu' '--host=x86_64-pc-linux-gnu' '--mandir=/usr/share/ma
n' '--infodir=/usr/share/info' '--datadir=/usr/share' '--sysconfdir=/etc' '--localstatedir=/var/lib' '--libdir=/usr/lib64' '-
-disable-dependency-tracking' '--docdir=/usr/share/doc/imagemagick-6.7.1.0' '--disable-static' '--disable-hdri' '--disable-op
encl' '--with-threads' '--without-included-ltdl' '--with-ltdl-include=/usr/include' '--with-ltdl-lib=/usr/lib64' '--with-modu
les' '--with-quantum-depth=16' '--with-magick-plus-plus' '--with-perl' '--with-perl-options=INSTALLDIRS=vendor' '--with-gs-fo
nt-dir=/usr/share/fonts/default/ghostscript' '--with-bzlib' '--without-x' '--with-zlib' '--without-autotrace' '--without-dps'
'--without-djvu' '--with-dejavu-font-dir=/usr/share/fonts/dejavu' '--without-fftw' '--without-fpx' '--without-fontconfig' '-
-without-freetype' '--without-gslib' '--without-gvc' '--without-jbig' '--without-jpeg' '--without-jp2' '--without-lcms' '--wi
thout-lcms2' '--without-lqr' '--without-lzma' '--without-openexr' '--without-png' '--without-rsvg' '--without-tiff' '--withou
t-webp' '--without-corefonts' '--without-wmf' '--with-xml' '--enable-openmp' 'build_alias=x86_64-pc-linux-gnu' 'host_alias=x8
6_64-pc-linux-gnu' 'CFLAGS=-mtune=generic -O2 -pipe' 'LDFLAGS=-Wl,-O1 -Wl,--as-needed' 'CXXFLAGS=-mtune=generic -O2 -pipe'
CONFIGURE_PATH /etc/ImageMagick/
COPYRIGHT     Copyright (C) 1999-2011 ImageMagick Studio LLC
CPPFLAGS      -I/usr/include/ImageMagick
CXX           x86_64-pc-linux-gnu-g++
CXXFLAGS      -mtune=generic -O2 -pipe -pthread
DEFS          -DHAVE_CONFIG_H
DELEGATES     bzlib xml zlib
DISTCHECK_CONFIG_FLAGS 'CFLAGS=-mtune=generic -O2 -pipe' 'LDFLAGS=-Wl,-O1 -Wl,--as-needed' --disable-deprecated --with-quantu
m-depth=16 --with-umem=no --with-autotrace=no --with-dps=no --with-djvu=no --with-dejavu-font-dir=/usr/share/fonts/dejavu --w
ith-fftw=no --with-fpx=no --with-fontconfig=no --with-freetype=no --with-gslib=no --with-fontpath= --with-gs-font-dir=/usr/sh
are/fonts/default/ghostscript --with-gvc=no --with-jpeg=no --with-jp2=no --with-lcms=no --with-lcms2=no --with-lqr=no --with-
lzma=no --with-openexr=no --with-png=no --with-rsvg=no --with-tiff=no --with-webp=no --with-wmf=no
DOCUMENTATION_PATH /usr/share/doc/imagemagick-6.7.1.0/
EXEC-PREFIX   /usr
EXECUTABLE_PATH /usr/bin
FEATURES      OpenMP
FILTER_PATH   /usr/lib64/ImageMagick-6.7.1/modules-Q16/filters
HOST          x86_64-pc-linux-gnu
LDFLAGS       -L/usr/lib64 -Wl,-O1 -Wl,--as-needed
LIB_VERSION   0x671
LIB_VERSION_NUMBER 6,7,1,0
LIBRARY_PATH  /usr/lib64/ImageMagick-6.7.1
LIBS          -lMagickCore -lbz2 -lz -lm -lgomp -lpthread -lltdl
NAME          ImageMagick
PCFLAGS       -fopenmp
PREFIX        /usr
QuantumDepth  16
RELEASE_DATE  2012-01-08
SHARE_PATH    /usr/share/ImageMagick-6.7.1
SVN_REVISION  exported
TARGET_CPU    x86_64
TARGET_OS     linux-gnu
TARGET_VENDOR pc
VERSION       6.7.1
WEBSITE       http://www.imagemagick.org

Path: [built-in]

Name          Value
-------------------------------------------------------------------------------
NAME          ImageMagick


 

pozostaje nam przeinstalowanie programu z flagami na Yes.

Zablokowanie danej społeczności jest czasami obowiązkiem.  Obciążenie jakie generują boty z Chin jest ogromne.  Poniżej moja propozycja jak przyblokować IP z danego kraju za pomocą pliku konfiguracyjnego nginx.conf.

Tworzymy plik BASH drop.cn.ip

[stextbox id=”grey”]#!/bin/bash
# A Nginx Shell Script To Block IP Address
# tmp file
FILE=”/tmp/drop.cn.txt.$$”

# nginx config file – path to nginx drop conf file
OUT=/etc/nginx/drop.cn.conf

URL=”http://www.ipdeny.com/ipblocks/data/countries/cn.zone”

# reload command
NGINX=”/etc/init.d/nginx -s reload”

# remove old file
[[ -f $FILE ]] && /bin/rm -f $FILE

# emply nginx deny file
>$OUT

# get database
/usr/bin/wget –output-document=$FILE „$URL”

# format in nginx deny netblock; format
/bin/egrep -v ‚^;’ $FILE  | awk ‚{ print „deny ” $1″;”}’ >>$OUT

# reload nginx
/bin/sync && ${NGINX}

[/stextbox]

 

Wrzucamy ten plik do crona, wystarczy wykonywać go raz na miesiąc /etc/cron.monthly

Czasami plik OUT znajduje się w /opt/nginx/conf , dlatego należy prawidłowo skonfigurować plik drop.cn.ip

W pliku nginx.conf odszukujemy nasz server wirtualny i dodajemy

[stextbox id=”grey”]

server {

include drop.cn.conf;

.

.

.

}

[/stextbox]

 

Uruchamiamy /etc/init.d/nginx -s reload

Odtąd blokujemy wszystkie IP z Chin. Oczywiście musimy pamiętać że klasy IP ulegają zmianie, oraz to że Chińczycy wykupują serwery w klasach IP np. USA.

Analogiczne postępujemy z blokowaniem innych państw.  Wystarczy wszędzie pozmieniać cn na jp lub ru i będziemy mogli blokować Japonię lub Rosję.

 

 

 

 

 

To setup netqmail to run out-of-the-box on your system, run:
* emerge –config =mail-mta/netqmail-1.06
*
* To start qmail at boot you have to add svscan to your startup
* and create the following links:
* ln -s /var/qmail/supervise/qmail-send /service/qmail-send
* ln -s /var/qmail/supervise/qmail-smtpd /service/qmail-smtpd
*
* To start the pop3 server as well, create the following link:
* ln -s /var/qmail/supervise/qmail-pop3d /service/qmail-pop3d
*
* To start the pop3s server as well, create the following link:
* ln -s /var/qmail/supervise/qmail-pop3sd /service/qmail-pop3sd
*
* Additionally, the QMTP and QMQP protocols are supported,
* and can be started as:
* ln -s /var/qmail/supervise/qmail-qmtpd /service/qmail-qmtpd
* ln -s /var/qmail/supervise/qmail-qmqpd /service/qmail-qmqpd
*
* Additionally, if you wish to run qmail right now, you should
* run this before anything else:
* source /etc/profile
*
* If you are looking for documentation, check those links:
* http://www.gentoo.org/doc/en/qmail-howto.xml
*   — qmail/vpopmail Virtual Mail Hosting System Guide
* http://www.lifewithqmail.com/
*   — Life with qmail
*

Czasami systemy zarzucają nas komunikatami, nieststy bez odrobiny tekstu. Sytuacje takie zdażały mi się nie tylko w windowsach ale i na linuksach (redchat, fedora, mandriva).

bez-komunikatu

komunikat błędu bez błedu

W większości przypadków brak jest tłumaczenia dla generownego błedu i system (lub program) generuje samo okienko.

Najpierw instalujemy:
yum install httpd-devel apr-devel -y

Potem:

gem install passenger
Następnym krokiem będzie:

passenger-install-apache2-module
I ta komenda może wygenerować błedy, które naprawimy używając podpowiedzi

[stextbox id=”info”]This installer will guide you through the entire installation process. It

shouldn’t take more than 3 minutes in total.
Here’s what you can expect from the installation process:
1. The Apache 2 module will be installed for you.

2. You’ll learn how to configure Apache.

3. You’ll learn how to deploy a Ruby on Rails application.
Don’t worry if anything goes wrong. This installer will advise you on how to

solve any problems.
Press Enter to continue, or Ctrl-C to abort.
——————————————–
Checking for required software…
* GNU C++ compiler… not found

* Curl development headers with SSL support… not found

* OpenSSL development headers… not found

* Zlib development headers… not found

* Ruby development headers… found

* OpenSSL support for Ruby… found

* RubyGems… found

* Rake… found at /usr/bin/rake

* rack… found

* Apache 2… found at /usr/sbin/httpd

* Apache 2 development headers… not found

* Apache Portable Runtime (APR) development headers… not found

* Apache Portable Runtime Utility (APU) development headers… not found
Some required software is not installed.

But don’t worry, this installer will tell you how to install them.
Press Enter to continue, or Ctrl-C to abort.
——————————————–
Installation instructions for required software
* To install GNU C++ compiler:

Please run yum install gcc-c++ as root.
* To install Curl development headers with SSL support:

Please run yum install curl-devel as root.
* To install OpenSSL development headers:

Please run yum install openssl-devel as root.
* To install Zlib development headers:

Please run yum install zlib-devel as root.
* To install Apache 2 development headers:

Please run yum install httpd-devel as root.
* To install Apache Portable Runtime (APR) development headers:

Please run yum install apr-devel as root.
* To install Apache Portable Runtime Utility (APU) development headers:

Please run yum install apr-util-devel as root.
If the aforementioned instructions didn’t solve your problem, then please take

a look at the Users Guide:
/usr/lib/ruby/gems/1.8/gems/passenger-3.0.5/doc/Users guide Apache.html
[/stextbox]

Nie przewidujemy komplikacji, więc komunikat sam mówi za siebie:

[stextbox id=”grey”]

——————————————–
The Apache 2 module was successfully installed.

Please edit your Apache configuration file, and add these lines:

LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-3.0.5/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-3.0.5
PassengerRuby /usr/bin/ruby

After you restart Apache, you are ready to deploy any number of Ruby on Rails
applications on Apache, without any further Ruby on Rails-specific
configuration!

Press ENTER to continue.

——————————————–
Deploying a Ruby on Rails application: an example

Suppose you have a Rails application in /somewhere. Add a virtual host to your
Apache configuration file and set its DocumentRoot to /somewhere/public:

<VirtualHost *:80>
ServerName www.yourhost.com
DocumentRoot /somewhere/public    # <– be sure to point to ‚public’!
<Directory /somewhere/public>
AllowOverride all              # <– relax Apache security settings
Options -MultiViews            # <– MultiViews must be turned off
</Directory>
</VirtualHost>

And that’s it! You may also want to check the Users Guide for security and
optimization tips, troubleshooting and other useful information:

/usr/lib/ruby/gems/1.8/gems/passenger-3.0.5/doc/Users guide Apache.html

Enjoy Phusion Passenger, a product of Phusion (www.phusion.nl) 🙂
http://www.modrails.com/

Phusion Passenger is a trademark of Hongli Lai & Ninh Bui.

[/stextbox]