1. Качаем свежую версию с https://download.dokuwiki.org/
Выбираем порддерживаемые языки, мб сразу аттачим нужные плагины.
# cd ~/src
# wget https://download.dokuwiki.org/out/dokuwiki-bzzzxxx37.tgz
# tar zxvf dokuwiki-bzzzxxx37.tgz
# ll
drwxr-xr-x 8 apache root 4096 Feb 26 10:09 dokuwiki
-rw-r--r-- 1 root root 2435217 Feb 26 10:08 dokuwiki-bzzzxxx37.tgz
2. Копируем файлы dokuwiki в рабочую директорию апача и выставляем владельцев.
# cp -R ~/src/dokuwiki /var/www/
# chown -R apache:root /var/www/dokuwiki/
# ll /var/www/dokuwiki/
drwxr-xr-x 2 apache root 4096 Feb 26 10:09 bin
drwxr-xr-x 2 apache root 4096 Feb 26 10:09 conf
-rw-rw-r-- 1 apache root 18092 Feb 20 22:41 COPYING
drwxr-xr-x 12 apache root 4096 Feb 26 10:09 data
-rw-rw-r-- 1 apache root 3674 Feb 20 22:41 doku.php
-rw-rw-r-- 1 apache root 19374 Feb 20 22:41 feed.php
drwxr-xr-x 6 apache root 4096 Feb 26 10:09 inc
-rw-rw-r-- 1 apache root 2097 Feb 20 22:41 index.php
-rw-rw-r-- 1 apache root 20700 Feb 20 22:41 install.php
drwxr-xr-x 8 apache root 4096 Feb 26 10:09 lib
-rw-rw-r-- 1 apache root 306 Feb 20 22:41 README
drwxr-xr-x 8 apache root 4096 Feb 26 10:09 vendor
-rw-rw-r-- 1 apache root 33 Feb 20 22:41 VERSION
3. Донастраиваем апач.
В /etc/httpd/conf.d/vhosts.conf пишем:
<VirtualHost *:443>
ServerName wiki.sitename.org
ServerAdmin i@am.org
DocumentRoot /var/www/dokuwiki/
####
SSLEngine on
SSLCertificateFile /etc/httpd/ssl/wiki.sitename.org.crt
SSLCertificateKeyFile /etc/httpd/ssl/wiki.sitename.org.key
####
ErrorLog logs/wiki_sitename_org_error.log
CustomLog logs/wiki_sitename_org_access.log common
####
</VirtualHost>
4. SSL
Тем или иным способом получаем ssl сертификат, в данном случаем самоподписанный:
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/httpd/ssl/wiki.sitename.org.key -out /etc/httpd/ssl/wiki.sitename.org.crt
Перезапускаем апач.
5. Базовая настройка dokuwiki:
-- переходим на https://wiki.sitename.org/install.php
-- даем имя wiki
-- заведим суперпользователя
-- зададаем тип wiki - открытая, readonly или закрытая
-- выбираем тип лицензии
После настройки надо удалить install.php
# rm -f /var/www/dokuwiki/install.php
6. Переносим директории data, conf, bin за пределы веб-сервера.
# mkdir /var/www/dokudata
# mv /var/www/dokuwiki/data/ /var/www/dokudata/
# mv /var/www/dokuwiki/conf/ /var/www/dokudata/
# mv /var/www/dokuwiki/bin/ /var/www/dokudata/
Директория conf
В /var/www/dokuwiki/inc создаем файл preload.php сдел. содержания:
<?php
// DO NOT use a closing php tag. This causes a problem with the feeds,
// among other things. For more information on this issue, please see:w
// http://www.dokuwiki.org/devel:coding_style#php_closing_tags
define('DOKU_CONF','/var/www/dokudata/conf/');
Владельцев ставим apache:root
Директория data
В конец файла /var/www/dokudata/conf/local.php пишем след. строчку:
$conf['savedir'] = '/var/www/dokudata/data';
7. Выставляем прав.
chown -R apache:root /var/www/dokuwiki/
chmod -R 660 /var/www/dokuwiki/
find /var/www/dokuwiki/ -type d -exec chmod 770 {} \;
chown -R apache:root /var/www/dokudata/
chmod -R 660 /var/www/dokudata/
find /var/www/dokudata/ -type d -exec chmod 770 {} \;
Еще раз перезапускаем апач и можно пользоваться.
---
При написании заметки использовались материалы:
https://www.rosehosting.com/blog/install-and-run-dokuwiki-the-most-versatile-wiki-on-a-centos-7-vps/
https://www.dokuwiki.org/security
https://linuxcluster.wordpress.com/2014/07/16/installing-dokuwiki-on-centos-6/
Рабочий черновик
20170305
20160509
Быстрые заметки по apache
3. Директива AllowOwerride
AllowOwerride позволяет определить какие директивы можно перезаписать в файле .htaccess.
2. Директива Indexes
Директива позволяет просматривать содержимое каталога в отсутствии индексного файла (index.html, index.php и пр.).
Как правило эту директиру отключают по соображением безопасности и при попытке просмотреть содержимое каналога сервер выдаст 403 ошибку - "error] [client 10.20.30.40] Directory index forbidden by Options directive: /var/www/noc/prj/"
В "/var/www/noc/prj/" лежат файлы которым надо предоставить доступ (см. ниже), в этом случае разрешаем индексирование и конфиг будет выглядеть след. образом:
<Directory "/var/www/noc/prj">
Options Indexes
Order deny,allow
Deny from all
Allow from 10.20.30.40 10.20.31.40
</Directory>
1. Директива Order
Директива позволяет ограничить доступ к каталогу или файлу по ip адресу и может быть прописана в файле .htaccess или в настройках сайта.
Директирва имет два режима работы - "Order deny,allow" или "Order allow,deny".
deny,allow - запрещаем доступ со всех ip и разрешаем с определенных.
allow,deny - разрешаем доступ со всех ip и запрещаем с определенных.
Пример:
Разрешаем доступ к каталогу с двух ip адресов.
<Directory "/var/www/noc/prj">
Order deny,allow
Deny from all
Allow from 10.20.30.40 10.20.31.40
</Directory>
AllowOwerride позволяет определить какие директивы можно перезаписать в файле .htaccess.
2. Директива Indexes
Директива позволяет просматривать содержимое каталога в отсутствии индексного файла (index.html, index.php и пр.).
Как правило эту директиру отключают по соображением безопасности и при попытке просмотреть содержимое каналога сервер выдаст 403 ошибку - "error] [client 10.20.30.40] Directory index forbidden by Options directive: /var/www/noc/prj/"
В "/var/www/noc/prj/" лежат файлы которым надо предоставить доступ (см. ниже), в этом случае разрешаем индексирование и конфиг будет выглядеть след. образом:
<Directory "/var/www/noc/prj">
Options Indexes
Order deny,allow
Deny from all
Allow from 10.20.30.40 10.20.31.40
</Directory>
1. Директива Order
Директива позволяет ограничить доступ к каталогу или файлу по ip адресу и может быть прописана в файле .htaccess или в настройках сайта.
Директирва имет два режима работы - "Order deny,allow" или "Order allow,deny".
deny,allow - запрещаем доступ со всех ip и разрешаем с определенных.
allow,deny - разрешаем доступ со всех ip и запрещаем с определенных.
Пример:
Разрешаем доступ к каталогу с двух ip адресов.
<Directory "/var/www/noc/prj">
Order deny,allow
Deny from all
Allow from 10.20.30.40 10.20.31.40
</Directory>
20160505
Быстрые заметки про Centos7
3. Установить MySQL.
[root@monitor1 ~]# rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
Retrieving http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-release-el7-5 ################################# [100%]
Ставим сервер:
[root@monitor1 ~]# yum install mysql-server
Запускаем и проверяем:
[root@monitor1 ~]# systemctl start mysql
[root@monitor1 ~]# systemctl status mysql
● mysqld.service - MySQL Community Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2016-05-05 17:31:38 MSK; 5s ago
Process: 1172 ExecStartPost=/usr/bin/mysql-systemd-start post (code=exited, status=0/SUCCESS)
Process: 1113 ExecStartPre=/usr/bin/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
Main PID: 1171 (mysqld_safe)
CGroup: /system.slice/mysqld.service
├─1171 /bin/sh /usr/bin/mysqld_safe
└─1324 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysq...
2. Отключить ipv6.
Добавляем в /etc/sysclt.conf пару строк:
"net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1"
Применяем изменения:
"[root@monitor1 network-scripts]# sysctl -p
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1"
1. Посмотреть ip адрес.
В минимальной версии нет привычной команды ifconfig.
Посмотреть текущий ip адрес можно командой "ip addr".
Результат:
[root@monitor1 ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:da:8c:10 brd ff:ff:ff:ff:ff:ff
inet 192.168.xxx.16/24 brd 192.168.13.255 scope global ens160
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:feda:8c10/64 scope link
valid_lft forever preferred_lft forever
Конфиг интерфейса лежит на прежнем месте -
/etc/sysconfig/network-scripts/ens160
Поднять интерфейс "ifup ens160".
Ставим репозиторий: [root@monitor1 ~]# rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
Retrieving http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
Preparing... ################################# [100%]
Updating / installing...
1:mysql-community-release-el7-5 ################################# [100%]
Ставим сервер:
[root@monitor1 ~]# yum install mysql-server
Запускаем и проверяем:
[root@monitor1 ~]# systemctl start mysql
[root@monitor1 ~]# systemctl status mysql
● mysqld.service - MySQL Community Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2016-05-05 17:31:38 MSK; 5s ago
Process: 1172 ExecStartPost=/usr/bin/mysql-systemd-start post (code=exited, status=0/SUCCESS)
Process: 1113 ExecStartPre=/usr/bin/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
Main PID: 1171 (mysqld_safe)
CGroup: /system.slice/mysqld.service
├─1171 /bin/sh /usr/bin/mysqld_safe
└─1324 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysq...
2. Отключить ipv6.
Добавляем в /etc/sysclt.conf пару строк:
"net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1"
Применяем изменения:
"[root@monitor1 network-scripts]# sysctl -p
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1"
1. Посмотреть ip адрес.
В минимальной версии нет привычной команды ifconfig.
Посмотреть текущий ip адрес можно командой "ip addr".
Результат:
[root@monitor1 ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:da:8c:10 brd ff:ff:ff:ff:ff:ff
inet 192.168.xxx.16/24 brd 192.168.13.255 scope global ens160
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:feda:8c10/64 scope link
valid_lft forever preferred_lft forever
Конфиг интерфейса лежит на прежнем месте -
/etc/sysconfig/network-scripts/ens160
Поднять интерфейс "ifup ens160".
20160203
Быстрые заметки про LCP
1. Анализ проблемы с pppoe.
В одном офисе перестал работать pppoe канал в интернет.
Со стороны провайдера было видно srx, но не проходила аутентификация.
Дамп снятый с srx.
root@srx> monitor traffic interface pp0.0 extensive count 100
Начало новой сессии, srx послылает запрос на согласование параметров (опций) подключения.
18:03:52.248235 Out
...
-----original packet-----
54:e0:32:00:00:01 > 00:1e:67:00:00:02, ethertype PPPoE S (0x8864), length 36: PPPoE [ses 37713]LCP (0xc021), length 16: LCP, Conf-Request (0x01), id 70, length 16
encoded length 14 (=Option(s) length 10)
0x0000: c021 0146 000e
MRU Option (0x01), length 4: 1492
0x0000: 05d4
Magic-Num Option (0x05), length 6: 0x5665bd0c
0x0000: 5665 bd0c
Провайдер согласился с предложенными значениям параметров.
18:03:52.268010 In
...
-----original packet-----
00:1e:67:00:00:02 > 54:e0:32:00:00:01, ethertype PPPoE S (0x8864), length 60: PPPoE [ses 37713]LCP (0xc021), length 16: LCP, Conf-Ack (0x02), id 70, length 16
encoded length 14 (=Option(s) length 10)
0x0000: c021 0246 000e
MRU Option (0x01), length 4: 1492
0x0000: 05d4
Magic-Num Option (0x05), length 6: 0x5665bd0c
0x0000: 5665 bd0c
Провайдер предложил следующую пачку опций, в т.ч. и метот аутентификации - PAP.
18:03:54.132155 In
...
-----original packet-----
00:1e:67:00:00:02 > 54:e0:32:00:00:01, ethertype PPPoE S (0x8864), length 60: PPPoE [ses 37713]LCP (0xc021), length 37: LCP, Conf-Request (0x01), id 2, length 37
encoded length 35 (=Option(s) length 31)
0x0000: c021 0102 0023
PFC Option (0x07), length 2:
MRU Option (0x01), length 4: 1492
0x0000: 05d4
Magic-Num Option (0x05), length 6: 0x2840ee38
0x0000: 2840 ee38
Auth-Prot Option (0x03), length 4: PAP
0x0000: c023
MRRU Option (0x11), length 4: 2048
0x0000: 0800
12-Bit seq # Option (0x12), length 2:
End-Disc Option (0x13), length 9: MAC 00:1e:67:00:00:03
0x0000: 0300 1e67 0278 27
SRX не согласился с предложенными провайдером значениями папаметров, и послал список неугодных опций.
18:03:54.132528 Out
...
-----original packet-----
54:e0:32:00:00:01 > 00:1e:67:00:00:02, ethertype PPPoE S (0x8864), length 43: PPPoE [ses 37713]LCP (0xc021), length 23: LCP, Conf-Reject (0x04), id 2, length 23
encoded length 21 (=Option(s) length 17)
0x0000: c021 0402 0015
PFC Option (0x07), length 2:
MRRU Option (0x11), length 4: 2048
0x0000: 0800
12-Bit seq # Option (0x12), length 2:
End-Disc Option (0x13), length 9: MAC 00:1e:67:00:00:03
0x0000: 0300 1e67 0278 27
Провайдер еще раз предлагает метот аутентификации PAP
18:03:54.134273 In
...
-----original packet-----
00:1e:67:00:00:02 > 54:e0:32:00:00:01, ethertype PPPoE S (0x8864), length 60: PPPoE [ses 37713]LCP (0xc021), length 20: LCP, Conf-Request (0x01), id 3, length 20
encoded length 18 (=Option(s) length 14)
0x0000: c021 0103 0012
MRU Option (0x01), length 4: 1492
0x0000: 05d4
Magic-Num Option (0x05), length 6: 0x2840ee38
0x0000: 2840 ee38
Auth-Prot Option (0x03), length 4: PAP
0x0000: c023
SRX поправляет и предлагает CHAP.
18:03:54.134654 Out
...
-----original packet-----
54:e0:32:00:00:01 > 00:1e:67:00:00:02, ethertype PPPoE S (0x8864), length 31: PPPoE [ses 37713]LCP (0xc021), length 11: LCP, Conf-Nack (0x03), id 3, length 11
encoded length 9 (=Option(s) length 5)
0x0000: c021 0303 0009
Auth-Prot Option (0x03), length 5: CHAP, MD5
0x0000: c223 05
Последние два сообщения еще раз десять ходят в обе стороны и потом согласование параметров начинается заново.
https://ru.wikipedia.org/wiki/LCP
Быстрые записки по cisco.
2. Перенумеровать правила в acl.
router(config)#ip access-list resequence test-access 10 5
test-access - имя расширенного списка доступа, здесь может стоять номер списка.
10 - номер первого правила в списке доступа
5 - шаг нумерации
1. Посмотеть что не попадает в CEF.
#sh cef not-cef-switched
CEF Packets passed on to next switching layer
Slot No_adj No_encap Unsupp'ted Redirect Receive Options Access Frag
RP 1552463 0 0 614954 1732554 0 0 0
---
http://admindoc.ru/1419/ip-routing-and-forwarding/
Референс:
http://www.cisco.com/c/en/us/td/docs/ios/ipswitch/command/reference/isw_book/isw_s1.html#wp1118673
router(config)#ip access-list resequence test-access 10 5
test-access - имя расширенного списка доступа, здесь может стоять номер списка.
10 - номер первого правила в списке доступа
5 - шаг нумерации
1. Посмотеть что не попадает в CEF.
#sh cef not-cef-switched
CEF Packets passed on to next switching layer
Slot No_adj No_encap Unsupp'ted Redirect Receive Options Access Frag
RP 1552463 0 0 614954 1732554 0 0 0
---
http://admindoc.ru/1419/ip-routing-and-forwarding/
Референс:
http://www.cisco.com/c/en/us/td/docs/ios/ipswitch/command/reference/isw_book/isw_s1.html#wp1118673
20160130
Быстрые заметки по mysql
8. Сбросить рутовый пароль
Останавливаем mysql
# /etc/init.d/mysqld stop
Stopping mysqld: [ OK ]
Запускаем mysql в безопасном режиме.
# /usr/bin/mysqld_safe --skip-grant-tables --user=root &
[1] 6363
# 160206 12:54:08 mysqld_safe Logging to '/var/log/mysqld.log'.
160206 12:54:09 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
Заходим под рутом без пароля.
# mysql -u root
Переключаемся на базу mysql.
mysql> USE mysql;
Смотрим список таблиц и содержаение таблицы user.
mysql> show tables;
+---------------------------+
| Tables_in_mysql |
+---------------------------+
| columns_priv |
...
| user |
+---------------------------+
23 rows in set (0.00 sec)
mysql> SELECT * FROM user
В таблице user так же есть пароли и настройки всех остальных пользователей.
Задаем новый пароль P@s$ = меняем значение поля Password
mysql> UPDATE user SET Password=PASSWORD('P@s$') WHERE User='root';
Функция "PASSWORD()" используется для шифрования.
Выходим и перезапускаем mysql
mysql> exit
Bye
# /etc/init.d/mysqld restart
160206 13:12:50 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
Stopping mysqld: [ OK ]
Starting mysqld: [ OK ]
[1]+ Done /usr/bin/mysqld_safe --skip-grant-tables --user=root
7. Изменить значение поля в строке
Есть строка.
mysql> SELECT * FROM logcon_views;
+----+-------------+-------------------------------------+--------+---------+
| ID | DisplayName | Columns | userid | groupid |
+----+-------------+-------------------------------------+--------+---------+
| 2 | SRX-FILTER | SRX, TIME_UTC_6, TIME_UTC, msg, 111 | NULL | NULL |
+----+-------------+-------------------------------------+--------+---------+
1 row in set (0.00 sec)
6. Удалить строку из таблицы
Есть такая таблица.
mysql> select * from logcon_fields;
+--------------+------------------+--------------+
| FieldID | FieldDefine | FieldCaption |
+--------------+------------------+--------------+
| SRX | SYSLOG_SRX | SRX |
| TIME (UTC+6) | SYSLOG_TIME_UTC6 | TIME (UTC+6) |
+--------------+------------------+--------------+
2 rows in set (0.00 sec)
]# cat /usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql
CREATE DATABASE rsyslog_db;
USE rsyslog_db;
CREATE TABLE SystemEvents
(
ID int unsigned not null auto_increment primary key,
CustomerID bigint,
#....
SystemID int NULL
);
CREATE TABLE SystemEventsProperties
(
ID int unsigned not null auto_increment primary key,
SystemEventID int NULL ,
ParamName varchar(255) NULL ,
ParamValue text NULL
);
Проверяем.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| cacti_db |
| mysql |
| racktables_db |
| rsyslog_db |
| viewvc_db |
+--------------------+
6 rows in set (0.00 sec)
mysql> use rsyslog_db;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> show tables;
+------------------------+
| Tables_in_rsyslog_db |
+------------------------+
| SystemEvents |
| SystemEventsProperties |
+------------------------+
2 rows in set (0.00 sec)
6. Дать права пользователю на базу и задать пароль.
mysql> grant all privileges on rsyslog_db.* to rsyslog_user@localhost identified by 'P@Ss';
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
5. Создать пользователя
mysql> create user rsyslog_user@localhost;
Query OK, 0 rows affected (0.00 sec)
4. Удалить пользователя
mysql> drop user rsyslog_user@localhost;
Query OK, 0 rows affected (0.00 sec)
3. Удалить базу
mysql> drop database rsyslog_db;
Query OK, 13 rows affected (0.00 sec)
2. Посмотреть имеющиеся базы
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| cacti_db |
| mysql |
| racktables_db |
| rsyslog_db |
| viewvc_db |
+--------------------+
6 rows in set (0.00 sec)
1. Заход
Заход под root на localhost, пароль надо ввести.
# mysql -u root -p
Enter password:
Останавливаем mysql
# /etc/init.d/mysqld stop
Stopping mysqld: [ OK ]
Запускаем mysql в безопасном режиме.
# /usr/bin/mysqld_safe --skip-grant-tables --user=root &
[1] 6363
# 160206 12:54:08 mysqld_safe Logging to '/var/log/mysqld.log'.
160206 12:54:09 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
Заходим под рутом без пароля.
# mysql -u root
Переключаемся на базу mysql.
mysql> USE mysql;
Смотрим список таблиц и содержаение таблицы user.
mysql> show tables;
+---------------------------+
| Tables_in_mysql |
+---------------------------+
| columns_priv |
...
| user |
+---------------------------+
23 rows in set (0.00 sec)
mysql> SELECT * FROM user
В таблице user так же есть пароли и настройки всех остальных пользователей.
Задаем новый пароль P@s$ = меняем значение поля Password
mysql> UPDATE user SET Password=PASSWORD('P@s$') WHERE User='root';
Функция "PASSWORD()" используется для шифрования.
Выходим и перезапускаем mysql
mysql> exit
Bye
# /etc/init.d/mysqld restart
160206 13:12:50 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
Stopping mysqld: [ OK ]
Starting mysqld: [ OK ]
[1]+ Done /usr/bin/mysqld_safe --skip-grant-tables --user=root
7. Изменить значение поля в строке
Есть строка.
mysql> SELECT * FROM logcon_views;
+----+-------------+-------------------------------------+--------+---------+
| ID | DisplayName | Columns | userid | groupid |
+----+-------------+-------------------------------------+--------+---------+
| 2 | SRX-FILTER | SRX, TIME_UTC_6, TIME_UTC, msg, 111 | NULL | NULL |
+----+-------------+-------------------------------------+--------+---------+
1 row in set (0.00 sec)
Хотим изменить значение поля Columns в строке с ID равным 2.
mysql> UPDATE logcon_views SET Columns = 'SRX, TIME_UTC_6, TIME_UTC, msg' WHERE ID = 2;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
6. Удалить строку из таблицы
Есть такая таблица.
mysql> select * from logcon_fields;
+--------------+------------------+--------------+
| FieldID | FieldDefine | FieldCaption |
+--------------+------------------+--------------+
| SRX | SYSLOG_SRX | SRX |
| TIME (UTC+6) | SYSLOG_TIME_UTC6 | TIME (UTC+6) |
+--------------+------------------+--------------+
2 rows in set (0.00 sec)
Хотим удалить вторую строку.
mysql> DELETE FROM logcon_fields WHERE FieldID ="TIME (UTC+6)";
Query OK, 1 row affected (0.00 sec)
5. Создать базу из шаблона
Есть вот такой шаблон базы для rsyslog.]# cat /usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql
CREATE DATABASE rsyslog_db;
USE rsyslog_db;
CREATE TABLE SystemEvents
(
ID int unsigned not null auto_increment primary key,
CustomerID bigint,
#....
SystemID int NULL
);
CREATE TABLE SystemEventsProperties
(
ID int unsigned not null auto_increment primary key,
SystemEventID int NULL ,
ParamName varchar(255) NULL ,
ParamValue text NULL
);
Что бы создать эту базу даем след. команду:
# mysql -u root -p < /usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql
# mysql -u root -p < /usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| cacti_db |
| mysql |
| racktables_db |
| rsyslog_db |
| viewvc_db |
+--------------------+
6 rows in set (0.00 sec)
mysql> use rsyslog_db;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> show tables;
+------------------------+
| Tables_in_rsyslog_db |
+------------------------+
| SystemEvents |
| SystemEventsProperties |
+------------------------+
2 rows in set (0.00 sec)
6. Дать права пользователю на базу и задать пароль.
mysql> grant all privileges on rsyslog_db.* to rsyslog_user@localhost identified by 'P@Ss';
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
5. Создать пользователя
mysql> create user rsyslog_user@localhost;
Query OK, 0 rows affected (0.00 sec)
mysql> drop user rsyslog_user@localhost;
Query OK, 0 rows affected (0.00 sec)
3. Удалить базу
mysql> drop database rsyslog_db;
Query OK, 13 rows affected (0.00 sec)
2. Посмотреть имеющиеся базы
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| cacti_db |
| mysql |
| racktables_db |
| rsyslog_db |
| viewvc_db |
+--------------------+
6 rows in set (0.00 sec)
1. Заход
Заход под root на localhost, пароль надо ввести.
# mysql -u root -p
Enter password:
20160114
bash скрипты
3.Переместить файл и добавить в имя дату и время перемещения.
#!/bin/sh
mv /var/www/html/dump/dump.xml /var/www/html/dump/dump.xml.$(date +"%Y%m%d-%H%M")
cp /home/rkn/dump.xml /var/www/html/dump/dump.xml
2. Переместить логи которые заархивировал logrotate и удалить логи странше 60 дней.
#!/bin/sh
mv /var/log/somelog/*.gz /var/log/somelog/archive/
find /var/log/somelog/archive/ -type f -mtime +60 -delete
Культурнее.
#!/bin/bash
branch_dir=(offce1 office2)
for i in ${branch_dir[@]}; do
mv /var/log/somelog/$i/*.gz /var/log/somelog/1archive-$i/
find /var/log/somelog/1archive-$i/ -type f -mtime +60 -delete
1. Сравнить ip адрес у url без\с www
#!/bin/sh
url=$1
host $url | head -n 1
host www.$url | head -n 1
#!/bin/sh
mv /var/www/html/dump/dump.xml /var/www/html/dump/dump.xml.$(date +"%Y%m%d-%H%M")
cp /home/rkn/dump.xml /var/www/html/dump/dump.xml
2. Переместить логи которые заархивировал logrotate и удалить логи странше 60 дней.
#!/bin/sh
mv /var/log/somelog/*.gz /var/log/somelog/archive/
find /var/log/somelog/archive/ -type f -mtime +60 -delete
Культурнее.
#!/bin/bash
branch_dir=(offce1 office2)
for i in ${branch_dir[@]}; do
mv /var/log/somelog/$i/*.gz /var/log/somelog/1archive-$i/
find /var/log/somelog/1archive-$i/ -type f -mtime +60 -delete
1. Сравнить ip адрес у url без\с www
#!/bin/sh
url=$1
host $url | head -n 1
host www.$url | head -n 1
Подписаться на:
Сообщения (Atom)