Notes about IT

Позднее Ctrl + ↑

Вышел iATKOS ML2

30 декабря 2012 года увидел свет iATKOS ML2 — это один из немногих релизов OS X Mountain Lion (hackintosh).

iATKOS is the code name of OSX86 installer releases of OSX86.Türk team. These installers are used for installing OSX86 systems on personal computers. Simple and all-in-one OSX86 installation for basic and compatible hardware is the aim of iATKOS project. We have at least 1 stable popular release for each major version of OS X starting from Leopard (10.5).

  • Only 64-bit capable CPUs are supported / Ivy Bridge CPU support / AMD is not supported
  • Core2Duo / Core2Quad / 1st, 2nd and 3rd Generation Core i3, i5, i7 / Xeon 3xxx, 5xxx, 6xxx, 7xxx, E3, E5, E7
  • nvidia kepler 6xx support / nvidia 7xxx is not supported / better ATI HD5xxx and HD6xxx gpu support
  • Intel HD 4000 support / better Intel HD 3000 support / GMA950 and X3100 is not supported

Руководство Инструкции Скачать

2013   macOS

CSS Guide

Отличное руководство по CSS (Cascading Stylesheet) опубликовал ресурс inserthtml, которые содержит 6 глав, прочитав которые вы познаете тайны CSS.

Hello! This series has been created to teach you everything you need to know about CSS in order to operate in the web design world. We’d recommend doing a few sections a day, and in no time you’ll have mastered CSS!

CSS

2013   css   guide

Perfect Workflow in Sublime Text 2

Ресурс Tuts+ представил бесплатный курс по текстовому редактору Sublime Text 2.

I’m a confessed code editor addict, and have tried them all! I was an early adopter of Coda, a TextMate advocate, even a Vim convert. But all of that changed when I discovered Sublime Text 2, the best code editor available today. Don’t believe me? Let me convince you in this course.

Perfect Workflow in Sublime Text 2

2013   guide   sublime

ESXi vs Marvel 88E8056

Столкнулся с проблемой установки VMWare ESXi 5.x. Ни в какую не видела встроенную сеть на Marvel 88E8056.
В итоге, 5.x я не смог установить, а вот 4.1 завелась при помощи ESXi Costomizer и перепакованного драйвера для Marvel 88E8056. Однако ESXi 4.1 меня не устраивает и я буду искать программный выход дальше. Аппаратный способ решения этой проблемы выглядит так: TP-Link TG-3468.

2013   esxi

Настройка backend WordPress под клиента

WordPress не только мощная CMS, но и доступная в использовании. Очень жаль, что многими она воспринимается как средство для создания блога, но для создания бизнес-проектов эта платформа подходит не хуже.

Удаление лишних пунктов меню

Чтобы пользователь ненароком не удалил какой-нибудь важный файл нужно запретить ему доступ к определенным функциям.
Для чего, прописываем код в файл темы functions.php:

function remove_menus(){  
        global $menu;  
        $restricted = array(__('Dashboard'), __('Posts'), __('Media'), __('Links'), __('Pages'), __('Appearance'), __('Tools'), __('Users'), __('Settings'), __('Comments'), __('Plugins'));  
        end ($menu);  
        while (prev($menu)){  
            $value = explode(' ', $menu[key($menu)][0]);  
            if(in_array($value[0] != NULL?$value[0]:"" , $restricted)){unset($menu[key($menu)]);}  
        }  
    }  
add_action('admin_menu', 'remove_menus');

Этот код лишь убирает визуально пункты меню, но не запрещает прямой доступ к ним по ссылке. Теперь разъясню, какие пункты мы закрыли этим кодом:

__('Dashboard') — главная страница админки;
__('Posts') —  "Записи";
__('Media') —  "Медиафайлы" (картинки, видео и т.п.);
__('Links') —  "Ссылки";
__('Pages') —  "Страницы";
__('Appearance') —  "Внешний вид";
__('Tools') —  "инструменты" ("импорт", "экспорт");
__('Users') — "пользователи";
__('Settings') — пункт меню "Настройки"!
__('Comments') — комментарии;
__('Plugins') — "Плагины".

Удаляем рубрику «+Добавить» из админ-панели

Теперь хочется отметить некоторые нюансы Консоли управления. Заходим в админку и видим в панели администратора под кнопкой «+Добавить» выплывает подменю “запись”, дабы не смутить заказчика, который на самом деле не пишет посты, удалим этот пункт из Панели администратора. Вместе с этим нужно удалить ссылки и комментарии, которые привязаны к этому пункту. Для этого нам понадобится следующий код:

function remove_admin_bar_links() {
	    global $wp_admin_bar;
	    $wp_admin_bar->remove_menu('new-content');
	    $wp_admin_bar->remove_menu('new-link');
	    $wp_admin_bar->remove_menu('comments');
	}
add_action( 'wp_before_admin_bar_render', 'remove_admin_bar_links' );

Добавление своих пунктов админ-панель

Наша панель стала выглядеть пусто и неинтересно, чтобы как-то ее оживить добавим новые пункты и ссылки. Сделать это в WordPress очень легко. Рассмотрим пример, в котором будем добавлять новые продукты на сайт и раздел секций. Здесь заказчик будет добавлять новый контент. Вот как выглядит код:

function add_mycms_admin_bar_link() {
	global $wp_admin_bar;
	if ( !is_super_admin() || !is_admin_bar_showing() )
		return;
	$wp_admin_bar->add_menu( array(
	'id' => 'add_product_menu', // Может быть любое значение и должно быть уникальным
	'title' => __( 'Добавить Продукт'), //Отображение названия в Меню
	'href' => __('http://studio-gost.ru/wp-admin/post-new.php?post_type=products'),
	));
	// Добавить в подменю ссылку "Все продукты"
	$wp_admin_bar->add_menu( array(
		'parent' => 'add_product_menu', // Уникальный идентификатор родительского меню
		'id'     => 'view_all_products',
		'title' => __( ''),
		'href' => __('http://studio-gost.ru/wp-admin/edit.php?post_type=products'),
	));
	//Добавить в подменю ссылку "Специфика"
	$wp_admin_bar->add_menu( array(
		'parent' => 'add_product_menu',
		'id'     => 'my_sections',
		'title' => __( 'Специфика'),
		'href' => __('http://studio-gost.ru/wp-admin/edit-tags.php?taxonomy=Section&post_type=products'),
	));
}
add_action('admin_bar_menu', 'add_mycms_admin_bar_link',25);

Заменяем логотип WordPress на странице входа на сайт

Все кто знаком с WP не по наслышке наверняка лицезрел и официальный логотип wordpress на странице входа. Естественно он никак не мешает нормальному функционированию сайта, но заказчики — народ требовательный, видеть свой собственный бренд им нравится больше. Поэтому не забудьте в процессе работы заменить официальное лого на логотип компании-заказчика. Как это сделать уже описывалось в блоге Замена логотипа wordpress.

Удаляем логотип WordPress из Панели администратора

Важно! Логотип WordPress находится еще и в административной зоне сайта и в выпадающем меню со ссылками на документацию и форумы поддержки WP. Они также легко удаляются, путем добавления строки к функции, которая описана выше Удаляем рубрику «+Добавить» данной строчки:

$wp_admin_bar->remove_menu('wp-logo');

Или же вставить код целиком:

function remove_admin_bar_links() {
    global $wp_admin_bar;
    $wp_admin_bar->remove_menu('wp-logo');
    }
add_action( 'wp_before_admin_bar_render', 'remove_admin_bar_links' );

Упрощаем ссылку входа

Теперь делаем проще ссылку для входа в WP. Изначальна ссылка выглядит так: http://site.ru/wp-login.php, изменим ее на эту: http://site.ru/login. При этом изменении пользователь будет перенаправляться на http://site.ru/wp-login.php
Для этого вставляем код в functions.php:

/* редирект с login на /wp-login.php  и с admin на /wp-admin */  
    add_action('template_redirect', 'kama_login_redirect');  
    function kama_login_redirect(){  
        if( strpos($_SERVER['REQUEST_URI'], 'login')!==false )  
            $loc = '/wp-login.php';  
        elseif( strpos($_SERVER['REQUEST_URI'], 'admin')!==false )  
            $loc = '/wp-admin/';  
        if( $loc ){  
            header( 'Location: '.get_option('site_url').$loc, true, 303 );  
            exit;  
        }  
    }

Этот способ более удобен, потому что вся редакция идет “внутри” темы.

Отключение обновится

Следующим пунктом идет отключение проверки обновления. Не чего клиентом там лазить, тем более без спецподготовки. Потому что новые обновления могут некорректно работать с старыми плагинами, а иногда это может привести к потери работоспособности сайта.
Опять работать будем с файлом functions.php вставляем в него этот код:

add_filter('pre_site_transient_update_core',create_function('$a', "return null;"));
wp_clear_scheduled_hook('wp_version_check');

remove_action( 'load-update-core.php', 'wp_update_plugins' );
add_filter( 'pre_site_transient_update_plugins', create_function( '$a', "return null;" ) );

Удаление админ-бара

Так же как писалось в самом начале этой статьи на сайте можно Отключить админ-панель в WordPress для всех кроме администраторов. Это отгородит ваших клиентов от ненужного посещения админ панели.

(с) http://studio-gost.ru

2013   cms   wordpress

Настраиваем WiFi на FreeBSD

Использовать iwn0 на прямую в ifconfig нельзя, а нужно создать отдельные
wifi-интерфейсы:

ifconfig wlan0 create wlandev iwn0

В /etc/rc.conf добавим:

vaps_iwn0="wlan0" # если нужно использовать VAP
wlans_iwn0="wlan0"

и после перезагрузки видим полноценно функционирующий интерфейс wlan0:

ifconfig wlan0 up scan

Для настройки соединения правим /etc/wpa_supplicant.conf (man wpa_supplicant.conf)

network={
 ssid="идентификатор сети"
 psk="ключ доступа"
}

и запускаем

/etc/rc.d/wpa_supplicant start wlan0
dhclient wlan0

Если все работает, добавляем в /etc/rc.conf:

ifconfig_wlan0="WPA DHCP"
2012   freebsd   wifi

Переносим неэкспортируемые контейнеры Крипто-ПРО

Иногда случается так что необходимо перенести клиент-банк или другое разнообразное бухгалтерское и не очень ПО с одного компьютера на другой.
В том случае когда в качестве криптопровайдера выступает СКЗИ Крипто-ПРО обычно проблем не возникает — СКЗИ имеет штатные средства копирования ключей. Но не всегда все гладко — в том случае, когда ключевой контейнер находится в реестре Windows, и при генерации ключа не была выставлена галочка «Пометить ключ как экспортируемый» то при попытке скопировать куда-либо этот ключ Крипто-ПРО будет ругаться и не скопирует ключ.
Из этой ситуации есть очень простой выход — выгружаем ветку реестра HKLM/SOFTWARE/CryptoPro/Settings/Users/{SID}/Keys (в x64 операционках контейнеры лежат в HKLM/SOFTWARE/Wow6432/Node/CryptoPro/Settings/Users/{SID}/Keys), а на том ПК куда необходимо импортировать смотрим разрядность ОСSID пользователя, блокнотом правим .reg файл (меняем SID и, если необходимо, путь к конечной ветке), и импортируем его в реестр.
Также этим методом очень удобно бекапить и клонировать ключи тогда, когда их много(например в аутсорс-бухгалтериях).

P.S. Не забывайте после переноса установить сертификаты из криптоконтейнеров в «Личные».

Atheros L1 & Windows 7 x64

При копировании файлов под Windows 7 x64 по сети виснет намертво система. Причина во встроенной сетевой карты Atheros L1 на материнских платах.
Лечение:
Накатить дрова 2.4.7.29
В настройках сетевой карты выставить значения:
Flow Control -> Off
Task Offload -> Off

2012   network   windows

Enter full path name of shell or RETURN for /bin/sh:

Такое случается, когда что-то не так настроили в /etc/rc.conf

Делаем так:

# fsck -p 
# mount -u / 
# mount -a -t ufs 
# swapon -a

Правим rc.conf в первоначальное состояние:

# /usr/bin/edit /etc/rc.conf
2012   bash