Роман Теличко

Заметки веб-разработчика/админа

Как узнать версию Ubuntu и кодовое имя из командной строки

// 10 мая, 2013 | 1458 просмотров | комментариев (0)

Иногда возникает необходимость определить версию Ubuntu. Делается это с помощью команды lsb_release, что предназначена для вывода информации о текущей версии дистрибутива Ubuntu.

lsb_release -a

Что для версии Ubuntu 13.04 выведет следующее:

No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 13.04
Release:	13.04
Codename:	raring

Как узнать статистику использования сетевого траффика в Linux

// 12 апреля, 2013 | 1818 просмотров | комментариев (0)

Существует отличная консольная утилита для отображения информации о количестве переданной и принятой информацией по каждому сетевому интерфейсу с разбивкой по датам и визуальным отображением в как в консольном, так и графическом режимах. Имя этой утилиты — vnstat.
Читать далее…

PostgreSQL. Список таблиц с очень частой записью на диск

// 5 апреля, 2013 | 907 просмотров | комментариев (0)

Предел возможностей БД часто упирается в дисковые операции. Поэтому стоит оптимизировать эти операции, меняя логику, архитектуру, масштабируя и пр.
Запрос выведет статистику по таблицам в обратном порядке по сумме операций записи, т.е. сверху будут таблицы с наиболее интенсивной записью.

SELECT
    schemaname                                      AS schema,  -- схема
    relname                                         AS table,   -- таблица
    pg_size_pretty( pg_relation_size(relid) )       AS tsize,   -- размер
    n_tup_upd + n_tup_ins + n_tup_del               AS write,   -- операций записи (I/U/D)
    seq_scan + idx_scan                             AS read,    -- всего чтений
    n_tup_ins                                       AS ins,     -- операции INSERT
    n_tup_upd                                       AS upd,     -- операции UPDATE
    n_tup_del                                       AS del      -- операции DELETE
FROM
    pg_stat_user_tables
ORDER BY
    ( n_tup_upd + n_tup_ins + n_tup_del ) DESC

Кстати, так вы можете получить список всех индексов, а так — список неиспользуемых индексов.

Как проверить диск на ошибки и бэд-сектора в Linux

// 3 апреля, 2013 | 90536 просмотров | комментариев (1)

Примером хорошего тона и здравого смысла является периодическая проверка диска на битые сектора (бэд-сектора, badblocks) и обычная проверка диска на ошибки записи и т.п.
Разберёмся что такое битые сектора.
Любимая Википедия говорит следующее:

Бэд-сектор, Повреждённый сектор — сбойный (не читающийся) или ненадежный сектор диска; кластер, содержащий сбойные сектора, или кластер помеченный таковым в структурах файловой системы операционной системой.

Следовательно, если в битом секторе были данные, то их ещё возможно восстановить, пока битых секторов не стало слишком много для конкретного файла.
Читать далее…

ТОП 16 PHP функций, что я использую каждый день

// 30 марта, 2013 | 2921 просмотров | комментариев (0)

Решил написать ТОП 16 PHP функций, что я использую каждый день.
Будет полезно как начинающим разработчикам, так и профессионалам (хотя у них этот список может отличаться).
Это MUST HAVE функции, что обязательно нужно знать и уметь ими оперировать.
Читать далее…

Соответствия команд SVN и Git

// 14 марта, 2013 | 479 просмотров | комментариев (0)

Я создал небольшую шпаргалку соответствий команд систем управления версиями SVN/Subversion и Git. Пользуйтесь! 😉

svnadmin create repo
 
git init
git add .

svn import file://repo
git commit

svn diff | less
git diff

svn diff -rrev path
git diff rev path

patch -p0
git apply

svn status
git status

svn revert path
git checkout path

svn add file
git add file

svn rm file
git rm file

svn mv file
git mv file

svn commit
 
git commit -a
git push remote

svn log | less
git log

svn blame file
git blame file

svn cat url
git show rev:path/to/file

svn list url
git show rev:path/to/directory

svn log -rrev url
svn diff -crev url
git show rev

svn copy https://example.com/svn/trunk
https://example.com/svn/tags/name
git tag -a name

svn list https://example.com/svn/tags/
git tag -l

svn log —limit 1 https://example.com/svn/tags/tag
git show tag

svn copy https://example.com/svn/trunk https://example.com/svn/branches/branch
git branch branch

svn switch https://example.com/svn/branches/branch
git checkout branch

svn list https://example.com/svn/branches/
git branch

svn update -r rev
git checkout rev

svn update
git checkout prevbranch

svn merge -r rev:HEAD https://example.com/svn/branches/branch
git merge branch

svn merge -c rev url
git cherry-pick rev

svn checkout url
git clone url

svn switch url
 
git checkout —track
 -b branch origin/branch

svn update
git pull

Партицирование (partitioning) больших таблиц PostgreSQL

// 17 февраля, 2013 | 19070 просмотров | 4 комментария

Сегодня я хочу вам рассказать о партиционировании больших таблиц в моей любимой PostgreSQL.

Итак, начнём с определения:
Партиционирование (partitioning) — это разбиение больших таблиц на логические части по выбранным критериям. Партиционированные или секционированные таблицы призваны улучшить производительность и управляемость базами данных.

Вроде понятно. Теперь идём дальше. Как же разбить таблицу на партиции или секции?
В PostgreSQL эта процедура потребует небольших усилий, но результатом вы будете довольны 🙂
Читать далее…

Ubuntu. LibreOffice 4.0 в Ubuntu 12.10

// 8 февраля, 2013 | 1131 просмотров | комментариев (0)

Выпущен LibreOffice 4.0 с большим списком изменений.
Всё это можно посмотреть уже в Ubuntu 12.10, не дожидаясь следующей версии.
Для этого всего-лишь необходимо:

sudo apt-get purge libreoffice-core
sudo add-apt-repository ppa:libreoffice/libreoffice-prereleases
sudo apt-get update && sudo apt-get upgrade
sudo apt-get install libreoffice

Но обращаю ваше внимание, что в итоге вы получите только версию 4.0.0-alpha1.

За финальной версией пока нужно идти на сайт LibreOffice за deb-пакетом для x86 или для x86_64/amd64.

Внимание! Перед продолжением, удалите LibreOffice, если он у вас уже установлен.

sudo apt-get remove libreoffice

Скачиваете tar.gz-архив, содержащий deb-пакет.
Распаковываете его

tar -xzvf LibreOffice_4.0*

Переходите в папку DEBS:

cd LibreOffice_4.0*/DEBS/

И устанавливаете

sudo dpkg -i *.deb desktop-integration/*.deb

В итоге вы получите финальную версию LibreOffice 4.0.
Минус установки не через репозиторий в том, что вам самим придётся следить за обновлением пакетов, скачивать и переустанавливать его.

Ubuntu. Как удалить репозиторий, добавленный через add-apt-repository

// 5 февраля, 2013 | 10373 просмотров | комментариев (0)

Если вы добавили репозиторий через команду add-apt-repository и захотите его удалить, то вас ждёт разочарование, поскольку команды remove-apt-repository не существует.
Зато есть ключ --remove для команды add-apt-repository.
Т.е. мы можем удалить ненужный нам репозиторий так

add-apt-repository --remove ppa:repository-for-delete

или так

add-apt-repository -r ppa:repository-for-delete

Удачи.

Тюнинг Windows 7/8 на SSD (Solid-State Drive)

// 31 января, 2013 | 3580 просмотров | комментариев (0)

SSD-диски с каждым годом становяться всё доступнее и всё больше в объёмах. Так и я стал владельцем SSD-диска Kingston SSDNow V+200 60GB 2.5″ SATAIII, «распилив» его пополам, я установил на него любимый Linux Xubuntu 12.10 и новенькую Windows 8 Pro.
О тюнинге последней я расскажу ниже.
А вот о тюнинге Linux Xubuntu на SSD довольно неплохо рассказано вот здесь. Читать далее…