Проблема с нумерацией сетевых интерфейсов в Gentoo

В случае если менять сетевые интерфейсы на системе с генту ( как вариант замена сгоревшей), то следующая новая сетевая карта получит индекс на единицу больший. Но иногда это не оправдано, когда в системе 3 сетевые карты, а вы заменили 2 из них… в итоге получаем : eth1,eth3,eth4 … не очень удобно и не практично. Чтоб … Читати далі

Миграция Postgres с 8.4 на 9.0

Решились потренироваться делать репликацию Master-Slave, которая реализована в версии 9.0
Значит так-с…
1. Обновляем Portage

emerge --sync

2. Ставим новую БД

LINGUAS="ru" ACCEPT_KEYWORDS="~amd64" emerge -av  /usr/portage/dev-db/postgresql-server/postgresql-server-9.0.1.ebuild

3. Конфигурим

emerge --config =dev-db/postgresql-server-9.0.1

4. правим конфиг и запускаем на порту 6543, не выключая старый постгресс
5. производим миграцию БД

pg_dumpall -p 5432 | psql -d postgres -p 6543

6. стартуем новую БД на порту 5432 предварительно выключив старую

После чего устанавливаем Postgres на втором хосте, который будет использоваться как Slave

LINGUAS="ru" ACCEPT_KEYWORDS="~amd64" emerge -av  /usr/portage/dev-db/postgresql-server/postgresql-server-9.0.1.ebuild

Вносим изменения в Master, чтобы слэйв мог к нему подключится:

$ $EDITOR postgresql.conf
listen_addresses = '10.0.xx.yy'

$ $EDITOR pg_hba.conf
# The standby server must have superuser access privileges.
host  replication  postgres  10.0.xx.zz/22  trust

Читати далі

Осваиваем Git

Никогда не пользовался системами контроля версий, так как мало что творю на языках программирования, а скрипты можно просто хранить в папочке.
Ну и вот решил попробовать хранить скрипты (и не только) в каком-то хранилище, но при этом упустить освоение SVN И CVS, а сразу приступить к Git’у , так как мы не исчем легких путей 🙂

Для начала создаем собственный репозиторий с проэктом, который будет находится не на локальной машине, а где-то в сети.
Пишу по мотивам статьи How to set up your own private Git server on Linux
Сервер и клиенты (в основном) работают под управлением Gentoo.
Итак приступим.
Для начала добавим свой публичный ключ на сервер

cd ~/.ssh
ssh-keygen -t rsa
scp ~/.ssh/id_rsa.pub 'user'@'server':.ssh/authorized_keys

Теперь мы можем зайти по SSH на наш сервер и установить Git:

ssh 
ACCEPT_KEYWORDS="~amd64" USE="bash-completion cvs subversion" emerge -av git

Теперь добавим пользователя

useradd -d /home/git -m -s /bin/bash git

Теперь вам нужно добавить свой публичный ключ для пользователя Git

mkdir /home/git/.ssh
cp ~/.ssh/authorized_keys /home/git/.ssh/
chown -R git:git /home/git/.ssh
chmod 700 !$
chmod 600 /home/git/.ssh/*

Читати далі

Кодування імен файлів в Linux

Дали мені декілька каталогів з музикою, щоб записати на CD-R, але під час передачі через FTP побилось кодування самих файлів, щоб виправити данну неприємність в Linux є маленька утиліта convmv Ставимо її: $apt-get install convmv а потім правимо кодування : $convmv -f cp1251 -t utf-8 -r –nosmart –replace –notest /якась/папка/ –nosmart – не чіпає файли … Читати далі

Привязать MAC к IP на шлюзе

Чтобы отсеять незнакомцев которым не дозволен выход в инет либо гуляние по корпоративным подсетям, можно применить фильтр мак-адресов + ip-адресов
В случае если шлюзом выступает сервер на Linux, с iptables на борту, выглядит это так:

Читати далі

15 команд для управления PostgreSQL

1. Как изменить root пароль в PostgreSQL?

$ /usr/local/pgsql/bin/psql postgres postgres
Password: (oldpassword)
ALTER USER postgres WITH PASSWORD ‘tmppassword’;
$ /usr/local/pgsql/bin/psql postgres postgres
Password: (tmppassword)

Читати далі

проброс udp трафика в http

появилось желание давать знакомым смотреть свое домашнее ip-tv

Пара десятков минут в гугле и решение банально простое:
лезем на SourceForge
качаем архив, распаковываем и в папке делаем:

make && make install 

Читати далі

Проброс трафика на другую машину

Появилась проблемка…. нужно было весь трафик приходящий на определенный порт заворачивать на другую машину в локальной сети, но управлять этим нужно не на шлюзе, а на локальной машине… ответ оказался прост и решается с помощью iptables: iptables -t nat -A PREROUTING -p tcp -i eth0 –dport 21 -j DNAT –to-destination 10.0.3.99 iptables -t nat -A … Читати далі

Горячие клавиши в screen

Key Action Notes Ctrl+a c new window Ctrl+a n next window I bind F12 to this Ctrl+a p previous window I bind F11 to this Ctrl+a “ select window from list I have window list in the status line Ctrl+a Ctrl+a previous window viewed Ctrl+a S split terminal horizontally into regions Ctrl+a c to create … Читати далі

Отбрасывание пакетов ping

/bin/echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all

Это просто заставит ядро игнорировать все сообщения ping (ICMP-пакеты типа 0). IP-пакет, несущий ICMP-сообщение, может содержать также в нагрузку и другую информацию, о которой вы можете не подозревать, поэтому следует отключить прием. Администраторы используют ping как утилиту диагностики и часто выражают недовольство, если она отключена, но нет причины позволять чужакам пинговать узел. Тем не менее, если необходимо разрешить внутренним пользователям использовать ping, то можно отключить сообщения ICMP типа 0 в межсетевом экране (тем самым позволив локальным администраторам использовать эту утилиту).

Читати далі