?

Log in

No account? Create an account

Entries by category: it

[sticky post]We Missed You
Strawberry
sanmai


Архив в DW

Фото в инстаграм

Linux, nginx, PHP, Let's Encrypt...

Прозрачный обход блокировок через Tor
Mac
sanmai
обход блокировок

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

Что если вы хотите заходить и на запрещенные сайты, и на обычные, и чтобы при этом скорость, с которой открываются обычные сайты, не страдала? Что если вам интересно знать что творится в удалённых частях глобальной сети, не теряя в удобстве?

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

( Инструкция по настройке серверов и роутеров под Linux для обхода блокировок через Tor )

P.S.: Посты с фото еще будут. Пока жизнь затянула...

JSON Курсы ЦБ РФ


Краткая заметка о переезде на bcache
Cola with Ice
sanmai
SATA HDD

Напишу по свежей памяти о переходе на bcache под Debian "jessie".
Если не в теме - пролистайте дальшеCollapse )

Лотерея без обмана
Smooth green tea
sanmai


Что делать, если вы хотите разыграть лотерею, но хотите исключить "фактор веры" в устроителя лотереи и всякую возможность для манипуляции результатами лотереи?

Короткий рассказ и программа для розыгрышаCollapse )

Скопировать только GPS тэги с помощью ExifTool
Canon
sanmai


Копируем GPS теги с помощью ExifToolCollapse )
Tags: ,

Прозрачное кэширование в nginx, для всех и каждого
Cola with Ice
sanmai

Представим, что у нас есть сайт, на который регулярно даёт ссылки navalny.
Нам нужно защитить его от всплесков посещаемости. Как это сделать?

С версии 0.8.46 в nginx появились опции, позволяющие легко и просто настроить прозрачное кэширование для анонимных пользователей.

Для работы этой схемы от сайта требуется очень мало: достаточно лишь не начинать сессию, то есть не отправлять сессионную куку, без явной на то необходимости. Редкий сайт нельзя довести до такого состояния, а значит большинство сайтов можно защитить от резких всплесков посещаемости с помощью nginx с минимальными затратами сил и времени.

Прозрачное кэширование в nginx для всех и каждогоCollapse )

Как разместить сайт с помощью Git: быстрый и простой деплой с помощью Git
Linux
sanmai

Автоматический деплой из Git? Есть ответ!

Легко сделать из Git быструю и удобную замену FTP, rsync или чем вы сейчас пользуетесь для выгрузки исходников на целевой сервер.

Огромный плюс такого подхода: вам не нужны никакие дополнительные действия на сервере кроме настройки хуков Git, которые вызываются при git push.

Забудьте о sudo и мутных шелл-скриптых, которые невозможно сходу понять. Забудьте о безпарольных ssh-ключах для доступа к GitHub и других костылях. Это всё не нужно. Лишь бы у вас на сервере был Git.

Приступим

На целевом сервере создадим пустой репозиторий:

~/www$ git init
Initialized empty Git repository in /home/example.com/www/.git/



( Дальше всё просто )

Разрешим перезапись текущей ветки:
~/www$ git config receive.denyCurrentBranch ignore
Добавим хук который будет делать всю работу:
~/www$ cat > .git/hooks/post-receive
#!/bin/sh
cd ..
GIT_DIR='.git'
git reset --hard
~/www$ chmod +x .git/hooks/post-receive
Теперь расскажем локальному репозитарию об удаленном:
$ git remote add --track master origin ssh://example.com@server.example.net/~/www/
Загрузим основную ветку на целевой сервер:
$ git push --set-upstream origin master
Всё!

В дальнейшем нам достаточно будет делать git push для выгрузки основной ветки на сервер когда нам это будет нужно.
Аналогично можно сделать для любой другой ветки заменив master на ее имя в командах.
Этот же репозитарий можно использовать как и любой другой для коллективной разработки.

Если вам настолько повезло нужно одновременно обновлять некий сайт как через Git, так и другими способами, чтобы загруженные иными способами изменения не пропали при очередном обновлении из-за git reset --hard, вам нужны другие хуки:
~/www$ cat > .git/hooks/pre-receive 
#!/bin/sh
cd ..
GIT_DIR='.git'
git stash save --quiet
git stash show || true
$ cat > .git/hooks/post-receive
#!/bin/sh
cd ..
GIT_DIR='.git'
git reset --hard
git stash pop --quiet || git reset --hard
~/www$ chmod +x .git/hooks/pre-receive .git/hooks/post-receive
В случае конфликтов вам нужно будет вручную сделать git stash pop на сервере и разрешить конфликты.

Если же вы хотите использовать похожую схему без хуков с ручным обновлением - ознакомьтесь с подводными камнями.

Правда про Японию, которую не покажут на российском ТВ
Strawberry
sanmai
Не плачьте по Японии - она всех нас ещё переживёт. Это вам не курсы ЦБ РФ в формате API получать.

ремонт дороги по дням в фотографияхCollapse )


USB HDD spindown
Hw details
sanmai
sg_start --stop переводит в режим пониженного энергопотребления, или делает spindown даже для подключенных по USB внешних дисков.

Например, так:
for i in /dev/disk/by-id/usb-*0; do sg_start --stop $i; done;
* sg_start живет в пакете sg3-utils

Кроме того, в Gentoo есть замечательный sys-block/spindown, который автоматизирует остановку дисков.
Tags: ,

Masterhost + SPF
Strawberry
sanmai
Пишу в Masterhost об ошибке:

> SMTP error from remote mail server after RCPT
> TO:<user@example.com>: host nmx5.masterhost.ru
> [90.156.155.55]: 550-rejected because 83.222.23.62 is not allowed to
> send mail from 550 example.com


При этом: 83.222.23.62 = relay2.mail.masterhost.ru.

А они мне и отвечают:Read more...Collapse )