Archive for Март, 2014
скрипт включение и выключене питание на USB ( CENTOS6)
скрипт включения и выключения питание на USB
#!/bin/sh echo "Выключение питания" echo suspend > /sys/bus/usb/devices/~( 3-2:1.1 -> ../../../devices/pci0000:00/0000:00:1d.1/usb3/3-2/3-2:1.1)/power/level sleep 20 echo "Включение питания" echo on > /sys/bus/usb/devices/
~( 3-2:1.1 -> ../../../devices/pci0000:00/0000:00:1d.1/usb3/3-2/3-2:1.1)
/power/level
Установка Webmin CentOS 6
Установка Webmin с помощью RPM
rpm -Uhv http://prdownloads.sourceforge.net/webadmin/webmin-1.610-1.noarch.rpm
Установка Webmin с помощью YUM
Создаем /etc/yum.repos.d/webmin.repo
Содержание файла
[Webmin]
name=Webmin Distribution Neutral
#baseurl=http://download.webmin.com/download/yum
mirrorlist=http://download.webmin.com/download/yum/mirrorlist
enabled=1
wget http://www.webmin.com/jcameron-key.asc
rpm —import jcameron-key.asc
yum -y install webmin
Установка webmin выполнена в директорию /usr/libexec/webmin, имя пользователя «root» текущий пароль root-пользователя.
Доступ к webmin можно получить открыв в браузере страницу http://address:10000
Запуск комманд в фоновом режиме
Как пример команда копирования директорий из одного места в другое
После команды нужно поставить знак &
[root@mx work]# cp /mnt/work /home/samba/work -R &
[1] 25800
Ctrl-Z для остановки обычного ( не фонового) процесса.
Просмотр фонового режима команда bg (BackGround)
Для восстановления процесса в обычный режим , команда fg (ForeGround)
Как вариант fg <номер задания> если их много
unknown filesystem type ntfs centos 6
yum install fuse fuse-ntfs-3g
yum install fuse fuse-ntfs-3g dkms dkms-fuse
Prestashop установка необходимых компонентов
GD — Это компонент PHP(Библиотека) позволяющая обрабатывать граффические файлы(jpg, png, gif)
yum install php-gd
перезапустить php /etc/init.d/php-fpm restart
yum install php-pdo
Dom extension yum install php-xml yum install mcrypt Для проверки
<?php phpinfo(); ?>
проверить |
Как/где исправить?
|
---|---|
Is PHP 5.1.2 or later installed? | Web server |
Can PrestaShop upload files? | php.ini file (file_uploads ) |
Can PrestaShop create new files and folders? | File browser / FTP client / command line |
Is the GD Library installed? | php.ini file (extension=php_gd2.so ) |
Is MySQL support is on? | php.ini file (extension=php_pdo_mysql.so ) |
Recursive write permission on ~/config/ | File browser / FTP client / command line |
Recursive write permission on ~/cache/ | File browser / FTP client / command line |
Recursive write permission on ~/log/ | File browser / FTP client / command line |
Recursive write permission on ~/img/ | File browser / FTP client / command line |
Recursive write permission on ~/mails/ | File browser / FTP client / command line |
Recursive write permission on ~/modules/ | File browser / FTP client / command line |
Recursive write permission on ~/override/ | File browser / FTP client / command line |
Recursive write permission on ~/themes/default/lang/ | File browser / FTP client / command line |
Recursive write permission on ~/themes/default/pdf/lang/ | File browser / FTP client / command line |
Recursive write permission on ~/themes/default/cache/ | File browser / FTP client / command line |
Recursive write permission on ~/translations/ | File browser / FTP client / command line |
Recursive write permission on ~/upload/ | File browser / FTP client / command line |
Recursive write permission on ~/download/ | File browser / FTP client / command line |
Recursive write permission on ~/sitemap.xml | File browser / FTP client / command line |
Can PrestaShop open external URLs? | php.in file (allow_url_fopen ) |
Is PHP’s «register global» option off? | php.ini file (register_globals ) |
Is GZIP compression activated? | .htaccess file |
Is the Mcrypt extension available? | php.ini file |
Is PHP’s «magic quotes» option deactivated? | php.ini file (magic_quotes_gpc ) |
Is the Dom extension loaded? | --enable-dom compile time option |
Is the PDO MySQL extension loaded? | php.ini file (extension=php_pdo_mysql.so ) |
Добавление нового пользователя в MySQL
для добавления создания нового пользователя и новой базы данных mysql -uroot -p >CREATE DATABASE <NEWDB_NAME>; GRANT ALL PRIVILEGES ON <NEWDB_NAME>.* TO 'add_user'@'localhost' IDENTIFIED BY 'add_password' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'add_user'@'localhost'
IDENTIFIED BY 'add_password' WITH GRANT OPTION;
доступ для add_user с любого хоста
GRANT ALL PRIVILEGES ON <DB_NAME>.* TO 'add_user'@'%'
IDENTIFIED BY 'add_password' WITH GRANT OPTION;
Установка Node.js ( CentOS 6)
Обновляем и устанавливаем необходимые пакеты
#yum install openssl-devel
# yum -y update
# yum -y groupinstall «Development Tools»
Скачиваем последний релиз node.js c http://nodejs.org/dist/
# wget http://nodejs.org/dist/v0.11.9/node-v0.11.9-linux-x64.tar.gz
Распаковываем и проверяем версию
# tar xzvf node-v0.11.9-linux-x64.tar.gz
# cd node-v0.11.9-linux-x64/bin/
# ./node -v
# ./npm -v
( ./configure make make install )
Можно git clone git://github.com/ry/node.git
Создадим файл следующего содержания для проверки
# mkdir -p /var/www
# vi /var/www/test.js
var http = require(‘http’);
http.createServer(function (req, res) {
res.writeHead(200, {‘Content-Type': ‘text/plain’});
res.end(‘node.js ok!’);
}).listen(3000);
console.log(‘Server running at http://192.168.122.100:3000/’);
Выполняем файл (порт должен быть открыт)
# ./node /var/www/test.js
Server running at http://192.168.122.100:3000/
В браузере по данному адресу будет отображаться надпись: node.js ok!
Для DAEMON процесса forever
npm -g
install
forever
forever start
test
.js
Настройка nginx
location /ajax/ {
proxy_pass http://127.0.0.1:3000/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
Как замечено в комментариях, эта конструкция не подходит для настоящих проектов, и надо настраивать Timeout, размеры сообщений, и т.д. кроме того, всё равно придётся настраивать количество одновременнызх подключений в самой системе. Т. е. эта конструкция подходит для ознакомления и для тестирования.
Теперь при запросе 192,168,122,100/ajax/ содержимое отдаст node.js.
Обратите внимание, скрипт, запущенный в node в таком случае определит url не как равным ‘/ajax/’, а именно как ‘/’.
Несколько ссылок:
nodejs.org/api.html Документация
kuroikaze85.wordpress.com/all-node-js-entries/ — Сборник статей о node хабрачеловека Сергея Широкова (kurokikaze).
howtonode.org/ — статьи и заметки на английском Тима Касвелла (Tim Caswell aka creationix).
Hастройка smtp авторизации в sendmail
НАСТРОЙКА SASL И TLS В SENDMAIL
Задача
- Отправка писем пользователями через корпоративный SMTP-сервер с любого IP-адреса;
- Аутентификация пользователей по технологии SASL(SimpleAuthenticationandSecurityLayer);
- Шифрование процесса передачи пользовательского логина/пароля при помощи технологии TLS.
- Для выполнения данной задачи будет использоваться связка Sendmail и Cyrus-SASL для аутентификации пользователей.
Доустановить cyrus-sasl openssl
Проверка sendmail -d0.1 -bv
Version 8.14.4
Compiled with: DNSMAP HESIOD HES_GETMAILHOST LDAPMAP LOG MAP_REGEX
MATCHGECOS MILTER MIME7TO8 MIME8TO7 NAMED_BIND NETINET NETINET6
NETUNIX NEWDB NIS PIPELINING SASLv2 SCANF SOCKETMAP STARTTLS
TCPWRAPPERS USERDB USE_LDAP_INIT
============ SYSTEM IDENTITY (after readcf) ============
(short domain name) $w = sun
(canonical domain name) $j = sun.inelsis.ru
(subdomain name) $m = inelsis.ru
(node name) $k = sun.inelsis.ru
=======================================================
Recipient names must be specified
Создание сертификата
# cd /etc/pki/tls/certs
# make sendmail.pem
редактируйте /etc/mail/sendmail.mc
define(`confAUTH_OPTIONS', `A p y')dnl TRUST_AUTH_MECH(`LOGIN PLAIN')dnl define(`confAUTH_MECHANISMS', `LOGIN PLAIN')dnl define(`confCACERT_PATH',`/etc/pki/tls/certs') define(`confCACERT',`/etc/pki/tls/certs/ca-bundle.crt') define(`confSERVER_CERT',`/etc/pki/tls/certs/sendmail.pem') define(`confSERVER_KEY',`/etc/pki/tls/certs/sendmail.pem')
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf chkconfig saslauthd
Добавьте в файл /etc/hosts.allow
строку:
sendmail: ALL
telnet sun.inelsis.ru
Trying 213.187.101.21…
Connected to sun.inelsis.ru.
Escape character is ‘^]’.
220 sun.inelsis.ru ESMTP Sendmail 8.14.4/8.14.4; Sat, 1 Mar 2014 19:11:09 +0400
EHLO
501 5.0.0 EHLO requires domain address
EHLO sun.inelsis.ru
250-sun.inelsis.ru Hello sun.inelsis.ru [213.187.101.21], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH GSSAPI DIGEST-MD5 CRAM-MD5
250-STARTTLS
250-DELIVERBY
250 HELP
При необходимости в iptables открыть для SSL порт 587