четверг, 26 марта 2009 г.

Полезные сайты

Сайты для вставки текста, кода, преобразования программного кода в html-friendly варианты



Подсветка кода

http://source.virtser.net/default.aspx

http://syhi.stworks.ru/

Сделать хтмл-фрэндли

http://www.elliotswan.com/postable/

Вставка кода с получением ссылки на страничку

http://pastie.org/

Туда же

http://dumpz.org/

Есть еще пара приятных сайтов для вставки кода - найду и добавлю

Читать дальше...

пятница, 20 марта 2009 г.

Кат в блоггере

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


Вначале, сохраняем, на всякий случай, уже имеющийся у нас вариант шаблона на жёсткий диск (на тот случай, чтобы если что-то не выйдет - можно было всё восстановить).

Открываем Макет там изменить HTML и ставим галочку на "расширить шаблоны виджета".

Теперь нам надо добавить код прямо перед тегом </head>

Вот этот код:
<b:if cond='data:blog.pageType != "item"'>
<script type="text/javascript">

var fade = false;
function showFull(id) {
var post = document.getElementById(id);
var spans = post.getElementsByTagName('span');
for (var i = 0; i &lt; spans.length; i ) {
if (spans[i].id == "fullpost") {
if (fade) {
spans[i].style.background = peekaboo_bgcolor;
Effect.Appear(spans[i]);
} else spans[i].style.display = 'inline';
}
if (spans[i].id == "showlink")
spans[i].style.display = 'none';
if (spans[i].id == "hidelink")
spans[i].style.display = 'inline';
}
}


function hideFull(id) {
var post = document.getElementById(id);
var spans = post.getElementsByTagName('span');
for (var i = 0; i &lt; spans.length; i ) {
if (spans[i].id == "fullpost") {
if (fade) {
spans[i].style.background = peekaboo_bgcolor;
Effect.Fade(spans[i]);
} else spans[i].style.display = 'none';
}
if (spans[i].id == "showlink")
spans[i].style.display = 'inline';
if (spans[i].id == "hidelink")
spans[i].style.display = 'none';
}
post.scrollIntoView(true);
}

function checkFull(id) {
var post = document.getElementById(id);
var spans = post.getElementsByTagName('span');
var found = 0;
for (var i = 0; i &lt; spans.length; i ) {
if (spans[i].id == "fullpost") {
spans[i].style.display = 'none';
found = 1;
}
if ((spans[i].id == "showlink") &amp;&amp; (found == 0))
spans[i].style.display = 'none';
}
}

</script>
</b:if>

Затем, в коде блога Макет а там Изменить HTML надо найти строку вида:
<data:post.body/>

Проблема - в разных шаблонах она может быть разной

<div class='post-body> или такой:

<p><data:post.body/></p> или такой:

<div style='clear: both;'/> <!-- clear for photos floats -->

</div>

Чуть выше его будет строка, которая в разных темплейтах тоже может немного разниться. Она имеет такой вид (3 варианта):

div class='post'

div class='entry'

div class='post-body entry-content'

Эту строку нам надо изменить и дополнить. Её начало мы оставляем нетронутым, а потом добавляем только то, что выделено голубым цветом, ровно так, как указано ниже:

<div class='post-body' expr:id='"post-" data:post.id' >

<b:if cond='data:blog.pageType == "item"'>
<style>#fullpost{display:inline;}</style>
<p><data:post.body/></p>
<b:else/>
<style>#fullpost{display:none;}</style>

<p><data:post.body/></p>

<span id='showlink'>
<a expr:href='data:post.url'> Далее...</a>
</span>
<script type='text/javascript'>
checkFull("post-" "<data:post.id/>");
</script>
</b:if>


<div style='clear: both;'/> <!-- clear for photos floats -->
</div>
Обращаю внимание, на закрывающий значок " ' " сразу после первых букв "div class='post-body - если вы забудете его, то темплейт не сохранится и выдаст ошибку. Слово "Далее..." можно заменить на любое другое. Сохраняем шаблон. Затем идем в Настройки там форматирование.
В рамке внизу, над которой значится "шаблон сообщения", добавляем строки:
Шапка
<span id="fullpost">
Под катом
</span>

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

четверг, 19 марта 2009 г.

Сигналы BIOS POST

Звуковые сигналы Bios (расшифровка)

Сигналы AWARD BIOS
Сигналов нет. Неисправен или не подключен к материнской плате блок питания.
Непрерывный сигнал. Неисправен блок питания.
1 короткий. Ошибок не обнаружено.
2 коротких. Обнаружены незначительные ошибки. На экране монитора появляется предложение войти в программу CMOS Setup Utility и исправить ситуацию. Проверьте надежность крепления шлейфов в разъемах жесткого диска и материнской платы.
3 длинных. Ошибка контроллера клавиатуры. Перегрузите компьютер.
1 длинный+1 короткий. Проблемы с оперативной памятью.
1 длинный+2 коротких. Проблема с видеокартой -- наиболее часто встречающаяся неисправность. Рекомендуется вытащить плату и заново вставить. Также проверьте подключение монитора.
1 длинный+3 коротких. Возникла ошибка инициализации клавиатуры. Проверьте качество соединения последней с разъемом на материнской плате.
1 длинный+9 коротких. Возникла ошибка при чтении данных из микросхемы постоянной памяти. Перегрузите компьютер или перепрошейте содержимое микросхемы.
1 длинный повторяющийся. Неправильная установка модулей памяти.
1 короткий повторяющийся. Проблемы с блоком питания. Попробуйте убрать накопившуюся в нем пыль.

Сигналы AMI BIOS
1 короткий. Ошибок не обнаружено.
2 коротких. Ошибка четности оперативной памяти. Перегрузите компьютер. Проверьте установку модулей памяти.
3 коротких. Возникла ошибка при работе первых 64 Кб основной памяти. Рекомендации аналогичны.
4 коротких. Неисправен системный таймер.
5 коротких. Неисправен центральный процессор.
6 коротких. Неисправен контроллер клавиатуры.
7 коротких. Неисправна материнская плата.
8 коротких. Неисправна видеопамять.
9 коротких. Ошибка контрольной суммы содержимого микросхемы BIOS.
10 коротких. Невозможно произвести запись в CMOS-память.
11 коротких. Неисправна внешняя cache-память (установленная в слотах на материнской плате).
1 длинный+2 коротких. Неисправна видеокарта.
1 длинный+3 коротких. Аналогично предыдущему. Не читается память видеокарты.
1 длинный+8 коротких. Проблемы с видеокартой или не подключен монитор.
Сигналов нет. Неисправен или не подключен к материнской плате блок питания.

Сигналы Phoenix BIOS
1-1-3. Ошибка записи/чтения данных CMOS.
1-1-4. Ошибка контрольной суммы содержимого микросхемы BIOS.
1-2-1. Неисправна материнская плата.
1-2-2. Ошибка инициализации контроллера DMA.
1-2-3. Ошибка при попытке чтения/записи в один из каналов DMA.
1-3-1. Ошибка регенерации оперативной памяти.
1-3-3. Ошибка при тестировании первых 64 Кб оперативной памяти.
1-3-4. Аналогично предыдущему.
1-4-1. Неисправна материнская плата.
1-4-2. Ошибка тестирования оперативной памяти.
1-4-3. Ошибка системного таймера.
1-4-4. Ошибка обращения к порту ввода/вывода.
3-1-1. Ошибка инициализации второго канала DMA.
3-1-2. Ошибка инициализации первого канала DMA.
3-1-4. Неисправна материнская плата.
3-2-4. Ошибка контроллера клавиатуры.
3-3-4. Ошибка тестирования видеопамяти.
4-2-1. Ошибка системного таймера.
4-2-3. Ошибка линии A20. Неисправен контроллер клавиатуры.
4-2-4. Ошибка при работе в защищенном режиме. Возможно, неисправен центральный процессор.
4-3-1. Ошибка при тестировании оперативной памяти.
4-3-4. Ошибка часов реального времени.
4-4-1. Ошибка тестирования последовательного порта. Может быть вызвана устройством, использующим данный порт.
4-4-2. Ошибка при тестировании параллельного порта. См. выше.
4-4-3. Ошибка при тестировании математического сопроцессора.
Читать дальше...

Перезагрузка Linux-систем

Бывает такое, что система зависает. Или иксы не выходят из свопа, или некий процесс отъел всю память и обработчик клавиатуры не может получить управление, или придётся признать, что у броузера медленно подтекает крышак, ну в общем, ничего не сделать, кроме ребута.
А вот как его сделать, чтобы не повредить файловую систему? Прибегнем к так называемой магической ядерной кнопке, а именно сочетанию Alt-SysRq (он же PrintScreen) с разными буквами.


Alt-Sysrq-R переключить клавиатуру в режим XLATE (перехватить управление у иксов)
Alt-Sysrq-E послать всем процессам, кроме инита, решительный привет, то есть SIGTERM
Alt-Sysrq-I послать всем процессам, кроме инита, окнчательный привет, то есть SIGKILL
Alt-Sysrq-S он же sync. Для последователй старой школы: нажать дважды
Alt-Sysrq-U перемонтировать все файловые системы в read-only
Alt-Sysrq-B начать загрузку
Говорят, что эту последовательность (Alt-SysRq-REISUB) можно запомнить как слово BUSIER наоборот. От себя можно добавить, что если хочется освежить в голове эту краткую мнемонику, то можно на консоли нажать Alt-SysRq-H, и будет выдана краткая справка. Для тех, кто не уверен, где у него консоль: надо нажать Ctrl-Alt-F1.
Ну и если кто что забыл, то Ctrl-Alt-Backspace выкидывает нас обратно в консоль убивая Иксы - если эта комбинация не заблочена...
Ещё есть хорошая хорошая комбинация Alt-Sysrq-F которая прибивает самый ресурсожрущий процесс.
Читать дальше...

Краткий линукс

man - главная команда выдает справку по командам

telnet - подключение по телнет (винмашины, роутеры, принтеры и прочее)

ssh - подключение secureshell к линьмашинам и линьроутерам

ifconfig - управление интерфесами в лине (ап и даун)

grep - вывод на печать строки с заданными параметрами из выбранного файла

apachectl - управление апачем, старт рестарт, шатдаун

chmod - изменение прав доступа к файлам по маске XXX - юзер, группа, все Читать дальше...

Устройства-призраки

Бывало что меняли сетевую карточку на новую, а OS Windows помнит старые настройки и мешает использовать их на новом устройстве? Вот решение по базе Майкрософта. Вкратце выглядит так:

1. В командной строке введите следующую команду и нажмите клавишу ВВОД:
set devmgr_show_nonpresent_devices=1
2. В командной строке введите следующую команду и нажмите клавишу ВВОД:
start devmgmt.msc
Не забудьте выбрать отображать скрытые устройства!

Обратите внимание, что после закрытия окна командной строки Windows обнуляет переменную devmgr_show_nonpresent_devices=1, установленную на шаге 2, и устройства-призраки перестают отображаться при выборе пункта Показать скрытые устройства.

Разработчики или опытные пользователи, которые хотят, чтобы неподключенные к компьютеру устройства отображались в диспетчере устройств, могут установить эту переменную окружения глобально:
  1. Щелкните правой кнопкой мыши значок Мой компьютер.
  2. Выберите пункт Свойства.
  3. Откройте вкладку Дополнительно.
  4. Нажмите кнопку Переменные среды.
  5. Задайте значения переменных в поле Системные переменные.
Читать дальше...

Управление пользователями через cmd

Как создать пользователя через CMD?

cmd
net user login password /add

Создает пользователя login с паролем password
Если вместо /add использовать /delete то это сотрет учетную запись данного пользователя


Как добавить пользователя в группу через CMD?

net localgroup group login /add
Добавляет пользователя login в группу group Если хотим добавить доменного пользователя, то вместо login надо использовать "domain\login"

Как посмотреть список групп на локальном компьютере?
net localgroup

И еще может пригодиться:
net user user /random
Генерирует случайный пароль для пользователя user Читать дальше...