Pull to refresh
3
0
Андрей @Gryn

Системный администратор Linux

Send message

Частые ошибки программирования на Bash (окончание)

Reading time3 min
Views22K
Окончание перевода Bash Pitfalls. Предыдущие части доступны в блоге «Оболочки» (часть 1, часть 2) и в моём блоге.

22. echo "Hello World!"


Проблема в том, что в интерактивной оболочке Bash эта команда вызовет ошибку:
bash: !": event not found

Это происходит потому, что при установках по умолчанию Bash выполняет подстановку истории команд в стиле csh с использованием восклицательного знака. В скриптах такой проблемы нет, только в интерактивной оболочке.

Очевидное решение здесь не работает:
$ echo "hi\!"
hi\!

какое же тогда неочевидное решение?
Total votes 49: ↑46 and ↓3+43
Comments7

Основы BASH. Часть 1

Reading time5 min
Views1.4M
Безусловно, все те кто общается с ОС Linux хоть раз да имели дело(во всяком случае слышали точно) с командной оболочкой BASH. Но BASH не только командная оболочка, это еще и превосходный скриптовый язык программирования.
Цель этой статьи — познакомить поближе юзеров с bash, рассказать про синтаксис, основные приемы и фишки языка, для того чтобы даже обычный пользователь смог быстренько написать простой скрипт для выполнения ежедневной(-недельной, -месячной) рутинной работы или, скажем, «на коленке» наваять скриптик для бэкапа директории.
Читать дальше →
Total votes 146: ↑135 and ↓11+124
Comments114

Основы BASH. Часть 2

Reading time6 min
Views370K
Основы BASH. Часть 2.
Извиняюсь за такую большую задержку между статьями, но сессия дает о себе знать в самый неподходящий момент :)
Всем спасибо за замечания, критику и дополнения, которые были озвучены в комментариях к прошлой статье.
Эта часть, как и обещал, будет посвящена циклам, математическим операциям и использованию внешних команд.
Начнем.
Читать дальше →
Total votes 68: ↑59 and ↓9+50
Comments52

Эффективный счёт в уме или разминка для мозга

Reading time3 min
Views300K
Эта статья навеяна топиком «Как и насколько быстро вы считаете в уме на элементарном уровне?» и призвана распространить приёмы С.А. Рачинского для устного счёта.
Рачинский был замечательным педагогом, преподававшим в сельских школах в XIX веке и показавшим на собственном опыте, что развить навык быстрого устного счёта можно. Для его учеников не было особой проблемой посчитать подобный пример в уме:

image

Далее рассмотрим несколько трюков для ускорения умственного счёта...
Total votes 90: ↑82 and ↓8+74
Comments37

Изобретаем JPEG

Reading time28 min
Views174K

Вы правильно поняли из названия, что это не совсем обычное описание алгоритма JPEG (формат файла я подробно описывал в статье «Декодирование JPEG для чайников»). В первую очередь, выбранный способ подачи материала предполагает, что мы ничего не знаем не только о JPEG, но и о преобразовании Фурье, и кодировании Хаффмана. И вообще, мало что помним из лекций. Просто взяли картинку и стали думать как же ее можно сжать. Поэтому я попытался доступно выразить только суть, но при которой у читателя будет выработано достаточно глубокое и, главное, интуитивное понимание алгоритма. Формулы и математические выкладки — по самому минимуму, только те, которые важны для понимания происходящего.

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

Если есть желание, то предлагаю пройти те же этапы самостоятельно параллельно со статьей. Проверить, насколько приведенные рассуждения подходят для разных изображений, попытаться внести свои модификации в алгоритм. Это очень интересно. В качестве инструмента могу порекомендовать замечательную связку Python + NumPy + Matplotlib + PIL(Pillow). Почти вся моя работа (в т. ч. графики и анимация), была произведена с помощью них.

Внимание, трафик! Много иллюстраций, графиков и анимаций (~ 10Мб). По иронии судьбы, в статье про JPEG всего 2 изображения с этим форматом из полусотни.
Читать дальше →
Total votes 356: ↑354 and ↓2+352
Comments70

О сетях: всего понемногу

Reading time7 min
Views40K
Недавно у нас были небольшие обучающие курсы для повышения нашей компетенции в сетевой части нашей инфраструктуры. Основную идею этих курсов, покрывающую OSPF/BGP/MPLS я тут повторять не буду ибо:
  • Пока ещё явно недостаточно компетентен.
  • Есть много более объективные ресурсы рассказывающие об этих темах.

Так что тут я опишу интересные около-сетевые моменты которые были затронуты в процессе обучения. Часть из этого может показаться вам банальным, однако постараюсь компенсировать возможную скуку при прочтении обилием ссылок на дополнительные материалы

Ссылки на вики зачастую более примечательны секциями «External links» и «References» нежели самим содержанием

Читать дальше
Total votes 86: ↑74 and ↓12+62
Comments24

Побеждаем широковещательный флуд в корпоративной локальной вычислительной сети

Reading time3 min
Views90K

Симптомы


Случилось у нас в организации, страшное дело – сеть работала, работала и вдруг, вроде без особых на то причин, стала работать нестабильно. Выглядело всё это очень странно (впервые столкнулся с проблемой сабжа) – некоторые компьютеры в сети (их небольшое количество) перестали получать IP-адреса (в логах пишут, что не получен ответ от DHCP), причем с утра одни, с обеда другие – пользователи звонят, волнуются, а мы ничего понять не можем.
Читать дальше →
Total votes 36: ↑24 and ↓12+12
Comments70

Сети для самых маленьких. Часть четвертая. STP

Reading time22 min
Views597K
I think that I shall never see
A graph more lovely than a tree.
A tree whose crucial propertyеу
Is loop-free connectivity.
A tree that must be sure to span
So packets can reach every LAN.
First, the root must be selected.
By ID, it is elected.
Least-cost paths from root are traced.
In the tree, these paths are placed.
A mesh is made by folks like me,
Then bridges find a spanning tree.

— Radia Joy Perlman

Все выпуски


6. Сети для самых маленьких. Часть шестая. Динамическая маршрутизация
5. Сети для самых маленьких: Часть пятая. NAT и ACL
4. Сети для самых маленьких: Часть четвёртая. STP
3. Сети для самых маленьких: Часть третья. Статическая маршрутизация
2. Сети для самых маленьких. Часть вторая. Коммутация
1. Сети для самых маленьких. Часть первая. Подключение к оборудованию cisco
0. Сети для самых маленьких. Часть нулевая. Планирование

В прошлом выпуске мы остановились на статической маршрутизации. Теперь надо сделать шаг в сторону и обсудить вопрос стабильности нашей сети.
Однажды, когда вы — единственный сетевой админ фирмы “Лифт ми Ап” — отпросились на полдня раньше, вдруг упала связь с серверами, и директора не получили несколько важных писем. После короткой, но ощутимой взбучки вы идёте разбираться, в чём дело, а оказалось, по чьей-то неосторожности выпал из разъёма единственный кабель, ведущий к коммутатору в серверной. Небольшая проблема, которую вы могли исправить за две минуты, и даже вообще избежать, существенно сказалась на вашем доходе в этом месяце и возможностях роста.

Итак, сегодня обсуждаем:

  • проблему широковещательного шторма
  • работу и настройку протокола STP и его модификаций (RSTP, MSTP, PVST, PVST+)
  • технологию агрегации интерфейсов и перераспределения нагрузки между ними
  • некоторые вопросы стабильности и безопасности
  • как изменить схему существующей сети, чтобы всем было хорошо



Читать дальше →
Total votes 76: ↑71 and ↓5+66
Comments49

Почему 98% текстов на ваших сайтах не работают. Вообще. И как это починить

Reading time7 min
Views284K

Вот так люди видят вашу страницу

Привет!
Проблема вот в чём. Если зайти на практически любой сайт интернет-магазина или компании с услугами, вы встретите контент. Точнее — отвратительные тексты, которые писали, кажется, маркетологи, воспитанные сеошниками.

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

По моим примерным подсчётам (усреднение с ряда позиций), конверсии для нас выглядят так:
  • Только название и картинка — около 1,5%.
  • С описанием от производителя — чуть более 2%.
  • С описанием человека, который держал это в руках и знает правила — около 6%.

Ниже — рассказ про то, как мы доводили время на сайте от 3 минут сначала до 6:40, а потом до 20:48. Да-да, двадцати минут сорока восьми секунд для среднего посетителя. Честного среднего, с учётом отказов и по полной выборке.
Читать дальше →
Total votes 294: ↑282 and ↓12+270
Comments121

Домашний сервер «всё-в-одном» — success story

Reading time9 min
Views139K
Жил да был у меня роутер одной хорошей фирмы на букву «Dead». Ну, это с ним, собственно, и случилось.
Посмотрел я на цены новых, на кучу компьютерного хлама в углу, на список подключений на домашнем компе… И понял, что не нужен мне роутер. Соберу свой, с нормальной маршрутизацией, DNS, WINS, i2p, блекджеком и так далее.
Как это было?
Total votes 134: ↑110 and ↓24+86
Comments87

Внутриканальные наушники: все о них

Reading time16 min
Views294K

1. Что такое IEMs?


Внутриканальные наушники (англ. In-Ear-Canalphone), еще именуемые как затычки, реже ухо-мониторы или (правильное) IEMs (в дальнейшем в статье будет именно это название, т.к. оно очень лаконичное и нравится автору) — это наушники, внешне очень похожие на вкладыши, но разработанные для максимальной звукоизоляции ушного канала слушателя. Ее (звукоизоляцию) еще называют, звуковая «герметизация», — она имеет две функции: блокировка лишних шумов и формирование звуковой площади (камеры) для достижения полноты звучания. Создает такую герметизацию насадка, надетая на сопло наушника и вложенная в переднюю часть ушного канала. Существуют также наушники, где насадка создана по слепкам ушей владельца, — они называются (у русскоговорящей аудитории) кастомами (англ. Custom molded earplugs), — подобные вещи служат для достижения максимального качества звука и комфорта от прослушивания.

Почему выбирают IEMs? Из-за высокой портативности, качественного звука и способности к блокировке лишних шумов. Некоторые модели уже давно используют аудио-инженеры; музыканты, выступая на сцене. Затычки (в России это название прижилось больше), являются разновидностью IEMs. Когда производители внутриканальных наушников начали клепать их для общего потребителя (поколение iPod), аббревиатура IEMs стала более популярна (не в России), заменив выражение «затычек».  Техническим языком правильно «затычки» называть — IEMs. Реже аббревиатура IEMs используется для обозначения внутриканальных наушников высокого качества.
Читать дальше →
Total votes 74: ↑70 and ↓4+66
Comments70

Эпопея о WD My Book Live, или «девайс-конфетка» с «печеньками»

Reading time18 min
Views236K
image

Привет %username%! В начале этого года мне наконец-то исполнился четвертак. Поняв, что я стал взрослым ребёнком и нуждаюсь во взрослых игрушках, купил себе WD My Book Live на 3Tb ёмкости, который в нашем счастливом семействе убил сразу N зайцев. Счастью моему не было предела. Девайс подкупил своей ценой, железом и наличием полноценного Linux на борту. Однако, как оказалось позже, Linux Debian оказался не очень уж и полноценным, достаточно кастрированным и, судя по отзывам рядовых владельцев, любителем окирпичиться. Однако, благодаря инженерам из WD, девайс достаточно легко поднимается из состояния кирпича до состояния работоспособного устройства (пруф1 и пруф2). Но согласитесь, времена хард ресета с пассатижами из хозмага за углом давно миновали. Всё-таки эпоха нано-полимеров и инноваций. А значит и девайс хочется более не убиваемым.

Я никак не являюсь линуксоидом и для меня Linux, по своей сути, тёмный лес! Поэтому, для начала, долго изучая интернеты, я запилил себе только mc и transmission, чего для первого раза мне хватило за глаза. А ещё я был поражён, как мне – человеку, впервые запустившему SSH — легко это удалось! Прошло полгода, я почитал форумы, посвящённые девайсу. Настал день “Д” и я, засучив рукава, принялся делать из своего девайса “конфетку”. И не простую, а “конфетку” с “печеньками”
Подробнее под катом...
Total votes 84: ↑74 and ↓10+64
Comments50

10 вопросов вашему штатному системному администратору

Reading time6 min
Views122K

Которые помогут вам оценить и повлиять на состояние ИТ-инфраструктуры вашей организации




Работа с системным администратором или ИТ-директором (далее по тексту – «ИТ-специалистом») в малом и среднем бизнесе строится обычно на основе субъективных оценок: если все работает «хорошо» – значит специалист «хороший», а если «вечно ломается» — то «плохой». Такой подход к оценке результатов работы системного администратора или ИТ-директора имеет право на жизнь, но я в своей практике встречал ситуации, когда «хороший» ИТ-специалист «вдруг» доводил компанию до недельного простоя и потери деловой информации, и когда «плохой» ИТ-специалист героически пытался исправить трагическое наследие предыдущего «хорошего» администратора.

Вечная головная боль у руководства компании: как организовывать, контролировать и оценивать работу ИТ-службы, ничего не понимая в предметной области? Очень общий совет – обратиться за помощью к внешним консультантам. Но есть ряд простых вопросов, которые позволяют если и не оценить точно, то, как минимум, повлиять на состояние дел в ИТ-инфраструктуре.
Читать дальше →
Total votes 119: ↑101 and ↓18+83
Comments78

Организация сервиса общих календарей и контактов для корпоративного использования на базе свободного программного обеспечения

Reading time2 min
Views38K
Доброго времени суток

Сегодня хочу поделиться как можно реализовать собственный корпоративный сервис календарей и контактов. Естественно все будет привязано к почтовому клиенту, к чему привыкло большинство корпоративных пользователей и все планируемое программное обеспечение участвующее в проекте базируется на лицензии GNU GPL и производных.
Читать дальше →
Total votes 13: ↑12 and ↓1+11
Comments7

Шпаргалка начинающего Debian/Ubuntu администратора по управлению пакетами

Reading time3 min
Views292K
Долгое время меня глодало незнание того, как сделать некоторые элементарные вещи в дебиановских менеджерах пакетов, но, как часто бывает, спросить рядом было не у кого, а до написания куда-либо руки не доходили. И вот наконец вопросы вызрели и я написал свой вопрос в дебиановскую рассылку. Естественно оказалось что пропустил что-то очевидное, но и узнал много неочевидных полезностей, посему решил набросать шпаргалку, авось кому пригодится.
Читать дальше →
Total votes 103: ↑90 and ↓13+77
Comments64

Сломается ли база, если выдернуть сервер из розетки, или потроха DB ORACLE для чайников

Reading time5 min
Views29K
Писал для коллег — программистов, далёких от предметной области, которые действительно, искренне не понимали, что такого сложного в базе данных. Они хотели хранить критические данные в простых файлах. Я задавал им каверзные вопросы о надёжности, скорости и одновременном доступе, они пытались «на ходу» придумать хитрые решения. В конце они трезво оценили требуемый объём кода и поняли, что им придётся написать свой маленький ORACLE или, хотя бы, MySQL. Затем я рассказал им, как были решены эти проблемы в DB ORACLE, их поразило изящество некоторых алгоритмов. Лекция понравилась, и я решил выложить её в открытый доступ.

Читать дальше →
Total votes 40: ↑29 and ↓11+18
Comments46

Страсть к программированию. Глава 5. Инвестируйте в свой ​​интеллект

Reading time4 min
Views43K
< 4. Будь худшим | 6. Не слушай своих родителей >

При выборе, на что обратить внимание, можете просто рассмотреть технологии, которые дают наибольшее количество рабочих мест, и сосредоточить внимание на них. Java много. .NET много. Изучение Java даёт простой, переходящий эффект: если я знаю Java, я могу подать заявку, и, скорей всего, получить работу Java программиста.

Следуя этой логике, было бы глупым изучать эту область, если вы не планируете её использовать.
Читать дальше →
Total votes 34: ↑27 and ↓7+20
Comments22

Построение карьеры в большой организации. Tips&tricks

Reading time5 min
Views179K

Захотелось поделиться с сообществом собственными наблюдениями на тему карьерного роста технаря.


Информация основана на опыте в больших западных конторах, которые делают реальные продукты. Всё изложенное ниже не претендует на абсолютную истину.

Начнем сначала: вы свежий выпускник тех. вуза. Вам 22-23 года, вся жизнь впереди и она прекрасна. В этом прекрасном будущем есть, скорее всего, есть жена-модель, дом – полная чаша, несколько машин, и первый миллион к 30 годам.

Карьера представляется немного смутно, но в целом, понятно: начинаем активно и качественно работать, нас, несомненно, замечают и продвигают. Множество фильмов и книг именно так нам и обещают: много и хорошо работай –> и всё будет хорошо.

Вы устраиваетесь на работу, ваше звание — инженер или разработчик. У вас появляются коллеги. Почти все они старше вас. И тут вы, возможно, заметите, что на таком же уровне, как и вы, есть очень пожилые люди. Прямо 30-40 летние мужики, может даже 50ти летние “стариканы”. И многие из них тоже закончили похожие вузы, и многие совсем не дураки, но как-то не сложилось с карьерным ростом…

Получается хороший вуз, диплом, интеллект, работоспособность, хорошее первое рабочее место – далеко не гарантия того, что вы вырастете в иерархии.
Читать дальше →
Total votes 155: ↑135 and ↓20+115
Comments96

Структурированные кабельные сети

Reading time10 min
Views145K
Серверная одной из компаний в Азербайджане, nag.ru
СКС — структурированная кабельная сеть. Или, грубо говоря, «розетки в стенке». Самое дорогое же в СКС — не розетки, а огромные километры проводов, соединяющие розетки с серверными и коммутационными.

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

Сама область конструирования СКС ближе к строительным (инженерным) работам, нежели к области системного администрирования.

Но иногда в жизни сисадмина возникает ситуация, когда от него зависит, какой будет СКС в здании (этаже, комнате) фирмы. В худшем случае, сисадмин сам её тащит, в лучшем — эта задача отдаётся на аутсорс (точнее, подрядчикам). Но какой СКС будет, решают обычно два-три человека. При этом, оставшиеся два определяют лишь бюджет, а воевать за качество может лишь сисадмин. [с другого боку находится представитель подрядчика, который тащит одеяло в свою сторону, и хотя он может казаться сисадмину соратником в битве за качество СКС, на самом деле, он хочет просто дороже, и относиться к нему следует с осторожностью].

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

Итак, СКС.

Точка зрения владельца (директора)


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

Точка зрения подрядчика


Клиенту нужно продать максимум. Максимум, это полноценная СКС с коммутационными на этажах, межэтажной оптикой… Что? Он хочет подешевле? Ну и фиг с ним, пускай что хочет, то и делает.

Что ВАМ нужно от СКС?


Читать дальше →
Total votes 115: ↑103 and ↓12+91
Comments138

Маркировка кабелей

Reading time6 min
Views118K
В этой статье:
  • подготовка таблицы коммутаций;
  • варианты маркировки (что наносить на кабели);
  • обзор методов нанесения маркировки;
  • пример работы с одним из методов, включая макрос и шаблон для распечатки.
Читать дальше →
Total votes 112: ↑109 and ↓3+106
Comments41

Information

Rating
Does not participate
Location
Иваново, Ивановская обл., Россия
Date of birth
Registered
Activity