Найти все хардлинки(hardlinks) файла

#!/bin/sh

[ -z "$1" ] && cat <<-_EOF_ && exit 1
    Usage: ./$(basename $0) filename
_EOF_

FILE=$1

[ ! -f "$FILE" ] && echo "File $FILE not exists! Exiting..." && exit 1
if [ "$(ls -ld "$FILE" | awk '{print $2}')" -ne 1 ]; then
    find `df "$FILE" | tail -n+2 | awk '{print $6}'` -xdev -inum `ls -i "$FILE" | awk …
more ...

Запуск и адаптация МАРК-SQL 1.5.4 для MySQL 5.x

Столкнулся с проблемой, АИБС "МАРК-SQL" для школьных библиотек 1.5.4 не работала с MySQL, а разработчики заверяли, что программа не совместима с MySQL.

Решил проанализировать запросы, которые ходят между программой и сервером при помощи MySQL-Proxy [2].

И сразу увидел некорректный запрос с использованием зарезервированного слова SEPARATOR:

SELECT TAG,SUBTAG …
more ...

flock - предотвращение повторного запуска программы/скрипта из crontab.

Столкнулся с проблемой, написанный мною бот для сайта запускался раз в минуту и однажды на сервере, где работал бот интернет канал сильно просел, как результат за минуту бот не успел завершить свою работу.

crontab запустил его еще раз, бот снова не успел, а crontab продолжал беспощадно запускать копии бота - последствия …

more ...

Решение проблем во FreeBSD < 9.x c bsd tar.

При обновлении портов на FreeBSD ниже 9.x возникают подобные проблемы с xz архивами:

# cd usr/ports/misc/mc
# make
===>  License GPLv3 accepted by the user
===>  Found saved configuration for mc-4.8.1.6
===> Fetching all distfiles required by mc-4.8.1.7 for building
===>  Extracting for mc-4.8.1 …
more ...