First we need a few extra packages:
apt install -y adduser libfontconfig1 musl sudo
Install / Enable Grafana
dpkg -i grafana-enterprise_10.3.1_amd64.deb
dpkg -i grafana-enterprise_10.3.1_amd64.deb
(Reading database ... 44309 files and directories currently installed.)
If you have swarm services and dockerd is creating a high load even with the containers just being idle, the easiest solution is to upgrade to a newer docker version.
For example an identical config of 3 nodes, with Redis 5 with 30 replicas produces a load of about 1.45 in Debian 10 with Docker18.09.1
If I create the same setup on Debian 11, with Docker 20.10.5+dfsg1 then the CPU usage is low.
One other difference I wondered is the kernel. In my test setup........
Welcome to our in-depth guide on configuring NVIDIA GPUs with Docker on Ubuntu. This post is tailored for developers, data scientists, and IT professionals who are looking to leverage the power of NVIDIA's GPU acceleration within Docker containers.
Whether you're working on machine lea........
If you are installing ta-lib for Python and get this error then you can normally solve it by manually getting the ta-lib source files and compiling.
tar -zxvf ta-lib-0.4.0-src.tar.gz
cd ta-lib;./configure;make;make install
Downloading https://files.pythonhosted.org/packages/39/6f/6acaee2eac6afb2cc6a2adcb294080577f9983fbd2726395b9047c4e13ec/TA-Lib-0.4.26.tar.gz (272kB)
So say you happen to have 2 NICs of the exact same chipset, they will generally show up as the same name, with possibly a different revision in lspci. Normally this is not an issue if you have a server with 4 NICs, generally the eth0 to eth3 appears from left to the right (or right to left on some vendors) so it doesn't take much figuring out.
Generally if you have different chipsets for different NICs, it should be easy to know which one is eth0 or the first NIC in the OS.........
Just an FYI that the installer ignores your selection of Boot Loader, as it was intended for MBR/Legacy. The installer horribly, even when choosing "Something Else" and manually partitioning and creating an EFIin your install drive, will still install grub to the first EFI partition it finds, even if you are following a guide like this to avoid wiping out the M........
Here is how Ifixed it on a Mint/Ubuntu install
1.) First download the latest AMDGPU-Pro driver from here:
Navigate to your relevant video card:
2.) Download the installer
One issue is that by default they give you a version for the latest version of........
Bonding is an excellent way to get both increased redundancy and throughput. It is similar to the "Network Teaming" feature in Windows.
There are a few different modes but we will use mode 6, I think it's the best of both worlds, as it is not just a failover, but it provides round robin, so you will get redundancy and load balancing. So if you have a 1G single port, you will have a combined throughput of 4G at this point. Just bear in mind that the true thr........
If you are using mint, delete the preference that stops snap from installing (as it is required for lxc)
sudo rm /etc/apt/preferences.d/nosnap.pref
1. Install lxd:
sudo apt install lxd
Issues install lxd or errors? Click here
Debian at this time does not have lxd so you'll need to use snap:
sudo apt in........
This can be used on almost anything, since Gluster is a userspace tool, based on FUSE. This means that all Gluster appears as to any application is just a directory.
Applications don't need specific support for Gluster, so long as you can tell the application to use a certain directory for storage.
One application can be for redundant and scaled storage, including for within Docker and Kubernetes, LXC, Proxmox, OpenStack, etc or just your image/web/video files or even da........
The Best Docker Tutorial for Beginners
We quickly explain the basic Docker concepts and show you how to do the most common tasks from starting your first container, to making custom images, a Docker Swarm Cluster Tutorial, docker compose and Docker buildfiles.........
Kubernetes Easy Beginners Architecture Guide
Kubernetes is known as container orchestration and we should start at explaining the container part of it.
A Container is what runs the actual application and based on an Image, and are more comparable to something like an LXC Container, Virtuozzo/OpenVZ using the Linux Kernel Namespaces feature. Containers run these images as independent, isolated operating environments under the OS's exist........
It really seems limited in that it can mainly give you the things you would see on the physical unit such as load etc..
tar -zxvf apcupsd-3.14.14.tar.gz
apt install software-properties-common
apt install python3-pip
apt install python3.7 curl gnupg python3.7-dev git
ln -s /usr/bin/python3.7 /usr/bin/python3
pip3 install numpy keras_preprocessing
curl https://bazel.build/bazel-release.pub.gpg | sudo apt-key add -
echo "deb [arch=amd64] http://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel........
Downloading and compiling from source to get the latest version of Asterisk is really simple with this guide.
apt install gcc make g++ libedit-dev uuid-dev libjansson-dev apt install libxml2-dev sqlite3 libsqlite3-dev
tar -zxvf asterisk-16-current.tar.gz
If you get this error change y........
sudo pip3 install python-docx
[sudo] password for :
Downloading python-docx-0.8.10.tar.gz (5.5MB): 5.5MB downloaded
Running setup.py (path:/tmp/pip_build_root/python-docx/setup.py) egg_info for package python-docx
no previously-included directories found matching 'docs/.build'
warning: no previously-included files matching '.DS_Store' foun........
Install Errors on Version 12:
This error happened on QEMU emulator version 2.11.1 pve-qemu-kvm_2.11.1-5
on Proxmox/Debian but installing on QEMU.12 on Centos 6 did not produce the error.
*Update it is not related to the OS or QEMU version. This happened in Centos 6 too after a second install.
What really causes this even though you successfully install........
What you need to do if you have taken a dd or real raw image dump of a hard disk:
VBoxManage convertdd windows2019-eval-template.img windows2019.vdi --format VDI
The .img is the raw dd dump and the .vdi is the output file.
--format VDIspecifies to output to .vdi format
If you are in a pinch you can always use qemu-kvm binary and manually specify the .img as your disk and i........
If you see this in /etc/sudoers it is NOT a comment but an include.
For example in Linux mint sudoers.d contains the following files:
casper mintupdate README
casper for example contains the following sudoers line:
mint ALL=(ALL) NOPASSWD: ALL
So if you are messing ar........
The main use I have for this is virtual servers being able to use an LVM volume but not occupying all of the space. It saves time in deploying machines and copying them so you are only copying the space they are using (eg. 5GB / 60GB vs the full 60GB). There are some disadvantages which is mainly the fact that thin pools by their nature allow you to "overallocate" disk space which is that you could use more space than is available on the disk itself and corrupt your data........
umask are the default permissions that are applied when a file or directory are created. To see this in action simply just "touch filename" or "mkdir somedir" and you'll see what default permissions are applied.
The first thing Ialways tell people you should know is to NEVER change the defaults unless you are making them more restrictive. But they work well and if you change the defaults you could end up creating a file without permission to read........
You'll have to violate the iso9660 standards but it is necessary if you want to preserve your filesystem and filenames and shouldn't be an issue as long as you are using a modern OS like Linux.
genisoimage -o Backup-Myfiles.iso -r -J -joliet-long /some/path/
You will get errors like below (even enabling joliet-long didn't help)
genisoimage: Error: /some/filename.pdf have the same Joliet name
Joliet tree sort failed. The -joliet-lo........
ValueError: new value non-existent xfs filesystem is not valid as a default fs type
Pane is dead
From what Iread this is misleading and has to do with the fact that the initrd and kernel are mismatched.
This is a hard situation because for some older hardware Iam using the Centos Plus kernel which has modules that Irequire for an older server/NIC. This seems to have cropped up in the past few months and there is no simple fix........
#if you have nvidia make sure you install the nvidia-cuda-toolkit so hardware acceleration can be used
tar -jxvf ffmpeg-3.3.2.tar.bz2
install prefix /usr/local
source path ........
It is already known this is not possible
mdadm --create /dev/md3 --level 10 --layout=f2 --raid-devices=2 /dev/sdc1 /dev/sdd1
mdadm: /dev/sdc1 appears to be part of a raid array:
level=raid10 devices=2 ctime=Sat Dec 24 18:44:29 2016
mdadm: /dev/sdd1 appears to be part of a raid array:
level=raid10 devices=2 ctime=Sat Dec 24 18:44:29 2016
Continue creating ar........
This is a common mistake but many people do not realize this function comes from mysql itself, so therefore you need an active mysql connection open.
Usually the string will be empty and null when you call it from outside of the database connection portion of your code.
eg. an example of the wrong way and creating a null/empty string
$var = mysql_real_escape_string($myself)
// returns n........
Here is the scenario you or a client have a remote machine that was installed as a standard/default minimal Centos 6.x machine on a single disk with LVM for whatever reason. Often many people do not know how to install it to a RAID array so it is common to have this problem and why reinstall if you don't need to? In some cases on a remote system you can't easily reinstall without physical or KVM access.
So in this case you add a second physical or disk or already ha........
I kept thinking it was esniper but somehow my bash settings have a preset proxy that was creating the issue.
https://signin.ebay.com/ws/eBayISAPI.dll?SignIn: Couldn't connect to server: couldn't connect to host
curl manually to any URL is the same:
curl: (7) couldn't connect to host
Run curl with -vvvvvv mode to see the issue:
curl -vvvvvvvvvv http://realtechtalk.com
* About to c........
Error: Package: php-Monolog-dynamo-1.7.0-1.el6.noarch (epel)
Error: php-pecl-zendopcache conflicts with 1:php-eaccelerator-0.9.6.1-1.el6.x86_64
Error: php-xcache conflicts with php-pecl-apc-3.1.9-2.el6.x86_64
Error: php-pecl-zendopcache conflicts with php-pecl-apc-3.1.9-2.el6.x86_64
Error: Package: php-horde-Horde-Vfs-2.1.2-2.el6.noarch (epel)
There was an error creating the child process for this terminal
Failed to create pipe for communicating with child process (Too many open files)
I get this when trying to open a new tab or new window even. I've had far more sessions open (literally dozens)before without getting this error.........
sudo tar xjvf thunderbird-24.2.0.tar.bz2 -C /opt
ln -s /opt/thunderbird/thunderbird /usr/bin/thunderbird
[sudo] password for one:
ln: creating symbolic link `/usr/bin/thunderbird': File exists
sudo rm /usr/bin/thunderbird
ln -s /opt/thunderbird/thunderbird /usr/bin/thunderbird
The above is how Idid it, if you don't do it properly you'll find that you are still using the old version (........
yum -y install fail2ban
enabled = true
filter = asterisk
action = iptables-multiport[name=asterisk-tcp, port="5060,5061", protocol=tcp]
sendmail-whois[name=Asterisk, email@example.com, firstname.lastname@example.org]
logpath = /var/log/asterisk/messages
/scripts/phpextensionmgr install PHPSuHosin
Updating md5sum list
Fetching http://httpupdate.cpanel.net/cpanelsync/easy/targz.yaml (connected:0).......(request attempt 1/12)...Resolving httpupdate.cpanel.net...(resolve attempt 1/65)...
Fetching http://httpupdate.cpanel.net/mirror_addr_list (connected:0).......(request attempt 1/3)......connecting to 18.104.22.168...@22.214.171.124......connected......receiving...100%......request success......Done........
At first it was configured as a RAID 0, then I deleted the Virtual Disk Group.
I thought both drives would be shown and detected in Linux as sda and sdb but it actually shows nothing.
To make them work you have to hit Ctrl+R before the system boots (when prompted) and create a Virtual Disk Group. In my case I created each one as RAID 0 (with a single drive only) as I just wanted JBOD but there is no such option or default in these Dell Pe........
This booting error is because the Xen PV guest image uses the Xen kernel, this is not compatible with anything but a host running a Xen kernel.
I did a kpartx -av virtual.img and then it created some partitions that showed up in fdisk.
I mounted it and did a chroot into it and removed the xen kernel and installed a normal kernel but Xen still shows the same kernel in Grub (only the Xen one).
This is strange but it seems like this Xen PV guest has some sort of hidden or........
qemu-img create -b centos.5-8.x86.20120308.qcow2 -f qcow2 ../kvmguests/25000-centos5.8x86.qcow2
Formatting '../kvmguests/25000-centos5.8x86.qcow2', fmt=qcow2, backing_file=centos.5-8.x86.20120308.qcow2, size=10485760 kB
-b the source/base image
-f format is qcow2 and the location of the destination image
What is so special about this? It's even quicker than creating a template with OpenVZ but this is an actual OS.
It saves time a........
This error in my experience is user error although CPanel doesn't help, this message doesn't give you much to go on.
Let's talk more about the process of setting up SSL with CPanel.
Your site must have a dedicated/non-shared IP to even have the option of creating an SSL Certificate.
You must create a Private Key (do not delete this private key!)
You must create a CSR (Certificate Signing Request)
Use CSR to create cert........
ip tunnel add tun3 mode gre remote 126.96.36.199 ttl 64
ioctl: no such device
I solved this on Centos by loading the ip_gre module:
On Debian I believe it is the "sit" module.........
This array is a RAID 1 and in this case 1 of the 2 drives failed (a WD drive and I've found them to be the weakest and most unreliable of any brand and are easily damaged/DOA when shipping them).
mdadm --manage /dev/md0 --add /dev/sdb1
The above assumes the array you want to add to is /dev/md0 and the device we are adding is /dev/sdb1
*One thing to remember is to make sure the partition you are adding is the correct size for the array. You can also g........
If you have a webserver and find you have high IO/lagginess MySQL is one of the first things to check. It turns out MySQL was my problem and it was creating a high load on my server, especially for IO.
How to Enable MySQL Slow Query Logging To Find Slow Performance/Queries
Add this anywhere under [mysqld]
log-slow-queries = /var/log/mysql/mysqlslowqueries.log
long_query_time = 1........
don't delete /var/lib/mysql/ib_logfile0 or ibdata1 or mysql won't restart
I didn't realize they were internal and not part of replication like the relay files!
/usr/libexec/mysqld: ready for connections.
Version: '4.1.22-log' socket: '/var/lib/mysql/mysql.sock' port: 3306 Source distribution
110127 16:31:00 [Note] /usr/libexec/mysqld: Normal shutdown
110127 16:31:00 InnoDB: Starting shutdown...........
rpm -i http://download.virtualbox.org/virtualbox/3.2.8/VirtualBox-3.2-3.2.8_64453_rhel5-1.i386.rpm
error: Failed dependencies:
libGLU.so.1 is needed by VirtualBox-3.2-3.2.8_64453_rhel5-1.i386
libSDL-1.2.so.0 is needed by VirtualBox-3.2-3.2.8_64453_rhel5-1.i386
libXmu.so.6 is needed b........
I was creating a RAID array and got this error: mdadm: /dev/sda1 is too small: 0K
mdadm: create aborted
Of course sda1 is not too small, both partitions sda1 and sdb1 are identical in size:
Disk /dev/sda: 2000.3 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000
Device Boot Sta........
Why would you want to downgrade the superblock? Old mdadm verisons like mdadm 2.5.6 only use the 0.90 superblock/metadata and new versions use 1,1.0,1.1 and 1.2 superblocks by default.
There are some annoying caveats with this, first of all the new superblocks (later than 0.90) CANNOT be read by GRUB, so you won't even be able to install GRUB. Even worse, old versions of mdadm CANNOT automatically detect arrays even if they were created with a new version of mdadm with th........
I installed 5.5 with a 300GB RAID 1 partition (boot is also on this partition). It booted up fine the first few times until after I used a Live CD and accessed the array, and it became named /dev/md127 for some reason.
Now whenI boot into CentOS I get a kernel panic and different errors, once I got "invalid superblock", even though the array is fine (it didn't happen again, probably because I was sure to dismount and stop the mdadm array properly).
Before we start I take no responsibility for this, you should have a backup and if you make a mistake during this process you could wipe out all of your data. So backup somewhere else before starting this as a precaution, or make sure it's data you could afford to lose.
The RAID 1 Setup (Hardware Wise)
I've already setup my 2 x 1TB (Seagate) drives with identical partitions, make sure your new hard drive (the empty one) is setup like your curr........
I decided on using yum to help me decide even though I normaly use proftpd I decided to see what else I could find.
yum search ftp
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* rpmforge: ftp-stud.fht-esslingen.de
* base: mirrors.netdna.com
* updates: updates.interworx.info
* addons: yum.singlehop.com
* extras: mirrors.netdna.com
Proxmox has made this free utility to backup running OpenVZ containers. It's a great program which is actually just a PERL script but gets the job done. This program is not 100% required because all it really does is cp -a from your container's path as far as I know but it is still good to have uniformity to how you backup your containers.
For RPM distros such as Centos/RHEL/Fedora etc.. download and install this:
That might help........
MySQL Reserved Wordshttp://dev.mysql.com/doc/mysql/en/reserved-words.html
You should familiarize yourself with these because you will have unexpected results if you use any of them.
Eg. try creating a table with what you think is valid syntax like this:
CREATE Table Order(
The word 'Order' is a reserved word and used to ORDER the results so you will get a syntax error from this one and you would think everything is........
There's a lot of outdated information and confusion for system administrator's out there.
One annoying task for many an Administrator has been backing up data in Linux. You don't need any GUI tools such as K3B or GnomeBaker. Both are excellent tools but for veteran command line users working remotely, using the keyboard is a great and possibly automated way to save yourself pain and hassle.
At a later date we'll cover how scripting can automatically backup certain........