пятница, 19 декабря 2014 г.

Installing the Oracle Database Extension OCI8 for PHP 5.1.2

1) Возникла необходимость запустить поддержку СУБД Oracle для PHP на старом сервере.

# cat /etc/asplinux-release
ASPLinux release 11.2 (Ladoga)

phpinfo():
PHP Version 5.1.2

# uname -a
Linux ****** 2.6.17-1.2157.1aspsmp #1 SMP Fri Aug 11 03:45:43 EEST 2006 i686 i686 i386 GNU/Linux

Адреса используемых инструкций:
http://www.oracle.com/technetwork/articles/technote-php-instant-084410.html
http://php.net/manual/en/oci8.installation.php


2) Из  http://php.net/manual/en/oci8.requirements.php следует:

The OCI8 1.4 extension is included with PHP 5.3, PHP 5.4 and PHP 5.5. It is also available from » PECL. A newer OCI8 2.0 version is available only from » PECL. OCI8 1.4 requires Oracle 12c, 11g, 10g or 9iR2 client libraries and will install on PHP 4.3.9 onwards. OCI8 2.0 requires Oracle 12c, 11g or 10g client libraries and will install on PHP 5.2 onwards.
Т.е. подходит OCI8 1.4.

Перед установкой OCI8 1.4 необходимо поставить клиент Оракла.

Страница закачки: http://www.oracle.com/technetwork/topics/linuxsoft-082809.html

Загруженные файлы:

# ls -l
total 57540
-rw-r--r--  1 sergei sergei   169248 Дек 19 08:17 oci8-1.4.10.tgz
-rw-r--r--  1 sergei sergei 58066286 Дек 19 08:10 oracle-instantclient11.2-basic-11.2.0.4.0-1.i386.rpm
-rw-r--r--  1 sergei sergei   610198 Дек 19 08:10 oracle-instantclient11.2-devel-11.2.0.4.0-1.i386.rpm

вторник, 16 декабря 2014 г.

Заметка об астрофото

1) Однажды в Ашане мы спонтанно купили детский телескоп-рефрактор: апертура 50 мм, фокус 500 мм , окуляры 20 мм и 4 мм (далее просто телескоп).


Какие нюансы открылись после покупки телескопа, если до этого в него ни разу не смотрел:
- В городе сильная засветка, видно мало звёзд, например, комету Лавджоя невооруженным глазом было не видно (на пике видимости она была 4-й звездной величины, если не ошибаюсь, но хоть удалось снять цифровиком).
- Вид из окон оказался совершенно непригодным для наблюдений (см. следующие пункты)!
- Второй этаж, окна выходят на дорогу и лесонасаждения вокруг неё, в просвет между деревьями видно кусочек неба в направлении на юг.
- Ночью, если небо затянуто тучами, нет ни одного объекта куда можно навести телескоп, кроме дорожных фонарей, еле проглядывающих сквозь ветки.
- Днем видно лишь лесонасаждения, навести телескоп можно на разный мусор на земле и пару труб. Всё.
- А с верхних этажей разных зданий нашего района видна заводская зона и пол-города! Эх...

четверг, 28 августа 2014 г.

HP Data Protector A.06.11 on Oracle Linux Server release 6.4: System error: [10061] Connection refused

Устанавливаю DP Client на сервер dl2 (Oracle Linux 6.4).

1) Вначале возникли такие же проблемы как на dl1 (Oracle Linux 5.7).
Скопировал с DP CD инсталлянт для Linux и запросило CD HP-UX: с DP CD для HP-UX докопировал каталог hpux_ia.

2) ./omnisetup.sh -server monitor1 -install da,ma

После этого, в своё время, на dl1 всё заработало, но на dl2 такая ошибка:

Data Protector software package successfully installed
  Importing client to monitor1...
[12:1625] Import host failed.
        System error: [10061] Connection refused

3) Начинаю искать в чем причина.

понедельник, 11 августа 2014 г.

The btrfs filesystem backup for roll back


Т. к. я смотрю, что pacman не имеет отката, подобного yum undo, надо что-то придумать, используя btrfs и др.

Какие есть варианты?

1) НА ДРУГОЙ РАЗДЕЛ
Если делать backup на другой раздел, то в любом случае придется копировать данные, например с помодью rsync.

    rsync -aix --delete /home /home-backup
    btrfs subvolume snapshot /home-backup /home-backup/ss/`date +%y-%m-%d_%H-%M`


2) НА ЭТОТ ЖЕ РАЗДЕЛ
Если делать backup в этот же раздел, то испоользовать snapshots.

среда, 30 июля 2014 г.

Arch Linux on HP Mini 110, part 2

"А я всё чаще замечаю...", что подумываю вернуться на Arch Linux.
Возможно, не будет как в Fedora через время: загрузка несколько минут, сотни килобайт messages с одной загрузки со всяким бредом в виде перескакивания даты и т.п.
В RFRemix приблизительно таже картина: Mate + Chromium - и уже на нетбуке не хватает 1 ГБ ОЗУ! При открытии нескольких вкладок с сайтами часто вдруг начанает тормозить, использование ОЗУ подскакивает до 100% и до 30% берет с 2 ГБ свопа. Это явный глюк.

Поставить Arch, Openbox, подумать еще на счет веб-браузера... "Ром, свиная грудинка, яичница - вот всё, что мне нужно".
Из статьи об Arch Linux на Lurkmore попал на интересную ссылку Arch-галереи с кучей скриншотов с пояснениями здесь.


3) Инсталляция с образа 2014.07.03
(описание предыдущих инсталляций 1) и 2) здесь)

суббота, 26 июля 2014 г.

The Last Federation

В журнале Linux Format №185 (далее LXF) прочел обзор игры The Last Federation.

Закачал версию 1.000, обновил онлайн до 1.028.


1) Жаль нет русификации, смутно понимаю о чем пишут.
Ну ничего, если не спешить и использовать словарь, то понять суть можно.
Буду считать, что я читаю книгу на инглише, но в более интересной форме.

Использую меню Quick Start.

Если завершить первую битву мирным путем (провисеть 5 ходов над доком), получаю +60 к Acutians Influence. -100+60=-40.
Но не получаю кредитов.

После битвы получаю первую инструкцию, что делать дальше: копить кредиты, повышать Influence.

Все сообщения хранятся в Your Logbook.

При передаче Spacefaring Tech другим рассам отношения с Acutians ухудшаются.

Иду по нескольким веткам развития игры.

По ходу игры открывается новое во всём: не только самой игры, но и интерфейса и т.д.

Начал играть не вчитываясь, запутался, решил начать заново.

Если перевести на русский, то всё равно игра не отображает русские шрифты, но можно написать перевод и латиницей.

Можно, для начала, просто для себя перевести TipsOfTheDay.txt, чтобы вникнуть в терминологию игры, возможно, далее уже в игре будет полегче.

среда, 16 июля 2014 г.

В. И. Ленин, очерк "Империализм, как высшая стадия капитализма", 1916 г.

ПРЕДИСЛОВИЕ

Ленин (далее Л.) называет книгу Дж. Гобсона главным английским трудом об империализме и использует для своего очерка.

Брошюра написана для царской цензуры, отчасти эзоповым языком. Империализм есть канун социалистической революции, социал-шовинизм - измена социализму, полный переход на сторону буржуазии. Внимательный читатель легко подставит вместо Японии — Россию, а вместо Кореи — Финляндию, Польшу, Курляндию, Украину, Хиву, Бухару, Эстляндию и прочие не великороссами заселённые области.

Без изучения сущности империализма нельзя ничего понять в оценке современной войны и современной политики.

понедельник, 7 июля 2014 г.

Tournament addition for OCC (Online Chess Club - PHP Chess game)


Существует такой Online Chess Club (OCC) - small PHP chess game.

Ссылки:
- Мой код, с нижеуказанными изменениями и всеми игроками, партиями и турнирами, которые мы играли - GitHub.
- Оригинальный код ОСС - Сайт.

Внесенные изменения для удобства игры и создания турниров.

1) Изменения в исходный код.
Свои изменения буду помечать комментарием // Sergei Ki

1.1) Внес изменения в страницу логина.
1.2) Добавил новый пункт меню All Games (и код).
1.3) Добавил новый пункт меню Tournaments (и код).
1.4) Добавил автообновление страниц My Games и All Games.
1.5) Заремил почти всю функцию renderPageEnd.


2) Добавление турниров.

2.1) В каталоге occ-data/tournaments создать каталог турнира, например, karpov.

2.2) Создать в occ-data/tournaments/karpov файлы турнира:

2.2.1) parties - участники турнира; перед генерацией скриптом ТП (турнирных партий) внести сюдю список участников, например:
Mazila
Killer
NozhVspinU
JohnnyXIV
STAKAN
Hostel_UA
halvaed

2.2.2) places - места; после окончании турнира, внести сюда места участников соответственно, например:
I
II
III
VI
V
IV
VII

2.2.3) tgames - список ТП; генерится автоматически скриптом.

2.2.4) tinfo - информация о турнире; первая строка - название, вторая - названия изображений (предварительно размещенных в images) через пробел, например:
Турнир в честь 63-летия Карпова
karpov.jpg t1.png t2.png t3.png

2.3) Проверить права на запись.
Файл occ-data/tournaments/karpov/tgames и каталог occ-data/games должны иметь права на запись.

2.4) Разремить строку вызова функции создания турнирных партий //if (isset($_GET['tname'])) Tournament::_createTGs("karpov"); где параметр функции - это название турнира

2.5) Запустить в браузере файл tournaments.php?tname=1
При этом в файл tgames запишутся названия файлов ТП, которые создались в каталоге games и имеют, в нашем случае, окончание karpov-

2.6) Турнирная таблица (ТТ) доступна на странице турниров - меню Tournaments.

2.7) ТП доступны в My Games и All Games и выделены жирным шрифтом.

пятница, 4 июля 2014 г.

RFRemix on HP Mini 110

Предыстория: http://sergeiki.blogspot.com/2014/03/fedora-20-log-on-hp-mini-110.html

1) Переустанавливаю ОС с RFRemix-20-U1-i686-Live-MATE.iso.
Язык установки - английский, что дает язык ОС тоже английский.
Указываю в Дата/время - Запорожье.
Удаляю раздел со старой ОС Fedora 20, создаю btrfs раздел с разбивкой по-умолчанию.
Задаю пароль root и создаю пользователя.

2) Делаю настройки в новой ОС.
Настраиваю touchpad.
Устанавливаю цвет терминала зеленый на черном, отключаю меню по F10 (для mc).
Добавляю русский язык и указываю переключение по ctrl+shift.
Оставляю только нижнюю панель, удаляю лишнее (ярлыки, виртуальные столы), меняю формат даты, добавляю MATE меню, System Monitor (включаю показывать всё), ярлыки.
Меняю настройки Power Management (показывать в трее только когда зарядка/разрядка).

3) Настраиваю wi-fi.
b43-fwcutter -w /lib/firmware ./broadcom-wl-5.100.138/linux/wl_apsta.o
modprobe -r b43; modprobe b43

4) Удаляю Firefox, устанавливаю Chromium (указываю не использовать title bar and borders, синхронизирую, добавил в AdBlock Russian and Ukranian filter list и проверил блокировку рекламы на rutor.org).

5) Обновляю ОС.
/etc/yum.conf
installonly_limit=2
deltarpm=0

yum upgrade

6) yum install totem

понедельник, 26 мая 2014 г.

И.А. Ефремов. Час быка

За ними чуть слышался плеск волн и шелест ветра в листве – вечная музыка природы, настраивающая на спокойное размышление.

Нагромождение лжи, бессмысленная жестокость и страх... делали людей равнодушными ко всему, ленивыми циниками.

Есть все для жизни: голубой свод могучей атмосферы, прозрачное море и чистые реки, теплое светило. Но ветры перевевают мертвые пески, и их шум вместе с шумом моря или грозы – единственные звуки, нарушающие безмолвие громадных пустынь. Мыслящая жизнь в диком заблуждении убила себя и все живое, едва прикоснувшись к мощи атома и космоса.
...
Если сохранилось наследие их мыслей и дел, то иногда это опасный яд, могущий отравить еще незрелое общество, слепо воспринявшее мнимую мудрость.

Помни всегда, что самое трудное в жизни – это сам человек, потому что он вышел из дикой природы не предназначенным к той жизни, какую он должен вести по силе своей мысли и благородству чувств.

Историкам... стало трудно выяснять истинное значение документации. Дезинформация и чудовищная ложь стали орудиями политической борьбы за власть.

...некоего среднего человека тех времен, односторонне образованного, убого информированного, отягощенного предрассудками и наивной, происходившей от незнания верой в чудо.
Ученый тех времен казался глухим эмоционально; обогащенный эмоциями художник – невежественным до слепоты. И между этими крайностями обыкновенный человек <...>, предоставленный самому себе, не дисциплинированный воспитанием, болезненный, теряющий веру в себя и людей и находящийся на грани нервного надлома, метался от одной нелепости к другой в своей короткой жизни, зависевшей от множества случайностей.
Самым ужасным казалось отсутствие ясной цели и жажды познания мира у очень многих людей, без интереса глядевших в темное, не обещавшее никаких существенных изменений будущее с его неизбежным концом – смертью.

понедельник, 14 апреля 2014 г.

Парсинг и вывод заданным форматом всех .xml файлов, начиная с указанной директории

1) Написать команду или скрипт, просматривающий все *.xml файлы в директории.

Формат файлов:

<FirstName>john</FirstName>
<MiddleInitial>D</MiddleInitial>
<LastName>Smith</LastName>

<Delivered>
<Date>2014-01-31</Date>
</Delivered>

Имена могут иметь пробелы, верхний или нижний регистр, включать - или '.

Необходимо пропарсить все файлы и вывести данные в файл:

firstname middleinitial lastname | delivered date | filenameitwaslocated.xml
firstname middleinitial lastname | delivered date | filenameitwaslocated.xml


1.1) Разбираю несколько примеров, вот один из них:

grep -v ^[[:space:]]*\# $1 | grep -v ^[[:space:]]*\; | grep -v ^$

^ - начало строки
$ - конец строки
[:space:] - соответствует пробельным символам (пробел и горизонтальная табуляция)
[] - один из символов, указанных в скобках

в чем отличие ? от . - в том что точку можно указать просто, а вопрос надо экранировать, иначе он воспринимается как символ вопрос

2) Пишу свой скрипт.

2.1) Создаю файл с данными:
#   3
  ##
<FirstName>j o h n</FirstName>
<MiddleInitial>-D-</MiddleInitial>
<LastName>S-mith'</LastName>

<Delivered>
<Date>2014-01-31</Date>
</Delivered>

2.2) Затем в исполняемый файл пишу команду и передаю параметром файл данных:

/bin/echo `grep -o '>.*<' $1 | sed 's/<\|>//g'`
выдает
j o h n -D- S-mith' 2014-01-31
как теперь сделать
j o h n -D- S-mith' | 2014-01-31 | filenameitwaslocated.xml

echo `grep -o '>.*<' $1`"$1"|(sed 's/>\(.*\)<.>\(.*\)<.>\(.*\)<.>\(.*\)<\(.*\)/\1 \2 \3 | \4 | \5/')
выдает
j o h n -D- S-mith' | 2014-01-31 | cat_xml.input

2.3) написать что ли как оно работает...

grep построчно парсит файл, передаваемый параметром $1
-o - выдавать только то что соответствует шаблону
получаются строки вида >то_что_между<
echo убирает с конца каждой строки перевод на новую строку, выдает все строки одной строкой и добавляет в конец имя переданного файла "$1"
sed парсит строку по шаблону />\(.*\)<.>\(.*\)<.>\(.*\)<.>\(.*\)<\(.*\)/ и возвращает 5 значений (.*\), которые я потом вывожу, форматируя /\1 \2 \3 | \4 | \5/

2.4) Двигаюсь дальше. Создаю несколько файлов *.xml

find ./ -name '*.xml' -exec ./cat_xml {} > ./output \;
cat ./output
4 o h n -D- S-4mith' | 2014-01-34 | ./cat_xml4.xml
55j o h n 55 S-mith55' | 2014-01-35 | ./cat_xml5.xml
j o h n2 D- Smith' | 2014-01-32 | ./cat_xml2.xml
4 o h n -D- S-4mith' | 2014-01-34 | ./222/cat_xml4.xml
55j o h n 55 S-mith55' | 2014-01-35 | ./222/cat_xml5.xml
j o h n2 D- Smith' | 2014-01-32 | ./222/cat_xml2.xml
j o h n -D- S-mith' | 2014-01-31 | ./222/cat_xml1.xml
j3o3h3n D3 S-mith3 | 2014-01-33 | ./222/cat_xml3.xml
j o h n -D- S-mith' | 2014-01-31 | ./cat_xml1.xml
j3o3h3n D3 S-mith3 | 2014-01-33 | ./cat_xml3.xml

3) Использованные ресурсы:
http://rus-linux.net/MyLDP/BOOKS/abs-guide/flat/abs-book.html
http://citforum.ru/operating_systems/manpages/bash/BASH.1_2.shtml#expansion
http://www.theunixschool.com/2013/02/sed-examples-replace-delete-print-lines-csv-files.html
http://unix.stackexchange.com/questions/64645/text-between-two-tags
http://stackoverflow.com/questions/8476329/get-string-between-and-linux-directory

среда, 2 апреля 2014 г.

Full backup of CentOS 6.5 on IBM System x3650 M4


Использую книгу М. Кофлер "Linux. Установка, настройка, администрирование" 2013 года (далее - книгу), в основном Главу 25 Резервное копирование.
http://rutracker.org/forum/viewtopic.php?t=4617248

Для начала инсталлирую еще один архиватор:
# yum install lzop

Устанавливаю и настраиваю webmin, т. к. там есть Filesystem Backup.


1) Обзор вариантов резервирования.

1.1) Образ загрузочного тома и других (которые не LVM).
Создается и восстанавливается с помощью dd:
# dd if=/dev/sda1 of=/backup/boot.dd

1.2) Образ LVM-тома.
Создается снапшот, затем cat snapshot сжимается в image.lzo (в книге есть пример).
Попробовал вместо cat использовать dd для чтения тома LVM - результат одинаков.

1.2.1) Для чего делают бакап образом?
Если, к примеру, данные на томе - это образ виртуальной машины. Если утрировать: том со свапом не сархивировать, его можно забакапить лишь образом.
Видел в инете инструкцию, где, используют исталляционный диск и устанавливают систему с такого файла-образа (Debian).

1.2.2) Провел тест считывания образа логических томов LVM:

# time cat /dev/vg01/lv_home > /mnt/squid/lv_home.img
real    7m31.971s
-rw-r--r--  1 root   root   53687091200 Feb 26 10:50 lv_home.img

# time cat /dev/vg01/lv_home | lzop -c > /mnt/squid/lv_home.img.lzo
real    3m39.066s
-rw-r--r-- 1 root root 223889323 Feb 26 11:00 lv_home.img.lzo

Вывод: просто считанный файл-образ получается размером с том, хотя данных 200 МБ, а со сжатием намного эффективнее.

1.2.3) Как восстанавливать с образа?

1.2.3.1) Так восстанавливают прямо со снапшота (инет): # dd if=/dev/vg00/lv_root_snap of=/dev/vg00/lv_root

1.2.3.2) Я попробовал считать (как указано выше п.1.2.2) и аналогично записать образ /home обратно, и это сработало:

# umount /home
# mkfs.ext4 /dev/vg01/lv_home (форматирую, чтобы стереть все данные)
# lzop -dc /mnt/squid/lv_home.img.lzo > /dev/vg01/lv_home
# mount /home

1.3) Архив LVM-тома.
Создается снапшот, затем содержимое снапшота сжимается в tar.gz (в книге есть пример).

1.3.1) Как сохранить конфигурацию LVM? Чтобы создать такие же группу и тома для восстановления.
Ежедневная резервная копия должна включать содержимое каталога /etc/lvm.
Создать архив метаданных в /etc/lvm/backup можно с помощью команды vgcfgbackup. Восстановить метаданные можно с помощью vgcfgrestore.


2) Резервирование.

2.1) Для начала разделил то "что надо резервировать", то "что не надо" и "куда резервировать" на отдельные тома.
$ df -h
Filesystem                  Size  Used Avail Use% Mounted on
/dev/mapper/vg01-lv_root     50G  3.6G   44G   8% /
tmpfs                        16G     0   16G   0% /dev/shm
/dev/sda2                   485M   67M  394M  15% /boot
/dev/sda1                   200M  260K  200M   1% /boot/efi
/dev/mapper/vg01-lv_squid   148G   91G   50G  65% /mnt/squid
/dev/mapper/vg01-lv_home     50G  196M   47G   1% /home
/dev/mapper/vg01-lv_log      50G  445M   47G   1% /var/log
/dev/mapper/vg01-lv_mysql    99G  224M   94G   1% /var/lib/mysql
/dev/mapper/vg01-lv_www     197G  8.6G  179G   5% /var/www
/dev/mapper/vg01-lv_backup  296G   52G  229G  19% /mnt/backup

2.2) Схема создания архива LVM-тома:
- Создавать снапшот
- Создавать архив (можно Filesystem Backup в webmin)
- Удалять снапшот

2.2.1) Написал скрипт создания снапшота.

# cat ./create_snap_before_backup
#!/bin/bash

# Если не переданы имя снапшота и расширение архива, то выход
if test $# -ne 2; then
  echo "Enter name of snapshot and archive extention"
  exit 1
fi

# Указываю значение переменных
snap_name="${1}_snap"
archive_ext=$2
backup_path="/mnt/backup"
snap_lv="/dev/vg01/$snap_name"
lv="/dev/vg01/lv_$1"
log="$backup_path/$snap_name.log"

# Логирую начало запуска скрипта
echo "BEGINING $0 for $snap_name.$archive_ext" &>> $log
date &>> $log
echo "" &>> $log

# Создаю директорию для монтирования снапшота
# -p  no error is existing
mkdir -p "$backup_path/$snap_name"

# Создаю снапшот и монтирую
lvcreate -s -L 1G -n $snap_name $lv &>> $log
mount -t ext4 $snap_lv "$backup_path/$snap_name" &>> $log

# Делаю ротацию архивов (4 штуки)
for i in 2 1 0; do
  if test $i -ne 0; then j=$i; i=$[$j+1]
  else j=''; i=1; fi

  if test -f "$backup_path/$snap_name$j.$archive_ext"; then
    mv -f "$backup_path/$snap_name$j.$archive_ext" "$backup_path/$snap_name$i.$archive_ext" &>> $log; fi
done

2.2.2) Написал скрипт удаления снапшота.

# cat ./remove_snap_after_backup
#!/bin/bash

# Если не передан параметр название снапшота, то выход
if test $# -ne 1; then
  echo "Enter name of snapshot"
  exit 1
fi

# Устанавливаю значения переменных
snap_name="${1}_snap"
backup_path="/mnt/backup"
snap_lv="/dev/vg01/$snap_name"
log="$backup_path/$snap_name.log"

# Удаляю снапшот с логированием в файл-лог
lvdisplay $snap_lv &>> $log
umount "$backup_path/$snap_name" &>> $log
lvremove -f $snap_lv &>> $log

# Логирую окончание процесса резервирования
date &>> $log
echo "ENDING $0 $snap_name Backup" &>> $log
echo "" &>> $log
echo "" &>> $log


2.2.3) In Webmin Filesystem Backup делаю Add a new backup of directory.

2.2.3.1) Для /var/www
Directories to backup /mnt/backup/www_snap
Backup to /mnt/backup/www_snap.tgz
Compress archive? yes, with gzip
Command to run before backup /home/sergeiki/bin/create_snap_before_backup www tgz
Command to run after backup /home/sergeiki/bin/remove_snap_after_backup www
Scheduled backup enabled? Enabled, at times chosen below.. Sunday 3:00

2.2.3.2) Для /
Directories to backup /mnt/backup/root_snap
Backup to /mnt/backup/root_snap.tgz
Files and directories to skip /boot /mnt/backup /mnt/squid /home /var/lib/mysql /var/log /var/www /sys /proc
Compress archive? yes, with gzip
Limit backup to one filesystem? No
Ignore read errors on files? Yes
Command to run before backup /home/sergeiki/bin/create_snap_before_backup root tgz
Command to run after backup /home/sergeiki/bin/remove_snap_after_backup root
Scheduled backup enabled? Enabled, after: /mnt/backup/www_snap to /mnt/backup/root_snap.tgz

2.2.3.2.1) Попробовал резервировать lv_root с исключением подмонтированного (Limit backup to one filesystem? Yes), много каталогов не забакапилось.
Я рассчитывал, что это будут /home, /mtn/*, /var/log и т.д. как мне и надо, но не забакапились и /dev, /proc, /sys...
Поэтому, указываю резервировать с подмонтированным, но исключаю /boot /mnt/backup /mnt/squid /home /var/lib/mysql /var/log /var/www /sys /proc

2.2.3.3) И т.д. для остальных LVM-томов.


2.2.4) Написал скрипт, создающий архивы образов /boot, /boot/efi, / и поставил его в cron на Sunday 2:00.

# cat ./create_snap_image |more
#!/bin/bash

# Путь для резервных копий
backup_path="/mnt/backup"

# Задаю имя логического диска, файл-лог, расширение архива
snap_name="sda1"
log="$backup_path/$snap_name.log"
archive_ext="gz"

# Логирую начало
echo "BEGINING $0 for $snap_name.$archive_ext Backup (/boot/efi)" &>> $log
date &>> $log
echo "" &>> $log

# Делаю ротацию архивов (4 штуки)
for i in 2 1 0; do
  if test $i -ne 0; then j=$i; i=$[$j+1]
  else j=''; i=1; fi

  if test -f "$backup_path/$snap_name$j.$archive_ext"; then
    mv -f "$backup_path/$snap_name$j.$archive_ext" "$backup_path/$snap_name$i.$archive_ext" &>> $log; fi
done

# Создаю архив образа логического тома и делаю запись в лог
(dd if=/dev/sda1 | gzip -c > $backup_path/$snap_name.$archive_ext) &>> $log
echo "" &>> $log

# Логирую окончание
date &>> $log
echo "ENDING $0 $snap_name Backup (/boot/efi)" &>> $log
echo "" &>> $log
echo "" &>> $log


snap_name="sda2"
log="$backup_path/$snap_name.log"
archive_ext="gz"

echo "BEGINING $0 for $snap_name.$archive_ext Backup (/boot)" &>> $log
date &>> $log
echo "" &>> $log

for i in 2 1 0; do
  if test $i -ne 0; then j=$i; i=$[$j+1]
  else j=''; i=1; fi

  if test -f "$backup_path/$snap_name$j.$archive_ext"; then
    mv -f "$backup_path/$snap_name$j.$archive_ext" "$backup_path/$snap_name$i.$archive_ext" &>> $log; fi
done

(dd if=/dev/sda1 | gzip -c > $backup_path/$snap_name.$archive_ext) &>> $log
echo "" &>> $log

date &>> $log
echo "ENDING $0 $snap_name Backup (/boot)" &>> $log
echo "" &>> $log
echo "" &>> $log


snap_name="root_snap"
log="$backup_path/$snap_name.log"
archive_ext="lzo"

echo "BEGINING $0 for $snap_name.$archive_ext Backup" &>> $log
date &>> $log
echo "" &>> $log

for i in 2 1 0; do
  if test $i -ne 0; then j=$i; i=$[$j+1]
  else j=''; i=1; fi

  if test -f "$backup_path/$snap_name$j.$archive_ext"; then
    mv -f "$backup_path/$snap_name$j.$archive_ext" "$backup_path/$snap_name$i.$archive_ext" &>> $log; fi
done

# Создаю снапшот (т. к. это LVM-том, а не обычный, как два предыдущих sda1 и sda2)
/sbin/lvcreate -s -L 1G -n $snap_name /dev/vg01/lv_root &>> $log

echo "" &>> $log
(dd if=/dev/vg01/root_snap | lzop -c > $backup_path/$snap_name.$archive_ext) &>> $log
echo "" &>> $log

# Удаляю снапшот
/sbin/lvremove -f /dev/vg01/root_snap &>> $log
echo "" &>> $log

date &>> $log
echo "ENDING $0 $snap_name Backup" &>> $log
echo "" &>> $log
echo "" &>> $log

вторник, 1 апреля 2014 г.

AdSense and Blogger

1) В Blogger меню Прибыль / AdSense все время вижу сообщение:

Ваш блог не соответствует правилам программы AdSense.

Пытался решить наскоком - не вышло, попробую записать, чтобы разобраться.

Следую Подробнее...
Далее в меню справа Если вам нужно несколько аккаунтов AdSense.
Следую Подробнее о добавлении сайтов...
Далее создать код AdSense.
Если нет рекламных блоков - создать, следуя подсказкам, если есть, то Получить код.

1.1) В окне получения кода - Руководство по внедрению кода.

Далее в меню справа Вставка рекламного кода на страницу.
Затем Использование системы управления контентом (CMS).
Далее Blogger из Сайты со встроенным кодом AdSense.

Используя AdSense, вам не придется выбирать ключевые слова или категории для объявлений. Мы сами определим тематику вашего блога и будем отображать в нем рекламу соответствующего содержания.

У Blogger должен быть доступ к вашему аккаунту AdSense, чтобы мы могли автоматически создавать рекламный код и размещать его в блоге, используя собственные шаблоны и инструменты дизайна.

AdSense, "Главная страница", "Настройки аккаунта", пункт "Доступ третьих сторон" - ничего не отображает...

Проверил все настройки AdSense - вроде бы всё нормально...

Вывод: покуда Ваш блог не соответствует правилам программы AdSense как ни старайся, ничего не отобразится?..
И, судя по хелпу, Blogger должен сам управлять привязанным к нему аккаунтом AdSense...

1.2) Попробовал получить код и вставить вручную.

Изменил шаблон, смотрю исходный код страницы в браузере - изменения присутствуют, но ничего не отобразилось...

Получилось! Код, вставленный в шаблон, отображается если смотреть блог другими браузерами...
Возможно, срабатывает настройка исключения меня из статистики посещений (установленный cookie блокирует и рекламу).
Убрал эту настройку - всё равно реклама в этом браузере не отобразилась, возможно из-за того, что с браузера был вход в google...
Дошло - Adblock Plus.

Найдено решение.
В меню Дизайн добавляю гаджет HTML/JavaScript, а в него добавляю рекламный код AdSense.


P.S. The End of history THERE.

четверг, 20 марта 2014 г.

Fedora 20 Log on HP Mini 110

Was began 03.02.2014.

1) I install Fedora 20 from Live-LXDE.

+ wi-fi
# b43-fwcutter -w /lib/firmware ./broadcom-wl-5.100.138/linux/wl_apsta.o
# modprobe -r b43; modprobe b43

+ system config
/etc/yum.conf
installonly_limit=2
deltarpm=0

- cheese
# yum install cheese
error after switch camera resolution

- audela
# yum install ./audela-2.0.0-2.i386.rpm
Transaction check error:
  file / from install of audela-2.0.0-2.i386 conflicts with file from package filesystem-3.2-19.fc20.i686
  file /usr/lib from install of audela-2.0.0-2.i386 conflicts with file from package filesystem-3.2-19.fc20.i686

+ touchpad
/etc/xdg/lxsession/LXDE/autostart
synclient TapButton1=1
(А в LXDE под Archlinux сразу работает, причем с отключением при печати).
- как бы его отключать во время печати...

- internet browser
- midori
Не работает flash-plugin (заработал после временного использования seamonkey).
Нерациональный интерфейс, похоже, настраивается параметрами при запуске.
Встроенный Adblock не убирает рекламу.
- seamonkey
Сразу заработал уже установленный до этого flash-plugin.
Пробовал кнопкой Print сохранять страницу в pdf-файл - ошибок нет, и файла нет.
Так и не заработал Adblock (на работе работает): не загружает страницу Easylist (chromium загружает).
+ chromium
Нет вышеописанных недостатков, но, прожерливый, собака...
10.05.14
# yum autoremove flash-plugin
# yum install chromium-pepper-flash.i686

- repos
enabled updates-testing
# yum install http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-20.noarch.rpm
# yum install http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-20.noarch.rpm
(# yum install http://rpms.famillecollet.com/remi-release-20.rpm
enabled remi)
# yum repolist

- Russian Fedora Remix (RFRemix)
# yum install http://mirror.yandex.ru/fedora/russianfedora/russianfedora/free/fedora/russianfedora-free-release-stable.noarch.rpm
# yum install http://mirror.yandex.ru/fedora/russianfedora/russianfedora/nonfree/fedora/russianfedora-nonfree-release-stable.noarch.rpm
# yum install http://mirror.yandex.ru/fedora/russianfedora/russianfedora/fixes/fedora/russianfedora-fixes-release-stable.noarch.rpm
Внимание! Обновление из репозитория Fixes превращает Fedora в RFRemix. Если вы не хотите этого делать, то не следует подключать этот репозиторий.
После "обновления из репозитория Fixes и превращения Fedora в RFRemix" ничего особенного непроизошло.
Кроме появления дополнительных пунктов PulseAudio и новой эмблемы в окне Logout.
Установил RFRemix-20-U1-i686-Live-LXDE и... вернул обратно Fedora-Live-LXDE-i686-20-1.

+ ABRT - Automatic Bug-Reporting Tool

+ как удалять пакет со всеми зависимостями?
yum autoremove

- installed/autoremoved postinstallerf
Полезен списком предоставляемых возможностей и программ, но глючит, например, то что я заметил за 10 минут использования - показывает, что у меня установлен Stellarium, хотя его нет, и запуск редактора репозитариев не работает.

+ webmin
Require package-updates/install_check.pl failed : Died at (eval 162) line 1
# yum install perl-Data-Dumper

+ windows share
# yum install gvfs-smb.i686
smb://10.20.30.101/video

+ hostname
# hostnamectl set-hostname f20

- video
# yum autoremove gstreamer-*
Totem is the default video player for Fedora.
# yum install totem.i686
Попробовал MPEG 1 Audio, MPEG 2 Video, H.264/AVC, MPEG-4 AAC Audio - всё работает...
При запуске по сети ошибка, что не хватает SMB protocol source plugin.
# yum install fuse-smb.i686 gvfs-smb.i686 и запустил smbd, nmbd - всё равно ошибка.
# yum install gstreamer1-plugins*
# yum install gstreamer-plugins*
Всё равно ошибка, а в Arch Linux ошибки не было.
Установил пакет xfce (попробовать), та же ошибка.
И в MATE та же ошибка.

- PM - Power Management
Как делать hibernate когда остается 9% заряда?
Как назначить на кнопку выключения hibertnate?
Смотреть управление питанием в MATE.
В MATE работал hibernate, затем перестал (уходит но не загружается), причину выяснить не удалось.

+ openvpn
Установил с помощью yum, однако нет его в systemd: каким скриптом запускать, как поставить в автозагрузку?
Запускаю из коммандной строки с имеющимися ключами и одним изменением в конфиге.
Не работает DNS, хотя вторичные сервера указываю, и в nslookup после указания вторичного первичным, имена ресолвятся...

10.05.14
в LXDE плагин resource monitors перестал отображать память.
Поиск в гугл ничего не дал.
11.06.14
Нашел на форуме LXDE тему с такой же ошибкой, дописал, что и у меня такая же.

11.05.14
Добавил сжатие в btrfs - compress=lzo в fstab. Не сработало.

17.06.14
- Заметил в messages
Jun 17 22:37:21 f20 rngd: read error
Jun 17 22:37:21 f20 rngd: read error
Jun 17 22:37:21 f20 rngd: No entropy sources working, exiting rngd
и отключил rngd.service в webmin Bootup and Shutdown
- Заметил, что размер messages проинсталлированного rfremix после одной загрузки всего лишь 25 КБ.
А размер такого же лога моей fedora 20 - 300-500 КБ и там такая белиберда, несколько раз перескакивает дата на 4 часа вперед и возвращается назад и т.д.


2) Думаю переустановить систему.
2.1) LXDE надоел, плагин мониторинга памяти так и не работает.
Перешел на MATE, в LXDE загружаюсь редко.
Параллельно установил RFRemix с MATE. Раздражает русификация, каталоги на русском и др. (после смены языка, предложило и переименовать каталоги). То, чего нет в Fedora (несвободное ПО), должно быть уже установлено: однако, даже видео просмотреть не смог - отсутствует проигрыватель...
Не выполняется проверка btrfs с live-cd - ошибка, попробую с обновленной параллельно установленной rfremix...
Не могу решить с каким десктопом переставлять систему...
Склоняюсь к MATE, но подумываю, может всё же Gnome 3, последний перспективнее, раз разрабатывается и считается основным.
А может Fedora 20 Game Spin? Интересно, какой там дескотоп. Будет куча игр.
2.2) Установил Gnome 3 с live-cd: современный дизайн, красиво; похоже, можно заточить Gnome 3 для своих нужд расширениями и настройками, разобраться в новинках (например, нет messages) однако, главная проблема - Gnome 3 рассчитан на разрешение экрана большее чем 1024х600 (netbook). Хоть от MATE и попахивает нафталином, Gnomre 3 на нетбуке "не вмещается".
2.3) Ставлю RFRemix MATE.

Как узнать, какой процесс использует сеть? Как наподобие ESET разрешать/запрещать вручную все соединения?

yum запускается при загрузке, как убрать?