gladilov.org.ru 

Позднее Ctrl + ↑

Поздравляю!

#include <stdio.h>

int main(){
        char mdata[] = {0x48, 0x61, 0x70, 0x70, 0x79, 0x20, 0x6e, 0x65, 0x77,
                0x20, 0, 0, 0, 0, 0x20, 0x79, 0x65, 0x61, 0x72, 0x21, 0xa};
        int i, y, c;
        y = 2 * (10 * 10 * 10 + 3 * 3);
        for (i = 0; i < 4; i++){
                c = y % 0xa;
                mdata[0xd - i] = 0x30 + c;
                y -= c;
                y /= 0xa;
        }
        for (i = 0; i < 21; i++) putchar(mdata[i]);
        return 0;
}
איך אַרומנעמען און גראַטולירן איר אַלע. אַזוי פילע יאָרן צעלאָזן אונדזער נערוועס צו יעדער אנדערער, לאָזן אונדז פאָרזעצן דעם שפּאַס טעטיקייט. גוט גליק צו איר אַלע און געזונט.
新年快乐!万事如意!

С Новым 2018 годом!

¨"°º¤ø„¸¨"°º¤ø„¸❊❊¸„ø¤º°"¨¸„ø¤º°"¨ 
  ¨´*❊.¸   С НОВЫМ    ¸.❊*´¨
     ¨´*❊.¸ ГОДОМ !!! ¸.❊*´¨
        ¸„ø¤º°"¨❊❊¨"°º¤ø„¸
´¨)      
. ¸.•´ ¸.•*´¨) 
(.¸.•´ (¸.•`  ..♪•*¨*•.¸ . Ура!

Лабы по Cisco Packet Tracer

 Хочу всё с основ пройти:

Часть 1: Basic Networking
1-1 Basic Configuration 1-2 IPv4 Addressing 1-3 IPv6 Addressing
Часть 2: LAN Technology
2-1 InterVLAN Routing 2-2 VTP 2-3 STP
Часть 3: WAN Technology
3-1 PPP — PAP 3-2 PPP — CHAP 3-3 Frame Relay — Multipoint
3-4 Frame Relay — Point-to-Point
Часть 4: IP Routing and Services
4-1 Static and Default Route 4-2 RIP 4-3 OSPF
4-4 EIGRP 4-5 Port Security 4-6 Access Control List
4-7 NAT 4-8 VPN-IPsec 4-9 DHCP

Удобный IP-калькулятор.

Определение размера свопа, использованого процессом

Стандартные консольные утилиты Linux не показывают количество памяти процесса, выгруженной в файл подкачки (swapped out).
Но есть достаточно простой способ узнать это. Всё, что для этого нужно — взять идентификатор процесса (PID) и просмотреть файл smaps, относящийся к этому процессу:

sudo cat /proc/<pid процесса>/smaps | grep Swap

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

sudo cat /proc/<pid процесса>/smaps | grep Swap | awk '{ SUM += $2 } END { print SUM }'

Выведенное число — размер использованного свопа в килобайтах.

Путрада Экадаши

      Индусы никогда сами не называют себя индусами, точно также как китайцы никогда не называли себя китайцами, а арабы — никогда не называли себя арабами. Подобно тому, как англичане видели в китайцах торговцев фарфором (chinа с английского переводится как фарфор), а месопотамцы в представителях племен, вторгавшихся в Междуречье с юга, жителей пустыни, бродяг и кочевников (именно так можно перевести слово al-arab), индусов так называли персы (hindu происходит от названия реки Синдху — современный Инд).

Показать

Сами же индусы называют свою страну Бхарата-варшей, а себя бхаратами или ариями. «Ария» несет в себе изначально «тот, кто знает истинный смысл жизни», а «бхарат» означает «потомок Бхараты», великого императора всей Земли в далекой древности.

Традиция празднования Путрада Экадаши (Putrada Ekadashi) такая же древняя, как и история самого императора Бхараты, описанная в Ведах и Пуранах (считается, что в Пуранах содержится описание исторических хроник за последние 60 кальп, продолжительность одной кальпы составляет 4 320 000 000 лет).

Естественно, современная наука широко раскрывает на это не только глаза, но и рот, однако, чтобы даже поверхностно судить об этом, необходимо тщательно изучить около 10 триллионов санскритских четверостиший — именно такой объем Вед на этом ныне забытом языке. Все это звучит по меньшей мере диковинно, но переоценить лаконичность и мудрость традиций тех, кто знает истинный смысл жизни, очень трудно. Празднование Путрада Экадаши — яркий тому пример.

В день Путрада Экадаши празднующие стремятся лучше понять Шри Нарайану, проявленного через имена, формы, качества и деяния, описанные в священных текстах Вед.

История Путрада Экадаши из Бхавишья Пураны такова.

У царя Сукутуман, который правил в царстве Бхадравати, и его достойной царицы Шайбьи не было сыновей, из-за чего они пребывали в великом беспокойстве. По древнейшей традиции, именно сын после смерти своего отца проводит регулярный обряд тарпана (подношение воды предкам).

Царь думал: «Говорится, что без сына брак бесполезен. И сердце, и великолепный дом семейного человека, не имеющего сына, остаются пустыми и жалкими. Лишенный сына, он не может отдать долг предкам, полубогам и другим людям, поэтому каждый семейный человек должен стараться иметь сына. Так он обретет славу во всем мире, а впоследствии достигнет небесной обители. Сын — доказательство благочестивой деятельности, совершенной человеком в сотне прошлых жизней, а обретение в этой жизни сыновей и внуков свидетельствует о поклонении в прошлом Господу Вишну. Великое благословение сыновьями, богатством и острым умом можно получить лишь поклонением Всевышнему Господу, Шри Кришне. Так я считаю».

Однажды царь один поехал в густой лес. Видя там различных зверей, окруженных самками и отпрысками, он еще больше опечалился. После полудня царя начали мучить голод и жажда. В поисках воды он натолкнулся на красивый пруд, рядом с которым жило много святых и мудрецов, которые воспевали святые имена Бога на четках. Царь почтительно поклонился и, соединив ладони, прославил их. Он был искренне рад находиться в обществе этих мудрецов, которые, как оказалось, пришли сюда, чтобы искупаться в день Путрада Экадаши. «Тот, кто желает сына, должен строго соблюдать этот пост», — сказали они…

Вскоре царица Шайбья забеременела и родила прекрасного сына, который прославил своего отца и продолжил заботу о подданных его царства, как велел ему религиозный долг.

Источник

Консольный аналог «Анализатора использования дисков»

du -sk ./* | sort -nr | awk 'BEGIN{ pref[1]="K"; pref[2]="M"; pref[3]="G";} { total = total + $1; x = $1; y = 1; while( x > 1024 ) { x = (x + 1023)/1024; y++; } printf("%g%s\t%s\n",int(x*10)/10,pref[y],$2); } END { y = 1; while( total > 1024 ) { total = (total + 1023)/1024; y++; } printf("Total: %g%s\n",int(total*10)/10,pref[y]); }'

Меряет только реальные файлы и директории, симлинки будут нулевого размера.

Так же могут быть полезны пакеты типа ncdu или pydf...

Монтирование директории с удалённого хоста по SSH*

(* точнее — по SFTP, надстройкой над протоколом SSH)

Требуется установленный пакет sshfs. В общем виде команда выглядит так:

sshfs user@remotehost:/path/to/directory /local/path -p port

Показать

Реализация:

sudo modprobe fuse
mkdir ~/music
sshfs insect@192.168.1.234:/home/insect/music ~/music

Размонтировать так:

sudo umount ~/music

или (для ранних версий) так:

sudo fusermount -u ~/music

Автоматический запуск screen при входе по SSH

Для работы скрипта требуются установленные в системе пакеты dialog и screen.

Показать

В конец ~/.bashrc дописать:

if [ "$SSH_TTY" ]; then
  if [ ! "$STY" ] ; then
    CHOICE=`~/SCREEN/choose`
    if [ "$CHOICE" ]; then exec screen -dr $CHOICE; fi
  fi
fi

При логине по ssh-протоколу откроется меню с выбором работы в существующих сессиях screen’а или возможностью остаться в консоли ssh-клиента. Если запущенных сессий screen’а нет — меню не откроется.

Содержимое файла ~/SCREEN/choose:

#!/usr/bin/env bash
i=0
declare -ax SCREENS
SOCKETS=`find /var/run/screen/S-$(whoami) -type p 2>/dev/null`
if [ -z "$SOCKETS" ]; then exit 0; fi
for S in $SOCKETS; do ((i=$i+1)); S=`basename $S`; SCREENS[$i]=`screen -ls | grep $S | perl -e '$s=<>; $s =~ s/^\\t(.*)\s/$1/; $s =~ s/\s/_/g; print $s'`; done
MENU=""
for ((j=1; j<=$i; j=$j+1)); do MENU="$MENU $j ${SCREENS[$j]}"; done
MENU="$MENU $j Отменить"
WHICH=`dialog --stdout --menu Select: 0 0 0 $MENU`
if [ "$WHICH" != "$j" ]; then echo ${SCREENS[$WHICH]} | sed -e 's/_(.*)$//'; fi

Установка DebWrt на DIR-320 аппаратных ревизий A1/A2

На всякий случай сделаю в блоге копию руководства со страницы  DIR-320 -> Firmwares -> DebWrt

Показать

Оглавление
Необходимые материалы
Подготовка накопителя
Прошивка устройства
Действия после перепрошивки
Использование NetConsole

Необходимые материалы

Я использую прошивку DebWrt ревизии 116 от 22 июня 2011 года с ядром версии 2.6.34.5. Немного тухло, но в сборках с более свежими ядрами мне не удалось заставить работать интерфейс wlan0 (видимо — из-за этого), а пересобирать прошивку — лениво. Работает — и пусть работает :-) Прошивки беру с официального сайта DebWrt.

Перейти к оглавлению

Подготовка накопителя

Команды выполняются от имени пользователя root или используется sudo. Допустим, что USB-флеш-накопитель объявлен в системе как /dev/sdb

Последовательность действий следующая:

Разбивка накопителя на разделы

/dev/sdb1 - метка тома DEBWRT_ROOT, тип - Linux (ext3), весь объём накопителя, кроме свопа
/dev/sdb2 - метка тома DEBWRT_SWAP, тип - Linux Swap, объём - 128 Мб

Создание файловых систем

mkfs.ext3 -L DEBWRT_ROOT /dev/sdb1
tune2fs -c 0 -i 0 /dev/sdb1
mkswap -L DEBWRT_SWAP /dev/sdb2

Монтирование корневого раздела ext3

mkdir -p /mnt/debwrt
mount /dev/sdb1 /mnt/debwrt
cd /mnt/debwrt

Распаковка архива с корневым образом в /mnt/debwrt (/dev/sdb1)

tar xjvf ~/debwrt-rootfs-mipsel-2.0-1.tar.bz2

Распаковка архива с модулями ядра в /mnt/debwrt (/dev/sdb1)

tar xzvf ~/debwrt-modules-brcm47xx-Broadcom-b43-2.6.34.5-angel-2.0-1.tar.gz --no-same-owner

Размонтирование и извлечение накопителя

cd
sync
umount /mnt/debwrt
eject /dev/sdb

Перейти к оглавлению

Прошивка устройства

Устройство перепрошивается DebWrt-прошивкой по инструкции с сайта OpenWrt, затем необходимо перезагрузить маршрутизатор.

Вариант для  Шindoшs

tftp -i 192.168.0.1 put debwrt-firmware-brcm47xx-squashfs.trx

Вариант для  Linux

atftp --trace --option "timeout 1" --option "mode octet" --put --local-file debwrt-firmware-brcm47xx-squashfs.trx 192.168.0.1

После перепрошивки действуют следующие установки по умолчанию:

  • пользователь : root
  • пароль : debwrt
  • IP-адрес : 192.168.1.1

При первой загрузке (в случае самостоятельной сборки образа) выполняются сервисы SSHD и telnetd

При обычной загрузке

  • запущены сервисы SSHD и telnetd
  • eth0 настроен в /etc/network/interfaces
  • настройки switch не произведены (используется пакет robocfg или swconfig)
  • предустановлены пакеты DebWrt
    — robocfg
    — nvram
    — libnl
    — hostapd (nl80211, madwifi, WPA, WEP, режим ТД)
    — iw

Перейти к оглавлению

Действия после перепрошивки

Необходимо:

  • настроить MAC-адрес (опционально, MAC’и выдуманы)
nvram set et0macaddr=1c:af:f7:96:3b:0e
nvram set il0macaddr=1c:af:f7:96:3b:10
nvram commit
reboot
  • установить новый пароль пользователя root
  • установить пакет locales (опционально)
  • настроить timezone
  • сбросить секретный ключ SSHD
  • проверить, что настройки /etc/securetty позволяют пользователю root логиниться на pts/0 ... pts/6

Для запуска сервиса robocfg установите ENABLED=1 в файле /etc/default/robocfg, добавьте символическую ссылку от файла /etc/init.d/robocfg в /etc/rcS.d (сервис должен стартовать до службы «networking»), удалите файл /etc/network/interfaces (если это символическая ссылка) и создайте его заново.
Перейти к оглавлению

Использование NetConsole

nc -l -p 6666 -u

Перейти к оглавлению

Продолжение

2017   D-Link   Linux   ОС   роутер   софт
Ранее Ctrl + ↓
Наверх