# cd /etc/systemd/system/ # touch some.service # mcedit some.service [Unit] Description=Some site service [Service] ExecStartPre= ExecStart=/sbin/runuser -l asuser -c '/some/script/start.sh' Restart=always KillSignal=SIGQUIT Type=notify NotifyAccess=all [Install] WantedBy=multi-user.target # sudo systemctl enable some
Показ дописів із міткою linux. Показати всі дописи
Показ дописів із міткою linux. Показати всі дописи
автозапуск сервіс в Ubuntu 18
ширина скролбару в xfce
створити файл ~/.config/gtk-3.0/gtk.css і додати:
.scrollbar.vertical slider, scrollbar.vertical slider {
min-width: 15px;
}
[pulseaudio] module-bluetooth-device.c: Failed to acquire transport
Китайська гарнітура парується, але вибрати її як аудіо-пристрій неможливо. Причому, раніше працювало і чомусь померло.
В логах помилка САБЖ.
Лікується:
# sudo mv /etc/bluetooth /etc/bluetooth.backup
# sudo apt-get install --reinstall bluez
В логах помилка САБЖ.
Лікується:
# sudo mv /etc/bluetooth /etc/bluetooth.backup
# sudo apt-get install --reinstall bluez
Доступність серверів Hetzner між собою
Було куплено кілька серверів, до кожного з них по додатковій реальній ІР адресі. Як вияснилось, ці додаткові адреси не бачать одна одну, хоча знаходяться в одній мережі і для всіх них один шлюз. Кожна з них доступна для світу
x.y.z.10
x.y.z.11
x.y.z.12
і шлюз
x.y.z.254
Був направлений запит в підтримку Hetzner і відповідь дуже здивувала, на кожному хості, де шлюзом по замовчуванні є x.y.z.254, треба додатково прописати статичний маршрут на сусідню ІР через той самий шлюз.
Наприклад, для x.y.z.10 треба додати маршрут:
route add -host x.y.z.11 gw x.y.z.254
route add -host x.y.z.12 gw x.y.z.254
Після чого всі ІР між собою стали доступними.
В чому логіка?
x.y.z.10
x.y.z.11
x.y.z.12
і шлюз
x.y.z.254
Був направлений запит в підтримку Hetzner і відповідь дуже здивувала, на кожному хості, де шлюзом по замовчуванні є x.y.z.254, треба додатково прописати статичний маршрут на сусідню ІР через той самий шлюз.
Наприклад, для x.y.z.10 треба додати маршрут:
route add -host x.y.z.11 gw x.y.z.254
route add -host x.y.z.12 gw x.y.z.254
Після чого всі ІР між собою стали доступними.
В чому логіка?
gre tunnel bash function
#!/bin/bash
/sbin/modprobe gre
function tun2-up {
NAME=$1
REMOTE=$2
IP=$3
PPTP=$4
#ip link set ${NAME} down
#ip tunnel del ${NAME}
ip tunnel add ${NAME} mode gre remote ${REMOTE} local MY_EXTERNAL_IP
ifconfig ${NAME} inet ${IP} pointopoint ${PPTP}
ip link set ${NAME} up
}
tun2-up tunnelname REMOTE_IP 10.77.253.222/30 10.77.253.221
Встановлення локалі в Raspberry Pi
/etc/default/locale
LANGUAGE=en_US.UTF-8
LC_ALL=en_US.UTF-8
LANG=en_US.UTF-8
LC_TYPE=en_US.UTF-8
LANGUAGE=en_US.UTF-8
LC_ALL=en_US.UTF-8
LANG=en_US.UTF-8
LC_TYPE=en_US.UTF-8
Raspberry Pi блимає taskbar (xpanel)
Завів нового користувача, додав його в групу video і audio, також треба прописати в /boot/config.txt
dtparam=audio=on
ну і розремити можна, щоб забрати чорну рамку на моніторі
disable_overscan=1
dtparam=audio=on
ну і розремити можна, щоб забрати чорну рамку на моніторі
disable_overscan=1
Простий аналіз mail.log за допомогою awstats
perl maillogconvert.pl vadmin < /var/log/mail.log | grep email@domain.com > result.txt
postfix, virtual mail
Як перевірити час відклику сайту з командної стрічки linux
curl -s -w %{time_total}\\n -o /dev/null http://site.com.ua/
apache2 + php7 з коробки не запустився в Linux Mint 18
Видає помилку: "Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe. You need to recompile PHP"
Вирішення:
Вирішення:
sudo a2dismod mpm_event sudo a2enmod mpm_prefork sudo service apache2 restart
Viber fix
В Mint (Ubuntu) перестав працювати Viber. Перевстановлення не допомагало.
При запуску отримував помилку:
Вирішилось досить просто:
При запуску отримував помилку:
This application failed to start because it could not find or load the Qt platform plugin "xcb"
Вирішилось досить просто:
sudo apt-get install libxcb-*
Команда linux для визначення власного публічного IP
curl -s checkip.dyndns.org | sed -e 's/.*Current IP Address: //' -e 's/<.*$//'
або
wget http://ipinfo.io/ip -qO -
Sniff RTSP URL в китайській камері
Прийшла китайська ІР-камера, а задокументований rtsp URL не запрацював, хоча в браузері відео виконується.
Просніфити шлях просто:
Просніфити шлях просто:
ngrep -q -d wlan0 -W byline port 554
Upgrading MySQL 5.5 to MySQL 5.6 on Ubuntu 14.04 LTS
sudo apt-get remove mysql-server
sudo apt-get autoremove
sudo apt-get install mysql-client-5.6 mysql-client-core-5.6
sudo apt-get install mysql-server-5.6
Глюки SSH з'єднання
Обриви чи взагалі інколи неможливість законектитись на деякі хости лікуються фіксом конфіга на клієнті в /etc/ssh/ssh_config
Host * SendEnv LANG LC_* HashKnownHosts yes GSSAPIAuthentication yes GSSAPIDelegateCredentials no Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc HostKeyAlgorithms ssh-rsa,ssh-dss MACs hmac-md5,hmac-sha1,hmac-ripemd160
автоматизація підключення WebDAV-шари
Є багато машин, на кожну потрібно підключити відповідну webdav-шару. Формат http://davhost/pc_0xx і 192.168.0.xx клієнт, відповідно.
#!/bin/bash
IP=`ifconfig | grep -v '127.0.0.1' | sed -n 's/.*inet addr:\([0-9.]\+\)\s.*/\1/p'`
IP_ARRAY=(${IP//./ })
FSTAB=/etc/fstab
USER_HOME=/home/user
CLIENT_DIR=$USER_HOME/client
DAVFS_DIR=.davfs2
CLIENT_SECRET=secrets
if [ ! -d $CLIENT_DIR ]; then
echo "create $CLIENT_DIR"
mkdir $CLIENT_DIR
chown user:user $CLIENT_DIR
else
echo "exist $CLIENT_DIR"
fi
if [ ! -d $USER_HOME/$DAVFS_DIR ]; then
echo "create $USER_HOME/$DAVFS_DIR"
mkdir $USER_HOME/$DAVFS_DIR
chown user:user $USER_HOME/$DAVFS_DIR
else
echo "exist $USER_HOME/$DAVFS_DIR"
fi
if [ ! -f $USER_HOME/$DAVFS_DIR/$CLIENT_SECRET ]; then
echo "create $USER_HOME/$DAVFS_DIR/$CLIENT_SECRET"
touch $USER_HOME/$DAVFS_DIR/$CLIENT_SECRET
chown user:user $USER_HOME/$DAVFS_DIR/$CLIENT_SECRET
chmod 0600 $USER_HOME/$DAVFS_DIR/$CLIENT_SECRET
echo "http://davhost/pc_0${IP_ARRAY[3]} user user" >> $USER_HOME/$DAVFS_DIR/$CLIENT_SECRET
else
echo "exist $USER_HOME/$DAVFS_DIR/$CLIENT_SECRET"
fi
if grep "http://davhost/pc_0${IP_ARRAY[3]}" $FSTAB
then
echo "exist mount access in $FSTAB"
else
echo "create mount access in $FSTAB"
echo "http://davhost/pc_0${IP_ARRAY[3]} /home/user/client davfs user,rw,auto,_netdev 0 0" >> $FSTAB
fi
chmod u+s /sbin/mount.davfs
usermod -a -G davfs2 user
Підписатися на:
Дописи (Atom)


