Как я выбирал для себя дистрибутив Linux

{lang: 'ru'}

Недавно я решил начать «новую» жизнь. Т.е. снести все операционные системы, что стоят у меня на компе, переформатировать разделы, изменить их конфигурацию. Сейчас у меня через загрузчик Grub грузятся Linux Mandriva и Windows 7, и через загрузчик Chameleon, который записан на болванку – Mac OS X 10.6 Snow Leopard. Я хочу кардинально изменить эту схему. Поскольку Linux я не использую для повседневных нужд, и нужен он мне только чтобы «поиграться» с командной строкой, да «пощупать» свободное ПО, то я хочу поставить его гостевой системой на виртуальную машину под Windows – благо, количество оперативной памяти позволяет. Но здесь встает большой вопрос: какой же дистрибутив выбрать для установки на виртуальную машину? Мне не хочется плодить кучу виртуалок с разными дистрибутивами, поэтому нужно остановиться на каком-то одном. О том, по каким критериям я буду производить отбор, и о моем взгляде на существующие дистрибутивы Linux и будет этот пост.


Mac OS X нуждается в чистке!

{lang: 'ru'}

Недавно на своем хакинтоше с Mac OS X 10.6.6 Snow Leopard я столкнулся с интересной проблемой: Finder отказывался загружаться. Т.е. все вроде бы происходило как обычно: загрузка системы, появление панели Docs, автозагрузка аськи, но… рабочий стол не появлялся! Мало того, не работал Skype, браузеры, Xcode. При этом вчера все работало нормально! Первая мысль – перезагрузиться. Сделал. Эффекта – ноль. Далее, в голову пришла мысль, что куда-то делось то небольшое количество свободного места на диске, которое оставалось после работы вчера (около 200 Мб). Но как это проверить?! Finder же не работает! Выход один – использовать консоль (Terminal). Благо, она спокойно запускалась и работала.

Mac

Вычисление хэша md5 на Objective-C

{lang: 'ru'}

Сегодня мне нужно было внедрить md5-хэширование паролей в базе данных приложения для iPhone. Работа с базой осуществляется через уже описанную Objective-C ORM-библиотеку. Соответственно, и хэшировать очень хотелось какими-нибудь стандартными средствами Objective-C. Для решения поставленной задачи был произведен непродолжительный поиск в интернете, и найдено решение, которое на удивление точно подошло. На удивление – потому что когда я хотел хэшировать md5 средствами C#, то я нашел как минимум три хоть и очень похожих, но дающих разный результат методов реализации. А найденное мною решение для Objective-C выдает результат такой же, как и выбранный метод на C#, что не могло меня не обрадовать.


Iptables — защита локальной сети

{lang: 'ru'}

Этот материал готовился когда то давно в рамках одной из лаб в универе. Лаба называлась «iptables – защита локальной сети». Необходимо было настроить iptables на компе, который служил шлюзом и «раздавал» интернет в локальную сеть. Для этого я соорудил подобие такой схемы дома – комп-шлюз и «локальный» комп. На обеих машинах стоял Mandriva Linux.


Objective-C, SQLite и ORM

{lang: 'ru'}

В этом посте моя попытка перевода описания Jeff LaMarche его собственной библиотеки на Objective-C, реализующей технологию ORM. Из википедии:

«ORM (англ. Object-relational mapping, рус. Объектно-реляционное отображение) — технология программирования, которая связывает базы данных с концепциями объектно-ориентированных языков программирования, создавая «виртуальную объектную базу данных». Существуют как коммерческие, так и свободные реализации этой технологии.»