- Gimp: How to stack the main window over the toolbox and layer windows
When Gimp is installed fresh, the toolbox and layers windows are stacked on top of the main window and it is not possible to get the main window on the top. This can be quite annoying since one works mostly on the main window and the other ...
- Everything is too small on desktop at 1080p
After installing Ubuntu Linux on a laptop with screen resolution 1920x1080 pixels or more, you may find that the icons and text appear to be small. You can alleviate the problem by taking the following steps.
1. Install gnome-tweak-tool
$ sudo add-apt-repository universe $ sudo apt-get install gnome-tweak-tool
2. Run gnome-tweak-tool
- Click on "Show Applications" to sell all ...
- Wacom tablet not connecting with Ubuntu Linux
Wacom One CTL-672/KO-CX tablet was not connecting with a laptop running Ubuntu Linux 18.04 LTS. It was working fine earlier, with the wacom driver obtained from the Linux Wacom Project. The Linux kernel on the laptop had been updated recently. The following error messages were ...
- Connecting Wacom One CTL-672/KO-CX tablet to Ubuntu Linux
Wacom One CTL-672/KO-CX is an 8.5 inch x 5.3 inch graphic tablet which can be connected to a computer via a USB port. The tablet comes with a pressure sensitive cordless ...
- nginx 502 Bad Gateway
1.0 502 Bad Gateway
After the update of Linux on the web server, the website would not open in the browser. Instead the following error was displayed.
502 Bad Gateway nginx/1.14.0
First we check the nginx server.
- MCE hardware error cpu 0
While running Ubuntu 18.04.1 on a laptop, the following errors were observed.
mce: hardware error cpu 0 machine check 0 bank 6 ae0000000040110a mce: hardware error tsc 0 addr ffb07540 misc 238a0000086 mce: hardware error processor 0:40651 time 1540082330 socket 0 Apic 0 microcode 24 ipmi dmi invalid offset 0
The system would stop in ...
- Failed to fetch webpage, temporary failure resolving domain
While configuring a Linux server, the error
Failed to fetch webpage, temporary failure resolving domainwas observed.
$ sudo apt-get update Err:1 http://mirrors.xxxxxx.com/ubuntu bionic InRelease Temporary failure resolving 'mirrors.xxxxxx.com' Err:2 http://mirrors.xxxxxx.com/ubuntu bionic-updates InRelease Temporary failure resolving 'mirrors.xxxxxx.com' Err:3 http://mirrors.xxxxxx.com/ubuntu bionic-backports InRelease Temporary failure resolving 'mirrors.xxxxxx.com' Err:4 http://security.ubuntu.com/ubuntu bionic-security InRelease Temporary failure resolving ...
- Composer Manager: Composer’s install command must be run
After updating the Drupal 7 version in a website, the following error was observed in the configuration of the Composer Manager module.
Composer Manager: Composer's install command must be run to generate the autoloader and install the required packages.
The above message was followed by the status of packages managed by the Composer. ...
- Drupal: Notice: Trying to get property of non-object in block_block_view()
After updating the website to a new version of Drupal 7, the following error was printed on the web pages.
Notice: Trying to get property of non-object in block_block_view() (line 247 of modules/block/block.module).
The error was resolved by the following steps.
2.1 Turn off block caching
From the Administration menu, Select Configuration --> ...
- Dovecot: Fatal: Error in configuration file /etc/dovecot/dovecot.conf: protocols: Unknown protocol: sieve
While configuring the Dovecot Mail Delivery Agent, the Dovecot server would not start and the following error messages were printed.
$ sudo systemctl start dovecot Job for dovecot.service failed because the control process exited with error code. See "systemctl status dovecot.service" and "journalctl -xe" for details. $ systemctl status dovecot.service ● dovecot.service - Dovecot IMAP/POP3 ...
- How to execute PHP code in HTML under nginx server
PHP code was not getting executed in the index.html file when the concerned website was opened in a browser. nginx server was being used to serve the web pages.
2.1 Install php7.0-fpm
$ sudo apt-get install php7.0-fpm
- SSL Certificate expired, site not opening
A website stopped opening in browser, giving the error that the SSL certificate was either invalid or had expired.
Checking the website with wget,
$ wget https://www.example.com --2018-01-14 16:58:36-- https://www.example.com/ Resolving www.example.com (www.example.com)... 198.51.100.12, 2001:db8:1221:2341:f03c:f27b:12fa:2123 Connecting to www.example.com (www.example.com)|198.51.100.12|:443... connected.ERROR: cannot verify www.example.com's certificate, issued by ‘CN=Typical Encryption Authority X3,O=Typical Encryption,C=XX’: ...
- How to preserve exif metadata in images in Linux
1.0 Exif metadata not preserved by image editing program
Problem: After an image is developed and edited by image editing software and saved in a format like JPEG, it does not have the Exif metadata.
Surprisingly, quite a few image editing programs do not preserve the Exif metadata of images and attempts ...
- How to add the IPTC metadata in photographs using exiv2 in Linux
1.0 Adding the IPTC metadata
After a photograph has been taken and processed, it might be necessary to add IPTC metadata before it can be published. If your image editing software does not support adding of IPTC metadata to the image, you can accomplish this is by using the exiv2 command ...
- How to get the value of Pi in bc calculations
While using bc for calculations, the value of π is sometimes required. Sure, you might remember it as 3.1416, but it is better to use a higher precision value. And it's quite simple to do that.
First, we need to start bc with the option ...
- Error while executing the dig command
While executing the dig command, the
sendmsg() failed: Operation not permittederror was printed.
$ dig example.com ../../../../lib/isc/unix/net.c:581: sendmsg() failed: Operation not permitted ../../../../lib/isc/unix/net.c:581: sendmsg() failed: Operation not permitted ...
The error was resolved after adding the following iptables rules.
iptables -I OUTPUT 1 -p udp ...
- Analyzing the NGINX web server log file
Given an nginx web server log file, we might like to know who are the visitors to our website. One can go line by line through the log file, but that is tedious. It would be nice if we can get one line per client visiting the website, giving the IP ...
- Android adb install failure INSTALL_PARSE_FAILED_NO_CERTIFICATES
A signed APK of an Android app was built using the Android Studio. When we tried to download the signed APK to a device using the adb command, the command failed with the error, INSTALL_PARSE_FAILED_NO_CERTIFICATES.
$ adb install app-release.apk app-release.apk: ...
- nginx drupal sitemap 404 not found
While trying to open sitemap.xml of a site served by nginx and built using Drupal CMS, the
404 Not Founderror was received. The nginx log file, error.log gave the error as,
80 open() sitemap.xml failed (2: No such file or directory).
- optipng: Error: Can’t back up the existing output file
While running optipng on a png file, the following error was obtained,
Error: Can't back up the existing output file
The file was not having the write permission. Once, the write mode bit for the file was set, optipng worked fine.
$ ls -ls ...
- Getting a project from GitHub
While searching on a topic, you land up on a GitHub page with code. The code looks interesting. But you can not work on it on GitHub. You need to get it on your computer to work on it. How to get it on your computer?
2.0 Solution: Get the repository
The code displayed on the ...
- Failed to send 300 byte long packet over fallback interface
While configuring a server, the following errors were noted in the logfiles.
send_packet: Operation not permitted dhclient.c:2386: Failed to send 300 byte long packet over fallback interface. DHCPREQUEST on eth0 port 67 (xid=0x1580bfd0) ...
There are two possibilities depending upon whether DHCP is being used for getting the network IP address or not.
- Dovecot: imap Error: open (/var/mail/username) failed
While configuring mail on a Ubuntu Linux server running the Postfix mail server and Dovecot IMAP server, the following errors were observed in the mail log files,
dovecot: imap(user1): Error: open(/var/mail/user1) failed: Permission denied (euid=1002(user1) egid=1002(user1) missing +w perm: /var/mail, we're not in ...
- Not able to access files on Android device in Nautilus from Linux desktop
After connecting an Android based phone with a Linux desktop using the USB cable, the files on the device are not shown by the Nautilus file manager. After clicking the tab for the device, an empty screen is displayed.
Recaptcha: Error for site owner
The login form for a Drupal based site had the username, password and recaptcha fields. However, instead of showing the image and input box, recaptcha displayed
ERROR for site owner, Invalid domain for site key. Thus, it became impossible to login to the site. This effectively locked access to the administration ...
- Android: AdbCommandRejectedException getting properties for device
From Android Studio, the connection to the device for debugging was not getting established. The ADB logs gave the repeated error,
PropertyFetcher: AdbCommandRejectedException getting properties for device ????????????: insufficient permissions for device
- As described in the documentation, Using Hardware Devices, a file /etc/udev/rules.d/51-android.rules was created.
- Using the
- Error while loading shared libraries: libz.so.1
While building an Android app project under Studio, the build process terminated with the error,
/home/user1/Android/Sdk/build-tools/22.0.1/zipalign: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory Error:Execution failed for task ':app:zipalignDebug'. > Process 'command '/home/user1/Android/Sdk/build-tools/22.0.1/zipalign'' finished with non-zero exit value 127
The problem was resolved by installing the
- Unable to establish a connection to adb
After opening an Android project in Studio running under Ubuntu 15.04 Linux, the following error was displayed,
Unable to establish a connection to adb. This usually happens if you have an incompatible version of adb running already. Try reopening Studio after killing any existing adb daemon.
- Invalid Gradle JDK configuration found
After starting Android studio, running on Ubuntu 15.04 Linux, the following error was reported:
Invalid Gradle JDK configuration found. Open Gradle Settings. Platform SDK does not point to valid SDK (/usr/lib/jvm/jdk1.8.0_40).
The problem was solved by clicking in Android Studio, File -> Project Structure -> SDK Location. Under JDK location, enter the ...
- Using Git
Git commands for common source code management use cases are listed.
2.0 Install Git
On a Ubuntu Linux system, Git can be installed with the command,
$ sudo apt-get install git
3.0 Set Identity
Before using Git, the user's identity (name, email) has to be set
$ git config --global user.email ...
- Importing an Android Studio project in Git
Importing an Android Studio project into Git is easy. First create the project or import an existing project in Android Studio. In this case a placeholder project HelloWorld was created. The directory listing of the project root directory looks like this.
$ ls -lsa total 60 4 drwxrwxr-x ...
- Bash idioms
bash idioms are tiny scripts, mostly one-liners, that accomplish a lot and can be used as building blocks in bigger scripts.
1.0 Find most frequent words
Suppose we have a bunch of text files and we wish to find the most frequently used words ...
- Posting images on Twitter
It is fun posting images on Twitter but we often see that only a part of the image is visible in the stream of tweets. One has to click on the visible part to see the full picture. How to ensure that the full image becomes visible in the tweet stream? The answer lies in ...
- Getting WordPress to work with Varnish 4.0
With Varnish 4.0, the VCL has changed. So an update from Varnish 3 .0 to Varnish 4.0 requires a change in the VCL file, /etc/varnish/default.vcl. As a part of Varnish cache server configuration for a WordPress based site, using nginx web server, the following VCL is ...
- Drupal: Web page stuck in maintenance mode
After a Drupal based site came out of the maintenance mode, one particular web page was found to be stuck in the maintenance mode. It showed the message that the site was under maintenance, while the other web pages were displayed correctly.
The problem was resolved by clearing the cache. In the administrative menu, the
- nginx 502 Bad Gateway Error
A routine software update on the server running nginx was done. After that the website stopped opening in the browser window and
502 Bad Gatewayerror along with the nginx version number was displayed. Looking in the log file showed an entry like,
2014/06/26 11:09:53 2539#0: *15 connect() to ...
- How to redirect non-www URLs to www in Varnish
If a website's canonical URL has www, it is desirable, as a good SEO practice, to redirect the non-www URLs to www. That is, if the canonical URL is www.example.com, example.com should be redirected to www.example.com. How to do this when Varnish is listening on port 80 as a reverse HTTP proxy is given below ...
- Trigonometric calculations with bc
bc, the basic calculator under Linux and UNIX environments, provides commands for doing arbitrary precision mathematical calculations. The syntax for basic arithmetic functions is intuitive. Here, we look at the commands for doing trigonometric calculations.
The global scale variable gives the number of digits after the decimal point. By ...
- Unity launcher stays at the left, does not auto-hide
Problem: After login in the Ubuntu Linux system, the Unity launcher stays at the left edge of the display. It does not auto-hide.
Solution: Click on the Settings icon in the top right corner of the display. You will find tabs like Wi-Fi, Bluetooth, Background, etc. in the left column. ...
- Repairing Drupal site blocks manually in database
The text format of a block was
PHP codeand it contained PHP code with an error. This broke the website resulting in blank screen web pages, the
white screen of death(WSOD). The error was rectified by manually updating the MySQL database. The following steps were taken.
From the command line, connect with the website ...
- Not able to login
Problem: Not able to login to Ubuntu Linux system because the disk partition containing the HOME directory has become full.
- Press CTRL ALT F1 together to switch to text mode and try to login.
- After login, check the free space in disk partitions ...
- Wireless is disabled by hardware switch
While configuring the wired network on Ubuntu 12.04 Linux laptop, the wireless network connection broke down suddenly. On clicking the networking icon on the top panel, no wireless networks were displayed on the NetworkManager applet and a message Wireless is disabled by hardware switch was reported. The laptop wireless switch was in ...
- Connecting two computers with Ethernet LAN cable
Quite often, we wish to connect two computers back to back using an Ethernet LAN cable. It may be because we wish to transfer files between the two computers or because one of these has the Internet access and we wish to have one more access point to the Net. The step by step instructions ...
- Nginx 502 bad gateway error after switching off the mobile theme
The WPtouch plugin gives a WordPress website the capability to be displayed on mobile devices using a suitable theme. At the end of the web page, there is a toggle button to switch off the mobile theme and use the default desktop theme. That is, a user can toggle ...
- Nginx installation and configuration
The configuration is nginx HTTP server, PHP FastCGI Process Manager (PHP-FPM), and the Alternative PHP Cache (APC).
The first step is to download the nginx software from the Nginx website. If using the Ubuntu distribution, following are the steps,
(i) Download the nginx signing keys from ...
- Formatting the man command output for printing
1. Limiting the width of Linux man command output
Quite often, we need to print the output of the Linux man command. One way is to redirect the man command output to a file, open the file in LibreOffice Writer and export to PDF. The PDF can, later, be ...
- Starting a network server after communication interface is up
If you have a program that communicates over the network interface, say, eth0 and you wish to start the program automatically after the system startup, you need to ensure that the program starts after the interface eth0 is up. For Linux systems using the Upstart process ...
- md5sum: no properly formatted MD5 checksum lines found
md5sum is used for printing or checking a file's 128-bit MD5 checksum. One can download a file on the Internet and also download its checksum. The md5sum command can, then, be used to verify whether the file has been correctly received. Also, while providing a link for download for a file on a web page, ...
- Remote Display With the X – Window System
X - Window system is a network-transparent window system. X11 server is the display server that manages the output on the bit-mapped display hardware. An application (or client) does the work and sends requests to the X11 server, or simply, the X server for display. The client application and the X server are usually located ...
- JRobin: Not able to save graph as a PNG file
Not able to save graph as a PNG file. Compilation error: cannot find symbol symbol : method saveAsPNG(java.lang.String,int,int)
saveAsPNG does not seem to be there in JRobin anymore. Use the RrdGraph.render (java.awt.Graphics g) method. For example,...
- Watermarking images using GIMP
After having created images with hard work, you wish to protect your copyright on the images. Watermarking the images is an excellent method prevent any commercial misuse of images. And it can be done easily using the wonderful open source image editing software, Gimp.
We will look at the process of watermarking images with an example. ...
- Making a logo using GIMP
If you are looking for Xtns menu of toolbox, don't, as, starting with Gimp version 2.6 the Gimp developers have removed the toolbox menu bar and merged it with the image window menubar. To make a logo, go to the image window menu bar. Select File -> Create -> Logos. Under Logos, you may ...
- kernel panic – not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
A new Linux kernel was built using the commands, make gconfig, make, sudo make install and sudo make modules_install. After building a new Linux kernel and booting from it, the boot process halts with the following message:
kernel panic - not syncing: VFS: Unable to mount root fs on ...
- Gtk-WARNING **: cannot open display:
While running a GTK+ based C program under Cygwin, the following runtime error is observed,
Gtk-WARNING **: cannot open display:
Make sure that Cygwin/XServer is installed and is running. If it is not installed, download the relevant packages from Cygwin.
- Make sure that environment variable ...
- cygwin1.dll not found
A C program was compiled under Cygwin and run directly under Windows. The following runtime error was observed,
cygwin1.dll not found
Make sure that the environment variable, PATH, has the directory C:\gygwin\bin which contains the dll, ...
- Mounting Windows partitions under Linux
Multi-boot systems with Linux and Windows are quite common. With the following steps, it is easy to access Windows partitions under Linux.
1. Examine the disk partitions. For example,
sudo fdisk -l
gives the output,
Disk /dev/sda: 160.0 GB, 160041885696 bytes 255 heads, 63 sectors/track, 19457 cylinders Units = cylinders of ...
- Make sure that Cygwin/XServer is installed and is running. If it is not installed, download the relevant packages from Cygwin.
- Error while loading shared libraries: libz.so.1
- SSL Certificate expired, site not opening
- POSIX message queues in Linux 1.0 POSIX Message queues POSIX interprocess comunication (IPC) was introduced in the POSIX.1b standard (IEEE Std 1003.1b-1993) for real time…
- Interprocess communication using POSIX Shared Memory in Linux 1.0 Shared Memory Shared memory is the fastest method of interprocess communication (IPC) under Linux and other Unix-like systems. The…
- fork and exec in Linux 1.0 fork and exec system calls Suppose we wish to write a "shell program" which would execute another program. Now,…
- D-Bus Tutorial 1.0 D-Bus D-Bus is a mechanism for interprocess communication under Linux and other Unix-like systems. D-Bus has a layered architecture.…
- htop command in Linux 1.0 INTRODUCTION htop is a ncurses based program for viewing processes in a system running Linux. htop is quite similar…
- FIFOs in Linux 1.0 FIFO FIFOs are pipes with a name and are also commonly referred to as named pipes. Pipes are common…
- Interprocess communication using System V Shared Memory in Linux 1.0 Shared Memory Shared memory is one of the three interprocess communication (IPC) mechanisms available under Linux and other Unix-like…
- System V message queues in Linux 1.0 Message queues Message queues are one of the interprocess communication mechanisms available under Linux. Message queues, shared memory and…
- Socket programming using the select system call 1.0 Client-Server Paradigm The Client-Server paradigm divides the software architecture of a system in two parts, the server and its…
- Pipes in Linux 1.0 Interprocess communication A process is an active operating system entity which executes programs. Normally, a process, like a specialist,…