GnuCash — бухгалтерская программа с двойной записью, которой не нужны сервер, подписка и облако. Для домашних финансов она даёт то, чего не хватает таблице: счета, проводки, сверку с выпиской и отчёты, которые сходятся между собой. Порог входа выше, чем у простого трекера расходов, зато через месяц вы получаете целостную картину. Ниже — установка, разумная структура счетов, импорт выписки и обслуживание файла.
Кому нужна двойная запись
Если вы просто хотите знать, сколько потратили на еду, хватит таблицы или мобильного приложения. GnuCash раскрывается, когда есть несколько счетов, кредитная карта, наличные, вклады и переводы между ними. Двойная запись не даёт деньгам «исчезнуть»: каждая операция имеет источник и назначение, а итоговый баланс всегда объясним.
Программа не заменяет бухгалтера и не подаёт отчётность в налоговую. Это инструмент личного учёта: структура расходов, динамика и остатки, без юридических вопросов.
Установка и создание файла
В 2026 году актуальна ветка 5.x; пакет есть в Debian, Ubuntu, Fedora и Arch. Вместе с программой стоит поставить документацию — встроенная справка подробно описывает каждый диалог.
sudo apt install gnucash gnucash-docs
gnucash --version
gnucash-cli --version
gnucash ~/Финансы/dom.gnucash
При первом запуске мастер предложит валюту и шаблон счетов. Для домашнего учёта достаточно рубля и пустого файла: типовой шаблон содержит лишние категории, которые потом мешают. Файл лучше сразу положить в отдельный каталог, который попадает в резервное копирование.
План счетов без фанатизма
GnuCash использует пять типов счетов: активы, обязательства, капитал, доходы и расходы. Дома удобно начать с двух уровней: Активы:Текущие:Карта, Активы:Наличные, Расходы:Продукты, Доходы:Зарплата. Счёт «Прочее» через полгода соберёт половину операций и обесценит отчёты.
Начальные остатки вводятся через счёт Капитал:Вступительный баланс. Не пытайтесь сделать это расходом или доходом: тогда отчёт о прибыли покажет фиктивную сумму. Отрицательный остаток по карте — обязательство, а не отрицательный актив.
Проводка на практике
В окне счёта каждая строка — одна сторона операции. Покупка продуктов на 1200 рублей с карты выглядит так: расход Продукты увеличивается на 1200, актив Карта уменьшается на ту же сумму. GnuCash показывает колонки увеличения и уменьшения, поэтому знать бухгалтерские «дебет» и «кредит» не обязательно.
Если операция затрагивает три счёта — например, покупка с комиссией, — используйте развёрнутую проводку через кнопку «Split». Итог должен сойтись до копейки; при расхождении GnuCash предупредит и предложит скорректировать проводку. Ошибочную проводку лучше сторнировать, а не удалять: история остаётся прозрачной.
Импорт выписки из банка
Банк обычно отдаёт CSV. Проверьте кодировку и разделитель до импорта: файл в CP1251 с точкой с запятой — частая причина «пустых» колонок. Перекодировать можно командой iconv, а посмотреть первые строки — через head.
file ~/Загрузки/statement.csv
head -3 ~/Загрузки/statement.csv
iconv -f CP1251 -t UTF-8 ~/Загрузки/statement.csv > ~/Загрузки/statement-utf8.csv
gnucash ~/Финансы/dom.gnucash
Далее выберите «Файл → Импорт → Импорт операций из CSV», укажите дату, описание и сумму, сопоставьте колонки со счетами. GnuCash умеет запоминать соответствия и предлагать категории для повторяющихся описаний. Дубликаты он помечает при повторном импорте, но проверять совпадения всё равно нужно: два одинаковых кофе в один день — не ошибка.
Импорт не создаёт баланс из воздуха: если в выписке есть начальный остаток, он должен совпасть с уже введённым. Расхождение ищите по датам и по счетам-посредникам, а не правкой итоговой суммы.
Сверка с выпиской
Сверка — главный ритуал. Откройте счёт, нажмите «Сверить» и введите конечный баланс из выписки. Отмечайте операции, которые банк уже провёл; разница должна обнулиться. Если она не нулевая, проверьте пропущенные переводы, комиссии и операции, введённые дважды.
Сверку удобно делать раз в месяц: пять минут за закрытый период дешевле, чем разбор трёхсот строк в декабре.
Регулярные операции и напоминания
Аренда, подписки и зарплата повторяются. В разделе планируемых операций создаётся шаблон с периодичностью; при запуске GnuCash предложит провести пропущенные платежи. Это не автоматическое списание, а напоминание: сумма и дата остаются под контролем.
Шаблон полезен и для переводов между счетами: изменяемую сумму вводят при подтверждении. Не включайте автопроведение для платежей, которые могут не состояться.
Отчёты
Основные отчёты находятся в меню «Отчёты»: баланс, доходы и расходы, движение денежных средств, диаграмма расходов. Перед построением задайте период и валюту отчёта, иначе получите смесь месяцев. Отчёт можно выгрузить в HTML или распечатать в PDF.
gnucash-cli --report list ~/Финансы/dom.gnucash
gnucash-cli --report run --name="Income Statement" --output-file=/tmp/income.html ~/Финансы/dom.gnucash
ls -lh /tmp/income.html
gnucash-cli строит отчёт по тем же настройкам, что и графический интерфейс. Список имён зависит от версии и языка, поэтому сначала выполните --report list.
Хранение, резервные копии и SQLite
По умолчанию книга хранится в сжатом XML с расширением .gnucash. Это надёжный формат, который читается другими программами и хорошо сжимается. При сохранении GnuCash создаёт резервные копии с датой в имени; их стоит периодически копировать на другой носитель.
mkdir -p ~/Финансы/backup
cp -a ~/Финансы/dom.gnucash ~/Финансы/backup/dom-$(date +%F).gnucash
file ~/Финансы/backup/dom-$(date +%F).gnucash
sha256sum ~/Финансы/backup/dom-$(date +%F).gnucash
chmod 600 ~/Финансы/dom.gnucash
ls -l ~/Финансы/dom.gnucash
Опытные пользователи выбирают SQLite через «Сохранить как». Тогда книгу можно проверить внешними инструментами, а резервную копию снять командой sqlite3 book.gnucash ".backup '/tmp/book-backup.sqlite'". Минус — больше файлов журнала и требование аккуратно закрывать программу. Для домашнего учёта XML проще, для автоматизации — SQLite.
Права стоит ограничить, а каталог не синхронизировать с публичным облаком. Шифрование диска надёжнее пароля на архиве.
Типичные ошибки
- Смешивать личные и рабочие траты в одной книге без разделения счетов.
- Записывать начальный остаток доходом.
- Удалять ошибочные проводки вместо сторнирования.
- Импортировать выписку без проверки дубликатов.
- Делать сверку раз в год и терять контекст операций.
Чек-лист первого месяца
- Создайте книгу в отдельном каталоге и задайте валюту.
- Опишите счета и введите начальные остатки через капитал.
- Проведите десять реальных операций вручную.
- Импортируйте одну выписку и проверьте дубликаты.
- Сверьте счёт с банком до нулевой разницы.
- Постройте отчёт о расходах и сохраните резервную копию.
Итог
GnuCash требует дисциплины на старте, но платит за это цельными отчётами и понятной историей. Двойная запись перестаёт пугать после первых десяти проводок, а сверка занимает минуты. Если нужен именно домашний учёт без облака и подписки, это один из самых надёжных вариантов в Linux.