Архив метки: программирование

Как создать туннель в Интернет для своего домашнего компьютера

Часто оказывается необходимым дать доступ из Интернета к каким-либо портам своего компьютера, расположенного за NAT провайдера. Но популярный ранее сервис ngrok стал IMHO фактически непригоден в бесплатной версии. Как же быть? Сделаем свой ngrok, разместив его на своей же VPS-ке (да, Ваш сервер в Интернете необходим, без него никак). Опишу, как это вышло у меня.

Читать далее

Как победить OOM Killer?

На Linux-системах с небольшим объемом физической оперативной памяти (например, на VPS-ках) часто  можно заметить, что какой-либо процесс внезапно прекращает работу. В чем же дело? Оказывается, он «убит», а виновник — злобный OOM Killer !

OOM Killer представляет собой компонент ядра Linux, защитный механизм, призванный решать проблемы с нехваткой физической памяти (OOM — Out of memory). При обнаружении недостатка памяти OOM Killer «убивает» наименее важный по его мнению процесс, посылая ему сигнал KILL (исключения составляют лишь init и ядерные нити (kernel threads)). Сообщение о об этом появляется в журнале /var/log/syslog в виде:

Out of memory: Kill process **** (****) score **** or sacrifice child
Killed process **** (****)

Но мнение пользователя системы не всегда совпадает с мнением «киллера» 🙂 Как же быть? Как заставить OOM Killer не трогать дорогие нашему сердцу процессы?
Читать далее

Как узнать, какое приложение занимает какой-либо порт?

Часто бывает такая ситуация, что какой-либо порт (80, 8080 и т.п.) занят неизвестным приложением. Чтобы освободить порт, надо снять эту задачу. Но как узнать, какой именно процесс необходимо завершить?

Разберемся по шагам, как же решить эту проблему на примере занятого порта 8080.
как узнать процесс, занимающий порт

Читать далее

Android Studio, Huawei и logcat

Я расскажу о том, как мне удалось добиться работы logcat в связке Android Studio + Huawei при отладке через USB — это мне потребовалось для отладки капризного приложения. Если Вам это интересно, читайте и смотрите далее.
Читать далее