Google-будильник update

Будильник можно скачать тут https://github.com/irenicaa/google-budilnik

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

Загруженность дорог берем с мобильной версии яндекса — scripts/road.sh

Новости — scripts/news.sh Ссылку на ленту rss, можно заменять на любой другой rss. Работает по принципу выбрать все заголовки, они же , срезаем теги и весь лист отдаем гуглу на чтение

Теперь под будильник будет отдельная рубрика

Текущий функционал:

-Погода
-Работоспособность метрополитена
-Курс бакса
-Уровень пробок
-Новости

Github и google-будильник

Я завела себе github.

Первые правки в google-будильнике. Раз теперь просмотр курса бакса стало мейнстримом, то будем читать курс доллара и насколько он изменился.

Курс вечнозеленых извлекаю при помощи curl и регулярок с мобильной версии яндекса. Мобильная версия выбрана за более простой парсинг и маленький вес стрнички. Скрипт живет в отдельном файле, дабы не захламлять основной скрипт и чтобы было удобнее его читать и развивать.

Цветной консольный

У меня SSD на 250 гб и постоянно проверять сколько же у меня свободного места мне лень. А еще мне не нравится простой смерный dmesg, ну и так, по мелочам.

Каждый раз открывая консоль, я хочу видеть, что интересного у меня в системе. А именно: загруженность cpu, использование памяти, свободное место на диске, ошибки из dmesg.

Начнем с правки dmesg. Хочу время в цивильном формате и раскраску. На просторах интернетов нашла скриптик на перле и чуть поправила:


#!/usr/bin/perl -w
use Term::ANSIColor;
use strict;
my @dmesg_new = ();
my $dmesg = "/bin/dmesg";
my @dmesg_old = `$dmesg`;
my $now = time();
my $uptime = `cat /proc/uptime | cut -d"." -f1`;
my $t_now = $now - $uptime;
sub format_time {
my @time = localtime $_[0];
$time[4]+=1;
$time[5]+=1900;
return sprintf colored( sprintf('%4i-%02i-%02i %02i:%02i:%02i', @time[reverse 0..5]), 'white' );
#return sprintf '%4i-%02i-%02i %02i:%02i:%02i', @time[reverse 0..5]; no color
}
foreach my $line ( @dmesg_old )
{
chomp( $line );
if( $line =~ m/\[\s*(\d+)\.(\d+)\](.*)/i )
{
# now - uptime + sekunden
my $t_time = format_time( $t_now + $1 );
push( @dmesg_new , "[$t_time] $3" );
}
}
print join( "\n", @dmesg_new );
print "\n";

Я его положила в /etc/scripts/

Теперь редактировать .bashrc. Вписала строку
alias dmesg="/etc/scripts/dmesg_time.pl"

А теперь информер


cat /etc/profile.d/login.sh

#!/bin/bash
uptime | awk -F, '{print "\033[1;37muptime\033[0m" $1}'
ps aux | awk '{s += $3} END {print "\033[1;37mcpu\033[0m " s "%"}'
ps aux | awk '{s += $4} END {print "\033[1;37mmem \033[0m" s "%"}'
df | grep -E "/$" | awk '{print "\033[1;37muse / \033[0m" $5}'
df | grep -E "/home$" | awk '{print "\033[1;37muse /home \033[0m" $5}'
df | grep -E "/home$" | awk '{print "\033[1;31mfree /home \033[0m" $4}'
df | grep -E "/$" | awk '{print "\033[1;31mfree / \033[0m" $4}'
echo -e "\033[1;37mprocess: \033[0m " `ps aux | wc -l`
echo -e "dmesg error \n `/etc/scripts/dmesg_time.pl | grep -i error | tail -10` "

зы. Когда-нибудь я заведу гитхаб.

Будильник с google

Буду как всегда не многословна. Наклепала будильник на баше.

Что умеет — вещает голосом гугла погоду с рамблера. У них там всякие милые фразочки проскальзывают, в духе «не забудьте шарф», «одевайтесь теплее». Милота.
И еще грепает по твиттеру сообщения с чп в метро и если находит оповестит меня с утра об этом. Будет лишний повод дома остаться.

Работает на mplayer. А живет эта конструкция на одноплатнике.

Состоит из 2 скриптов. 1 парсит и читает погоду, другой парсит метро, в крон нужно оба.

скрипт для погоды и чтения
#!/bin/bash

n=`curl http://weather.rambler.ru/ | cat -n | grep "dayName: 'сегодня'" | awk '{print $1}'`;
let "n = $n - 1";
txt=`curl http://weather.rambler.ru/ | cat -n | sed -n "$n,135 p"`

day=`echo $txt | tr "," "\n" | awk '{ sub($1." ",""); print $0 }' | grep -E "^day:" | awk '{print $2}'`
month=`echo $txt | tr "," "\n" | awk '{ sub($1." ",""); print $0 }' | grep -E "month:" | awk '{print $2}' | sed -e "s;';;g;/^$/d"`
dayname=`echo $txt | tr "," "\n" | awk '{ sub($1." ",""); print $0 }' | grep -E "weekday:" | awk '{print $2}' | sed -e "s;';;g;/^$/d"`
description=`echo $txt | tr "," "\n" | awk '{ sub($1." ",""); print $0 }' | grep -E "description:" | sed -e "s;';;g;/^$/d" | awk '{ sub($1." ",""); print $0 }'`
wet=`echo $txt | tr "{" "\n" | grep Ветер | sed -e 's;.*speed: ;;g' | awk '{print $1}' | head -1`
toolTip=`echo $txt | tr "," "\n" | awk '{ sub($1." ",""); print $0 }' | grep -E "toolTip" | sed -e "s;';;g;/^$/d" | awk '{ sub($1." ",""); print $0 }' | tr "\n" " " | sed -e 's;.*\.;;g'`
toolTip1=`echo $txt | tr "," "\n" | awk '{ sub($1." ",""); print $0 }' | grep -E "toolTip" | sed -e "s;';;g;/^$/d" | awk '{ sub($1." ",""); print $0 }' | tr "\n" " " | sed -e 's;\..*;;g'`
if [ "$dayname" == "пн" ]
then
dayname="понедельник"
fi

if [ "$dayname" == "вт" ]
then
dayname="вторник"
fi

if [ "$dayname" == "ср" ]
then
dayname="среда"
fi

if [ "$dayname" == "чт" ]
then
dayname="четверг"
fi

if [ "$dayname" == "пт" ]
then
dayname="пятница"
fi

if [ "$dayname" == "сб" ]
then
dayname="суббота"
fi

if [ "$dayname" == "вс" ]
then
dayname="воскресенье"
fi
min=`echo $txt | tr "}" "\n" | cat -n | grep " t: {" | tr "," "\n" | grep min | sed -e 's;.*min:;;g'`
max=`echo $txt | tr "}" "\n" | cat -n | grep " t: {" | tr "," "\n" | grep max | awk '{print $3}'`

count=`cat ~/weather/metro.info | sort | uniq | wc -l`

mplayer ~/weather /1.mp3
mplayer "http://translate.google.com/translate_tts?tl=ru&ie=UTF-8&q=сегодня $dayname, $day $month"
mplayer "http://translate.google.com/translate_tts?tl=ru&ie=UTF-8&q=ожидается температура от $min до $max, Ветер $wet м/с."
mplayer "http://translate.google.com/translate_tts?tl=ru&ie=UTF-8&q=$description"
mplayer "http://translate.google.com/translate_tts?tl=ru&ie=UTF-8&q=$toolTip1"
mplayer "http://translate.google.com/translate_tts?tl=ru&ie=UTF-8&q=$toolTip"
mplayer /root/weather/1.mp3
if [ "$count" -ge "5" ]
then
mplayer "http://translate.google.com/translate_tts?tl=ru&ie=UTF-8&q=метро сломалось, смотри тви"
mplayer ~/weather/1.mp3
fi

:>~/weather/metro.info

Скрипт для метро. Большая и страшная регулярка.

#!/bin/bash

curl -ssl "https://twitter.com/search?f=realtime&q=%23%D0%BC%D0%B5%D1%82%D1%80%D0%BE&src=typd" | grep -E -o "js-tweet-text tweet-text.*< \/p>" | sed -e 's;[>< \"=-]; ;g;s;js tweet text tweet text lang ru data aria label part 0;;g;s;/a;;g;s;\/\(a\|p\); ;g;s;\(.span\|.strong\|class\|twitter\|timeline\|link\|js display url\|invisible|\tco ellipsis\|href\|nofollow\|dir\|ltr\|data\|expanded\|url\|invisible\|tco\|ellipsis\|google&amp\;utm_medium\|banner&amp\;utm_campaign\|business_news\|target\|_blank\|title\|atreply\|pretty\|&nbsp\;\|rel\|s\|?utm_source\|draggable\|false\|alt\|aria\|label\|u\|hidden\|pre\|embedded|\true\|b\|a\|qery\|orce\|hahtag_click\|hahtag\|j\|nav\|emedded\|tre\|&qot\;\|emedded\|tre\|rc\|hh\|qery\|orce\|hhtg_click\|hhtg\|img\);;g;s; ; ;g;s;&#10\; ;;g;s;&qot\;;;g;s;emedded;;g;s;tre;;g;s; \/ ;;g;s;hhtg_click hhtg;;g;s;hh;;g;s;qery oe;;g;s;\/tg\/[a-zA-Z]*;;g;s;tweet;;g;s;text;;g;s;lng;;g;s;nd;;g;s;prt;;g;s;#;;g;s;http://intgrm.com\s\/[a-zA-Z0-9]*\/;;g;s; http://intgrm.com;;g;s;http:// intgrm.com \/;;g;s;%[a-zA-Z0-9%]*?;;g;s; *; ;g' | grep -E -i "жертв|авари|ЧП|чп|неполадки|перебои|ликвидаци|интервал|светофор|стрелка|катастрофа|час пик|перекрыт|остановлен|интервал|не ходят|ремонт|приостановлено|сбой|неисправ|сломался поезд|бомб|взрыв|теракт|затруднен|приостанов" >> ~/weather/metro.info

в роли 1.mp3 может быть любой короткий звук, для привлечения внимания

Симулятор роботов Player/Stage

Года полтора назад я работала в вузе лаборантом на кафедре. А на кафедре занимались разработкой роботов. И дали мне задание разобраться с симулятором Player/Stage, а именно перевести ман, сделать тестовую прожку ну и ман по установке.
И работает это только на линуксах.

Собственно про эту хреновину.

Player/Stage — это инструментарий моделирования робота, состоящий из одной программы —
Player, представляющей собой уровень абстрактных аппаратных средств. Это означает, что
он взаимодействует с элементами оборудования робота (такими как щуп или камера) и
позволяет управлять ими с помощью программного кода, то есть вам не нужно беспокоиться
о порядке работы различных элементов робота. Stage представляет собой плагин для Player,
который воспринимает команды и транслирует их в инструкции для выполнения роботом.
Player также моделирует датчики робота и передает их Stage, который делает данные с
датчика доступными в коде.

Все это было сделано, ожидала когда мне дадут проектную группу чтобы коллективно совершить большой запил.. но вуз такой вуз и в итоге проект был отложен на завтра.. через неделю.. потом. Ну и вот года полтора он никому не надо. Удалить жалко и никому не нужен. Может тут кому-то понадобиться 🙂

Рекомендую юзать или Fedora или Gentoo у них эта тулза из коробки. А вот с той же Ubuntu ужасные пляски с бубном.

В мане ссылки с моего бложека не валид. Юзаем эти

Переведенный ман
Ман в подлиннике
Ман по установке

Костыль II

В прошлый раз был зопил ради зарядки телефона. Кто не читал, не помнит смотрим тут.

А теперь об нынешнем зопиле. Дело было так. Задарил мне вуз Ipad mini за олимпиаду, но он не хотел заряжаться от лаптопа с linux. Ну вообще никак не хотел. dmesg ругался, матерился как-то вот так:

[1402816.444635] ipheth 3-1:4.2: Apple iPhone USB Ethernet device attached
[1402818.238639] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready

Сначала я пыталась сделать по нормальному. Честно и долго пыталась, но хрен. Оригинальный кабель мне было почему-то жалко. А вот провод за 200 рублей из Ашана мне ничуть не жалко. И я решила его вскрыть и замкнуть data проводки. В прочем все как и в тот раз. Только провод теперь белый и черной изолентой. А вот кстати чем он отличается от оригинального, кроме того, что китайский, так это пожалуй материалом из которого сделан экран. У китайского он из фольги (кто бы сомневался), а вот у оригинального какоето плетение из маленьких жилок. К большой удаче цвет проводов был по стандарту.

А теперь фотачки


DSC_0451


DSC_0453

Увеличение времени работы linux от батареи

Купила себе новый лаптоп ThinkPad T-430. Обещали 16ч работы от батареи, но держал он только 4 и то, если яркость на минимум. При этом ос была Ubuntu 12.04. Батарейка в нем на 7700 мАч, и она явно должна держать больше чем 4 часа…
Погуглив была обнаружена tlp. Вкратце, это такая штука, которая рулит железом и можно удобно и главное быстро настроить, увеличив время работы от батареи.
После время работы от батарейки стало как минимум 9 часов, на максимальной яркости. В ноль разрядить не успела. После 3 часов работы на максимальной яркости, с запущенной виртуалкой и wifi осталось ~70% и вангамод вещал, что еще 6.5 часов можем жить ни о чем не беспокоясь. На минимальной не тестировала.
Запускать sudo tlp start
Можно еще посмотреть tlp —help и man tlp
Вот мой конфиг

root@irenica-ThinkPad-T430:/home/irenica# cat /etc/default/tlp
# ------------------------------------------------------------------------------
# tlp - Parameters for power save
# Hint: some features are disabled by default, remove the leading # to enable them
# Set to 0 to disable/1 to enable TLP
TLP_ENABLE=1
# Seconds laptop mode has to to wait after the disk goes idle before doing a sync.
# Non-zero value enables, zero disables laptop mode.
DISK_IDLE_SECS_ON_AC=0
DISK_IDLE_SECS_ON_BAT=2
# Dirty page values (timeouts in secs).
MAX_LOST_WORK_SECS_ON_AC=15
MAX_LOST_WORK_SECS_ON_BAT=60
# Select a cpu frequency scaling governor: ondemand/powersave/performance/conservative
# Important:
# - You *must* disable your distribution's governor settings or conflicts will occur
# - ondemand is sufficient for *almost all* workloads, you should know what you're doing!
CPU_SCALING_GOVERNOR_ON_AC=ondemand
CPU_SCALING_GOVERNOR_ON_BAT=powersave
# Set the min/max frequency available for the scaling governor.
# Possible values strongly depend on your cpu. For available frequencies see
# tlp-stat output, Section "+++ Processor".
# Hint: Parameters are disabled by default, remove the leading # to enable them,
# otherwise kernel default values are used.
#CPU_SCALING_MIN_FREQ_ON_AC=0
#CPU_SCALING_MAX_FREQ_ON_AC=0
#CPU_SCALING_MIN_FREQ_ON_BAT=0
#CPU_SCALING_MAX_FREQ_ON_BAT=0
# Set the cpu "turbo boost" feature: 0=disable / 1=allow
# Requires an Intel Core i processor and kernel 3.7 or later.
# Important:
# - This may conflict with your distribution's governor settings
# - A value of 1 does *not* activate boosting, it just allows it
CPU_BOOST_ON_AC=1
CPU_BOOST_ON_BAT=0
# Minimize number of used cpu cores/hyper-threads under light load conditions
SCHED_POWERSAVE_ON_AC=0
SCHED_POWERSAVE_ON_BAT=1
# Kernel NMI Watchdog
# 0=disable (default, saves power) / 1=enable (for kernel debugging only)
NMI_WATCHDOG=0
# Change CPU voltages aka "undervolting" - Kernel with PHC patch required
# Freq:voltage pairs are written to /sys/devices/system/cpu/cpu0/cpufreq/phc_controls
# CAUTION: only use this, if you thoroughly understand what you are doing!
#PHC_CONTROLS="F:V F:V F:V F:V"
# Hard disk devices, separate multiple devices with spaces (default: sda).
# Devices can be specified by disk id too (lookup with: tlp diskid).
DISK_DEVICES="sda sdb"
# Hard disk advanced power management level: 1(max saving)..254(off)
# Levels 1..127 may spin down the disk.
# Separate values for multiple devices with spaces.
DISK_APM_LEVEL_ON_AC="254 254"
DISK_APM_LEVEL_ON_BAT="128 128"
# Hard disk spin down timeout:
# 0: spin down disabled
# 1..240: timeouts from 5s to 20min (in units of 5s)
# 241..251: timeouts from 30min to 5.5 hours (in units of 30min)
# (see 'man hdparm' for details)
#DISK_SPINDOWN_TIMEOUT_ON_AC="0 0"
#DISK_SPINDOWN_TIMEOUT_ON_BAT="0 0"
# Select io scheduler for the disk devices: noop/deadline/cfq (Default: cfq)
# Separate values for multiple devices with spaces.
#DISK_IOSCHED="cfq cfq"
# SATA aggressive link power management (ALPM):
# min_power/medium_power/max_performance
SATA_LINKPWR_ON_AC=max_performance
SATA_LINKPWR_ON_BAT=min_power
# PCI Express Active State Power Management (PCIe ASPM):
# default/performance/powersave
# Hint: needs kernel boot option pcie_aspm=force on some machines
PCIE_ASPM_ON_AC=performance
PCIE_ASPM_ON_BAT=powersave
# Radeon graphics clock speed (profile method): low/mid/high/auto/default
# auto = mid on BAT, high on AC; default = use hardware defaults
# (Kernel >= 2.6.35 only, not with fglrx driver!)
RADEON_POWER_PROFILE_ON_AC=high
RADEON_POWER_PROFILE_ON_BAT=low
# New radeon dynamic power management method (dpm): battery/performance
# (Kernel >= 3.11 only, requires boot option radeon.dpm=1)
RADEON_DPM_STATE_ON_AC=performance
RADEON_DPM_STATE_ON_BAT=battery
# New radeon dpm performance level: auto/low/high (auto is recommended)
RADEON_DPM_PERF_LEVEL_ON_AC=auto
RADEON_DPM_PERF_LEVEL_ON_BAT=auto
# WiFi power saving mode: 1=disable/5=enable
# (Linux 2.6.32 and later, some adapters only!)
WIFI_PWR_ON_AC=1
WIFI_PWR_ON_BAT=5
# Disable wake on lan: Y/N
WOL_DISABLE=Y
# Enable audio power saving for Intel HDA, AC97 devices (timeout in secs).
# A value of 0 disables / >=1 enables power save.
SOUND_POWER_SAVE=1
# Disable controller too (HDA only): Y/N
SOUND_POWER_SAVE_CONTROLLER=Y
# Set to 1 to power off optical drive in UltraBay (ThinkPads only)
# when running on battery. A value of 0 disables this Feature (Default).
# Drive can be powered on again by releasing (and reinserting) the
# eject lever or by pressing the disc eject button on newer models.
# Note: an UltraBay hard disk is never powered off.
BAY_POWEROFF_ON_BAT=1
# Optical drive device to power off (default sr0)
BAY_DEVICE="sr0"
# Runtime Power Management for pci(e) bus devices
# (Kernel >= 2.6.35 only): on=disable/auto=enable
RUNTIME_PM_ON_AC=on
RUNTIME_PM_ON_BAT=auto
# Runtime PM for *all* pci(e) bus devices, expect backlisted ones:
# 0=disable / 1=enable
# Warning: experimental option, could cause system instabilities
RUNTIME_PM_ALL=0
# Exclude pci(e) device adresses the following list from Runtime PM
# (separate with spaces). Use lspci to get the adresses (1st column).
#RUNTIME_PM_BLACKLIST="bb:dd.f 11:22.3 44:55.6"
# Set to 0 to disable/1 to enable usb autosuspend feature
USB_AUTOSUSPEND=1
# Devices from the following list are excluded from usb autosuspend
# (separate with spaces). Use lsusb to get the ids.
# Note: input devices (usbhid) are excluded automatically
#USB_BLACKLIST="1111:2222 3333:4444"
# WWAN devices are excluded from usb autosuspend:
# 0=do not exclude / 1=exclude
# Note: works for ids 05c6:* 0bdb:* 1199:* only
USB_BLACKLIST_WWAN=1
# Set to 1 to disable autosuspend before shutdown/0 to do nothing
# (workaround for usb devices that cause shutdown problems)
#USB_AUTOSUSPEND_DISABLE_ON_SHUTDOWN=1
# Restore radio device state (bluetooth, wifi, wwan) from previous shutdown
# on system startup: 0=disable/1=enable
# Hint: the parameters DEVICES_TO_DISABLE/ENABLE_ON_STARTUP/SHUTDOWN below
# are ignored when this is enabled!
RESTORE_DEVICE_STATE_ON_STARTUP=0
# Radio devices to disable on startup: bluetooth wifi wwan
DEVICES_TO_DISABLE_ON_STARTUP="bluetooth"
# Radio devices to enable on startup: bluetooth wifi wwan
#DEVICES_TO_ENABLE_ON_STARTUP="wifi"
# Radio devices to disable on shutdown: bluetooth wifi wwan
# (workaround for devices that are blocking shutdown)
#DEVICES_TO_DISABLE_ON_SHUTDOWN="bluetooth wifi wwan"
# Radio devices to enable on shutdown: bluetooth wifi wwan
# (to prevent other operating systems from missing radios)
#DEVICES_TO_ENABLE_ON_SHUTDOWN="wwan"
# Radio devices to enable when wireless radio switch is turned on:
# bluetooth wifi wwan (Ubuntu + ThinkPad only)
DEVICES_TO_ENABLE_ON_RADIOSW="wifi wwan"
# Battery charge thresholds (ThinkPad only, tp-smapi or acpi-call kernel module required)
# Charging starts when the remaining capacity falls below the START_CHARGE_TRESH
# value and stops when exceeding the STOP_CHARGE_TRESH value.
# Main battery (values in %)
START_CHARGE_THRESH_BAT0=75
STOP_CHARGE_THRESH_BAT0=80
# Ultrabay or slice battery (values in %)
#START_CHARGE_THRESH_BAT1=75
#STOP_CHARGE_THRESH_BAT1=80
# Set to 1 to disable use of tpacpi-bat on Sandy Bridge or newer Thinkpads
# and force usage of tp-smapi instead
DISABLE_TPACPIBAT=1
# ------------------------------------------------------------------------------
# tlp-rdw - Parameters for the radio device wizard
# Possible devices: bluetooth/wifi/wwan
# Hint: parameters are disabled by default, remove the leading # to enable them
# Radio devices to disable on connect
#DEVICES_TO_DISABLE_ON_LAN_CONNECT="wifi wwan"
#DEVICES_TO_DISABLE_ON_WIFI_CONNECT="wwan"
#DEVICES_TO_DISABLE_ON_WWAN_CONNECT="wifi"
# Radio devices to enable on disconnect
#DEVICES_TO_ENABLE_ON_LAN_DISCONNECT="wifi wwan"
#DEVICES_TO_ENABLE_ON_WIFI_DISCONNECT=""
#DEVICES_TO_ENABLE_ON_WWAN_DISCONNECT=""
# Radio devices to enable/disable when docked
#DEVICES_TO_ENABLE_ON_DOCK=""
#DEVICES_TO_DISABLE_ON_DOCK=""
# Radio devices to enable/disable when undocked
#DEVICES_TO_ENABLE_ON_UNDOCK="wifi"
#DEVICES_TO_DISABLE_ON_UNDOCK=""

Статистика с хабраэффекта

Как-то не так давно упомянули на хабре мой бложек. Хабраэффект не сработал как надо и бложек не упал. Зато пару раз пришло предупреждение от хостера, такими темпами мне придется искать новый хостинг.

С этого события собрала статистику.

3wyeRPJuiXZ3zChe5GTmjXGj7

Обычно ко мне заходит гораздо меньше посетителей. Я бы запостила помесячную статистику, но увы меня переодически ддосят (за что даже и не знаю, вроде ничего плохого не делаю), посему по месячные графики примерно одинаковые, может с разницей в ~100 посетителей.




переходы
В основном в поле рефер стоял хабр, некоторые перешли без рефера, но судя по общей картине происходящего вполне очевидно откуда они. С переходами на / также. Цифры не очень точные, может быть на ±20 юзеров я ошиблась, но это общей картины не меняет.
Shared обозначены посетители пришедшие из соц сетей (вконтактик), судя по всему делились ссылкой. Тут мне оставили даже id страничек.Не буду публиковать их. А да и с форума трансвиститов О_о.

Не оставляйте поле рефер, оно дает мне возможность узнать гораздо больше информации, чем можете предположить. С этого форума я могла бы и ники взять, но я слишком ленивая для этого. Всетаки чтобы этот пост появился меня пинали аж 2 человека (dcoder_mm и автор поста с хабра vvzvlad)

20131020093941
Среди этого огромного количества windows-юзеров были и с серверной windows, и с древней, почти окаменелой, XP.

20131020111721


















ports
А теперь самое интересное. Да, я просканила на порты все эти 2к+ айпишника. Оказалось, что ходить с windows-сервера по тырнетам вполне себе ок. И то, что открыто по 20+ портов на таких машинках по их мнению тоже хорошо. Но был и такой, у которого их оказалось свыше нескольких тысяч. Не надо так. С linux серверов тоже были переходы.
К сожалению nmap не смог определить что висит на каждом 80 порту, но из того что удалось и кроме веб-серверов были вебморды от роутеров. Самым популярным оказался Mikrotik. Посмотрела что это такое и теперь хочу себе такую игрушку. Как-нибудь соберусь и закажу, и быть может отпишу про него в бложик.

GEO
При помощи geoiplookup были получены страны. В 2 случаях не удалось установить происхождение. Не стала разбираться где vpn, где прокси, а где реальный IP.








P.S vvzvlad давай стату по просмотрам.
UPD Статистика от vzvlad

BXMEJxAIAAAL10e
Как видно ко мне перешло <1%

Видеонаблюдение своими руками

Цель для видеонаблюдения может быть совершенно разной, кто-то за детьми, кто-то за соседями и т.д.
Я решила запилить камеру над дверью и наблюдать кто пришел — весьма удобно, не надо вставать, чтобы посмотреть.

Для этого мне понадобилось: цать метров витухи, 2 usb разъема, паяльник, короб для проводов, изолента, двойной скотч, клей, шуруповерт, лаптоп, вебка (logitech c510).

Из витухи был сделан удлинитель, такие поделки запрещены всеми стандартами.
Фото разъема, на втором провода должны быть припаяны аналогично.
_DSC0177

Фото удлинителя

_DSC0178

_DSC0182

Далее при помощи шуроповерта было просверлено отверстие для обьектива в коробе для проводов. Затем при помощи двойного скотча и изоленты камера была приклеена внутрь короба, еще ее пришлось залить клеем и перемотать изолентой.

_DSC0342

_DSC0343

Потом также при помощи двойного скотча, клея и изоленты эта конструкция была приделана к стене. Как только клей засохнет изоленту можно будет снять и тогда будет фото.

На лаптопе стоит XUbuntu 12.04 и motion.
Motion нам нужно для записи и просмотра видео онлайн. Редактировать конфиг /etc/motion/motion.conf
Запускать от рута motion -c /etc/motion/motion.conf
В итоге, кроме записи видео, можно смотреть через браузер 127.0.0.1:8081 это по дефолту. Можно в сеть вещать.

Пример записи.

Эта поделка еще будет совершенствоваться.

Astra Linux

Попал ко мне в руки лаптоп DESTEN CyberBook R853.  Чуть позже оказалось, что это RUGGED ROVER R13S BY DURABOOK.

Вывод dmidecode

Есть несколько таких лаптопов с одной и той же проблемой, мне принесли один из них. Проблема заключается в том, что после выключения можно включть только переподключив батарею или подключив зарядку (в этом случае раза с 3 включимся).  Происходит это так: загораются лампочки  и через секунду гаснут.
Проблема не проявляется если:
— отключить программно тачпад
— вытащить HDD и загрузиться без носителей
— вытащить HDD и подключить пустую флешку.
Проблема остается, если:
— вытащить HDD и загрузиться с Live CD
— загружаться с Live CD и подключенном HDD.

Железо исправно. Есть предположения, что проблемы в ACPI таблицах BIOS’a, но обновлений найти не удалось. Отписала в поддержку производителю.

Фоточки

_DSC0301

Как сказали на easyelectronics.ru это датчик температуры

_DSC0300 _DSC0299

_DSC0297 _DSC0296 _DSC0295 _DSC0289 _DSC0275 _DSC0274 _DSC0272 _DSC0271 _DSC0270