Now, it's easy to configure an SMTP-based email account for Koha and send emails for various occasions. Koha provides a GUI for SMTP server configuration. Forget about cumbersome email server configuration using Exim and Postfix. Here are the steps to configure the SMTP server using Gmail. Gmail is accessible for most of the users. Other SMTP-based email users can directly go to Step 2 for configuration. The process involves two steps; creating an app password for a Google account and adding the server details to the Koha ILS.
Step 1. Create a Google app password
An App Password permits a non-Google app to access Google's SMTP server. App Passwords can only be used with accounts that have 2-step verification turned on. Google recommends using "Sign in with Google" whenever possible, a more secure way to connect apps. Here, we must create an app password for GMail to work with Koha ILS. Create a dedicated Gmail account or GMail-based email service for Koha. Don't use an existing email for other purposes when SMTP is configured; the inbox will be filled with bounced emails.
1. Visit the Google Account Security settings page and turn on 2-step verification. Here is the link to your Google Account Security Settings, https://myaccount.google.com/u/2/security.
2. Scroll to the bottom of the page and find the app password section. Click on App passwords. Give the app name; for example, Mail. Click on the Create button.
3. Copy the app password and save it in a place for future reference.
Step 2. SMTP configuration
Open Administration > Additional parameters > SMTP servers > New SMTP Server.
Add the details.
Name: Give server name, e.g. MGU Mail
Host: Enter the server's hostname. Here, the Gmail SMTP hostname is smtp.gmail.com
Port: Enter the port number of Gmail SMTP, 587.
Timeout (seconds): Enter the number of seconds after which an unsent email will result in an error
SSL: Choose the security protocol. STARTTLS works with Gmail.
Username: Enter the Gmail ID.
Password: Enter the Google App Password.
Debug mode: Select debug mode to send additional output to the logs.
Default server: Select it if all libraries use the default server.
Click the ‘Submit’ button to save the configuration.
Step 3. Enable email messaging in Koha
1. Apply the following command in a Terminal to enable email services from Koha ILS.
sudo koha-email-enable library
Other configurations to prepare Koha to send email messages.
1. Enable Enhanced Messaging preferences.
Koha Administration > Global System Preferences > Patrons > Enhancedmessagingpreferences > Allow
2. Visit each patron category at Administration > Patron categories and change the configuration, Overdue notice required (Yes).
Many libraries started to use SMTP-based email services in Koha. Koha provides SMTP server configuration from Administration > SMTP servers > New SMTP server. Such libraries use Gmail free account as the email service provider. Gmail allow you to send 100 emails per day. Users can't send new messages for up to 24 hours if the number of messages exceeds the limit. Google says, "If a user exceeds their sending limits, their account might be suspended". Another drawback of using an ordinary Gmail account is that libraries can't add their domain to the email ID. Sending emails from an ordinary Gmail account is a non-professional approach.
What's the solution?
Libraries can use a dedicated email service to deliver emails. Hiring an SMTP email service to work with Koha is a good idea. Libraries can choose email services from an array of service providers. Such services enable sending, receiving, and tracking emails. Netcore, MailGun, and Mailchimp are examples of transactional email service providers. Libraries can subscribe to the plan based on the number of transactions per day. Email services give the SMTP server settings details to configure with Koha.
It's a script which searches for data inconsistencies. The result shows the following inconsistencies in data;
items without a home or holding library items without item type or with invalid item type bibliographic records without item type or with invalid item type bibliographic records with invalid MARCXML bibliographic records without biblionumber or biblioitemnumber in MARCXML bibliographic records without title invalid values in fields where the framework limits to an authorized value category authority records without authority type or with invalid authority type patrons who are too old or too young for their category
The above-mentioned inconsistencies create problems in circulation and cataloguing searches.
Apply the following commands individually to get the information on data inconsistencies.
Problem statement: The following error message when searching for patron names.
Something went wrong when loading the table. 500: Internal Server Error. Month out of range. Month out of range. Month out of range. Month out of range.
Reason: The date_renewed column has some proper dates, some NULLs and some 0000-00-00.
Solution: Uupdate borrowers set date_renewed = NULL where date_renewed = '0000-00-00'. Enter into the MariaDB and apply the following commands,
Everybody is familiar with using Google Drive. Google Drive is the cloud storage service of Google Inc. Currently, 15 GB of free storage is available with a Google account. Koha users can make use of Google Drive storage to keep database backups. GNOME desktop facilitates synchronising online accounts like Google, Nextcloud, Facebook, Microsoft, Flickr, etc.
Here are the steps to prepare the Koha system to store the database in Google Drive.
Installation of GNOME desktop
If the system running on desktops other than GNOME, install it. I prefer the GNOME Flashback edition for a minimal and lightweight experience. GNOME Flashback desktop can be installed on the default Ubuntu and Debian desktop. Here is the command to install GNOME Flashback on all Ubuntu variants;
Sign out from the current session and change the desktop to GNOME Flashback.
Prepare the system to sync Google Drive
Open the settings, Applications > System Tools > Preferences > Settings
Select the Online accounts.
Select Google and sign in.
After the successful sign-in, the Google account is visible in the File Manager. Files and folders load into the File Manager when you click on it.
Enter inside the My Drive folder and see the files and folders. Create a folder for Koha's backup. Enter inside the folder for Koha backup and copy the folder's location. It's necessary to direct the database backup to the backup destination.
Copy the folder location and keep it in a file for later use.
Here is a shell script to schedule the backup with a time stamp. It keeps three days of backup and deletes previous files to save space. Follow the instructions to schedule the backup.
Copy the shell script to the home folder. Open the shell script and make changes to the Koha database, username, password and location of the backup. The timestamp of the database also appears on the backup file name. Give the number of days the backup keeps.
Move the shell script to /usr/local/bin
sudo cp backup.sh /usr/local/bin
Give the necessary permission to the shell script,
cd /usr/local/bin
sudo chmod +x backup.sh
Create the cronjob entry of the backup. Apply the following command on the terminal.
export EDITOR=mousepad
crontab -e
Copy the below lines to the bottom part of the crontab file.
#Koha backup
10 20 * * * /usr/local/bin/backup.sh
Change the timing of the backup. Here, backup takes at 8:10 PM. Watch the backed-up files appear in the folder.
pCloud is a cloud storage service that offers a secure and convenient way to store, share, and access your files from anywhere. It works like Dropbox cloud storage. Dropbox gives only 2 GB of free storage only. pCloud provides a variety of pricing plans, starting with a free plan that gives you 10 GB of storage. Koha users can make use pCloud for backup storage. Schedule the backup and point to the PCloud storage is very convenient.
Installation of PCloud drive in Debian/Ubuntu.
Here are the steps on how to install PCloud software in Ubuntu:
1. Go to the pCloud website, and create an account.
2. Download the pCloud AppImage file for Linux.
3. Save the file to your computer.
4. Open a terminal window and navigate to the directory where you saved the file.
5. Run the following command to give the file executable permissions:
sudo chmod +x pcloud
Either double-click on the PCloud icon or run the following command to start the pCloud AppImage:
./pcloud
6. The pCloud login window will appear. Enter your pCloud email address and password, and click Log in.
A folder named pCloudDrive will be created in your home directory. This is your pCloud virtual drive. You can now start storing and accessing your files in pCloud.
To schedule Koha backup to pCloud please visit the following link,
The following line does not add to koha-conf.xml when upgrading. I noticed it happened when we upgraded to the Koha version to 22.11.7 and higher. It results in the upgrade process terminating on the way, and Koha crashes.
<!-- Encryption key for crypted password or sensitive data --> <encryption_key>__ENCRYPTION_KEY__</encryption_key>
Solution
Open the following file and check if the line is there;
A library Clearance/Discharge certificate certifies that the user has no holds, no active checkouts, and no outstanding debt. Here are the steps to generate a clearance certificate;
1. Enable useDischarge from Koha Administration > Global System Preferences. Search and find the useDischarge settings. Turn it into Allow.
2. Customize the Discharge notice at Tools > Notices and slips. Search and find the Discharge notice. The content of the notice is blank. Visit the Notice Template site and copy the content. Edit and save the notice.
3. Open the Patron account to generate Discharge. Find the Discharge button at the end of the Patron account.
4. Click on the Generate discharge button.
The discharge certificate in PDF format will save on the computer.
In this 30 minute, The Koha Staff Experience, we will cover the basics of the Koha Staff interface and how staff can intuitively navigate through the models
In this 30-minute webinar, Discover the Koha OPAC, we will cover how patrons can intuitively navigate through the Koha OPAC, access their account information, and browse all materials!
In this 30-minute webinar, Technical Services Overview, we will cover the basics of cataloging, acquisitions, serials, and the tools for technical services workflows in Koha!
In this 30-minute, The Koha Staff Experience, we will cover the basics of the Koha Staff interface and how staff can intuitively navigate through the models.
In this 30-minute webinar, The basics of circulation, we will cover how staff can utilize the circulation functionality and integrate it into their daily workflows for a successful customer experience.
In this 30-minute webinar, An Administrators Overview, we will cover how Koha’s administration functionality can help users easily perform their day-to-day jobs at the library.
MARCEdit was originally developed on the .NET development platform for Windows operating system. MARCEdit developers offer a Linux version, it requires a Windows-like environment in Linux. We need to install Mono to prepare the Linux-based operating system for the installation of MARCEdit. Following are the steps to install Mono and MARCEdit software on Ubuntu. I tried this method to install MARCEdit on Ubuntu 20.04 and 22.04.
If the installation succeeds, the MarcEdit icon will appear on the desktop. Don't worry if the icon does not appear on the screen. We can run the MarcEdit software from the folder. The MarcEdit folder appeared on the Document folder. Change the permission of the marceditor folder.
cd Documents sudo chmod -R 777 marcedit
Open the marcedit folder and find the MarcEdit.exe, double click on it.
Socket file helps to facilitate communication between different processes of the MySQL and MariaDB server. The file associated with the process is, mysqld.sock and is located at the folder, /var/run/mysqld/. Due to many reasons, MariaDB cannot establish a connection with the socket file. Sometimes socket files are missing from the location. It results in the stopping of the MariaDB service. The problem with the socket file also affects the working of Koha. Often Koha screen shows the following error on the screen.
Possible solutions
We can try to apply three solutions to evoke socket files; restarting the MariaDB service, changing user permissions, and reinstalling MariaDB.
Solution 1: Try to restart the MariaDB service and check whether it's working.
sudo systemctl start mariadb
Refresh the Koha page. If it works, it means the socket file works. If it does not open, we go to the next solution.
Solution 2: Next, we will check whether the mysqld. sock file missing or not. Apply the following command,
ls -a /var/run/mysqld
The file is there, we can see a file with the name, mysqld.sock. If the file is missing from there, the reason may be that MariaDB has no proper permissions to create it. Give the directory permission to MariaDB users to make necessary changes.
If it is reluctant to start the service and shows the error, find other ways to solve it. The last resort is to reinstall the MariaDB.
Solution 3: Reinstall MariaDB
The first step is the uninstall the MariaDB without removing the Koha databases (e.g. koha_library). The default location of the data directory of MariaDB is at /var/lib/mysql/, where we can see the Koha database directory.
The location of MariaDB data directory, /var/lib/mysql/
Apply the following commands to uninstall MariaDB,
sudo apt purge "mariadb*" -y
When it asks for deleting databases, give the answer No. It will retain the Koha database.
Apply the following command to remove unwanted packages after the uninstallation of MariaDB.
sudo apt autoremove -y
Apply the following command to reinstall the MariaDB,
I faced the socket problem with MariaDB 10.3 on Ubuntu 20.04. I used the opportunity and installed a higher version of MariaDB (10.04) by adding a repository. The download page in the MariaDB home page gives you instructions to install a higher version of the package. Please check it, https://mariadb.org/download/?t=repo-config
After the successful installation of MariaDB, open the Koha Staff Client and check the page loads or not.
PHPMyAdmin is a popular database administration tool among Koha users. For beginners, the installation of PHPMyAdmin is complicated. A database administration tool is beneficial for Koha users and administrators to import and export data in a particular context.
If you feel difficult to install PHPMyAdmin, we can try alternatives like DBeaver and Beekeeper Studio. Several other database administration tools are also available.
The convenience of the Dbeaver and Beekeeper Studio is the ease of installation. Installation is easy; either use apt or Snap store.
Both software has a simple interface and is easy to log in and manage databases.
Certain features are missing with Beekeeper Studio (e.g., import from CSV), and I hope that those features will add soon.
The home page of DBeaver is https://dbeaver.io
Here is the command to install DBeaver using Snaps,
Eight regional languages in India were placed in the Koha translation project. Hindi and Telugu translation is almost finished, and other languages work is in progress. Except for Hindi and Telugu, no other Indian languages received community participation in the translation process.
How to participate in Koha translation
Koha Software community maintains an online platform for translation activities. The Koha translation website is available at https://translate.koha-community.org. The Koha software community uses free software called Pootle to manage translations. Each version of Koha is treated as a project and contains languages and translation files. Translation entries are saved in .po files and multiple .po files for different modules of Koha ILS. You can participate in translation activities by creating an account on the website. No technical knowledge is required to participate in translation activities.
Select the language (e.g. Malayalam) from the top of the website. Translation work on the four Koha editions is underway at the same time.
Select the latest version of Koha for translation. Enter into the translation activities by clicking on the Koha version. When a new version of Koha is released, the current translation entries carry over to the latest one.
The translation entries are stored in different files. For ease of translation, lines related to various modules such as online catalogue, staff interface, messages and installer are stored in separate files. Clicking on the file link will allow you to enter into the file and view the lines to be translated.
Click on the Untranslated link, and it will list out the entries that need a translation. Translate the highlighted entries.
Translate the highlighted English entries. Type the translated entries in the regional language in the box. Use Google Chrome browser, and the Input Tools extension (Google Input Tools) to input translated entries. The translated entry can be submitted by clicking on the Submit / Suggest button. Suggested translations become part of the Malayalam translation once approved by the Administrator.
If there is a variable in the entries, it should be left as it is. Numbers, amounts, dates, etc., appear in the variable position. %s can be found where the variable appears. Even if you change the structure of the lines, add the variable note in the desired position. Do not delete the variable part.
When the translation of each line is complete, the next line is highlighted for translation.
Participation in the Koha translation project does not require technical expertise. Best collaboration space for LIS students and professionals. Participation in the Koha translation project helps the students and professionals acquaint themselves with Free Software’s sharing culture. Become a contributor and help in Koha translation.
Zebra is the default search engine with Koha. Koha project preparing to adopt Elasticsearch as the default search in the near future. Koha users can try Elasticsearch with Koha. Elasticsearch offers speed and more functionality than its counterparts and is considered an innovative search engine suitable to match the latest requirements.
Here is the installation manual of Elasticsearch for Koha. I prepared this manual by receiving inspiration from the installation manual prepared by Dr Mohan Raj Pradhan, Professor (Retired), Department of Library and Information Science, Tribhuvan University, Nepal. I tried the installation of ElasticSearch on Ubuntu 20.04 LTS. Install the Koha before the implementation of Elasticsearch. Try the Elasticsearch installation on a test machine, not on Koha production computer.
Elasticsearch 7 is the latest version. But Koha is not ready to adopt version 7. Koha uses Elasticsearch version 6. sudo wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
sudo echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-6.x.list
sudo apt-get update && sudo apt-get install elasticsearch
Auto deletion of old backup files helps save cloud space.
Here is a shell script to schedule the backup with a time stamp. It keeps three days of backup and deletes previous files to save space. This method is convenient for working with cloud storage with limited space (e.g. Dropbox).
Follow the instructions below to schedule the backup.
Copy the shell script to the home folder. Open the shell script and make changes to the Koha database, username, password and location of the backup. The timestamp of the database also appears on the backup file name. Give the number of days the backup keeps.
Move the shell script to /usr/local/bin
sudo cp backup.sh /usr/local/bin
Give the necessary permission to the shell script,
cd /usr/local/bin
sudo chmod +x backup.sh
Create the cronjob entry of the backup. Apply the following command on the terminal.
export EDITOR=mousepad
crontab -e
Copy the below lines to the bottom part of the crontab file.
#Koha backup
10 20 * * * /usr/local/bin/backup.sh
Change the timing of the backup. Here, backup takes at 8:10 PM.
QR Code is better than a barcode in terms of technology and data storage. We can make use of QR code on all types of labels (e.g. spine, Membership card). Here is a GLabels template make use of like a spine label.
Install GLabels
sudo apt install glabels
Download the GLabels template from here and extract it. One template file and a CSV file inside the folder. Users can enter book details in a CSV file. The template file designed for self-adhesive label A4 paper (65 labels).
Libraries can find and buy QR Code scanner from local suppliers and online shopping sites like Amazon. Such scanners support both barcode and QR Code scanning.
Courtesy: QR Code GLabel template created by Mr. Subeesh Gopinathan, Librarian, St. Mary’s Women’s College for Teacher Education, Thiruvalla, Kerala State-689101.
Koha users can share the installation details with the Koha community. It helps the developers and other community members to get an idea of Koha installations in all regions. The facility is available at Koha Administration > Additional parameters > Share your usage statistics,
Enter the details of the library. The details sent to the website maintained by the Koha community, https://hea.koha-community.org. The global usage statistics of Koha available on the website.
New changes in data structure regarding fines and fees available with the release of Koha version 19.11. Koha used accounttype table to accommodate payment statuses. The table accounttype no more available with Koha version since 19.11. The reports used values in accounttype do not work with the recent version of Koha upgraded from the old one.
The new two tables are available to accommodate income and expenses (Fines, fees, Refund etc) for libraries are credit_type_code and the debit_type_code. The codes in the two tables can be check at Administration > Accounting. Koha users need to use the codes in credit_type_code and the debit_type_code tables to generate reports.
Following is a report which generates the overdue paid by patrons in a date range. I have highlighted where the credit_type_code to display payments made by patrons.
SELECT b.cardnumber AS 'Card Number',b.surname AS 'Name',FORMAT(ABS(a.amount), 2) AS 'Amount'
FROM borrowers b
JOIN accountlines a
WHERE b.borrowernumber = a.borrowernumber AND a.credit_type_code = 'payment' AND a.date BETWEEN <<Between (YYYY-MM-dd)|date>> AND <<and (YYYY-MM-DD |date>> AND b.branchcode=<<Enter patrons library|branches>> AND categorycode LIKE <<Enter Category borrowers|categorycode>>
Make changes in the accounts reports created with Koha versions before 19.11. Otherwise, the reports with the old status codes will fail to work.
Favicon stands for Favorite Icon. It can display on the website tab. Favicon is a small icon and acts as a website identity. Koha users can display favicon on Staff Client and OPAC. The favicon file extension is .ico.
How it works
Prepare a favicon file with the extension .ico. Many ways we can convert an image to .ico. Either using image processing software like GIMP / Photoshop or using favicon online generators.
Copy to /usr/share/koha/opac/htdocs.
sudo cp fav.ico /usr/share/koha/opac/htdocs
Here is the URL of favicon copied to /usr/share/koha/opac/htdocs.
http://127.0.1.1/fav.ico
The favicon can be store in a remote server and give the URL.
Visit the search box at Administration > Global System Preferences
Search for the term, favicon.
Give the URL of the favicon to each box and save.
Open Staff Client and OPAC. See the favicon on the browser tabs.
Displaying institution logo on Koha staff client is part of beautification. Even though library staff who log in the staff client sees the logo, everybody believes that it enhances the branding.
A system preference, stafflogininstructions available for this purpose. This feature available since the release of Koha version 18.04.
How it works
Copy the logo to htdocs
Prepare the logo image and put it in an internal folder or in an external server. You can place the image in the folder, /usr/share/koha/opac/htdocs to save in the Koha server. Apply the following command to copy the logo image from the home folder to htdocs.
sudo cp mgu-logo.jpg /usr/share/koha/opac/htdocs
Replace the file name (mgu-logo.jpg) match with the logo name with you.
Add image details in stafflogininstructions
Open Koha Staff Client, visit and find Administration > Global System Preference > Staff Interface > StaffLoginInstructions.
Otherwise, find the specific option by using the search feature in Administration > Global System Preferences. Put the term, StaffLoginInstructions in search box and find.
Inventory feature assists the libraries in stock taking. After the inventory process over, the library gets a picture of missing books. Here are the steps to initiate stocktaking with Koha.
Prepare text file of barcodes
Prepare a text file of barcodes (accession number) either using barcode scanner visiting shelves. Otherwise, prepare the text file with barcodes manually. If you have collected the barcodes in other formats like a spreadsheet, copy it into the text file.
Inventory process
Visit the Tools > Inventory and upload the text file.
Enable necessary filtering options.
Check Export to CSV file box to generate the result in a CSV file. Click on Submit button to start the inventory process with Koha. The CSV file will be downloaded to the computer.
Open the CSV file. Inventory report with missing documents information available in the CSV file
Note: Increase request time out in Apache, if error message appears on Koha screen after uploading a text file. Here is the solution.
Koha made use Google Indic Transliteration (Global System Preferences > OPAC > GoolgeIndicTransliteration) addon in OPAC with the search box. It was useful for search bibliographic details in regional languages. This service not available with Koha now. The reason is that the service seized by Google. But an alternative not added with Koha yet. Anyhow, libraries with bibliographical details in regional languages can make use of Google Input Tools extension with Chrome browser. Koha OPAC needs to load with Chrome browser to make avail this service.
1. Install Google Chrome browser and install Google Input Tools from the following link,
Configuration of OPAC header has moved to Tools > News section since the release of Koha version 20.05. Earlier the configuration was at Administration > Global System Preferences > OPAC > opacheader. Follow the steps mentioned below to display a banner with Koha version 20.05.
1. Prepare a banner and place in /usr/share/koha/opac/htdocs.
Apply the following command to copy the banner in the home folder to /usr/share/koha/opac/htdocs.
sudo cp header.jpg /usr/share/koha/opac/htdocs
Replace the image name. Check the banner successfully copied to the destination.
2. Add an entry for OPAC banner in Koha.
Open Tools > News > New entry
Select Display location > opacheader (en)
Enter other details
Add banner image details. Select image option from the formatting toolbar.
Add image location details.
Give image with the address. Give localhost address (http://127.0.1.1/header.jpg) for Koha installation in a stand-alone computer. Give an IP address (e.g. http://192.168.1.1/header.jpg) with the banner image for Koha installation in a network. Save the image details.
Fast storage is the buzz word in the computer storage industry. We are familiar with HDD (Hard Disk Drive) with all types of computer devices. HDD has a moving read/write head to access data from storage same like a gramophone player and slower to read and write. Unlike HDD, SSD (Solid State Drive) has no moving parts, and it obtains data from storage instantly. SSD can give fast performance than traditional magnetic-based computer storage devices. "A standard SSD can read sequential data at a speed of about 550 megabytes per second (MBps) and write it at 520 MBps" (Paul Rubens). As it is a fast storage SSD consumes only less power and give long battery life for laptop computers.
Let's check the pricing of SSD. Price of SSD storage is a little bit higher than HDD. Western Digital SATA 1 TB Desktop Internal Hard Disk cost Rs. 3700. Crucial MX500 1 TB Laptop, Desktop Internal Solid State Drive cost Rs. 10647. The price of SSD is dropping down. SSDs for computers are available in 120 GB to 4 GB capacities. Anyway, we can consider small capacity SSD (120 / 240 GB) for desktops and laptops. Visit any online shopping sites to check the pricing of SSD with various capacities.
Majority of Koha installations running on desktop computers with traditional HDD. Libraries can improve the performance of Koha using SSD storage. Koha installation consumes only small storage, 120 /240 GB SSD is enough for libraries with a small collection. The price of 120 GB SSD cost around Rs. 2300, and 240 GB cost only Rs. 3200 only. Koha users with HDD can replace to SSD. Take back of the database and everything. Need to install Koha fresh into SSD after storage upgrade. Libraries going for new Koha installation can specify SSD storage in the purchase order.
Unleashing Koha: the complete library solution is a Koha user guide that suits all, whether you are a Library and Information Science student or a professional. It includes information on the emergence of Koha, selection of Linux-based operating system, Debian/Ubuntu basics, installation of Koha, Koha modules, administration, maintenance, and Koha learning resources. This book gives the step-by-step instructions with clear explanations that demystify Koha. The authors of the book are Library Science professional and Koha experts.
The price of the book is Rs. 400. Now you can place an order for the book from here.
This book is for Library and Information Science students and professionals with little or no Koha knowledge. It takes you, step by step, through what you need to know to work with Koha.
Gives an idea on how to prepare for Koha installation.
Configuration of newly installed Koha.
Learn fundamental operations of all Koha modules.
Introduction to Debian/Linux administration for Koha.
Simplified Koha system maintenance.
Introduce various resources to keep in touch with the changes in Koha software.
Unleashing Koha: the complete library solution is the learning companion you need. It provides hands-on training that lets you dive deep into Koha, the Free Integrated Library Management system.
About the authors
Vimal Kumar V has been teaching and writing about Linux and Koha for more than 15 years. A library professional and an expert in Free and Open Source software. His Koha Geek blog is trendy among the Library and Information Science community.
Subeesh Gopinathan is a tech-savvy young library professional. He is interested in knowing and understanding technology changes. He explores and experiments the Linux-based operating systems and Open Source solutions in libraries. Also acts as a resource person for Koha training programmes.
For queries, contact to subeeshgopinathan1990@gmail.com
A good number of Koha users make using Gmail for sending email notices from Koha. They use Gmail with Mail Transfer Agents (MTA) like Exim and Postfix. Google offered the Less Secure Apps feature to allow sending emails from MTAs. Google is turning off LSA access from third-party software. Google says "Starting in June 2020, we'll limit the ability for less secure apps (LSAs) to access G Suite account data. LSAs are non-Google apps that can access your Google account with only a username and password. They make your account more vulnerable to hijacking attempts. Instead of LSAs, you can use apps that support OAuth—a modern and secure access method".
How it affects Koha users?
After June 15, 2020 - Koha Users who try to connect to an LSA for Gmail with Exim or Postfix for the first time will no longer be able to do so. Users already connected can continue till February 15 2021.
After February 15, 2021 - Access to LSAs will be turned off for all G Suite accounts. Koha users can't send emails using LSA.
How to overcome this situation?
Google has introduced a new method to use Gmail service from third party software. The user needs to finish two-step verification for Google account. Then create an app password for Gmail clients (e.g. Exim, Postfix). Detailed instructions in the following link,
Reminder about membership expiry is very helpful for library users to settle the library account. Here are the steps to enable email reminders to library users the number of days in advance.
Libraries stick on with old versions of Koha facing difficulties while trying to upgrade to the new version. Upgrading from very old versions to the latest version may result in data loss. Koha stops the official support for older versions after a specific period. Same way, Koha support for old Ubuntu versions stops when it becomes obsolete. New versions of Koha introduce a lot of improvements and new features. Changes in database structure required to accommodate new features. For example, Koha version 3.18 released in 2014, and it has 168 tables. Version 19.05, released in 2019, has 204 tables. Koha developers strongly recommend for the regular up-gradation to recent versions. The database structure is also subject to changes during the upgrade process.
Direct up-gradation from old versions (e.g. versions before version 3.18) to the latest version probably ends in data loss. Restoration of an old version of Koha is a challenging task. Data migration from a running instance of an old version of Koha is comparatively easy. Porting of bibliographic records to MARC format, patron details, and circulation details to CSV is possible. Then it can be imported into a new version of Koha. Following steps can follow to export essential data:
Note down all configurations with Koha including branch code, item types codes, authorized values, circulation and rules. Take screenshots of all configurations.
Export bibliographic details (MARC format) into MARC.
Export patron and circulation details into CSV format using reports.
Install a new version of Koha. Create branch code, Patron categories, Authorised values, circulation match with the old version of Koha.
Import MARC file, patron, and circulation details.
Note: Consult Koha release notes and installation manual at Koha Wiki for regular updates on changes.
Items with discrete records are not convenient for users to find through OPAC. Koha users can attach/merge items with separate Biblio into a single record. Here are the steps to attach items with discrete Biblio.
For example, bound volumes of Economic and Political Weekly catalogued as separate records with items. The search result shows many records of the journal bound volumes. If we merge all the records into one, users can find the entire journal bound volumes details by opening a single record.
Find the record to merge/attach. Search and find the record to attach from Koha Staff Client.
Same documents in different Biblio's.
Attach each item to the record Select any record and select Edit > Attach item.
Find the sequence of barcode/accession number of the records to be merged. Create a report for this purpose.
Bound volume details display using a report.
Enter the barcode of the first record,
Click on Submit button.
1. Delete the blank record after the merge the item. 2. Enter another record to merge. 3. Click OK to confirm.
Search and find the details of the record after finishing the process.
Serials module assist in managing subscription of journals, magazines, newspapers etc. Serials module is helpful to inventory and tracks periodicals. Library users can quickly know the availability of periodicals through OPAC. Create a subscription
Following are the steps to create a journal subscription.
Create a Biblio
First, create a Biblio from Koha > Cataloguing.
Enter the details of the journal including ISSN, title, publisher etc. Save the Biblio. No need to save the Item information.
Note:Adding a representative journal jacket to catalogue record will be more attractive and users can easily recognise the journal while searching from OPAC. Journal cover picture can be collected from the publisher website. The journal cover can be upload from Biblio details in the staff client.
Create a vendor
If the library subscribes the periodicals through a vendor, create a vendor/supplier. Koha > Acquisitions > New vendor
Create subscription
Go to the Serials module and create a subscription for the journal.
Koha > Serials > New subscription
Search and find both vendor and Biblio of the journal created.
Add caption
Call number: Item’s call number of the journal. Library: The branch subscribed the journal. Public note: Information for the OPAC for the patrons (e.g. Discontinuation of a particular volume) Nonpublic note: Notes that are only visible to the librarians via the staff client (e.g. Demand Draft details). Patron notification: Notice sends to patrons on arrival of new issues (Routing list). Location: Shelving location of the journal. Grace period: The number of days before an issue automatically move from ‘Expected’ status to ‘Late’. The Staff and OPAC display options allow you to control how many issues appear by default on bibliographic records in the Staff Client and the OPAC.
First issue publication date: First issue of the journal after the subscription starts. Frequency: Various frequency of the journal (e.g. Weekly, monthly, quarterly etc.) Subscription length: The number of issues or months in the subscription. Subscription start date: The date at which the subscription begins. Subscription end date: End date of the current subscription. Numbering pattern: The numbering pattern follows in the journal (e.g. Volume, Issue). Locale: To display days, months, the season in regional language (e.g. Persian). Click on Test prediction pattern to get an idea of the issue numbering of the journal. Save the subscription.
Receive the first issue of the journal Receive the first issue of the journal after creating the subscription.
Change the status from Expected to Arrived.
The current issue of the journal received and waiting for the next issue.
Search and find the journal at an online catalogue. See the bibliographic and holding details of the journal.
Koha releases a new version every six months (May and November). The current version is called stable and previous version is called oldstable. The code names stable or oldstable should be mention in the Koha Debian software repository line at the time of installation. For example,
After six months the current version of Koha changes to the latest release. Koha users can't stick on with a particular version by using the code name stable and oldstable in Koha repository.
A Koha version has 18 months maintenance period. Koha users can stay with a specific version by using the version number (e.g. 19.11). Users can receive the updates during the period until the version expiry (18 months).
Add the version number in Debian Koha repository to stick on with the specific release; e.g.
echo 'deb http://debian.koha-community.org/koha 19.11 main' | sudo tee /etc/apt/sources.list.d/koha.list
Many occasions the timezone of the Debian/Ubuntu maybe not be correct. Incorrect timezone might be happening at the time of Linux installation. It affects the due date setting and fine calculation with Koha. User can configure to the correct timezone later. Here are the steps to follow reconfigure the timezone.
1. First, check the default timezone with Koha, check at Koha > About Koha
2. Apply the following command in a terminal,
sudo dpkg-reconfigure tzdata
A configuration screen will appear. Change the timezone.
Select your geographic area.
Select the timezone
3. Check again the timezone information with Koha. Otherwise, apply the following command in a terminal.
The location of the institute/library can be embedded on OPAC interface. Users strange to the campus can find the location of the library using Google Maps app in mobile. Follow the steps below to add the location on OPAC interface.
Koha offers many places for customisation on OPAC. Copy and paste the code anywhere in OPAC. For example, Koha > Administration > Global System Preferences > OPAC > OpacNav it display map on left side of the OPAC.
The map can also display on the left side of the OPAC. To display the map on the right side of the OPAC, goto, Tools > News > New Entry > Display location > OpacNavRight
Change the width and height of the map in the script,
If you would like to give a box around the map, paste the map script in the middle of the code. Then copy and paste the entire piece of code.
<html> <head> <style> p.two { border-style: solid; border-color: blue; </style> </head> <body> <p class="two"> Paste the Google Map code here </body> </html>
Save the content. Check the result by visiting the OPAC.
Bulk check-in using .koc (Koha Offline Circulation) file is easy to use the method. It is helpful while Koha trial runs for data migration from the old version of Koha or other software. This method also can apply to other contexts. The following steps discuss how to prepare the .koc file for bulk import of check-in entries.
1. Export report of desired checked out books
Koha > Report > Create from SQL
Use following SQL query to build a report for the purpose,
SELECT issues.issuedate,items.barcode FROM issues LEFT JOIN borrowers ON borrowers.borrowernumber=issues.borrowernumber LEFT JOIN items ON issues.itemnumber=items.itemnumber LEFT JOIN biblio ON items.biblionumber=biblio.biblionumber WHERE items.homebranch =<<Branch|branches>> AND issues.issuedate BETWEEN <<Between Date (yyyy-mm-dd)|date>> and <<and (yyyy-mm-dd)|date>> ORDER BY issues.issuedate DESC
Download the report as a CSV or ODS (Open Document Spreadsheet) file.
2. Prepare the .koc file
Open the checked-out report file and add a new column to the mention transaction type. Copy the contents in three columns. See the sample CSV file here.
Download and open the sample .koc file from here. Copy and paste the contents below the first line in the .koc file.
Save and close the file.
3. Import the .koc file
Goto Koha > Circulation > Offline circulation > Upload offline circulation file (.koc) Find and upload the .koc file. Don't worry, if the screen show time out.
Goto Koha > Circulation > Offline circulation > Pending offline circulation actions Select all the entries and click the Process button.
Restoration of an old version of a corrupted database to the latest version of Koha is a challenging task. Data migration from a running instance of an old version of Koha is comparatively easy. Porting of bibliographic records to MARC format, patron details and circulation details to CSV is possible. Then it can be imported into a new version of Koha.
This tutorial discusses the various stages in exporting of check-out (issue) details from the old version of Koha into latest version.
Background preparation
Export bibliographic details (MARC format), patron and circulation details.
Install a new version of Koha. Create branch code, Patron categories, Authorised values, circulation and fine rules same like the old version of Koha.
Import MARC file and patron details.
Exporting of checkout entries
Prepare a report of all books checked out
Koha > Report > Create from SQL Enter following SQL query.
SELECT issues.issuedate,borrowers.cardnumber,items.barcode FROM issues LEFT JOIN borrowers ON borrowers.borrowernumber=issues.borrowernumber LEFT JOIN items ON issues.itemnumber=items.itemnumber LEFT JOIN biblio ON items.biblionumber=biblio.biblionumber ORDER BY issues.issuedate DESC
Run the report and export it as CSV format.
Create offline circulation file
Open the All Book Checkout Out report in LibreOffice or any other spreadsheet application.
Add a new column between issuedate and cardnumber columns. Put the line 'issue' in all rows. Koha recognises that these entries for checkout of books.
Transfer checkout entries from CSV file to .koc file.
koc stands for (Koha Offline Circulation.Download a sample .koc file from here. Open the .koc file using a text editor (e.g. leafpad. mousepad). Copy the entire checkout entries from csv (except column names) to .koc file.
Save and close the .koc file.
Import .koc file into Koha
Make sure that all records, patron details imported into Koha before import .koc file. Circulation rules should be created.
Koha version: 19.05.3 Module: Catalogue Purpose: Accession register with joined Title and subtitle, Authors and Editors
SELECT items.barcode,items.itemcallnumber, CONCAT_WS('',biblio.author,'; ',ExtractValue(metadata,'//datafield[@tag="700"]/subfield[@code="a"]')) AS Author,CONCAT(biblio.title,' ',ExtractValue(metadata,'//datafield[@tag="245"]/subfield[@code="b"]')) AS Title,biblioitems.publishercode FROM items LEFT JOIN biblioitems ON (items.biblioitemnumber=biblioitems.biblioitemnumber) LEFT JOIN biblio ON (biblioitems.biblionumber=biblio.biblionumber) LEFT JOIN biblio_metadata on (biblio_metadata.biblionumber=biblio.biblionumber) WHERE items.homebranch =<<Branch|branches>> AND items.itype=<<Item type|itemtypes>> AND items.dateaccessioned BETWEEN <<Between Date (yyyy-mm-dd)|date>> and <<and (yyyy-mm-dd)|date>> ORDER BY items.barcode DESC
Library professionals need to acquire background knowledge on hardware selection before the installation/upgrade Koha ILS. Consider budget, the number of records and number of users handles by Koha before the hardware selection. Here are the various occasions and suitable hardware requirements.
Desktop PC: Majority of libraries in India install Koha on desktop PC. Library professionals switch off PC before closing the library and next day they switch on PC to use Koha. Libraries having budget constraints, lack of higher hardware resources and power backup would like to follow this method regardless of the number of records and transactions with Koha. Such libraries can't offer 24x7 OPAC services with Koha on a desktop PC.
Libraries with a small collection (e.g. up to 25000 books) consider a desktop with i5 processor and minimum 8 GB RAM. Buy desktop PC without preloaded Windows. It increases the cost of the PC. Buy PC without Operating System. Use Debian/Ubuntu with a lightweight desktop for the optimum performance of hardware. Ubuntu/Debian with GNOME desktop would eat a sizeable processing power of your PC. Choose Debian Linux with XFCE desktop/Xubuntu/Lubuntu as the operating system for Koha. Opt SSD (Solid State Drives) over traditional HDD as storage for fast performance. Desktop PCs not built for 24x7 performance like a server-class computer.
Workstation PC: Libraries want heavy-duty performance machines can opt workstation PC. Workstation PC is better than desktop PC in terms of performance and durability. It can handle the library tasks with a large number of records, users, transactions and multiple library branches. Popular computer manufacturers produce workstation PC under separate brand names. For example, Dell Precision, Lenovo Thinkstation, and HP Z belong to the workstation category.
Server computer: Libraries with excellent IT infrastructure would like to choose a server-class computer for Koha installation. Server computer built for 24x7 hours continuous working and offer static Koha service. I found that libraries with a small collection buy heavy-duty server computer and switch off at the evening when the office time over. This practice affects the performance and reduces the life span of the server computer.
Server class computers available with various specifications. Libraries with small size collections can choose entry-level servers computers for Koha installation. For example, HP Proliant ML series tower server computers cost below Rs. 80000.
Cloud computing: Cloud computing services became more convenient for these days. Libraries free from maintaining hardware for Koha service. Institutions can hire virtual servers from cloud service providers like Amazon, Google, and Microsoft. Libraries can choose virtual servers with a Linux (Debian/Ubuntu) operating system for Koha installation.
Debian 9 (Stretch) software repository contains MariaDB 10.1. Version 10.1 is a little bit old. It's possible to install the latest version of MariaDB (version 10.3 or 10.4) on Debian 9 to get good database performance. Latest versions of MariaDB free from the auto-increment bug. This version is free from Here is the method to install MariaDB 10.4 on Debian 9 when preparing system for Koha installation. This method can apply for a fresh installation of Koha. Don't try this method to install MariaDB on an existing installation of Koha.
Assign Root password for MySQL If password asks during the installation process, enter the password in the window. Apply following command, if the password window did not appear during the installation,
sudo mysqladmin -u root password newpass
[Replace 'newpass' with your own new MySQL Root password]