Записи с Меткой ‘ linux

Чистка мусора linux

du -sm /* | sort -nr
du -sm /var | sort -nr

Для вывода отсортированного списка файлов размером больше 500Мб, находящихся
в дереве файловой системы начиная с текущей директории можно использовать команду:

find . -type f -size +500M -exec ls -l {} \; | sort -k5 -n -r| less

Для вывода отсортированного по размеру списка директорий можно использовать команду:

find . -type d -maxdepth 1 -exec du -s {} \;|sort -k1 -r -n| less

Для выявления конечной директории с большими файлами можно снять ограничение на
рекурсивную проверку:

find . -type d -exec du -s {} \;| sort -k1 -r -n| less

Найти все avi, mpg, wmv файлы можно так:

find . \( -iname «*.avi» -o -iname «*.mpg» -o -iname «*.wmv» \) -type f -exec ls -l {} \;| less

PS. Вместо ls можно было использовать встроенные опции -ls или -printf «%s %P\n»,
но %P не всегда легко вспомнить, а вывод -ls не совсем привычен.

Найти 10 самых больших фалов, начиная с ‘/’ (корня)
$ find / -mount -type f -ls 2> /dev/null | sort -rnk7 | head -10 | awk ‘{printf «%10d MB\t%s\n»,($7/1024)/1024,$NF}’

Найти 10 самых больших фалов, начиная с ‘/home’
$ find /home -mount -type f -ls 2> /dev/null | sort -rnk7 | head -10 | awk ‘{printf «%10d MB\t%s\n»,($7/1024)/1024,$NF}’

самые большие директории:
du -kx | egrep -v «\./.+/» | sort -n

Спасибы.

http://www.shellhacks.com/ru/Poisk-Bolshih-Faylov-v-Linux

Время жизни сессий +

Очистка файлов сессий PHP в Debian, через какое время это делать?
На долго работающих системах образуются папки /tmp или mod-tmp (либо bin-tmp) в случае использования ISPManager размером в миллионы и десятки миллионов файлов с файлами PHP сессий sess_тут_длинный_код, которые служат для временного хранения сессий от пользователей. То, что это наносит ущерб производительности файловой системы — однозначно (попробуйте пролистать такую папку ls ом или хотя бы удалить), поэтому их надо удалять. Возникает вопрос — как часто их можно удалять, чтобы не повредить работе приложений их использующих?

В комментариях к конфигу в Debian 5 Lenny сказано следующее:

; After this number of seconds, stored data will be seen as ‘garbage’ and
; cleaned up by the garbage collection process.
session.gc_maxlifetime = 1440

; NOTE: If you are using the subdirectory option for storing session files
; (see session.save_path above), then garbage collection does *not*
; happen automatically. You will need to do your own garbage
; collection through a shell script, cron entry, or some other method.
; For example, the following script would is the equivalent of
; setting session.gc_maxlifetime to 1440 (1440 seconds = 24 minutes):
; cd /path/to/sessions; find -cmin +24 | xargs rm

Как можно понять из текста, за время жизни файлов сессий отвечает переменная session.gc_maxlifetime, которая стандартно выставлена в 1440 секунд или 24 минуты. Также для определения этого промежутка на основе значений, заданных в системных php.ini, в Debian есть служебный скрипт:

/usr/lib/php5/maxlifetime
24

Вообщем редактируем /usr/lib/php5/maxlifetime и будет нам счастье.

Спасибо.

Поиск текста

grep -rl ‘i_love_people’ /var/www
find / -name *.php | xargs grep tekst

msmtp

Во многих дистрибутивах она изначально есть в пакетах, поэтому ее установка проблем не составляет. В Debian Linux пишем:
# apt-get install msmtp
В FreeBSD:
# cd /usr/ports/mail/msmtp
# make && make install && make clean
# rehash
Теперь выполним
# msmtp —version
чтобы узнать, где находится системный файл конфигурации (обычно под Linux это /etc/msmtprc, под FreeBSD — /usr/local/etc/msmtprs). Теперь можно приступить к его редактированию. Файл может содержать настройки для нескольких аккаунтов. В простейшем случае для аутентификации достаточно указать следующее:
account default
auth on
user имя_пользователя
password пароль
from ящик_отправителя
timeout 5
Последняя строка — это таймаут для соединения с сервером. В случае отправки почты из PHP-скриптов он должен быть небольшим, чтобы если SMTP-сервер упадет, это не сильно сказалось на работе сайта.
Проверим, что подключение к серверу проходит нормально:
# msmtp —serverinfo
Далее найдем в php.ini строку sendmail_path и укажем в ней путь к msmtp (пример для FreeBSD):
sendmail_path = «/usr/local/bin/msmtp -t»
Не забываем про кавычки, их отсутствие будет приводить к ошибке.
Казалось бы, на этом все, и после перезапуска Apache отправка почты должна заработать, но обнаружилась одна тонкость. При отправке письма с опцией -t msmtp создает где-то (скорее всего, в текущем каталоге) временный файл, и в ряде случаев на это может не хватить прав. В этом случае письмо не отправится, и запись в лог об этом так же не будет сделана. Чтобы избежать такого, нужно прописать в переменную TMPDIR каталог, который точно открыт для записи, например, /tmp. Сделать это можно разными способами, самый простой — добавить в скрипт перед вызовом функции mail вот такую строку:
putenv(‘TMPDIR=/tmp’);
После этого отправка писем через внешний сервер должна заработать.

Спасибо. http://new.xpro.su/server-admin/php-msmtp

Установка sugarCRM 6.5

http://sugartalk.ru/install-sugar-prepair.html

Вообщем все по тексту

http://www.sugarforge.org/frs/?group_id=443 — русификация 6.5
https://github.com/likhobory/SuiteCRM7RU — Русификатор 7 и т.д.

Установка suitecrm тривиальна. по мануалу от sugarcrm
+
сброс пароля admin
update users set user_hash = md5(‘clint’) where user_name = ‘admin’;
+
сходу не подтянул русский_лагн_пак, но сам заработал на русском

Enable nmap in zabbix — не закончена

visudo
1. Sudo: sorry, you must have a tty to run sudo
Добавить комментарий
sudo: sorry, you must have a tty to run sudo это достаточно распространенная ошибка, если вы пытаетесь выполнить команду в скрипте от другого пользователя при помощи sudo.

Дело в том, что по умолчанию, sudo, может быть запущен только если пользователь был залогинен с реальным tty. Для того, что бы исправить положение, достаточно отредактировать ваш файл /etc/sudoers и закоментировать строку Default requiretty:
#Default requiretty

Меняем Defaults !visiblepw на Defaults visiblepw

2. zabbix ALL=(ALL) NOPASSWD: /usr/bin/nmap (Centos 6)
или echo «zabbix ALL=(ALL:ALL) NOPASSWD:/usr/bin/nmap» >> /etc/sudoers ( Debian wheezy)

Добавляем роуты в Centos

Если для Debian можно было, например, запихнуть дополнительные роуты при загрузке в /etc/rc.local или прямо в intefaces, и не париться, то в CentOS 7 лучше создать файлы, в которых описываются все маршруты для каждого интерфейса.

http://www.centos.org/docs/5/html/5.2/Deployment_Guide/s1-networkscripts-static-routes.html

Для моего eth0
vim /etc/sysconfig/network-scripts/route-eth0

ADDRESS0=192.168.0.0
NETMASK0=255.255.255.0
GATEWAY0=192.168.0.254
ADDRESS1=192.168.3.0
NETMASK1=255.255.255.0
GATEWAY1=192.168.0.242
ADDRESS2=192.168.0.4.0
NETMASK2=255.255.255.0
GATEWAY2=192.168.0.242
 
ИЛИ

default 192.168.0.254 dev eth0
192.168.3.0/24 via 192.168.0.242 dev eth0
192.168.4.0/24 via 192.168.0.242 dev eth0

 

ApacheBench=ab

aptitude install apache2-utils

Натравливать так:
ab -c 1 -n 10 http://site.ru/
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking site.ru (be patient)…..done

Server Software: nginx/0.7.67
Server Hostname: site.ru
Server Port: 80

Document Path: /
Document Length: 56349 bytes

Concurrency Level: 1
Time taken for tests: 1.569 seconds
Complete requests: 10
Failed requests: 5
(Connect: 0, Receive: 0, Length: 5, Exceptions: 0)
Write errors: 0
Total transferred: 567473 bytes
HTML transferred: 563493 bytes
Requests per second: 6.37 [#/sec] (mean)
Time per request: 156.945 [ms] (mean)
Time per request: 156.945 [ms] (mean, across all concurrent requests)
Transfer rate: 353.10 [Kbytes/sec] received

Connection Times (ms)
min mean[+/-sd] median max
Connect: 1 1 0.1 1 1
Processing: 135 156 37.5 143 258
Waiting: 61 76 37.6 65 182
Total: 136 157 37.5 143 259

Percentage of the requests served within a certain time (ms)
50% 143
66% 144
75% 151
80% 176
90% 259
95% 259
98% 259
99% 259
100% 259 (longest request)

Или

The following line uses keepalive for 50,000 connections, at a concurrency of 50 and a timeout of 20 seconds. Be sure to end root domains with a slash.

ab -k -n 50000 -c 53 -t 20 http://daf-uts.ru/
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking daf-uts.ru (be patient)
Finished 2909 requests


Server Software:        nginx/1.2.1
Server Hostname:        daf-uts.ru
Server Port:            80

Document Path:          /
Document Length:        15834 bytes

Concurrency Level:      53
Time taken for tests:   20.004 seconds
Complete requests:      2909
Failed requests:        0
Write errors:           0
Keep-Alive requests:    0
Total transferred:      46645815 bytes
HTML transferred:       46061106 bytes
Requests per second:    145.42 [#/sec] (mean)
Time per request:       364.450 [ms] (mean)
Time per request:       6.876 [ms] (mean, across all concurrent requests)
Transfer rate:          2277.23 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    1   0.8      1      15
Processing:    21  361 381.7    252    2934
Waiting:       18  358 381.6    249    2932
Total:         22  362 381.7    253    2935

Percentage of the requests served within a certain time (ms)
  50%    253
  66%    301
  75%    335
  80%    394
  90%    519
  95%    614
  98%   1463
  99%   2808
 100%   2935 (longest request)

 

Zabbix установка на Centos 7

В начале производим подключение EPEL

Производим установку (все зависимости в виде httpd, php, mysql установятся совместно):
Код: [Выделить]
yum install zabbix22-server-mysql zabbix22-web-mysql

После установки включаем автоазгрузку для php и mysql:
Код: [Выделить]
chkconfig httpd on
chkconfig mariadb on

Конфигурируем MySQL как написано здесь

Создаем БД для Zabbix:
Код: [Выделить]
mysql -uroot
mysql> create database zabbix character set utf8;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by ‘zabbix’;
mysql> exit

Импортируем шаблоны баз:
Код: [Выделить]
cd /usr/share/zabbix-mysql
mysql -u root -p zabbix < data.sql mysql -u root -p zabbix < images.sql mysql -u root -p zabbix < schema.sql Стартуем Zabbix иперезапускаем apache: Код: [Выделить] systemctl start zabbix-server.service systemctl restart httpd.service Измените настройки базы данных в zabbix_server.conf # vi /etc/zabbix/zabbix_server.conf DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabbix Изменение конфигурации PHP для веб-интерфейса Zabbix Файл конфигурации Apache для веб-интерфейса Zabbix размещается в /etc/httpd/conf.d/zabbix.conf. Некоторые настройки PHP уже выполнены. php_value max_execution_time 300 php_value memory_limit 128M php_value post_max_size 16M php_value upload_max_filesize 2M php_value max_input_time 300 # php_value date.timezone Europe/Moscow Переходим к последнему этапу конфигурирования в WEB интерфейсе: Код: [Выделить] http://Ваш_Сервер/zabbix/

Epel Centos репозитории + zabbix

How To Enable EPEL Repository in RHEL/CentOS 7/6/5?
First, you need to download the file using Wget and then install it using RPM on your system to enable the EPEL repository. Use below links based on your Linux OS versions. (Make sure you must be root user).
RHEL/CentOS 7 64 Bit
## RHEL/CentOS 7 64-Bit ##
# wget http://dl.fedoraproject.org/pub/epel/beta/7/x86_64/epel-release-7-0.2.noarch.rpm
# rpm -ivh epel-release-7-0.2.noarch.rpm
RHEL/CentOS 6 32-64 Bit
## RHEL/CentOS 6 32-Bit ##
# wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
# rpm -ivh epel-release-6-8.noarch.rpm

## RHEL/CentOS 6 64-Bit ##
# wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
# rpm -ivh epel-release-6-8.noarch.rpm
RHEL/CentOS 5 32-64 Bit
## RHEL/CentOS 5 32-Bit ##
# wget http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
# rpm -ivh epel-release-5-4.noarch.rpm

## RHEL/CentOS 5 64-Bit ##
# wget http://download.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
# rpm -ivh epel-release-5-4.noarch.rpm
RHEL/CentOS 4 32-64 Bit
## RHEL/CentOS 4 32-Bit ##
# wget http://download.fedoraproject.org/pub/epel/4/i386/epel-release-4-10.noarch.rpm
# rpm -ivh epel-release-4-10.noarch.rpm

## RHEL/CentOS 4 64-Bit ##
# wget http://download.fedoraproject.org/pub/epel/4/x86_64/epel-release-4-10.noarch.rpm
# rpm -ivh epel-release-4-10.noarch.rpm
How Do I Verify EPEL Repo?
You need to run the following command to verify that the EPEL repository is enabled. Once you ran the command you will see epel repository.
# yum repolist
Sample Output
Loaded plugins: downloadonly, fastestmirror, priorities
Loading mirror speeds from cached hostfile
* base: centos.aol.in
* epel: ftp.cuhk.edu.hk
* extras: centos.aol.in
* rpmforge: be.mirror.eurid.eu
* updates: centos.aol.in
Reducing CentOS-5 Testing to included packages only
Finished
1469 packages excluded due to repository priority protections
repo id repo name status
base CentOS-5 — Base 2,718+7
epel Extra Packages for Enterprise Linux 5 — i386 4,320+1,408
extras CentOS-5 — Extras 229+53
rpmforge Red Hat Enterprise 5 — RPMforge.net — dag 11,251
repolist: 19,075
How Do I Use EPEL Repo?
You need to use YUM command for searching and installing packages. For example we search for Zabbix package using epel repo, lets see it is available or not under epel.
# yum —enablerepo=epel info zabbix
Sample Output
Available Packages
Name : zabbix
Arch : i386
Version : 1.4.7
Release : 1.el5
Size : 1.7 M
Repo : epel
Summary : Open-source monitoring solution for your IT infrastructure
URL : http://www.zabbix.com/
License : GPL
Description: ZABBIX is software that monitors numerous parameters of a network.
Let’s install Zabbix package using epel repo option –enablerepo=epel switch.
# yum —enablerepo=epel install zabbix
Note: The epel configuration file is located under /etc/yum.repos.d/epel.repo.
This way you can install as many as high standard open source packages using EPEL repo.