• Как решить, казалось бы, простую задачу на python3?

    RusTech
    @RusTech
    print((((a // b) * a) + ((b // a) * b)) // ((a // b) + (b // a)))
    Ответ написан
    Комментировать
  • Как сделать, чтобы после ввода пока на выходе не станет 1 программа не завершит работу?

    longclaps
    @longclaps
    Для этой задачи нужен циклический цикл.
    def collatz(n):
        return 3 * n + 1 if n % 2 else n // 2
    
    
    number = int(input())
    while number != 1:
        print(number)
        number = collatz(number)
    print(1)
    Ответ написан
    Комментировать
  • Что за путь для Python в WSGIDaemonProcess?

    NeiroNx
    @NeiroNx
    Программист
    Если у вас только pgadmin то можете использовать системный python и удалить python-home=/path/to/python/virtualenv. По сути это путь где находятся все необходимые библиотеки питона для данного экземпляра/виртуального сервера. Когда несколько разных проектов работают на одном сервере и используют различные наборы библиотек - то их лучше всего разделить через virtualenv. Каждый virtualenv может содержать только необходимые библиотеки для конкретного проекта.
    Ответ написан
    Комментировать
  • Как сбросить пароль в консоли на Hetzner Cloud?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    Загрузиться в режиме Rescue (доступен в панели управления серверов), правильно подмонтировать разделы (например в /mnt), сделать chroot на новый корень и сменить пароль.
    https://wiki.hetzner.de/index.php/Hetzner_Rescue-S...
    Ответ написан
    Комментировать
  • Активно ли используют Linux LDAP/Kerberos компании?

    Zoominger
    @Zoominger
    System Integrator
    Понятное дело, что не встречали.
    Я вот видел только в продвинутых госконторах, например.
    Читайте общую информацию, но в суть глубоко не вникайте.
    Ответ написан
    1 комментарий
  • Как добавить места к /tmp каталогу на Debian 9?

    saboteur_kiev
    @saboteur_kiev Куратор тега Системное администрирование
    software engineer
    Просто umount /tmp
    папка /tmp у вас уже скорее всего есть.

    P.S. А вообще, на будущее можно почитать про LVM, который позволяет править разделы и увеличивать место онлайн. А в случае некоторых файловых систем можно и уменьшать.
    Ответ написан
    Комментировать
  • Как сделать, чтобы при создании файла, группа O имела права 0?

    Похоже вы хотите наследовать права каталога. Такое поведение в файловых системах *nix не предусмотрено по умолчанию. Если вам никак не обойтись без такого функционала, используйте ACL. Прочитайте про него вцелом, вас интересуют конкретно default права. https://help.ubuntu.ru/wiki/access_control_list
    Ответ написан
    1 комментарий
  • Почему не работает ALT-CTRL-Fx?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Захожу в консоль по SSH через Putty. Хочу переключиться к примеру на TTY2. Нажимаю CTRL+ALT+F2, но в консоли только [12~
    Что я делаю не так?

    ctrl-alt-f2 -- это сочетание клавиш для драйвера виртуального терминала. Соответственно, оно работает только при вводе через виртуальный терминал.

    Под простым юзером ввожу chvt 2:
    Если под рутом, то команда выполняется и всё
    Что я делаю не так?

    В графической консоли вводишь? С помощью strace легко понять что происходит:
    от простого юзера:
    $ strace -iv chvt 2
    ...
    [00007f96b99d56f0] open("/proc/self/fd/0", O_RDWR) = 3
    [00007f96b99da80a] ioctl(3, TCGETS, {c_iflags=0x5500, c_oflags=0x5, c_cflags=0xbf, c_lflags=0x8a3b, c_line=0, c_cc="\x03\x1c\x7f\x15\x04\x00\x01\x00\x11\x13\x1a\x00\x12\x0f\x17\x16\x00\x00\x00"}) = 0
    [00007f96b99db017] ioctl(3, KDGKBTYPE, 0x7fff06db6d67) = -1 ENOTTY (Inappropriate ioctl for device)
    [00007f96b99d5f30] close(3)             = 0
    [00007f96b99d56f0] open("/dev/tty", O_RDWR) = 3
    [00007f96b99da80a] ioctl(3, TCGETS, {c_iflags=0x5500, c_oflags=0x5, c_cflags=0xbf, c_lflags=0x8a3b, c_line=0, c_cc="\x03\x1c\x7f\x15\x04\x00\x01\x00\x11\x13\x1a\x00\x12\x0f\x17\x16\x00\x00\x00"}) = 0
    [00007f96b99db017] ioctl(3, KDGKBTYPE, 0x7fff06db6d67) = -1 ENOTTY (Inappropriate ioctl for device)
    [00007f96b99d5f30] close(3)             = 0
    [00007f96b99d56f0] open("/dev/tty0", O_RDWR) = -1 EACCES (Permission denied)
    ...

    Т..е. stdin и /dev/tty не поддерживают ioctl переключающий терминал (вернее, до него даже не доходит), потому что твоя консоль -- это псевдотерминал, а открыть /dev/tty0 не хватает привилегий.
    А от рута:
    $ sudo strace chvt 2
    ...
    [00007f591848c6f0] open("/proc/self/fd/0", O_RDWR) = 3
    [00007f591849180a] ioctl(3, TCGETS, {c_iflags=0x5500, c_oflags=0x5, c_cflags=0xbf, c_lflags=0x8a3b, c_line=0, c_cc="\x03\x1c\x7f\x15\x04\x00\x01\x00\x11\x13\x1a\x00\x12\x0f\x17\x16\x00\x00\x00"}) = 0
    [00007f5918492017] ioctl(3, KDGKBTYPE, 0x7fffe5e72d17) = -1 ENOTTY (Inappropriate ioctl for device)
    [00007f591848cf30] close(3)             = 0
    [00007f591848c6f0] open("/dev/tty", O_RDWR) = 3
    [00007f591849180a] ioctl(3, TCGETS, {c_iflags=0x5500, c_oflags=0x5, c_cflags=0xbf, c_lflags=0x8a3b, c_line=0, c_cc="\x03\x1c\x7f\x15\x04\x00\x01\x00\x11\x13\x1a\x00\x12\x0f\x17\x16\x00\x00\x00"}) = 0
    [00007f5918492017] ioctl(3, KDGKBTYPE, 0x7fffe5e72d17) = -1 ENOTTY (Inappropriate ioctl for device)
    [00007f591848cf30] close(3)             = 0
    [00007f591848c6f0] open("/dev/tty0", O_RDWR) = 3
    [00007f591849180a] ioctl(3, TCGETS, {c_iflags=0x5, c_oflags=0, c_cflags=0xbf, c_lflags=0, c_line=0, c_cc[VMIN]=1, c_cc[VTIME]=0, c_cc="\x03\x1c\x7f\x15\x04\x00\x01\x00\x11\x13\x1a\x00\x12\x0f\x17\x16\x00\x00\x00"}) = 0
    [00007f5918492017] ioctl(3, KDGKBTYPE, 0x7fffe5e72d17) = 0
    [00007f5918492017] ioctl(3, VT_ACTIVATE, 0x2) = 0
    [00007f5918492017] ioctl(3, VT_WAITACTIVE, 0x2) = 0
    ...

    Т.е. stdin и /dev/tty -- то же самое, но /dev/tty0 открывается и ioctl VT_ACTIVATE проходит.
    Ответ написан
    Комментировать