Category Archives: Ubuntu

OpenVPN in a Docker container

Run a docker container:

export MY_IP=$(curl -s https://api.ipify.org)

sudo docker run -it --rm --cap-add=NET_ADMIN -p 1194:1194/udp -e HOST_ADDR=$MY_IP --name dockovpn alekslitvinenk/openvpn

or

sudo docker run -it --rm --cap-add=NET_ADMIN -p 1194:1194/udp -e HOST_ADDR=$MY_IP --name dockovpn alekslitvinenk/openvpn -v openvpn_conf:/opt/Dockovpn_data

to persist generated files in volume storage.

Type Ctrl+P then Ctrl+Q to turn interactive mode to daemon mode.

Determine its IP address:

sudo docker ps
sudo docker inspect dockovpn | grep IPAddress
(more…)

Building QT6.4 on Ubuntu 22.04

I installed required packages:

sudo apt install build-essential
sudo apt install libx11-dev
sudo apt install ninja-build
sudo apt install openssl libssl-dev
sudo apt install libmd4c-dev libmd4c-html0-dev
sudo apt install pkg-config
sudo apt install mesa-utils libglu1-mesa-dev freeglut3-dev mesa-common-dev
sudo apt install libglew-dev libglfw3-dev libglm-dev
sudo apt install libao-dev libmpg123-dev
(more…)

How I fixed my contact form

When I switched to PHP 7.4 I forgot to specify sendmail_path parameter in php.ini and my contact form stopped working. Today I found sendmail_path parameter in PHP 7.0:

cd /etc/php
find . -name "php.ini"
./7.0/fpm/php.ini
./7.0/cgi/php.ini
./7.0/cli/php.ini
./7.4/fpm/php.ini
./7.4/cli/php.ini
grep sendmail ./7.0/fpm/php.ini
sendmail_path = "/usr/sbin/sendmail -t -f *****@yandex.ru -i"
(more…)

Converting WAV files with Sox

Source file:

soxi short-borrowed-old.wav
Input File     : 'short-borrowed-old.wav' (flac)
Channels       : 2
Sample Rate    : 44100
Precision      : 16-bit
Duration       : 00:00:00.60 = 26460 samples = 45 CDDA sectors
File Size      : 54.0k
Bit Rate       : 720k
Sample Encoding: 16-bit FLAC
Comment        : 'Comment=Processed by SoX'
(more…)

Switching to PHP 7.4 on Ubuntu 16.04

Some WordPress plugins stopped working with PHP 7.0 on my Ubuntu 16.04 server and I switched to PHP 7.4 with the following commands:

sudo add-apt-repository ppa:jczaplicki/xenial-php74-temp
sudo apt-get update
sudo apt-get install php7.4 php7.4-fpm php7.4-cli php7.4-mysql php7.4-dom php7.4-mbstring -y
service php7.4-fpm status
cd /etc/php/7.4/fpm/pool.d
sudo mv www.conf www.conf.dist
sudo mv ../../../7.0/fpm/pool.d/devnote.conf .
sudo service php7.0-fpm reload
sudo service php7.4-fpm reload
(more…)

“Server certificate verification failed” error with command line Git client

Some guy described the same situation about 10 years ago on stackoverflow.com and there was another discussion about 7 years ago.

First I did:

GIT_CURL_VERBOSE=1 git clone https://git.developernote.com/examples.git
Cloning into 'examples'...
* Couldn't find host git.developernote.com in the .netrc file; using defaults
*   Trying 139.162.243.103...
* TCP_NODELAY set
* Connected to git.developernote.com (139.162.243.103) port 443 (#0)
* found 129 certificates in /etc/ssl/certs/ca-certificates.crt
* found 387 certificates in /etc/ssl/certs
* ALPN, offering http/1.1
* SSL connection using TLS1.2 / ECDHE_RSA_AES_256_GCM_SHA384
* server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none
* stopped the pause stream!
* Closing connection 0
fatal: unable to access 'https://git.developernote.com/examples.git/': server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none
(more…)

Compiling Awl on Ubuntu 18 and 20 with GCC 11

Below I provided the instruction on how to build Awl on Ubuntu 18 and 20.

On Ubuntu 18 you do an extra step to install CMake version >= 3.12:

wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | sudo apt-key add -
sudo apt-add-repository 'deb https://apt.kitware.com/ubuntu/ bionic main'
sudo apt update

Then do the following steps on both Ubuntu 18 and 20:

sudo apt install cmake
cmake --version
(more…)

Error reading file: No space left on device

I had a large SQLite file C:\Users\D-Ef\AppData\Local\TradeClient\realtime.db that I was unable to copy to another disk. I tried:

split -n 10 -d -u realtime.db /mnt/d/db/rt
dd bs=65536 if=realtime.db of=/mnt/d/db/rt

in WSL, but got ‘error reading ‘realtime.db’: No space left on device’ with all the commands.

Finally I reduced page file size restarted my machine and copied the file in a usual way.

(more…)

Installing Jabber Messaging Service on Ubuntu 16.04

sudo apt install ejabberd
ufw allow to any port 5280 proto tcp
ufw allow to any port 5222 proto tcp
ufw allow to any port 5269 proto tcp
ufw allow to any port 7777 proto tcp
sudo nano /etc/ejabberd/ejabberd.yml
##
## hosts: Domains served by ejabberd.
## You can define one or several, for example:
## hosts:
##   - "example.net"
##   - "example.com"
##   - "example.org"
##
hosts:
  - "developernote.com"

...

###.   ====================
###'   ACCESS CONTROL LISTS
acl:
  ##
  ## The 'admin' ACL grants administrative privileges to XMPP accounts.
  ## You can put here as many accounts as you want.
  ##
  admin:
     user:
         - "admin": "developernote.com"
(more…)

A proper Ubuntu 18.04 installation for running Ethereum node

Create a Hyper-V machine with a disk that is large enough:

And install Ubuntu 18.04.

(more…)