LINUX.ORG.RU

Сообщения Komintern

 

Глюки с монитором нетбука

Форум — Linux-hardware

Короче, ноут: Samsung NP-143. Несколько лет живет уже у меня под слакой. Ноут как ноут, с небольшим но вполне нормальным экраном. Так вот, начал сегодня этот экран глючить. Причем так странно, что я даже не знаю в какую сторону копать. Значит так: в случайный момент времени тухнет половина экрана. Может быть правая, может левая. В логах xorg ничего, а изображение только на половине матрицы. Исправляется через

xrandr --output LVDS1 --off && sleep 5 && xrandr --output LVDS1 --auto
иногда надо повторить несколько раз. происходит примерно раз в 10-15 минут. Я так понял, нетбук нужно нести в ремонт и это не софтовая проблема?

 , ,

Komintern
()

Выбираю годный телефон

Форум — Mobile

Привет, ЛОР. Выбираю сейчас телефон, который не боится суровых условий эксплуатации. Предположительно, буду брать что-то из этих трёх:
AGM Rock V5 2013 - http://rugged.com.ua/protected-phones/agm-rock-v5
Outfone BD618 - http://rugged.com.ua/protected-phones/outfone-bd618
Lenovo A660 - http://rugged.com.ua/review/obzor-zashhishhennogo-telefona-lenovo-a660

Уверен, тут есть пользователи похожих девайсов - что порекомендуете? Что из вышеуказанных или подобных девайсов выбрали бы вы?

Перемещено mono из talks

 , ,

Komintern
()

UDP-флуд

Форум — Admin

Всем привет. На один и тот же ip указывает около 3 десятков доменов. Один из них флудят по UDP таким образом:

13:50:47.731540 IP 90.80.172.242 > x.x.x.x: udp
13:50:47.731666 IP 24.155.198.153 > x.x.x.x: udp
13:50:47.731790 IP 113.106.0.199 > x.x.x.x: udp
13:50:47.731915 IP 80.50.231.86 > x.x.x.x: udp
13:50:47.731934 IP 176.122.125.176 > x.x.x.x: udp
13:50:47.732165 IP 67.240.161.95 > x.x.x.x: udp
13:50:47.732290 IP 80.50.231.86 > x.x.x.x: udp

tcpdump показывает только ip, но можно ли выявить какой из множества доменов хотят зафлудить?

 ,

Komintern
()

Помогите вспомнить рассказ

Форум — Talks

Мир ЛОРу вашему. Посмотрел вот новую (10ю) серию DW (про призрак) и вспомнил что был похожий рассказ у Стругацких. Периодически возникающий силует человека в скафандре, на который жители приходили посмотреть как на местную достопримечательность. На самом деле то был путешественник во времени (или в космосе), и его время было рассинхронизировано со временем наблюдателей. К сожалению больше никаких подробностей не помню, но надеюсь что анонимный разум ЛОРа поможет вспомнить название рассказа.

 ,

Komintern
()

SSHD и панамские боты

Форум — Admin

Всем привет. Мои странности выглядят следующим образом: в какой-то момент на серваке с FreeBSD 9.1-RELEASE перестает отвечать sshd. Вот так:

$ ssh -v srv
OpenSSH_6.1p1, OpenSSL 1.0.1e 11 Feb 2013
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Connecting to srv [192.168.0.5] port 22.
debug1: Connection established.
debug1: identity file /home/komintern/.ssh/id_rsa type -1
debug1: identity file /home/komintern/.ssh/id_rsa-cert type -1
debug1: identity file /home/komintern/.ssh/id_dsa type -1
debug1: identity file /home/komintern/.ssh/id_dsa-cert type -1
debug1: identity file /home/komintern/.ssh/id_ecdsa type -1
debug1: identity file /home/komintern/.ssh/id_ecdsa-cert type -1
Дальше замирает и висит. Начал анализировать что же делает sshd. Выявил интересную картину, итак:
lsof -p по парент-процессу sshd:
sshd    940 root    3u  IPv4 0xfffffe0198bbc3d0      0t0    TCP *:ssh (LISTEN)
sshd    940 root    4u  IPv4 0xfffffe02f182fb70      0t0    TCP srv:64810->193.255.191.181.rdns.panamaserver.com:http (CLOSED)
sshd    940 root    5u  IPv4 0xfffffe04c1eedb70      0t0    TCP srv:50593->193.255.191.181.rdns.panamaserver.com:http (CLOSED)
sshd    940 root    6u  IPv4 0xfffffe06530077a0      0t0    TCP srv:61666->193.255.191.181.rdns.panamaserver.com:http (CLOSED)
sshd    940 root    7u  IPv4 0xfffffe01c9e517a0      0t0    TCP srv:12042->193.255.191.181.rdns.panamaserver.com:http (CLOSED)
sshd    940 root    8u  IPv4 0xfffffe042c7e9b70      0t0    TCP srv:31370->193.255.191.181.rdns.panamaserver.com:http (CLOSED)
sshd    940 root    9u  IPv4 0xfffffe0381fc63d0      0t0    TCP srv:64563->193.255.191.181.rdns.panamaserver.com:http (CLOSED)
sshd    940 root   10u  IPv4 0xfffffe03f92bb3d0      0t0    TCP srv:64565->193.255.191.181.rdns.panamaserver.com:http (CLOSED)
sshd    940 root   11u  IPv4 0xfffffe07effba3d0      0t0    TCP srv:64566->193.255.191.181.rdns.panamaserver.com:http (CLOSED)
sshd    940 root   12u  IPv4 0xfffffe01798353d0      0t0    TCP srv:10607->193.255.191.181.rdns.panamaserver.com:http (CLOSED)
sshd    940 root   13u  IPv4 0xfffffe06a51ea000      0t0    TCP srv:64569->193.255.191.181.rdns.panamaserver.com:http (CLOSED)
sshd    940 root   14u  IPv4 0xfffffe06cca01b70      0t0    TCP srv:10614->193.255.191.181.rdns.panamaserver.com:http (CLOSED)
sshd    940 root   15u  IPv4 0xfffffe057c7267a0      0t0    TCP srv:10616->193.255.191.181.rdns.panamaserver.com:http (CLOSED)
sshd    940 root   16u  IPv4 0xfffffe015b0277a0      0t0    TCP srv:12066->193.255.191.181.rdns.panamaserver.com:http (CLOSED)
в общем дохрена таких соединений CLOSED. очень много.

sockstat:

root     sshd       940   3  tcp4   *:22                  *:*
root     sshd       940   4  tcp4   192.168.0.5:64810   181.191.255.193:80
root     sshd       940   5  tcp4   192.168.0.5:50593   181.191.255.193:80
root     sshd       940   6  tcp4   192.168.0.5:61666   181.191.255.193:80
root     sshd       940   7  tcp4   192.168.0.5:12042   181.191.255.193:80
root     sshd       940   8  tcp4   192.168.0.5:31370   181.191.255.193:80
root     sshd       940   9  tcp4   192.168.0.5:64563   181.191.255.193:80
root     sshd       940   10 tcp4   192.168.0.5:64565   181.191.255.193:80
root     sshd       940   11 tcp4   192.168.0.5:64566   181.191.255.193:80
root     sshd       940   12 tcp4   192.168.0.5:10607   181.191.255.193:80
root     sshd       940   13 tcp4   192.168.0.5:64569   181.191.255.193:80
root     sshd       940   14 tcp4   192.168.0.5:10614   181.191.255.193:80
root     sshd       940   15 tcp4   192.168.0.5:10616   181.191.255.193:80
root     sshd       940   16 tcp4   192.168.0.5:12066   181.191.255.193:80
root     sshd       940   17 tcp4   192.168.0.5:12072   181.191.255.193:80
root     sshd       940   18 tcp4   192.168.0.5:45528   181.191.255.193:80
root     sshd       940   19 tcp4   192.168.0.5:46683   181.191.255.193:80
root     sshd       940   20 tcp4   192.168.0.5:46687   181.191.255.193:80
в общем опять же куча таких вот сокетов.

netstat:

tcp4       0      0 192.168.0.5.15718    181.191.255.193.80     CLOSED
tcp4       0      0 192.168.0.5.52468    181.191.255.193.80     CLOSED
tcp4       0      0 192.168.0.5.29572    181.191.255.193.80     CLOSED
tcp4       0      0 192.168.0.5.16004    181.191.255.193.80     CLOSED
tcp4       0      0 192.168.0.5.63611    181.191.255.193.80     CLOSED
tcp4       0      0 192.168.0.5.63610    181.191.255.193.80     CLOSED
tcp4       0      0 192.168.0.5.63609    181.191.255.193.80     CLOSED
tcp4       0      0 192.168.0.5.51769    181.191.255.193.80     CLOSED
tcp4       0      0 192.168.0.5.51764    181.191.255.193.80     CLOSED
tcp4       0      0 192.168.0.5.51763    181.191.255.193.80     CLOSED
tcp4       0      0 192.168.0.5.51761    181.191.255.193.80     CLOSED
tcp4       0      0 192.168.0.5.51752    181.191.255.193.80     CLOSED
tcp4       0      0 192.168.0.5.51751    181.191.255.193.80     CLOSED
tcp4       0      0 192.168.0.5.33789    181.191.255.193.80     CLOSED

При этом, на сервере установлен fail2ban, в логах которого данный адрес никак не фигурирует. Вопрос: с чем я столкнулся? Это лечится перезапуском sshd, но каким образом этот странный панамский бот мог повесить мне демона? Благодарен за любые мысли по теме.

 ,

Komintern
()

Поясните плз про HTML5-видео

Форум — Web-development

Привет ЛОР. Есть один сайт, и на сайте нужно запилить видео с ограничением доступа - т.е чтобы его видеть (и скачивать) мог только тот, кто залогинен. Для единообразия было решено загружать все видео в webm-формате, выводить через html5 и играть этой штукой http://www.projekktor.com/ Чтобы обеспечить ограничения, было решено отдавать видеофайл через питоновский FileWrapper:

def serve_video(request, id):                                                                                                                                
  if request.user.is_authenticated():                                                                                                                     
    v = SiteVideo.objects.get(id=id)                                                                                                                         
    file = FileWrapper(open(v.file.path, 'rb'))                                                                                                              
    response = HttpResponse(file, content_type='video/webm')                                                                                                 
    response['Content-Length'] = os.path.getsize(v.file.path)                                                                                                
    return response                                                                                                                                          
  else:                                                                                                                                                   
    raise Http403
Так вот. Проблема собственно в том, что видео - не перематывается. Клик по панели перемотки в плейере не делает ровно ничего. Хотелось бы знать возможную причину. Я пока думаю о следующем: либо нужно отдавать файл не тупо через FileWrapper, а как-то совсем по-другому. или же nginx, стоящий фронтендом, нужно куда-то пнуть. Читал про модуль стриминга для какого-то другого формата, но там же упоминалось что в webm он не нужен, и что прокрутка webm - браузероспецифична. или третий вариант - таки глючит сам виджет перемотки в projekktor. Кто в курсе вообще, как эта перемотка работает - помогите достичь просветления.

 ,

Komintern
()

Вопрос по Mercurial

Форум — Development

Ищется прога (очень желательно web, но но можно и GUI), для следующей задачи: 2 hg-репозитория, нужно смотреть что по pull придет с одного в другой (как hg incoming), с возможностью отметить флажками нужные коммиты и сделать hg pull затем hg update одним кликом. Из того, что смотрел - trac, rhodecode, hgweb - делать pull никто не умеет. Такого софта и правда нет, или я не так ищу?

 

Komintern
()

О системах контроля версий

Форум — Talks

Здравствуй, коллективный разум ЛОРа. Вопрос может внезапно оказаться флеймообразующим, потому лучше сразу в Talks. Итак, хочу понять для себя системы контроля версий - но совершенно не знаю какая из них подойдет под мои (скромные?) нужды. А надо мне всего-то - несколько веток репозитория, разграничение прав доступа к ним. К примеру в одну может вносить изменения только админ, в другую ветку - могут все, но все могут клонировать к себе первую, кроме нескольких отдельно взятых файлов, к которым опять же доступ только у админа. Что на эту тему почитать есть, товарищи? Если по-русски еще, то вообще ништяк! И да, я ни разу в жизни не использовал ни одну из них. И даже не совсем понимаю, они ли нужны для того что я выше описал? Обьясните как вы умеете =)

 , , ,

Komintern
()

Дикие, дикие странности!

Форум — Admin

Чуваки, вы не поверите что у меня случилось!
Внезапно сломалась на FreeBSD 9.0 авторизация по паролю в sshd. База пользователей - в LDAP, локально ldap-пользователь спокойно входит с паролем, удаленно но по ключу - тоже спокойно входит. А вот удаленный вход с паролем не получается, при этом SSHD не говорит ничего кроме:

Failed password for user from ip port 100500 ssh2
Getent работает корректно, данные о пользователях из LDAP тянутся без каких-либо проблем. Что перед этим делал - ставил php-pdo_pgsql, изменялись в /var/db/pkg вот эти пакеты:
Feb 28 15:01:21 2013 php52-pdo_pgsql-5.2.17_11
Feb 28 15:00:08 2013 gettext-0.18.1.1
Feb 28 15:00:08 2013 php52-5.2.17_9
Feb 28 15:00:08 2013 php52-pdo-5.2.17_9
Feb 28 15:00:08 2013 postgresql-client-9.0.8
Feb 28 15:00:08 2013 libiconv-1.14
Feb 28 15:00:08 2013 libxml2-2.7.8_3
Никакой связи с авторизацией по SSH не вижу, потому не уверен что сломалось именно поэтому. Конфиги
- /etc/nsswitch.conf
group: files ldap
group_compat: nis
hosts: files dns
networks: files
passwd: files ldap
passwd_compat: nis
shells: files
services: compat
services_compat: nis
protocols: files
rpc: files

- /etc/ssh/sshd_config почти дефолтный, не закомментировано всего 3 строчки:

ClientAliveInterval 2400
UseDNS no
Subsystem	sftp	/usr/libexec/sftp-server

- /usr/local/etc/nss_ldap.conf

host localhost
uri ldapi://%2fvar%2frun%2fopenldap%2fldapi/
base dc=server2,dc=root
ldap_version 3
binddn cn=admin,dc=root
bindpw ololopwd
scope one
timelimit 30
bind_timelimit 10
bind_policy soft
nss_connect_policy persist
nss_paged_results yes
pagesize 3000

# system users 
nss_base_group ou=groups,dc=server2,dc=root?one
nss_base_passwd ou=users,dc=server2,dc=root?one
nss_base_shadow ou=users,dc=server2,dc=root?one

- /usr/local/etc/ldap.conf

uri ldapi://%2fvar%2frun%2fopenldap%2fldapi/
ldap_version 3
bind_timelimit 30
bind_policy soft
idle_timelimit 3600
pam_filter objectclass=posixAccount
pam_login_attribute uid
pam_min_uid 500
pam_max_uid 65530
pam_password SSHA

# system users 
nss_base_group ou=groups,dc=server2,dc=root?one
nss_base_passwd ou=users,dc=server2,dc=root?one
nss_base_shadow ou=users,dc=server2,dc=root?one

- /etc/pam.d/sshd

auth		sufficient	pam_opie.so		      no_warn no_fake_prompts
auth		requisite	pam_opieaccess.so	      no_warn allow_local
auth            sufficient      /usr/local/lib/pam_ldap.so    no_warn
auth		required	pam_unix.so		      no_warn try_first_pass

account		required	pam_nologin.so
account		required	pam_login_access.so
account         sufficient      /usr/local/lib/pam_ldap.so
account		required	pam_unix.so

session		required	pam_permit.so
password        sufficient      /usr/local/lib/pam_ldap.so    no_warn

password	required	pam_unix.so		      no_warn try_first_pass

- /etc/pam.d/system (системный вход, напоминаю - работает)

auth		sufficient	pam_opie.so		   no_warn no_fake_prompts
auth		requisite	pam_opieaccess.so	   no_warn allow_local
auth            sufficient      /usr/local/lib/pam_ldap.so
auth		required	pam_unix.so		   no_warn try_first_pass nullok
account		required	pam_login_access.so
account         sufficient      /usr/local/lib/pam_ldap.so
account		required	pam_unix.so
session		required	pam_lastlog.so		    no_fail
password        sufficient      /usr/local/lib/pam_ldap.so
password	required	pam_unix.so		no_warn try_first_pass

Даже не знаю приблизительного направления куда ковырять. И не уверен что сломалось из-за пересборки вышеуказанных пакетов. Более пакетов в системе не менялось до того момента пока все еще работало. Оракулы BSD, и волшебники PAM, обратите внимание на мою проблему плз.

 , , ,

Komintern
()

Кто решит задачку?

Форум — Talks

http://de.trinixy.ru/pics5/20130215/podborka_131.jpg

Ъ:
Каждый зритель, пришедший на концерт группы Smash, принёс с собой либо дохлую кошку, либо 2 кочана гнилой капусты, либо 3 тухлых яйца. Кошек было 64. Два певца - беленький и черненький, были забросаны, и каждый получил поровну предметов (промахов не было). Беленький принял лишь пятую часть всех яиц и седьмую часть капусты, но все кошки полетели именно в него. Сколько зрителей было на концерте?

 ,

Komintern
()

Слака в топе =)

Форум — Talks

http://www.opennet.ru/opennews/art.shtml?num=36035

Ъ:
Подведены итоги голосования среди участников форума LinuxQuestions.org по выбору лучших приложений 2012 года:
# Десктоп дистрибутив - Slackware (20.59%). За Ubuntu и Linux Mint в сумме проголосовало около 40%, но по отдельности они отстали от Slackware.
# Мобильная платформа - Android (66.86%);
# Офисный пакет - LibreOffice (85.14%);
# Десктоп среда - KDE (31.31%), в прошлом году лидировал GNOME;
# Оконный менеджер - Openbox (17.53%), в прошлом году лидировал Compiz;

^____^
вперёд

 , ,

Komintern
()

Репликация нескольких поддеревьев

Форум — Admin

Привет, ЛОР. Дело в том, что есть один лдап, и он содержит в себе много подветвей, для примера:
dc=root,dc=servers
dc=root,dc=servers,ou=auth
dc=root,dc=servers,dc=server1
dc=root,dc=servers,dc=server2
...

Хочется чтобы server1 и server2 реплицировали каждый свою ветку, но оба реплицировали ветку auth. Как в данном случае организовать syncrepl? Если указывать searchbase dc=servers, то каждый сервер реплицирует ветки остальных - этого хотелось бы избежать. Ваши советы? )

 ,

Komintern
()

Кто идет завтра на концерт?

Форум — Talks

Собственно концерт: http://festrestdivan.com.ua/?p=9747
Не обижаем Ъ:
2 февраля (суббота) в 19:00 в фестиваль-ресторации «Диван» (на Бессарабке) с сольным трёхчасовым концертом выступит группа «Аддис Абеба».
Уже стало традицией, что концерт группы совпадает с главным празднованием Дня Рождения Короля Регги – Боба Марли.

У меня есть один лишний билетик, дарится бесплатно =)

зы: и что за НЕХ творится с черно-синей темой?

 ,

Komintern
()

Django и его проекты

Форум — Web-development

Ранее когда создавал проект через django-admin (django-admin.py startproject shop) - создавался каталог shop, в котором размещались settings.py, urls.py, manage.py и т.д, если же создаешь через manage.py приложение - создается одноименный с приложением каталог, в котором уже есть models, views и свои urls.
Теперь же django-admin создает каталог shop, в котором лежит manage.py и еще один каталог shop! - зачем? Является ли это приложением shop внутри проекта shop или как вообще? Можно ли вернуть старое и более логичное поведение? Нужно ли теперь создавать через manage.py приложение, или оно создается одноименное с проектом при создании проекта? Тогда куда ложить корневой urls.py и settings.py? Джангисты, кто следил за этой вакханалией в ченджлоге - поясните плз как теперь расово верно поступать. Мой проект - это одно приложение, один интернет-магазин, и нужно сделать структуру максимально простой. Благодарю =)

Перемещено true_admin из development

 , ,

Komintern
()

Поведение wget на разных системах

Форум — General

Всем привет. Грабля, о которой ниже пойдет речь - возможно очень элементарна, легко чинится добавлением ключа -O к wget, но суть ее такова:
- машина на работе со Slackware 12:

komintern@komintern:~$ wget --version
GNU Wget 1.11.4

komintern@komintern:~$ wget http://www.ex.ua/get/2199437
--2013-01-02 18:52:28--  http://www.ex.ua/get/2199437
Распознаётся www.ex.ua... 77.120.115.184
Устанавливается соединение с www.ex.ua|77.120.115.184|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 302 Moved
Адрес: http://fs152.www.ex.ua/get/de795d6ecf8e53413da1c47b5df63585/2199437/Doctor.Who0.avi [переход]
--2013-01-02 18:52:28--  http://fs152.www.ex.ua/get/de795d6ecf8e53413da1c47b5df63585/2199437/Doctor.Who0.avi
Распознаётся fs152.www.ex.ua... 46.182.85.104
Устанавливается соединение с fs152.www.ex.ua|46.182.85.104|:80... соединение установлено.
Запрос HTTP послан, ожидается ответ... 200 OK
Длина: 584417280 (557M) [video/x-msvideo]
Сохраняется в каталог: `Doctor.Who0.avi'

- и нетбук, Slackware 14:

komintern@komintern-netbook:~$ wget --version
GNU Wget 1.14 для linux-gnu.

komintern@komintern-netbook:~$ wget http://www.ex.ua/get/2199437
--2013-01-02 18:44:52--  http://www.ex.ua/get/2199437
Распознаётся www.ex.ua (www.ex.ua)... 77.120.115.184
Подключение к www.ex.ua (www.ex.ua)|77.120.115.184|:80... соединение установлено.
HTTP-запрос отправлен. Ожидание ответа... 302 Moved
Адрес: http://fs151.www.ex.ua/get/894dd410b6b24cabc1d78e70aabe2126/2199437/Doctor.Who0.avi [переход]
--2013-01-02 18:44:52--  http://fs151.www.ex.ua/get/894dd410b6b24cabc1d78e70aabe2126/2199437/Doctor.Who0.avi
Распознаётся fs151.www.ex.ua (fs151.www.ex.ua)... 46.182.85.103
Подключение к fs151.www.ex.ua (fs151.www.ex.ua)|46.182.85.103|:80... соединение установлено.
HTTP-запрос отправлен. Ожидание ответа... 200 OK
Длина: 584417280 (557M) [video/x-msvideo]
Сохранение в: «2199437»

В первом случае файл получает нормальное название, во втором - название берется из URL. Хочется добиться на нетбуке такого же адекватного именования файлов wget-ом. Что предпринять?

 ,

Komintern
()

ZCOM XI-1500 - очень странная точка доступа

Форум — Linux-hardware

Нашел на балконе сабжевого зверя. Блок питания валялся рядом, при включении лампочка power горит, т.е с виду рабочий. Подключил его к ethernet (пробовал и обычный кабель, и кроссовер), сбросил настройки кнопкой default на заднице девайса. В мануалах пишут что должна быть доступна веб-морда на 192.168.1.1 - ну я на свой интерфейс набил 192.168.1.2/24, проверяю: линк есть, мака от 192.168.1.1 не вижу - incomplete. Точка сломана, или я где-то туплю и она настраивается как-то по-другому?

 no name, , z-com,

Komintern
()

SSD-накопитель и Фря

Форум — Admin

Имеется следующая SSDшка:

ada1: <INTEL SSDSC2CT060A3 300i> ATA-9 SATA 2.x device
ada1: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes)
Посоветуйте, если есть у кого опыт - какая из FreeBSDшных ФС работает с SSD лучше - UFS2 или ZFS? Что следует учесть при настройке и эксплуатации?

 ,

Komintern
()

Специфичный тюнинг postgresql

Форум — Admin

Всем привет. Я надеюсь призвать в этот тред богов постгреса, которые подскажут мне секреты его тюнинга.
Итак, есть сервер, который будет обслуживать чисто каталог bacula (который на mysql с innodb занимал 120Гб, из которых 95Гб было в одной таблице), на postgresql.
В сервере установлен не слабый CPU:

Intel(R) Core(TM) i7-3820 CPU @ 3.60GHz 
1 package(s) x 4 core(s) x 2 SMT threads
и 64Gb RAM

Требования у bacula таковы:
- очень сложные многоэтажные селекты, для примера:

SELECT Path.Path, Filename.Name, T1.FileIndex, T1.JobId, LStat, DeltaSeq FROM ( SELECT FileId, Job.JobId AS JobId, FileIndex, File.PathId AS PathId, File.FilenameId AS FilenameId, LStat     , File.DeltaSeq AS DeltaSeq, Job.JobTDate AS JobTDate FROM Job, File, ( SELECT MAX(JobTDate) AS JobTDate, PathId, FilenameId, DeltaSeq FROM ( SELECT JobTDate, PathId, FilenameId, DeltaSeq FROM File JOIN Job USING (JobId) WHERE File.JobId IN(3401,3532,3614,3694,3774,3858,4048,4127,4215,4297,4377,4568,4652,4751,4833) UNION ALL SELECT JobTDate, PathId, FilenameId, DeltaSeq FROM BaseFiles JOIN File USING (FileId) JOIN Job  ON    (BaseJobId = Job.JobId) WHERE BaseFiles.JobId IN(3401,3532,3614,3694,3774,3858,4048,4127,4215,4297,4377,4568,4652,4751,4833) ) AS tmp GROUP BY PathId, FilenameId, DeltaSeq ) AS T1 WHERE (Job.JobId IN ( SELECT DISTINCT BaseJobId FROM BaseFiles WHERE JobId IN (3401,3532,3614,3694,3774,3858,4048,4127,4215,4297,4377,4568,4652,4751,4833)) OR Job.JobId IN(3401,3532,3614,3694,3774,3858,4048,4127,4215,4297,4377,4568,4652,4751,4833)) AND T1.JobTDate = Job.JobTDate AND Job.JobId = File.JobId AND T1.PathId = File.PathId AND T1.FilenameId = File.FilenameId ) AS T1 JOIN Filename ON (Filename.FilenameId = T1.FilenameId) JOIN Path ON (Path.PathId = T1.PathId) WHERE FileIndex > 0 ORDER BY T1.JobTDate, FileIndex ASC

- ну и многочисленные параллельные insert-ы во время выполнения ежесуточного бекапа большого количества файлов;

Интересует, как бы оптимальнее настроить postgres для такой вот единственной базы? Пока остановился на следующем:

max_connections = 150 # в bacula director стоит max concurrent 150
shared_buffers = 15GB
temp_buffers = 8GB
wal_buffers = 16MB
work_mem = 512MB
maintenance_work_mem = 1GB 
effective_cache_size = 42GB
fsync = off
synchronous_commit = off
wal_sync_method = fsync 
random_page_cost = 2.0
cpu_tuple_cost = 0.001
cpu_index_tuple_cost = 0.0005
track_counts = on
update_process_title = off
autovacuum = on
autovacuum_vacuum_threshold = 5000
autovacuum_analyze_threshold = 2500 
default_statistics_target = 50
constraint_exclusion = on
checkpoint_segments = 16

Что в этом конфиге кажется вам диким? Или просто неоптимальным? Подскажите, т.к не имею большого опыта в настройке Постгреса. Версия PG: postgresql-server-9.2.1

Все это стоит на FreeBSD, там установил вот что:

kern.ipc.shm_use_phys=1
kern.ipc.semmni=256
kern.ipc.semmns=1024
kern.ipc.somaxconn=4096
kern.ipc.shmmax=17179869184
kern.ipc.shmall=15395266600
kern.maxfiles=256000
kern.maxfilesperproc=240000
kern.maxvnodes=500000
kern.threads.max_threads_per_proc=4096
vm.pmap.shpgperproc=4900
vm.pmap.pv_entry_max=32000000

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

 ,

Komintern
()

Требуется консультация Джангистов по общим вопросам

Форум — Development

Всерьез столкнулся с Django, и не так сложна сама разработка, как непонятны многие особенности работы и мелочи. Очень надеюсь что коллективный разум ЛОРа даст мне полезные советы. Итак, вопросы:
1. Использую в качестве сервера Nginx + uwsgi - годная ли связка, или сейчас модно подымать джангу как-то по-другому?

2. Путаюсь с «проектом» (который django-admin.py startproject) и «приложением» (которое manage.py startapp appname).
Мне нужно чтобы при входе на http://domain.com/ отображалось мое приложение, которое внутри проекта, и чтобы в этом приложении работать с URL-ами от корня, а не от какого-то префикса. Сейчас все сделано таким вот образом:
nginx.conf:

# django
   upstream django {
     ip_hash;
     server unix:/tmp/uwsgi.sock;
   }
   server {
        server_name domain.com;
        listen 192.168.2.5;
        location / {
            uwsgi_pass  django;
            include     uwsgi_params;
        }
   }
uwsgi_flags:
"-M -L -p 4 --python-path /usr/local/www/myproject/ --chdir /usr/local/www/myproject/ -w django_wsgi"
django_wsgi.py в /usr/local/www/myproject/:
#!/usr/local/bin/python
import os
import sys

sys.path.insert(0, os.path.dirname(__file__))
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
os.environ['PYTHON_EGG_CACHE'] = '/tmp/eggs'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

В /usr/local/www/myproject/ лежит settings.py, в котором указаны параметры базы Mysql, все такое, и в кортеже INSTALLED_APPS добавлено мое приложение. Я так понимаю, что нужно верно написать urls.py, чтобы получить то, что я хочу. Сейчас корневой /usr/local/www/myproject/urls.py имеет вид:

urlpatterns = patterns('',
    (r'^myapp/', include('MyApp.urls')),
)
А /usr/local/www/myproject/MyApp/urls.py соответственно содержит:
urlpatterns = patterns('',
    (r'^$', index),
    (r'^domains/', domains),
    (r'^auth/', auth),
)
Вопрос простой: как сделать, чтобы приложение корректно работало при входе не по ссылке http://domain.com/myapp/, а при входе на http://domain.com ?

3. Опять же вопрос правильности. Встречал в разной документации несколько разных способов передачи данных в шаблон. Первый к примеру такой:
return render_to_response('template.html', { словарь-с-данными })
Второй немного иначе и сложнее выглядит:
    mytemplate = loader.get_template("template.html")
    mycontext = Context({ словарь-с-данными })
    return HttpResponse(mytemplate.render(mycontext))
Какой правильнее? Или дело чисто привычки и желания?

4. View-функция может возвращать допустим не только отрендереную страницу, а и редирект. Сейчас для редиректов использую
return redirect('/url/')
из шорткатов, одобряется ли джангистами такой способ, или есть что-то более специфичное?

Буду благодарен, особенно за ответ на второй вопрос.

 , ,

Komintern
()

Помогите разобраться с SSL

Форум — Admin

Ситуация: приобрели wildcard SSL certificate у RapidSSL. Для того, чтобы реализовать TLS в pure-ftpd, нужно создать один PEM-файл, содержащий приватный ключ, собственно сертификат, intermediate и root certs. Так вот, эти две последних штуки прислала сама техподдержка RapidSSL. Создаю PEM:

cat cert.key cert.crt rapidbundle.txt > cert.pem
И он не проходит верификацию с ошибкой:
error 20 at 0 depth lookup:unable to get local issuer certificate

Гугль находит много всего, но никакой конкретики я найти не осилил. Хелп чтоли :)

 ,

Komintern
()

RSS подписка на новые темы