Subscribe: dimzon541
http://www.liveinternet.ru/users/dimzon541/rss
Added By: Feedage Forager Feedage Grade B rated
Language: Danish
Tags:
Rate this Feed
Rate this feedRate this feedRate this feedRate this feedRate this feed
Rate this feed 1 starRate this feed 2 starRate this feed 3 starRate this feed 4 starRate this feed 5 star

Comments (0)

Feed Details and Statistics Feed Statistics
Preview: dimzon541

dimzon541



Поток не замутненного разумом сознания... :: LiveInternet



Copyright: dimzon541
 



Переход на Linux - GreedyTorrent на Python

Thu, 03 Feb 2011 20:33:02 +0300

За основу взял microproxy, добавил модификацию upload-а и поддержку цепочки прокси... #!/usr/bin/env python # -*- coding: utf-8 -*-   """ pyGreedTorrent This code is based on code based on microproxy.py written by ubershmekel in 2006.     """   PORT = 8080 UP_MULT = 5.53 DN_MULT = 0   ACTUAL_PROXY_HOST_PORT = () # Uncomment and modify line below to use chain proxy #ACTUAL_PROXY_HOST_PORT = '127.0.0.1', 3128   import re, socket, threading   reUP =  re.compile(r"(?<=\Wuploaded=)\d+", re.UNICODE ) reDOWN =  re.compile(r"(?<=\Wdownloaded=)\d+", re.UNICODE )   err403 = 'HTTP/1.0 403 Forbidden\r\n' \     +'Server: nginx/0.7.65\r\n' \     +'Date: Tue, 16 Nov 2010 14:20:07 GMT\r\n' \     +'Content-Type: text/html; charset=windows-1251\r\n' \     +'Content-Length: 169\r\n' \     +'Connection: close\r\n' \     +' 403 Forbidden' \     +''   regex = re.compile(r'http://(.*?)/', re.IGNORECASE)   def cheat_url( s ):     m = reUP.search( s )     m2 = reDOWN.search( s )     if m and m2 :         up = int( round( UP_MULT * int( m.group() ) ) )         down = int( round( DN_MULT * int( m2.group() ) ) )         return s[:m.start()] + str(up + down) + s[m.end():]     else:         return s       class ConnectionThread(threading.Thread):     def __init__(self, (conn,addr)):         self.conn = conn         self.addr = addr         threading.Thread.__init__(self)         def run(self):           data = self.conn.recv(1024*1024)         #print data         #print 11           host = regex.search(data).groups()[0]           data = cheat_url( data )                 request = socket.socket(socket.AF_INET, socket.SOCK_STREAM)         #request.settimeout(6)                 if ACTUAL_PROXY_HOST_PORT:             host = ACTUAL_PROXY_HOST_PORT         else:             i = host.find(':')             if i >= 0:                 host = host[:i], int(host[i+1:])             else:                 host = host, 80         try:                     request.connect( host )                             request.send( data )                   reply = ''                   while 1:                 temp = request.recv(1024)                       if ('' == temp):                     break                                     self.conn.send(temp)         except:   &nbs[...]



Переход на Linux - скрипт для каталогизации видео

Thu, 03 Feb 2011 05:09:22 +0300

Переписал таки на Python... #!/usr/bin/env python #encoding: UTF-8   ## [CONFIG] ############################################ duplicateFilePath = u"/home/dimzon/!test/duplicates.txt" locationFileName = u"ku-ku.txt" folderPathAll = u"/home/dimzon/!test/all" folderPathByFirstLetter = u"/home/dimzon/!test/by_letter" folderPathByYear = u"/home/dimzon/!test/by_year" sourceFolders = [\     u"/home/dimzon/!test/drives/1", \     u"/home/dimzon/!test/drives/2", \     u"/home/dimzon/!test/drives/3" ] ## [/CONFIG] ###########################################     import os,re   def get_first_letter( fileName ):     ltr = fileName[0].upper()     if "0123456789.,!@#$_()[]{}-".count(ltr):         return "(0-9)"     return ltr   reYear = re.compile(r"(?<=\D)(?:19|20)\d{2}(?=\D)", re.UNICODE )   def get_years(fileName):     return reYear.findall( fileName )       def clean_symlinks( folderPath ):     for i in os.listdir( folderPath ):         j = os.path.join( folderPath, i )         if os.path.islink( j ):             os.unlink( j )         elif os.path.isdir( j ):             clean_symlinks( j )             if len( os.listdir( j ) ) == 0 :                 print 11                 os.rmdir( j )             print 'Processing...'   clean_symlinks( folderPathAll ) clean_symlinks( folderPathByFirstLetter ) clean_symlinks( folderPathByYear )   knownFilms = {} for f in sourceFolders:     print f     for i in os.listdir( f ):         j = os.path.join( f, i )         if os.path.isdir( j ):             with open( os.path.join( j, locationFileName ) , 'w' ) as loc:                 loc.write( j.encode('utf-8') )             key = i.upper( )             if key in knownFilms :                 knownFilms[key][1].append( j )             else:                 knownFilms[key]=( i.strip() , [ j ] )   with open( duplicateFilePath , 'w' ) as loc:     for i in knownFilms.values():         if len(i[1]) != 1 :             loc.write( ('### ' + i[0] + '\n\r').encode('utf-8') )             for j in i[1] :                 loc.write( (j + '\n\r').encode('utf-8') )             loc.write( '\n\r\n\r' )   for i in knownFilms.values():     os.symlink( i[1][0] , os.path.join( folderPathAll , i[0] ) )     f = os.path.join( folderPathByFirstLetter , get_first_letter( i[0] ) )     if not os.path.exists( f ) :         os.mkdir( f )     os.symlink( i[1][0] , os.path.join( f , i[0] ) )     dt = get_years( i[0] )     for y in dt :   &nb[...]



Переход на Linux - структура каталога /nas

Wed, 02 Feb 2011 21:08:52 +0300

(image)
/nas/01_Incoming
Сюда автоматом переносятся торренты по завершении загрузки (отсюда-же они продолжают раздаваться)

/nas/01_Incoming/00_to_Sort
Сюда вручную переночу постопанные торренты (которые больше не раздаю). После чего скриптом оборачиваю отдельные avi-шнички в папочки. Далее в ручном режиме переименовываю папочки (даю осмысленные русские имена). После того как переименовал переношу в каталог /VIDEO на одном из винтов (где место есть).

/nas/02_Video/03_All
Символические ссылки на все папки с фильмами. Специальный скрипт находит папки /video/* на всех винтах и создаёт символические ссылки в /nas/02_Video/03_All

/nas/02_Video/01_ByLetter
Специальный скрипт находит папки /video/* на всех винтах, создаёт по первой букве из названия папочки подпапочку в /nas/02_Video/01_ByLetter, создает символическую ссылку

/nas/02_Video/02_ByYear
Аналогично предыдущему, только вместо первой буквы регулярным выражением выцепляется год создания

Собственно этот "волшебный скрипт" пока существует в виде программы для Windows7 (и вместо символических ссылок использует т.н. Junction Points). Кому надо - брать тут: http://dl.dropbox.com/u/2718637/jtool.zip
Для настройки открыть notepad-ом файл jtool.exe.config
Надеюсь в ближайшее время портировать его (скрипт) на питон. Заодно в планах научится читать теги (для папочки /nas/03_Audio/*

/nas/02_Video/02_Drives
здесь просто подмонтированы все HDD


Media Files:
http://dl.dropbox.com/u/2718637/nas-folders.PNG




Переход на Linux - настройки NFS, SAMBA, VSFTP

Wed, 02 Feb 2011 12:51:40 +0300

Поскольку сервер работает в рамка квартирной сети (за роутером/файрволом) то всем предоставляется полный доступ. Во внешний мир будут открыты только 2 порта - порт SSH и порт для uTorrent-а.

Шарится 1 папка /nas - остальное накидывается в нее через symlink-и

/etc/exports (NFS)
/nas           192.168.1.0/24(ro,no_subtree_check,insecure,all_squash)


/etc/samba/smb.conf (SAMBA)
[global]
guest account = nobody
map to guest = bad user

[nas]
comment = Public Shares
browsable = yes
path = /nas
public = yes
writable = yes
guest ok = yes


/etc/vsftpd.conf (VSFTP)
listen=YES
anonymous_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_upload_enable=YES
anon_umask=0000
no_anon_password=YES
local_enable=NO
dirmessage_enable=YES
write_enable=YES
anon_root=/nas
chown_uploads=YES
chown_username=me
log_ftp_protocol=YES
dual_log_enable=YES


Не заываем добавить вызов vsftpd в /etc/rc.local
vsftpd &



Переход на Linux - переписываем вспомогательные скрипты

Fri, 28 Jan 2011 21:12:12 +0300

Перед тем как переустановить сервер надо подготовить набор скриптов на замену используемым. Первый скриптик - скриптик создания каталогов. Задачка: просканировать каталог на наличие видеофайлов, для каждого файла создать подкаталог с аналогичным названием и перенести в него файл. Текущая версия на VBScript: option explicit   const DIR = "D:\TorrentDownload\00-to sort" const EXT = " \avi\mkv\mp4\flv\wmv\asf\mov\ts\"   dim oFSO: set oFSO=CreateObject("Scripting.FileSystemObject") dim oTargetDIR: set oTargetDIR = oFSO.GetFolder( DIR ) dim oFile dim sExt dim sDirName for each oFile in oTargetDIR.Files sExt = LCase(oFSO.GetExtensionName(oFile.Name)) if InStr( EXT, "\" & sExt & "\") > 0 Then sDirName = DIR & "\" & trim(oFSO.GetBaseName(oFile.Name)) If Not (oFSO.FolderExists( sDirName ) or oFSO.FileExists( sDirName )) Then oFSO.CreateFolder sDirName oFile.Move sDirName & "\" & oFile.Name End If end if next MsgBox "Done" Теперь переписанная на Python: #! /usr/bin/env python   import os, re   targetFolder = 'd:\!test' # CHANGE THIS!     ext = re.compile(r"^.+\.(?:avi|mov|mp4|mkv|wmv|asf|ts|m2ts|mpg|mpeg)$",re.IGNORECASE + re.UNICODE)   print 'Processing ' + targetFolder   for fileName in os.listdir(targetFolder): filePath = os.path.join( targetFolder, fileName ) if os.path.isfile( filePath ): if ext.match( fileName ): dirPath = os.path.join(targetFolder,(os.path.splitext(fileName)[0]).strip()) if not os.path.exists( dirPath ): os.mkdir( dirPath ) os.rename( filePath, os.path.join( dirPath, fileName ) )   print 'Done!'  [...]



Настройки Lubuntu 10.10 для NAS (в процессе)

Thu, 27 Jan 2011 21:43:25 +0300

Собрал себе сервер для квартиры, подумываю установить на него Lubuntu вместо Win7 x64, пока тренируюсь на виртуальной машине...
В этом посте задокументирую процесс установки и настройки.

Что хочется в идеале:

  • Нужен telnet/ssh доступ для настройки "если что"
  • Нужен доступ к GUI в качестве "крайней решительной меры"
  • Нужен доступ к файлам хранилища по NAS/SMB/FTP
  • Нужна торрент-качалка с возможностью удалённого управления
  • Нужна возможность подчитерить с рейтингом в торренте
  • Нужен WEB-интерфейс для поиска (по имени) файла/папки из NAS




1) Доступ по NFS - настраивается штатными средствами
2) Торрент-клиент - либо трансмишн либо uTorrentServer либо uTorrent+WINE
3) Для накрутки аплоада хорошо-бы написать свой аналог GreedyTorrent-а (такой прооостенький http-прокси на питон)
4) telnet/ssh вроде умею настраивать, надо бы нормальный GUI-доступ придумать, XRDP завести не вышло
5) NTFS винты цепляются и работают, работают символические ссылки на NTFS.
6) Для каталогизации видео надо-бы написать утилитку на питоне, собирающую все в одном месте с помощью soft links



Аватар

Wed, 13 Jan 2010 19:05:13 +0300

Решил вот, хоть и запоздало, написать пару слов.
Откровенно говоря удивляет глупость ГГ. Нет, речь не о том что он по сути "предал" свой народ/вид/планету. Я тоже разделяю его симпатию к Пандоре и На-Ви. Речь идёт о силовом решении конфликта. Ведь не надо быть семи пядей во лбу - если аноптаниум действительно настолько нужен землянам то через 6-12 лет (в зависимости от наличия/отсутствия средств связи со сверхсветовой скоростью) прилетят военные (армия а не просто не кучка наёмников), вооруженные до зубов в том числе средствами массового поражения, в том числе ядерным оружием. А уж мегатонной боеголовке, запущенной с орбиты, будет глубоко пофиг на магнитные возмущения и аномалии, ей достаточно попасть в радиусе нескольких километров чтобы "волшебному дереву" пришёл безоговорочный конец. И не надо говорить про моральные принципы и человечность - если речь идёт о выживании (а судя по всему именно об этом речь и идёт) человечество ничто не остановит. И почему ГГ (который собственно сам военный и сам всё должен это понимать) так дико тормозил мне непонятно...



"Яндекс" насчитал в России 27 населенных пунктов на букву "Ы"

Thu, 03 Dec 2009 17:37:11 +0300

Это цитата сообщения Chuma_1 Оригинальное сообщение"Яндекс" насчитал в России 27 населенных пунктов на букву "Ы" Интернет-поисковик "Яндекс" опубликовал статистику своего сервиса "Яндекс.Карты". Согласно отчету, в России более 170 тыс. населенных пунктов, длина всех рек превышает 3 млн километров, длина автомобильных дорог составляет около 1 млн километров, железных - 100 тыс. километров. Как оказалось, в России насчитывается 27 населенных пунктов с необычными для русскоговорящего человека названиями, начинающимися на букву "Ы", сообщает Газета GZT.ru. Среди них такие города, как Ыб и Ытык-Кюель, селения Ыллымах, Ыгятта, Ынахсыт, Ыястый. Во всех случаях речь идет о якутских топонимах. По данным других источников, в Якутии названий населенных пунктов на букву "Ы" насчитывается 32. Специалисты "Яндекса", проанализировав статистику, пришли к выводу, что более половины населенных пунктов России носят уникальные названия. Самый распространенный топоним - Александровка, в России целых 166 населенных пунктов с таким названием. Второе и третье по популярности названия - Михайловка (156) и Ивановка (150). Как заметно, все три самых распространенных топонима произошли от имен. Также названия населенных пунктов а России часто происходят от наименований растений, животных, особенностей ландшафта. Встречаются в названиях и упоминание религиозных праздников. Больше всего в России населенных пунктов на букву "К". На букву "Й" начинается только два названия в России - Йозефовка и Йошкар-Ола. Естественно, нет названий на буквы "Ь" и "Ъ". Самыми длинными названиями признаны села Кременчуг-Константиновское в Кабардино-Балкарии, Верхненовокутлумбетьево в Оренбургской области и Старокозьмодемьяновское в Тамбовской области. Что касается улиц российских городов, то компания проанализировала названия улиц в 379 российских городах. Чаще всего фигурируют улицы Лесная, Центральная, Садовая и Советская. Так как после распада СССР многие города переименовали улицы Ленина, такое название занимает только 23-ю строчку рейтинга популярности. Был проведен анализ сведений по самым крупным городам России. Среди российских городов, население котор[...]



Геннадий Постригайло - дебил или мудак?

Fri, 20 Nov 2009 00:22:05 +0300

Завязалась тут "беседа" в комментах.

Либо он дебил и не понимает что размещая на своём сайте "свою" аудиокнигу он тем самым сам нарушает авторские права автора и переводчика, либо он мудак, живущий по двойным стандартам и считающим что он вправе нарушать чужое авторское право а я его авторское право нарушать не могу...



print2flash - печатаем из любого приложения - получаем Flash

Thu, 19 Nov 2009 04:57:11 +0300

Сабж, ставится как виртуальный принтер. Для примера - моё резюме ;)

src="//flashframe.li.ru/showflash.html?tag_value=%2F%2Fdl.dropbox.com%2Fu%2F2718637%2FResume_RU.swf&flash_width=800&flash_height=600&style=background-color%3A%23FFFFFF%3B+" width=800 height=600 style="width:800;height:600; border:0px outset;" scrolling="no" frameborder="0">



Это жесть...

Wed, 11 Nov 2009 04:07:00 +0300


src="//flashframe.li.ru/showflash.html?tag_value=%2F%2Fwww.youtube.com%2Fv%2FghJxnl_tPFY%26hl%3Dru%26fs%3D1%26rel%3D0%26hd%3D1&flash_width=425&flash_height=355&style=background-color%3A%23FFFFFF%3B+" width=425 height=355 style="width:425;height:355; border:0px outset;" scrolling="no" frameborder="0">



Вир хабе говнише вестен

Sun, 08 Nov 2009 20:10:35 +0300


src="//flashframe.li.ru/showflash.html?tag_value=%2F%2Fwww.youtube.com%2Fv%2FgVZJsrymdQM%26hl%3Dru%26fs%3D1%26rel%3D0%26hd%3D1&flash_width=425&flash_height=355&style=background-color%3A%23FFFFFF%3B+" width=425 height=355 style="width:425;height:355; border:0px outset;" scrolling="no" frameborder="0">



Mr. Freeman

Thu, 29 Oct 2009 04:57:14 +0300


src="//flashframe.li.ru/showflash.html?tag_value=%2F%2Fflv.video.yandex.ru%2Fplayer%2F%3Fplaylist_url%3D%2F%2Fvideo.yandex.ru%2Fflash-api%2Fplaylist.xml%3Falbum%3D21%2526author%3Ddimzon541&flash_width=450&flash_height=318&style=background-color%3A%23FFFFFF%3B+" width=450 height=318 style="width:450;height:318; border:0px outset;" scrolling="no" frameborder="0">
Описание: Первая серия «заставляющего задуматься мультфильма», как писали в комментариях, от Mr. Freeman вышла 21 сентября. В какой-то степени это творение похоже на «запрещённую рекламу» Года молодёжи, созданную командой Шлегеля. На данный момент вышло уже 3 эпизода этого короткого мультфильма:

Первая серия, или "Mr. Freeman, part 0", озаглавленная словами "А ты уверен в том, кто ты такой, и что ты существуешь?".
Вторая серия "Mr. Freeman, part 64" с девизом "Где угодно и когда угодно...".
И третья, "Mr. Freeman, part 63" - "Ты слишком блондин!".
(Серии упорядочены по дате выхода)

Отзывы:
«Даже не знаю что сказать : одновременно и смешно и правдиво. Оригинально и красиво. Заставляет задуматься.» (PilotMax)
«Наверное о жизни и бездарном ее прожигании, о зависимости от вещей.» (Шмашка)
«Качественно сделанный вирус (я имею ввиду техническую сторону). Мотивация через демотивацию…» (mi3ch)



Большая разница — Гришковец в быту

Sun, 25 Oct 2009 22:20:50 +0300


src="//flashframe.li.ru/showflash.html?tag_value=%2F%2Fflv.video.yandex.ru%2Flite%2Fdimzon541%2Fxw7d8ster9.1510%2F&flash_width=450&flash_height=342&style=background-color%3A%23FFFFFF%3B+" width=450 height=342 style="width:450;height:342; border:0px outset;" scrolling="no" frameborder="0">



Проверка кросспостинга в ЖЖ

Sun, 25 Oct 2009 22:17:58 +0300

Сабж



Модифицируем реестр для "правильного" запуска Google Chrome со всеми "вкусными" штучк

Sun, 25 Oct 2009 22:00:39 +0300

Ищем в реестре все обращения к chrome.exe и дописываем параметры командной строки:
code:
--show-extensions-on-top --enable-extensions --bookmark-menu --enable-user-scripts --enable-local-storage



2 + 1 = ?

Sat, 24 Oct 2009 01:56:05 +0400


src="//flashframe.li.ru/showflash.html?tag_value=%2F%2Fflv.video.yandex.ru%2Flite%2Fdimzon541%2F86dvo23z0w.1310%2F&flash_width=450&flash_height=340&style=background-color%3A%23FFFFFF%3B+" width=450 height=340 style="width:450;height:340; border:0px outset;" scrolling="no" frameborder="0">



Евгений Гришковец — Перед съемкой "Одновременно"

Fri, 23 Oct 2009 01:54:02 +0400


src="//flashframe.li.ru/showflash.html?tag_value=%2F%2Fflv.video.yandex.ru%2Flite%2Fdimzon541%2Fi3l6nhm51v.1313%2F&flash_width=450&flash_height=338&style=background-color%3A%23FFFFFF%3B+" width=450 height=338 style="width:450;height:338; border:0px outset;" scrolling="no" frameborder="0">



Евгений Гришковец — Про день рождения

Thu, 22 Oct 2009 03:21:46 +0400


src="//flashframe.li.ru/showflash.html?tag_value=%2F%2Fflv.video.yandex.ru%2Flite%2Fdimzon541%2Fo17q3nhjse.1514%2F&flash_width=450&flash_height=326&style=background-color%3A%23FFFFFF%3B+" width=450 height=326 style="width:450;height:326; border:0px outset;" scrolling="no" frameborder="0">



Когда я стану миллионером...

Wed, 21 Oct 2009 05:46:43 +0400

куплю виллу на берегу моря + обязательно такой вот девайс:

src="//flashframe.li.ru/showflash.html?tag_value=%2F%2Fflv.video.yandex.ru%2Flite%2Fdimzon541%2Fybi20vsjyg.1413%2F&flash_width=450&flash_height=300&style=background-color%3A%23FFFFFF%3B+" width=450 height=300 style="width:450;height:300; border:0px outset;" scrolling="no" frameborder="0">