Ответы пользователя по тегу Ubuntu
  • Можно ли в Linux запретить выполнение команд обычным пользователям?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    А какую проблему вы таким образом пытаетесь решить?
    Самый надежный способ - загнать пользователя в chroot, и ограничить ему лимиты. Но и здесь придется сильно постараться, так как есть например перенаправление потоков.
    Ответ написан
    2 комментария
  • Как можно установить apache2.4:i386 на ubuntu 16.04 x64?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Вариантов несколько. Самый простой, установить библиотеки под i386, как описано здесь -https://askubuntu.com/questions/454253/how-to-run-...
    Второй вариант, поставить или docker или lxc/lxd и в нем запустить систему под 32 бита.
    Третий - запустить 32бит систему в виртуалке KVM (libvirr) или Virtualbox

    Ну и в помощь по мультиарч
    - https://wiki.debian.org/ru/Multiarch/HOWTO
    - https://help.ubuntu.com/community/MultiArch
    Ответ написан
    4 комментария
  • Правильная ли схема для веб-сервера с распределенной нагрузкой?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Как-то все у вас оторвано от задачи. Зачем так дублировать? И зачем вообще дублировать базы и web? Нужно расширяться в узких местах, а не всё скопом!
    Обычно, web-приложение состоит из как минимум трех компонентов, приложения (php/python/node/java/go ....), статики (картинки, видео), баз данных (mysql/redis/elastic/mongo ....)
    Все эти части кластеризуются по отдельности, и обычно, разными механизмами.
    Более того, если у нас сайт для фото, с кучей статики, то нам наверняка придется вообще забыть на них о PHP и базе данных, которые будут нагружены только отдачей картинок и их кешированием. Итого в этом случае получим один сервер (а то и вообще виртуалку) с PHP+MySQL, и кучу серверов со статикой, пару кеширующих серверов, и пару на преобразование картинок.
    Так что, я бы сказал, ваша схема - ни о чем!
    Ответ написан
    Комментировать
  • Как разделить в playbook ОС x32 и x64?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Так просто посмотрите на переменные с вывода ansible myhost -m setup. Где-то там и версия системы и разрядность и версия дистрибутива и куча всего.
    Ответ написан
    3 комментария
  • Доступ к ubuntu server по локальной сети через SSH?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    У вас и не получится, нужно или маску подсети другую делать или менять подсеть например на 192.168.1.xxx или перед длинком или после
    Ответ написан
    Комментировать
  • Как использовать sensitive data в Node средствами Линукс?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Можно через json и curl. Готовите json-файл и пуляете его через curl.
    Ответ написан
  • Как собрать установочный пакет на Linux для Linux?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    0) Желательно все упаковать в virtuelenv, если используете pip. Или использовать стандартные пакеты системы.
    1) Создаете каталог для своего пакета, например myservice-0.001
    2) Кидаете все свои исходники в этот каталог, пути ставите, как они у вас будут в целевой системе
    Например:
    etc/systemd/system/myservice.service
    opt/myservice/...
    opt/.myservice-venv/...
    usr/bin/myservice

    И т.д.
    3) Создаете там же каталог DEBIAN, в него кладете файл control - https://www.debian.org/doc/debian-policy/ch-contro...
    , и файл postinst (опционально) - https://www.debian.org/doc/debian-policy/ch-mainta...

    В control описываете свои зависимости и название пакета, какие пакеты замещает
    postinst - исполняемый, запускается после установки пакета, пользхователей там создать, сервис запустить и т.д.
    root@xxx:~/xxx-2.40# cat DEBIAN/control
    Package: xxx
    Version: 2.40
    Section: custom
    Priority: optional
    Architecture: all
    Essential: no
    Installed-Size: 171700
    Maintainer: xxx.ru
    Description: XXX DS system
    Depends: samba, isc-dhcp-server, python-twisted, libdate-manip-perl, libio-socket-multicast-perl
    Replaces: isc-dhcp-server, samba
    Recommends: sudo, vim, nano

    и
    root@xxx:~/xxx-2.40# cat DEBIAN/postinst
    #!/bin/sh
    # postinst script for webpy-example
    #
    # see: dh_installdeb(1)
    
    set -e
    
    # summary of how this script can be called:
    #        * <postinst> `configure' <most-recently-configured-version>
    #        * <old-postinst> `abort-upgrade' <new version>
    #        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
    #          <new-version>
    #        * <postinst> `abort-remove'
    #        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
    #          <failed-install-package> <version> `removing'
    #          <conflicting-package> <version>
    # for details, see http://www.debian.org/doc/debian-policy/ or
    # the debian-policy package
    
    # source debconf library
    . /usr/share/debconf/confmodule
    
    case "$1" in
    
      configure)
        adduser --quiet --system --home /inbox  xxx || echo "User xxx existed!"
        usermod -p yyyy xxx
        (echo new123; echo new123) | smbpasswd -as xxx
        smbpasswd -e xxx
        systemctl enable xxx
        systemctl start xxx
      ;;
    
      abort-upgrade|abort-remove|abort-deconfigure)
        exit 0
      ;;
    
      *)
        echo "postinst called with unknown argument \`$1'" >&2
        exit 1
      ;;
    
    esac
    
    # dh_installdeb will replace this with shell code automatically
    # generated by other debhelper scripts.
    
    #DEBHELPER#
    
    db_stop
    exit 0

    4) идете на каталог ниже и выполняете
    dpkg-deb --build myservice-0.001
    Рядом получаете файло myservice-0.001.deb

    Доне.

    PS.Про иконки и прочее отдельно читайте, этого я вам не скажу.
    Ответ написан
    Комментировать
  • Что лучше в качестве backup-сервера — Samba или NFS?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Рекомендую поставить urbackup.org , особенно если сеть небольшая.
    Все будет делаться автоматически, сервер есть под линукс, клиентов, практически под все платформы.
    PS. Ну, или оставить самбу, в nfs могут теряться разные атрибуты, которые несовместимы с ntfs. В самбе они правда тоже теряться могут.
    Так что лучше ставьте ПО для бекапов, которое будет правильно сохранять атрибуты.
    PPS. Ну и если сильны духом, то можно и bareos развернуть. Тоже есть клиент под виндовс.

    И да, и тем и тем пользуюсь, bareos стоит на кластере, а urbackup в офисах.
    Ответ написан
    Комментировать
  • Что лучше в для терминальной станции и тонких клиентов?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    В общем случае, браузер потянут и сами терминальные клиенты (!).
    Другими словами, просто грузите клиентов по TFTP + NFS, запускайте на них графику, и вуаля. У нас терминальные клиенты загружаются по сети, стартуют Xserver, ну а затем по XDMPC коннектятся к кластеру (немного сложнее конечно).
    90 клиентов что на xrdp, что на xdmcp ваш сервер не потянет, боюсь...
    Ответ написан
    Комментировать
  • Какая причина аномально больших логов в xUbuntu?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Такое ощущение что проблема с USB WiFi адаптером и/или его драйвером. Также жизнь может портить драйвер nvidia (хотя непохоже). Попробуйте или переставить ядро, или поменять WiFi.
    Ну и хотелось бы знать конфигурацию компухтера, версию ядра и системы, что запущено. Также, какие драйверы установлены, вывод lsmod.
    Ответ написан
    Комментировать
  • Как фиксировать время движения курсора?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Посмотрите в сторону wxwidgets или qt и биндингов этих библиотек с питоном. Есть стандартное демо-приложение под названием xeyes (глаза), это приложение как раз и следит за курсором и рисует глазки. Изначально это приложение написано на C на чистом xlibs, но функционал должен присутствовать в любом фреймворке.

    Вот как раз класс в wxwidgets, перехватывающий события мышки - docs.wxwidgets.org/3.1.0/classwx_mouse_event.html

    Ну и на всякий случай - docs.wxwidgets.org/3.1.0/overview_events.html
    Ответ написан
    Комментировать
  • Возможно ли включить пользователя в группу sudo без прав root?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Обычно я добавляю группу командой
    adduser myuser mygroup
    Ну а для того, чтобы восстановить справедливость, достаточно загрузиться с флешки и поправить группу в /etc/groups и /etc/passwd
    Ну и можно загрузиться и без флешки, просто добвив в параметры загрузки ядра init=/bin/bash
    А потом перемонтировать корневую систему
    mount / -o remount,rw
    Ответ написан
    7 комментариев
  • Как скопировать файл с windows на ubuntu скриптом не по ssh?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Ну, можно попробовать залить файл по http
    $uri = "http://blahblah.com"
    $imagePath = "c:/justarandompic.jpg"
    $upload= Invoke-RestMethod -Uri $uri -Method Post -InFile $imagePath -ContentType 'multipart/form-data'
    Ответ написан
    3 комментария
  • Работающая альтернатива wine?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Я все через KVM делаю (virsh + virt-manager). Нужно только в винду установить драйверы virtio и qlx. Никаких VirtualBox не ставлю.
    Как раз и запускаю по мере необходимости раз в месяц, а то и реже.
    Винда - триальная. Если заканчивается триальный период - просто переставляю, или работаю без обоев.
    В виртуалке работать одно удовольствие, тут тебе и снапшоты и откаты и копии.
    Ответ написан
  • Почему модуль socket в python обрезает данные при приеме независимо от параметра в функции recv?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Просто вы неправильно эти данные принимаете. Если посмотреть описание функции recv, то она возвращает реально принятые данные, которые могут быть порезаны. В вашем случае нужно в цикле принимать данные, пока не будет достигнута нужная длина. А еще лучше, сделать заголовок, в котором будет храниться длина пакета, сначала принимаете заголовок, потом в цикле принимаете данные на нужную длину. Tcp гарантирует, что данные не перемешаются и будут приходить последовательно, но протокол не гарантирует, что данные будут приходить ровно теми же самыми кусками, которыми они были отправлены.
    Ответ написан
    Комментировать
  • Почему стандартный zip архиватор не открывает архив, созданный в linux?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Все просто, в линуксе используется потоково-блочное сжатие, а у вас программа пытается открыть контейнер zip с файлами!
    Ответ написан
  • Как правильно настроить VPN в Debian \ Ubuntu?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    В дополнение, поставили бы openvpn, все проблемы на раз решаются. Ну и для мака есть отличный клиент - https://tunnelblick.net
    Для виндовса openvpn клиентов тоже как грязи.
    Ответ написан
  • Не перезапускается сервис ssh, в чем причина?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Ну так оно же вам пишет, что проблем а конфиге
    /etc/ssh/sshd_config line 96: Directive 'UsePAM' is not allowed within a Match block

    Директива UsePAM стоит не в том месте, ошибка в строчке 96.
    Ответ написан
    Комментировать
  • Как поменять iptables?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    Вот есть же еще люди, которые возятся с iptables руками, уже лет десять пользую firehol (простой) или shorewall (сложнее).
    Поставьте firehol.org и будете мастером iptables в 5-7 строчек кода.
    Эта штука генерирует сотню правил под ваши нужды и параноидальностью. Еще ни разу не подводил.
    А вот shorewall уже давно не пользовал. Он тоже генерирует кучу правил iptables.

    И да, у меня текущий конфиг занимает 30 строк на firehol для двух провайдеров и четырех подсетей, openvpn и плюшками.
    Ответ написан
    Комментировать
  • Как создать свой правильный linux live cd?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    filesystem.squashfs - корневая файловая система в сжатом виде (squashfs).
    initrd - загрузочная файловая система, в каком виде представлена, непонятно, нужно смотреть на логи загрузки.
    vmlinuz- ядро линукса
    Загрузка происходит следующим образом,
    1) PXE загружает по сети vmlinuz и initrd и передает управление на vmlinuz
    2) vmlinuz - разворачивает в памяти initrd и запускает процесс init
    3) скрипты в initrd загружают драйверы, подгружают по сети filesystem.squashfs в рамдиск и перемонтируют на него root

    Другими словами, вам нужно развернуть filesystem.squashfs, добавить все что нужно, создать заново filesystem.squashfs.
    tldp.org/HOWTO/SquashFS-HOWTO/creatingandusing.html - вот примерно по такому сценарию.
    Ответ написан
    Комментировать