Таких блогов миллиарды, и что бы не рыскать в гугле, и вспоминать как там было, я для себя пишу маленькие комментарии.

вторник, 2 мая 2017 г.

create mysql utf8mb4

>> CREATE DATABASE mydatabase CHARACTER SET utf8mb4 COLLATE
utf8mb4_unicode_ci;

Note that utf8_general_ci is no longer recommended best practice.

http://stackoverflow.com/a/766996

четверг, 19 января 2017 г.

Debian 8 jessie nfs-kernel-server

Столкнулся с проблемой, что на debian jessie не устанавливается
nfs-server. Выдаёт ошибку во время установки.

###
root@server01:~# apt-get install nfs-kernel-server nfs-common
Reading package lists... Done
Setting up nfs-common (1:1.2.8-9) ...
insserv: Service rpcbind has to be enabled to start service nfs-common
insserv: exiting now!
update-rc.d: error: insserv rejected the script header

###
dpkg: error processing package nfs-common (--configure):
subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of nfs-kernel-server:
nfs-kernel-server depends on nfs-common (= 1:1.2.8-9); however:
Package nfs-common is not configured yet.

###
dpkg: error processing package nfs-kernel-server (--configure):
dependency problems - leaving unconfigured
Errors were encountered while processing:
nfs-common
nfs-kernel-server
E: Sub-process /usr/bin/dpkg returned an error code (1)

По началу можно не заметить подсказу, о том, что нужно сделать.
А именно:

###
Service rpcbind has to be enabled to start service nfs-common

###
root@server01:~# systemctl status rpcbind
● rpcbind.service - LSB: RPC portmapper replacement
Loaded: loaded (/etc/init.d/rpcbind)
Drop-In: /run/systemd/generator/rpcbind.service.d
└─50-rpcbind-$portmap.conf
Active: inactive (dead)

###
root@server01:~# systemctl enable rpcbind
Synchronizing state for rpcbind.service with sysvinit using update-rc.d...
Executing /usr/sbin/update-rc.d rpcbind defaults
Executing /usr/sbin/update-rc.d rpcbind enable

###
root@server01:~# systemctl status rpcbind
● rpcbind.service - LSB: RPC portmapper replacement
Loaded: loaded (/etc/init.d/rpcbind)
Drop-In: /run/systemd/generator/rpcbind.service.d
└─50-rpcbind-$portmap.conf
Active: active (running) since Thu 2017-01-19 14:37:06 MSK; 1s ago
Process: 1262 ExecStart=/etc/init.d/rpcbind start (code=exited,
status=0/SUCCESS)
CGroup: /system.slice/rpcbind.service
└─1271 /sbin/rpcbind -w
Jan 19 14:37:06 mg-nfs01 rpcbind[1262]: Starting rpcbind daemon....
Jan 19 14:37:06 mg-nfs01 systemd[1]: Started LSB: RPC portmapper
replacement.

###
root@server01:~# apt-get install nfs-kernel-server
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
2 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] Y
Setting up nfs-common (1:1.2.8-9) ...
Setting up nfs-kernel-server (1:1.2.8-9) ...

Creating config file /etc/exports with new version

Creating config file /etc/default/nfs-kernel-server with new version
Processing triggers for systemd (215-17+deb8u6) ...

###
Готово.

вторник, 25 октября 2016 г.

free monitoring

Автор HOSTING.cafe
https://habrahabr.ru/company/hosting-cafe/blog/313518/
https://habrahabr.ru/company/hosting-cafe/blog/312958/
--------------------------------------------------------------------------------
########## statuscake.com ##########

Предоставляется бесплатный тариф с возможностью создания неограниченного
количества мониторов для проверки раз в 5 минут из случайных локаций,
накладывающий существенные ограничения на функционал.

Проверить можно HTTP, DNS записи, доступность порта, SSH, SMTP, Ping,
скорость загрузки страницы, срок истечения домена и SSL сертификата,
работоспособность сервера.

########## uptimerobot.com ##########

Бесплатная версия позволяет запустить 50 мониторов с минимальным
интервалом в 5 минут, профессиональный аккаунт стоит 5.5$ ежемесячно за
50 мониторов и включает ежеминутные проверки и 10 SMS уведомлений.

Проверяет HTTP/HTTPS, может искать ключевое слово, может не искать,
запускает Ping, проверяет заданный порт.

Оповещения можно получать через SMS, электронную почту, Twitter, HTTP
запрос в формате JSON, Push-уведомления, в Hipchat или Slack.

--------------------------------------------------------------------------------
Сохранил к себе на память.

понедельник, 19 сентября 2016 г.

Error opening spice console. SpiceClientGTK missing

Автор http://klink0v.livejournal.com/326799.html
--------------------------------------------------------------------------------
virt-manager в Debian 8
Наткнулся на мелкий баг в virt-manager из комплекта Debian Jessie.

При попытке подключиться к консоли виртуальной машины через spice сабж
выдаёт ничего не говорящую ошибку типа:
"Error opening spice console. SpiceClientGTK missing".

Долго ломал голову. Оказывается, проблема вот в этом. Надо просто
доустановить пакетики "gir1.2-spice-client-gtk-3.0 и
gir1.2-spice-client-gtk-2.0". Баг из серии "поди ж догадайся".

sudo apt-get install gir1.2-spice-client-glib-2.0
gir1.2-spice-client-gtk-2.0 gir1.2-spice-client-gtk-3.0
--------------------------------------------------------------------------------
Сохранил к себе на память.

понедельник, 4 июля 2016 г.

Change default-browser in linux

sudo update-alternatives --config gnome-www-browser
sudo update-alternatives --config x-www-browser

среда, 18 мая 2016 г.

Debian Jessie fix IMSM

Fix imsm mdadm, after debian upgrade to jessie

mdadm--zero-superblock --metadata=imsm /dev/sd[a-z]

Генерация CSR для заказа сертификата

1) генерация csr для сертификата на домен

openssl genrsa -out FILE_KEY 4096
openssl req -new -sha256 -key FILE_KEY -out FILE_CSR

2) проверка всё должно совпадать

openssl x509 -in FILE_CRT -noout -modulus | openssl md5
openssl rsa -in FILE_KEY -noout -modulus | openssl md5
openssl req -in FILE_CSR -noout -modulus | openssl md5

понедельник, 8 февраля 2016 г.

systemd[1]: Looping too fast. Throttling execution a little.

OS: Debian 8 jessie x64

Один из серверов иногд начинает чудить, и в логах постоянно повторяется:

journalctl -xn
-- Logs begin at Tue 2016-02-02 09:07:21 MSK, end at Mon 2016-02-08
18:10:58 MSK. --
Feb 08 18:10:50 systemd[1]: Looping too fast. Throttling execution a little.
Feb 08 18:10:51 systemd[1]: Looping too fast. Throttling execution a little.
Feb 08 18:10:53 systemd[1]: Looping too fast. Throttling execution a little.
Feb 08 18:10:54 systemd[1]: Looping too fast. Throttling execution a little.
Feb 08 18:10:55 systemd[1]: Looping too fast. Throttling execution a little.
Feb 08 18:10:56 systemd[1]: Looping too fast. Throttling execution a little.
Feb 08 18:10:58 systemd[1]: Looping too fast. Throttling execution a little

Помогает команда systemctl daemon-reexec

суббота, 20 декабря 2014 г.

smart или когда диск пора менять, пока не поздно!

Смотрим статус диска командой
sudo smartctl -A /dev/sda | grep -e '^ *5' -e '^ *184' -e '^ *187' -e '^ *196' -e '^ *197' -e '^ *198' -e '^ *200'
Если есть не нулевые значения, то читаем статью http://www.ixbt.com/storage/hdd-smart-testing.shtml и принимаем меры.

четверг, 17 июля 2014 г.

Установка и настройка Pure-FTPD (Pure FTP)

Взял заметку к себе на память, потому что уж очень хороший фтп и очень хорошая заметка.
Источник: http://cisu.blogspot.ru/2013/01/pure-ftpd-debian.html

Здесь я опишу подробный способ установки FTP-сервера Pure-FTPD и помогу вам избежать возникновения проблем, с которыми столкнулся сам: из-за не окрепшей дружбы с линуксом, или не очевидных и не описанных нюансов в установке и настройке.

Устанавливаем обычную версию (еще бывает mysql):
apt-get install pure-ftpd-common pure-ftpd

Здесь важно отметить, что после установки сервис запускается автоматически с параметрами по умолчанию. Остановка, старт или перезапуск:
/etc/init.d/pure-ftpd stop
/etc/init.d/pure-ftpd start
или
/etc/init.d/pure-ftpd restart

Далее мы должны создать группу пользователей FTP и пользователя, который будет находиться в этой группе, и под которым будут работать все пользователи FTP как виртуальные  (не нужно плодить реальных пользователей в системе — удобно)
groupadd ftpgroup
useradd -g ftpgroup -d /dev/null -s /etc ftpuser

Теперь можно добавить виртуального пользователя:
pure-pw useradd remote -u ftpuser -g ftpgroup -d /home/pubftp/remote -N 10

Где remote — имя пользователя для доступа к FTP, а /home/pubftp/remote — персональная директория, с которой он будет работать. -N 10 задает квоту в 10МБ (ограничение на использование дискового пространства). Эту директорию не нужно создавать вручную, т.к. она появится автоматически (параметр задается при конфигурировании, об этом чуть позже) при первом подключении и обмене данными с сервером.

Так же после первого выполнения этой команды создается файл, который будет хранить данные для доступа пользователей.

Список существующих пользователей:
pure-pw list

Подробная информация о пользователе:
pure-pw show remote


Удаление пользователя — когда-нибудь может пригодиться, но не сейчас:
pure-pw userdel remote


Удаляем методы авторизации имеющиеся по умолчанию:
rm /etc/pure-ftpd/conf/PAMAuthentication /etc/pure-ftpd/auth/70pam

Включаем puredb — преимущества в скорости работы, наверное (:
ln -s ../conf/PureDB /etc/pure-ftpd/auth/45puredb


При первом запуске команда создает БД, а после любых операций с пользователями — обновляет (не забывайте ее запускать каждый раз):
pure-pw mkdb

Теперь остается задать важные параметры в конфиге, например:
Создавать домашнюю директорию автоматически:
echo "yes" > /etc/pure-ftpd/conf/CreateHomeDir
Запрещать анонимный доступ:
echo "yes" > /etc/pure-ftpd/conf/NoAnonymous
Пользователь не уйдет дальше своего каталога (не подымется выше):
echo "yes" > /etc/pure-ftpd/conf/ChrootEveryone
Человеческий лог:
echo "yes" > /etc/pure-ftpd/conf/VerboseLog
Работаем только по IPv4:
echo "yes" > /etc/pure-ftpd/conf/IPV4Only
Максимальное количество клиентов:
echo "100" > /etc/pure-ftpd/conf/MaxClientsNumber 
Максимальное количество клиентов с одного IP:
echo "8" > /etc/pure-ftpd/conf/MaxClientsPerIP
Не показывать системный файлы (вида .имя_файла):
echo "no" > /etc/pure-ftpd/conf/DisplayDotFiles 
Время простоя до отключения — 15 минут:   
echo "15" > /etc/pure-ftpd/conf/MaxIdleTime
Максимальная параллельная (?) загрузка:
echo "16" > /etc/pure-ftpd/conf/MaxLoad  
FTP, порты пассивного режима:        
echo "50000 50300" > /etc/pure-ftpd/conf/PassivePortRange

Не забываем после изменений сделать перезапуск:
/etc/init.d/pure-ftpd restart

Теперь все работает — замечательно.

Ну и просмотреть логи можно так:   
more /var/log/messages | grep pure-ftpd

среда, 9 октября 2013 г.

Wget и русский язык

Долго меня мучила проблема скачивания файлов с русским именем через wget.

И вот на просторах интернета я нашёл решение.

wget --restrict-file-names=nocontrol

За подробностями в man wget

Спасибо mydebianblog.blogspot.ru
Взято на память отсюда http://mydebianblog.blogspot.ru/2007/09/wget.html

пятница, 28 июня 2013 г.

sed удаление пробелов и табуляций

$ sed -i 's/^[ \t]*//;s/[ \t]*$//' file_name.txt

Удалит все пробелы + табуляции в начале и в конце строки, оставив только содержимое.

понедельник, 10 декабря 2012 г.

Восстанавливаем ORACLE из RMAN

[oracle@isvpdb ~]$ rman target /

Recovery Manager: Release 11.2.0.2.0 - Production on Mon Dec 10 17:16:55 2012
Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
connected to target database (not started)

RMAN> startup nomount;

Oracle instance started

Total System Global Area    1603411968 bytes

Fixed Size                     2226912 bytes
Variable Size                419431712 bytes
Database Buffers            1174405120 bytes
Redo Buffers                   7348224 bytes

RMAN> restore controlfile from '/home/oracle/20121206/cl_WPSBAZA_20121206_cf_D-WPSBAZA_id-3655181439_ians5lhf';


Starting restore at 10-DEC-12
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=156 device type=DISK

channel ORA_DISK_1: copied control file copy
output file name=/u01/app/oracle/oradata/wpsbaza/control01.ctl
output file name=/u01/app/oracle/fast_recovery_area/wpsbaza/control02.ctl
Finished restore at 10-DEC-12

RMAN> alter database mount;

database mounted
released channel: ORA_DISK_1

RMAN> CATALOG START WITH '/home/oracle/20121206/';


Starting implicit crosscheck backup at 10-DEC-12
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=156 device type=DISK
Crosschecked 200 objects
Finished implicit crosscheck backup at 10-DEC-12

Starting implicit crosscheck copy at 10-DEC-12
using channel ORA_DISK_1
Crosschecked 400 objects
Finished implicit crosscheck copy at 10-DEC-12

searching for all files in the recovery area
cataloging files...
no files cataloged

searching for all files that match the pattern /home/oracle/20121206/

List of Files Unknown to the Database
=====================================
File Name: /home/oracle/20121206/bk_WPSBAZA_20121206_icns5lk5_1_1
File Name: /home/oracle/20121206/cl_WPSBAZA_20121206_cf_D-WPSBAZA_id-3655181439_ians5lhf
File Name: /home/oracle/20121206/bk_WPSBAZA_20121206_ibns5lhq_1_1
File Name: /home/oracle/20121206/al_WPSBAZA_20121206_idns5lkg_1_1

Do you really want to catalog the above files (enter YES or NO)? yes
cataloging files...
cataloging done

List of Cataloged Files
=======================
File Name: /home/oracle/20121206/bk_WPSBAZA_20121206_icns5lk5_1_1
File Name: /home/oracle/20121206/cl_WPSBAZA_20121206_cf_D-WPSBAZA_id-3655181439_ians5lhf
File Name: /home/oracle/20121206/bk_WPSBAZA_20121206_ibns5lhq_1_1
File Name: /home/oracle/20121206/al_WPSBAZA_20121206_idns5lkg_1_1

RMAN> restore database;

Starting restore at 10-DEC-12
using channel ORA_DISK_1

channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00001 to /u01/app/oracle/oradata/wpsbaza/system01.dbf
channel ORA_DISK_1: restoring datafile 00002 to /u01/app/oracle/oradata/wpsbaza/sysaux01.dbf
channel ORA_DISK_1: restoring datafile 00003 to /u01/app/oracle/oradata/wpsbaza/undotbs01.dbf
channel ORA_DISK_1: restoring datafile 00004 to /u01/app/oracle/oradata/wpsbaza/users01.dbf
channel ORA_DISK_1: restoring datafile 00005 to /u01/app/oracle/oradata/wpsbaza/data/wpsbaza_ICMLFQ32_01.dbf
channel ORA_DISK_1: restoring datafile 00006 to /u01/app/oracle/oradata/wpsbaza/data/wpsbaza_ICMLNF32_01.dbf
channel ORA_DISK_1: restoring datafile 00007 to /u01/app/oracle/oradata/wpsbaza/data/wpsbaza_ICMSFQ04_01.dbf
channel ORA_DISK_1: restoring datafile 00008 to /u01/app/oracle/oradata/wpsbaza/data/wpsbaza_ICMVFQ04_01.dbf
channel ORA_DISK_1: restoring datafile 00009 to /u01/app/oracle/oradata/wpsbaza/data/wpsbaza_CMBINV04_01.dbf
channel ORA_DISK_1: restoring datafile 00010 to /u01/app/oracle/oradata/wpsbaza/data/wpsbaza_ICMLSNDX_01.dbf
channel ORA_DISK_1: reading from backup piece /home/oracle/20121206/bk_WPSBAZA_20121206_ibns5lhq_1_1
channel ORA_DISK_1: piece handle=/home/oracle/20121206/bk_WPSBAZA_20121206_ibns5lhq_1_1 tag=TAG20121206T064617
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:25
Finished restore at 10-DEC-12

RMAN> recover database;
(зафейлилась)

Starting recover at 10-DEC-12
using channel ORA_DISK_1

starting media recovery

unable to find archived log
archived log thread=1 sequence=1003
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 12/10/2012 17:23:58
RMAN-06054: media recovery requesting unknown archived log for thread 1 with sequence 1003 and starting SCN of 33832035

RMAN> recover database until sequence 1003;
RMAN> alter database open resetlogs;
RMAN> quit;

четверг, 25 октября 2012 г.

Gedit-gmate вылетает.

Поставил себе Gedit-gmate подробное описание есть на habr.ru
Столкнулся с проблемой вылетания gmate сразу после запуска.
Причем если запускать gmate из терминала то выхлопа никого не было,
а gedit выплёвывал

$ gedit

** (gedit:3889): WARNING **: Could not load theme icon gtk-home: Icon
'gtk-home' not present in theme

** (gedit:3889): CRITICAL **: gedit_document_load: assertion
`gedit_utils_is_valid_location (location)' failed
Exception TypeError: "Couldn't find conversion for foreign struct
'cairo.Context'" in 'garbage collection' ignored
Fatal Python error: unexpected exception during garbage collection
Aborted


решил проблему установкой python-gi-cairo python-cairo-dev

$ sudo aptitude install python-gi-cairo python-cairo-dev -y

пятница, 12 октября 2012 г.

[Решено] Нет звука в Ubuntu 12.04 ALC269VB

Всем здравствуйте, столкнулся с проблемой отсутствия звука на ноутбуке , устанавливал ubuntu minimal, X ставил отдельно, i3wm рулит.

Что имеем:
NoteBook: Samsung 305U1A
Card: HDA ATI SB
Chip: Realtek ALC269VB
Soft: aplay, mocp, flashplayer etc.

Первым делом я установил все пакеты которые мне нужны для звука.

sudo aptitude install -y alsa-base alsa-oss alsa-tools alsa-utils alsaplayer-alsa alsaplayer-common alsaplayer-daemon libalsaplayer-dev libalsaplayer0 moc moc-ffmpeg-plugin

После я добавил своего пользователя в группу audio

sudo adduser myname audio

cat /proc/asound/cards показывал что у меня две звуковые карты
 0 [Generic]: HDA-Intel - HD-Audio Generic HD-Audio Generic at 0xfeb44000
 1 [SB]: HDA-Intel - HDA ATI SB HDA ATI SB at 0xfeb40000

Через alsamixer я выяснил что мне нужна карта под номером 1

Отредактировал ~/.asoundrc
pcm.!default {
type hw
card 1
}
ctl.!default {
type hw
card 1
}

После всё заработало.

среда, 26 сентября 2012 г.

wicd wifi wpa2 bad password

Что имеем:
HW: Samsung 305U1A
WiFi Чип: BCM4313 802.11
Network-Manager: Wicd-deamon

При попытке подключится к wifi через wicd я постоянно видел сообщение, о
том что не правильный пароль и т.д.
2012/09/20 19:02:46 :: attempting to set hostname with dhclient
2012/09/20 19:02:46 :: using dhcpcd or another supported client may work better
2012/09/20 19:02:46 :: attempting to set hostname with dhclient
2012/09/20 19:02:46 :: using dhcpcd or another supported client may work better
2012/09/20 19:02:46 :: Putting interface down
2012/09/20 19:02:46 :: Releasing DHCP leases...
2012/09/20 19:02:46 :: attempting to set hostname with dhclient
2012/09/20 19:02:46 :: using dhcpcd or another supported client may work better
2012/09/20 19:02:46 :: Setting false IP...
2012/09/20 19:02:46 :: Stopping wpa_supplicant
2012/09/20 19:02:46 :: Flushing the routing table...
2012/09/20 19:02:46 :: Putting interface up...
2012/09/20 19:02:48 :: Attempting to authenticate...
2012/09/20 19:03:24 :: wpa_supplicant authentication may have failed.
2012/09/20 19:03:24 :: connect result is failed
2012/09/20 19:03:24 :: exiting connection thread
2012/09/20 19:03:24 :: Sending connection attempt result bad_pass
2012/09/20 19:03:24 :: attempting to set hostname with dhclient
2012/09/20 19:03:24 :: using dhcpcd or another supported client may work better
2012/09/20 19:03:24 :: attempting to set hostname with dhclient
2012/09/20 19:03:24 :: using dhcpcd or another supported client may work better
2012/09/20 19:03:50 :: Daemon going down, killing wicd-monitor...

Проблема решилась установкой пакета bcmwl-kernel-source

sudo aptitude install bcmwl-kernel-source -y

После этого wlan0 переименовался в eth1, я изменил список устройств в wicd-gtk и всё заработало.

четверг, 7 июня 2012 г.

IHS7 and Centos6

1) http://www-304.ibm.com/support/docview.wss?uid=swg27020956
wget ftp://public.dhe.ibm.com/software/websphere/appserv/support/osprecheck/was70/httpserver/amd64/maintenance.xml
wget ftp://public.dhe.ibm.com/software/websphere/appserv/support/osprecheck/was70/plugins/amd64/maintenance.xml

2) http://portal2portal.blogspot.com/2011/12/installing-ibm-http-server-7-on-centos.html
yum install ld-linux.so.2
yum install libgcc_s.so.1

3)  yum install compat-libstdc++-296.i686 compat-libstdc++-33.i686 compat-libstdc++-33.x86_64 libstdc++.i686 libstdc++.x86_64 libstdc++-devel.i686 libstdc++-devel.x86_64 compat-libstdc++-33 compat-db libXp libXmu libXtst pam libXft -y

вторник, 15 мая 2012 г.

launchpad.net NO_PUBKEY

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com `sudo
aptitude update 2>&1 | grep -o '[0-9A-Z]\{16\}$' | xargs`

четверг, 5 апреля 2012 г.

Grub soft raid1 замена диска grub rescue

После замены сбойного hdd, система отказалась грузиться.
Лечим, грузимся с лайв сиди и устанавливаем груб на hdd

#grub
grub: device (hd0) /dev/sda
grub: root (hd0,0)
grub: setup (hd0)
grub: quit

либо 
grub-install /dev/sda

где /dev/sda рабочий винт в рейде
далее добавление диска в массив как и обычно, копируем информацию о разделах на новый диск
(главное быть внимательным)
sfdisk -d /dev/sda | sfdisk /dev/sdb
добавляем в массив
mdadm --manage /dev/md0 --add /dev/sdb1
mdadm --manage /dev/md1 --add /dev/sdb2

Спасибо http://i-notes.org/grub-soft-raid1-zamena-diska-grub-rescue/

четверг, 15 марта 2012 г.

postgres CP1251

Если:
createdb: database creation failed: ERROR: invalid locale name ru_RU.cp1251

То:
1) gunzip /usr/share/i18n/charmaps/CP1251.gz
2) localedef -f /usr/share/i18n/charmaps/CP1251 -i
/usr/share/i18n/locales/ru_RU /usr/lib/locale/ru_RU.cp1251
3) createdb -E WIN --locale=ru_RU.cp1251 -T template0 NAMEDB
Complete