LINUX.ORG.RU

Избранные сообщения zolden

Почему когда пишут скрипты на Bash не используют фреймворки?

Форум — Talks

Очевидно что они ускоряют написание скриптов, упрощают, и помогают избегать ошибок. Как пример возьмем: https://github.com/niieani/bash-oo-framework

Почему же люди продолжают непрофессионально подходить к этому делу, и пишут чуть ли не в sh-стиле? Такое ощущение что они не сталкивались с реальным миром.

А еще труднее понять почему при написании скриптов не используют нормальную IDE с отладчиком?! Не знают? Не могут научиться?

Да, конечно Bash уже устарел, но это не повод погружаться в 60-е если нужно его использовать.

 ,

MOPKOBKA ()

systemd связь между сервисами на разных машинах

Форум — General

Есть самописный сервис, который запускает и следит за состоянием программы на одной машине. Хочу организовать взаимодействие с другими машинами в этой же сети для того, чтобы если сервис на одной машине падал или рестартовал, происходили бы определенные действия на других машинах. Сервис systemd-шный. Как это лучше сделать? ssh + выполнение скрипта через сервис на удаленном хосте по OnFailure на основной машине или есть менее костыльные способы?

 ,

kardjoe ()

netstat не показывает pid/programname

Форум — Admin

Как найти того кто слушает данный порт (2049,39677,35997,41157,34691)?

lsof -i :порт не помогло

 # netstat -ntulp

Proto Recv-Q Send-Q Local Address Foreign Address State       PID/Program name    
tcp        0      0 127.0.0.1:11332         0.0.0.0:*               LISTEN      1212/rspamd: main p 
tcp        0      0 127.0.0.1:11333         0.0.0.0:*               LISTEN      1212/rspamd: main p 
tcp        0      0 127.0.0.1:11334         0.0.0.0:*               LISTEN      1212/rspamd: main p 
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      1768/mysqld         
tcp        0      0 0.0.0.0:139             0.0.0.0:*               LISTEN      1926/smbd           
tcp        0      0 0.0.0.0:587             0.0.0.0:*               LISTEN      1965/master         
tcp        0      0 127.0.0.1:6379          0.0.0.0:*               LISTEN      1613/redis-server 1 
tcp        0      0 0.0.0.0:60719           0.0.0.0:*               LISTEN      1122/rpc.mountd     
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      959/rpcbind         
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1855/nginx: master  
tcp        0      0 0.0.0.0:465             0.0.0.0:*               LISTEN      1965/master         
tcp        0      0 0.0.0.0:41937           0.0.0.0:*               LISTEN      1122/rpc.mountd     
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      1067/systemd-resolv 
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN      1965/master         
tcp        0      0 0.0.0.0:9339            0.0.0.0:*               LISTEN      1653/sshd           
tcp        0      0 0.0.0.0:445             0.0.0.0:*               LISTEN      1926/smbd           
tcp        0      0 0.0.0.0:39677           0.0.0.0:*               LISTEN      -                   
tcp        0      0 0.0.0.0:33343           0.0.0.0:*               LISTEN      1122/rpc.mountd     
tcp        0      0 0.0.0.0:2049            0.0.0.0:*               LISTEN      -                   
tcp6       0      0 :::587                  :::*                    LISTEN      1965/master         
tcp6       0      0 ::1:6379                :::*                    LISTEN      1613/redis-server 1 
tcp6       0      0 :::139                  :::*                    LISTEN      1926/smbd           
tcp6       0      0 :::56013                :::*                    LISTEN      1122/rpc.mountd      
tcp6       0      0 :::111                  :::*                    LISTEN      959/rpcbind         
tcp6       0      0 :::465                  :::*                    LISTEN      1965/master         
tcp6       0      0 :::25                   :::*                    LISTEN      1965/master         
tcp6       0      0 :::52281                :::*                    LISTEN      1122/rpc.mountd     
tcp6       0      0 :::54427                :::*                    LISTEN      1122/rpc.mountd     
tcp6       0      0 :::35997                :::*                    LISTEN      -                   
tcp6       0      0 :::445                  :::*                    LISTEN      1926/smbd           
tcp6       0      0 :::2049                 :::*                    LISTEN      -                   
udp        0      0 0.0.0.0:39452           0.0.0.0:*                           1122/rpc.mountd     
udp        0      0 0.0.0.0:41157           0.0.0.0:*                           -                   
udp        0      0 0.0.0.0:58706           0.0.0.0:*                           1122/rpc.mountd     
udp        0      0 0.0.0.0:48600           0.0.0.0:*                           1122/rpc.mountd     
udp        0      0 127.0.0.53:53           0.0.0.0:*                           1067/systemd-resolv 
udp        0      0 192.168.1.106:68        0.0.0.0:*                           1035/systemd-networ 
udp        0      0 0.0.0.0:111             0.0.0.0:*                           959/rpcbind         
udp        0      0 192.168.1.255:137       0.0.0.0:*                           1365/nmbd           
udp        0      0 192.168.1.106:137       0.0.0.0:*                           1365/nmbd           
udp        0      0 0.0.0.0:137             0.0.0.0:*                           1365/nmbd           
udp        0      0 192.168.1.255:138       0.0.0.0:*                           1365/nmbd           
udp        0      0 192.168.1.106:138       0.0.0.0:*                           1365/nmbd           
udp        0      0 0.0.0.0:138             0.0.0.0:*                           1365/nmbd           
udp        0      0 0.0.0.0:711             0.0.0.0:*                           959/rpcbind         
udp        0      0 0.0.0.0:2049            0.0.0.0:*                           -                   
udp6       0      0 :::40553                :::*                                1122/rpc.mountd     
udp6       0      0 :::111                  :::*                                959/rpcbind         
udp6       0      0 :::711                  :::*                                959/rpcbind         
udp6       0      0 :::34691                :::*                                -                   
udp6       0      0 :::2049                 :::*                                -                   
udp6       0      0 :::51879                :::*                                1122/rpc.mountd     
udp6       0      0 :::52801                :::*                                1122/rpc.mountd   

 , , , ,

freaky_noob ()

оповещение через telegram

Форум — Development

Есть у меня скажем build машина которая что-то собирает и когда соберет было бы круто дернуть какой-то скрипт который напишет «я собрал» в telegram группу. кто нибудь знает как это сделать?

 

quester ()

Nginx «особый» реврайт

Форум — Admin

Заказчик просит сделать так, чтобы с example.com/1.php ему подгружало example.com/2.php, но при этом чтобы ссылка в браузере не менялась на 2.php. То есть это не простой редирект/реврайт.

В доках nginx копаюсь, но может кто наведёт на путь истинный?

 

FluffyPillow ()

Нужен Python с многопоточностью, гуем и графиками

Форум — Development

Собираюсь писать на питоне проект с использованием matplotlib, gtk (или любого другого мощного гуи где можно рисовать свой элементы) и портов. + все для вывода текста, это pango, freetype, cairo.

Немного напрягает отсутствие человеческой многопоточности. Не уверен пока насколько критично, но напрягает. Альтернатива - PyPy, но он вроде gtk не поддерживает, ска.

Кто нить не подскажет нормальную альтернативу питону с многопоточностью, гуем и либой для графиков?

 

Deleted ()

Nvidia tearing 960m

Форум — General

Всем доброго времени суток, купил ноут MSI GP72, через боль и страдания поставил kubuntu 17.04 (без перехода в режим acpi = off банально не загружался установочник), железо такое: i7 7700hq, 960m. Ни как не могу победить тиринг который появляется после установки пропреитарного драйвера nvidia 381 (после установки драйвера в граб конфиге удалил acpi = off). В настройках системы выставил opengl 3 и полную перерисовку - не помогло, пробовал менять параметры в xorg.cfg - не помогает. Что удивительно в драйверах nvidia нет пунктов с выбором герцовки монитора и включения вертикальной синхронизации. Я так понимаю что проблема во взаимодействии карточки от нвидии и интеловской интегрированной графики... На стационарнике с картой gtx 760 подобную проблему решал просто включением полной перерисовке в пункте меню. Буду благодарен за помощь в решении этой проблемы. p.s. Ещё есть проблема что при загрузке вместо граб меню - чёрный экран, пока особо с этим не разбирался, но если кто знает как победить прошу чиркнуть пару строчек :)

 , , , ,

Xardas ()

Программист создал програму, превращающую рисунки из Paint в художественные шедевры с помощью нейросетей.

Форум — Talks

Она запоминает стили рисования художников и оформляет в них ваши пикчи.

Ссыль на гитхаб

Выглядит клево.

 , ,

karton1 ()

Делимся полезными кусками из ~/.vimrc и показываем свои статусные строки 2015 тред

Форум — General

Как говорили древние отцы-основатели редактирования текстов: « Damnosa quid non imminuit dies¹ ? »

Но мы им отвечаем: « Tempora mutantur et nos mutamur in illis² ! »

Делимся полезными и интересными кусками из своих конфигов, а также демонстрируем, кто на какой статусной строке в данный момент остановился и использует. Также это касается не общеизвестных плугинов или настройки/интеграции общеизвестных и общеиспользуемых. В общем синтастик или ЗадротДерево сюда не нужно, наверное, писать.

Я могу предложить (кое-что известное, но будет полезно новичкам, если такие есть):

  • Автопаста — не нужно нажимать :set paste перед пастой, чтобы сохранялись отступы, работает автоматически, добавить и забыть навсегда.
  • Кайфовставка — позволяет по хоткею кушающему моушины «замещать», т.е. заменять целевое слово (или моушин-цель) на то, что сейчас в буфере, с трудом вспоминаю, что я делал без этого хоткея.
  • Более лучший фолдинг — информация про к-во сложенных линий теперь справа + добавляет % от всего документа, картинка с этим и без.
  • Пипетка для верстальщиков — по хоткею вызывается пипетка (в зависимости от ОС — разная, на линуксе это zenity или Yad) с текущим значением на курсоре и авт. меняет при изменении.
  • Автопереключение раскладки — при переходе в normal mode и обратно, после настройки включает английский язык когда переходим в normal mode из insert mode, где был включен другой язык. Очень удобно, уже давно привык.
  • Удобно двигать строки/блоки — придумал чем занять бесполезные стрелки, используется vim-move, кстати предлагаю особо наглым упороться hardmode.
  • tmux-complete — комплитит в виме (добавляет в omnicomplete, т.е. безразлично какой комплитер используете neocomplete/YCM/etc) содержимое окон/панелей/сессий тмукса, в которых необязательно вим, может быть другое приложение либо просто выхлоп.
  • Переход на средину строки — текущей реальной (не виртуальной).
  • Режимо-зависимые курсоры — для тех, кто использует GUI-версию вима, я лично не использую.

А теперь по статусной строке. Почти два года сидел на airline, но вот недавно перешел на lightline, которая быстрее стартует и легче кастомизируется, а также не содержит кучу неиспользуемых (лично мной) возможностей. Попробовал еще ezbar, но японец пилит его под себя, хотя там есть кое-что интересное, насчет скорости:

lightline: 229.019  000.003: 
ezbar:     250.312  000.002: 
airline:   276.823  000.003: 
(если что, у меня еще около ~80 плагинов подгружаются), powerline не имеет смысла сюда рядом ставить, там секунды вместо миллисекунд :)

Вот такая у меня статусная строка: картинка, настройка здесь и здесь. Середина прозрачная, выведен размер файла, имя файла справа, голубой квадратик с + это модифицированный, но не сохраненный файл.

Показывайте ваши ништяки.

--------

¹ - лат. что не изменит губительное время
² - лат. времена меняются и мы меняемся с ними

 , ,

redhat ()

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

Форум — Web-development

Добрый вечер!

Хочу сделать сайт-визитку с использованием современных технологий (node, mongo, angular и т. д.), но сделать это максимально быстро и просто. Сайт самый простой - одна-две страницы, можно сказать заглушка для собственного домена. Из возможностей «админки» нужно - только изредка добавлять новости и картинки. Как сделать максимально просто и быстро, не заморачиваясь и не прибегая к вордпрессу? Скажите, может есть уже такие готовые решения, чтобы не скручивать все между собой, а залил и все, сиди правь css.

 

Smorodin ()

Состоялся релиз Ubuntu 13.04

Форум — Talks

Качаем отсюда http://releases.ubuntu.com/raring/

 ,

mylorlogin ()

Вышел патчсет pf-kernel для Linux v3.8

Новости — Ядро Linux
Группа Ядро Linux

pf-kernel — патчсет для ядра Linux, включающий патчи, которые официально не входят в ядро. К таким патчам относятся:

  • ветка -ck с планировщиком процессов BFS, призванном улучшить интерактивность системы;
  • планировщик ввода-вывода BFQ, значительно улучающий интерактивность системы при дисковых операциях;
  • альтернативная подсистема гибернации TuxOnIce;
  • патч UKSM, созданный для дедупликации страниц памяти (полезно при использовании, например, нескольких однотипных виртуальных машин).

В новой версии патчсета добавлена подсистема кеширования данных с помощью SSD — EnhanceIO. Она позволяет добиться значительного повышения быстродействия дисковых операций без снижения надёжности системы хранения данных при использовании связки HDD+SSD. Детальнее об EnhanceIO можно прочитать по этим ссылкам: раз, два.

Также в этой версии бекпортированы изменения, касающиеся lzo, с ветки 3.9. Это позволило значительно увеличить скорость гибернации и выхода из неё на современных машинах.

В патчсет уже входит стабилизационный патч на ядро версии 3.8.3. Также подготовлены бинарные сборки для Arch Linux, Debian и Ubuntu.

Скачать патч

Скачать бинарные сборки

>>> Анонс

 , , ,

post-factum ()

selinux best practice

Форум — Admin

Господа, вкуриваю SELinux. Штука какая-то совсем неудобоваримая. Я ее всегда вырубаю. Теперь смысл в том что хочу таки включить на сервках, но есть пара нюансов. Гуи на сервере считаю не нужным. Но рулить selinux в консоли - это мысль тоже не показалсь мне самой лучшей. Чего посоветуете для руления selinux на сервере? Вот то ли дело apparmor - там все куда проще и понятней - файл поправил - и все! Не надо выкуривать тонны документаций, советов, и плеваться почему же не работает как надо...

 

andrew667 ()

Не работает HWCLOCK на Centos 5.8 x86_64 kernel 2.6.39

Форум — Admin

Доброго времени суток. Обновил Centos 5.8 с репы elrepo до ядра 2.6.39-4.2.el5.elrepo

при загрузки появилась проблема с часами hwclock, hwclock не находит устройства и не может взять время с BIOS

[root@alpha ~]# hwclock --debug
hwclock из util-linux-2.13-pre7
hwclock: Открытие /dev/rtc завершилось неудачей, errno=19: Нет такого устройства.
Не найден пригодный часовой интерфейс.
Невозможно получить доступ к аппаратным часам каким бы то ни было известным способом.

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

 ,

fordiego ()