Задать вопрос
  • Можно ли учиться без ютуба?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Не можно, а нужно!

    На ютубе мало годноты
    Ответ написан
    2 комментария
  • Как сделать чтоб через ovpn работали не все программы?

    @vitaly_il1
    DevOps Consulting
    Есть китайский vpn, к которому коннектятся через ovpn.

    Насколько знаю, чаще идут по-другому - определяют, *что должно* идти через VPN.
    Ответ написан
    3 комментария
  • Является ли знание PHP, возможностью быстрого старта в IT?

    inoise
    @inoise Куратор тега Карьера в IT
    Solution Architect, AWS Certified, Serverless
    Четко, коротко, без воды:
    На удалёнку берут только от миддла, который может работать самостоятельно и у которого достаточно лет практики за плечами чтобы оперативно войти в команду в кратчайшие сроки.
    Ответ написан
    Комментировать
  • Как правильно настоить раздачу сети от одного компьютера к другому?

    @remzalp
    Программер чего попало на чем попало
    1. на компьютере с 2 сетевыми картами в реестре поправить значение параметра:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\
    IPEnableRouter=1

    2. на сетевой карте в сторону второго компа - IP 192.168.0.99, шлюз не надо

    3. на втором компе добавить маршруты:
    в 0.0.0.0 с маской 0.0.0.0 сеть через 10.114.1.1
    в 10.114.1.0 с маской 255.255.255.0 через 192.168.0.99

    Пинг со второго компа на 10.114.1.45 уже должен проходить успешно. Пинг с него до шлюза не будет проходить, пока на шлюзе (роутере) не добавите маршрут.

    4. На маршрутизаторе надо настроить маршрут
    в 192.168.0.0 с маской 255.255.255. 0 через 10.114.1.45
    иначе он не сумеет отсылать ответы в неизвестную ему сеть. Возможно потребуется еще в настройках NAT что-то править.

    Еще сильно обходной вариант - поднимаете прокси на центральном компе, второй комп ходит через прокси, центральный компьютер спокойно заходит на второй, остальные нормально нет.
    Под винду прокси есть

    5dc14f8087771646240829.png
    Ответ написан
    3 комментария
  • Какой язык полезно выучить для понимания современных языков программирования?

    longclaps
    @longclaps
    хотелось бы понимать это заранее.

    В математике нет царских путей. И не только в математике.
    Ответ написан
    2 комментария
  • Почему гит не видит изменений в правах файла?

    Lynn
    @Lynn
    nginx, js, css
    Git не хранит права файла. Вернее хранит только исполняемый бит владельца. Для git есть только два режима: 755 для исполняемых и 644 для обычных файлов.

    https://github.com/git/git/commit/e44794706eeb57f2...

    We only really care about the difference between a file being executable
    or not (by its owner). Everything else we leave for the user umask to
    decide.


    По идее за права созданных папок и файлов отвечает umask и во всех вменяемых системах он определён как 022 или 002, т.е. у каталогов по умолчанию права должны быть 755 или 775, но не 777. Копайте настройки своей убунты, git тут ни при чём.
    Ответ написан
    9 комментариев
  • Как пропусть внешний и внутрений цикл For?

    @Mercury13
    Программист на «си с крестами» и не только
    goto перед концом внешнего цикла.

    for(первый) {
      for(второй) {
        goto a;
      }
      a:;
    }
    Ответ написан
    Комментировать
  • Как правильно сделать отказоустойчивый OpenVPN?

    hint000
    @hint000
    у админа три руки
    5dbfa6c8d2455482440476.png
    а дальше обычная маршрутизация
    Ответ написан
    Комментировать
  • В чем принципиальное различие NAT и PROXY?

    @UPSA
    anykey. Я не программист, я просто ленивый.
    Как правильно написать то ... мозгов то не хватает ...
    Разный layer - Уровень пакетов (туплю - как написать то ?)
    1. прокси - Это Прикладной уровень (а может Сеансовый уровень?) - HTTP, FTP, SMTP и тд.
    2. NAT - Это более низкий уровень, Сетевой уровень (а может Транспортный уровень?) TCP/UDP

    Короче надо читать https://ru.wikipedia.org/wiki/%D0%A1%D0%B5%D1%82%D...
    Ответ написан
    4 комментария
  • Не получается программировать, есть ли смысл продолжать?

    @NinjaNickName
    Web разработчик
    Если хочешь программировать, то конечно имеет смысл, не сдавайся и рано или поздно достигнешь результата. Ну и больше практики конечно же, теория это хорошо, но по факту знания приходят именно с практикой.
    Ответ написан
    Комментировать
  • В чем отличие между статической/динамической типизацией и явной/неявной?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Явная типизация - это вариант статической типизации, при котором требуется явно объявлять типы переменных. При неявной статической типизации решение о типе принимается компилятором на основе размещаемых в переменной данных без явного указания типа (auto в C++).
    Ответ написан
    Комментировать
  • Почему все твердят что MongoDB не подходит для проектов типа интернет магазина и т.д?

    VladimirAndreev
    @VladimirAndreev
    php web dev
    кажется, вы не дошли до транзакций..
    и до того, что у вас есть товар, у него есть вариации, размеры, например.
    а какой-то чудак взял и удалил товар.. а вариации остались. и заказы...
    Ответ написан
    3 комментария
  • Нужен ли графический процессор при терминальном RDP подключении?

    Jump
    @Jump
    Системный администратор со стажем.
    Нужен ли графический процессор при терминальном RDP подключении?
    Нет. RDP подключение никак не использует ресурсы графического процессора, и на работу RDP наличие или отсутствие GPU не влияет.

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

    подключил к нему 30 пользователей с той-же задачей и тут пошли жуткие тормоза, процессор был загружен на 90%.
    Логично. Браузер это приложение активно использующее ресурсы GPU. При его отсутствии нагрузка ложиться на процессор. Этим и обусловлена сильная загрузка процессора.

    На терминальных серверах обычно не используют приложения активно использующие GPU- вроде трехмерных графических редакторов, браузеров, и.т.д.
    А если и используют - тогда для них ставят GPU, и настраивают его работу.
    Ответ написан
    1 комментарий
  • Годится ли такое проектирование в mongodb?

    @frozen_coder
    Java-developer
    Тут всё зависит от того, как эти данные будут использоваться.
    Если нам в первую очередь важен пользователь, то может вообще всё в него запихать.
    Переносить схему один в один - это такое себе занятие. Вы какую проблему этим решаете? Если вам отношения между сущностями важны и вы хотите их со всех сторон использовать, то может не есть кактус и взять реляционную БД?
    Ответ написан
    5 комментариев
  • Как пробросить порт через тоннель в ssh?

    planc
    @planc
    SSH user@185.XXX.XXX.XX -p 2422 -L 80:127.0.0.1:80

    ну и само собой, если needed.website.ru не отдается как стандартный веб сервером, нужно прописать у себя в /etc/hosts:
    127.0.0.1 needed.website.ru

    -L порт:машина:порт_машины
    Определяет заданный порт на локальной (клиентской) машине который будет перенаправлен к заданной машине и порт на удаленной машине. Это реализовано путём назначения доменного подключения "прослушиваемому" порту на стороне локальной машины и всякий раз, когда производится соединение на этот порт, оно будет перенаправлено через защищенный канал и произведено соединение к порту порт_машины удаленной машины. Перенаправление портов моет быть так же указано в файле конфигурации. Только суперпользователь может осуществлять перенаправление привилегированных портов. Адреса IPv6 могут быть указаны с альтернативным синтаксисом: port/host/hostport.
    -R порт:машина:порт_машины
    Указывает заданный порт на удаленной машине (сервере) который будет перенаправлен к заданной машине и локальному порту. Это реализовано путём назначения доменного подключения "прослушиваемому" порту со стороны удаленной машины и всякий раз, когда производится соединение на этот порт, оно будет перенаправлено через защищенный канал и произведено соединение к порту порт_машины локальной машины. Перенаправление портов моет быть так же указано в файле конфигурации. Только суперпользователь может осуществлять перенаправление привилегированных портов. Адреса IPv6 могут быть указаны с альтернативным синтаксисом: port/host/hostport.


    https://www.opennet.ru/man.shtml?topic=ssh&categor...
    Ответ написан
    2 комментария
  • Структуры и классы в чем разница?

    hePPer
    @hePPer
    Структуры - совместимость с языком Си. В С++ структуры и классы эквивалентны, кроме доступа по умолчанию.
    Ответ написан
    1 комментарий
  • Какой программой можно массово заменить расширение файлов на Windows?

    Jump
    @Jump Куратор тега Windows
    Системный администратор со стажем.
    Обычный батник с короткой строчкой кода.
    Создаете какой нибудь файл, например переименование.bat пишите в нем конструкцию вроде -
    for /R "E:\Test" %%B in (*.txt) do ren %%B *.exe
    Сохраняете и запускаете.
    Поменяет у всех текстовых файлов в папке E:\Test и подпапках расширение на exe.

    Потренируйтесь на тестовых данных, а то поменяете что-нибудь не то по ошибке...
    Ответ написан
    1 комментарий
  • Как сохранить в памяти и суммировать в число определенную в байтах массу файлов а затем использовать результат?

    myjcom
    @myjcom Куратор тега C++
    https://en.cppreference.com/w/cpp/filesystem
    Если доступен С++17
    #include<iostream>
    #include<filesystem>
    #include<string>
    using namespace std;
    namespace fs = filesystem;
    
    auto getDirectorySize(const fs::path& p)
    {
      uintmax_t size = 0;
      if(fs::is_directory(p))
      {
        for(const auto& f : fs::directory_iterator(p))
        {
          size += f.file_size();
        }
      }
      return size;
    }
    
    int main()
    {
      string directory{ "C:\\TEMP" };
      fs::path dp{ directory };
      
      auto size{ getDirectorySize(dp) };
      cout << "size of "  << directory 
           << " "         << size 
           << " bytes"    << endl;
    }

    Или

    #include<iostream>
    #include<fstream>
    #include<string>
    #include<vector>
    using namespace std;
    
    size_t getFileSize(const string& filename)
    {
      ifstream ifs(filename);
      size_t size = 0;
      if(ifs)
      {
        ifs.seekg(0, ios_base::end);
        size = ifs.tellg();
      }
      return size;
    }
    
    int main()
    {
      vector<string> filenames{
        "C:\\TEMP\\aaa.txt", "C:\\TEMP\\bbb.txt", "C:\\TEMP\\ccc.txt"
      };
    
      size_t size = 0;
    
      for(const string& fn : filenames)
      {
        size += getFileSize(fn);
      }
    
      cout << "Size: " << size << endl;
    }

    Ответ написан
    7 комментариев
  • Почему в консоли на выводе 0?

    gbg
    @gbg
    Любые ответы на любые вопросы
    Строка с форматом неверно составлена.
    printf("%.1f\n","%.1f\n","%.1f\n", fut, m, dm);  // тут ошибка

    printf("%.1f\t%.1f\t%.1f\n", fut, m, dm);
    Ответ написан
    Комментировать
  • Будет ли работать такая схема (интранет)?

    В принципе, будет. Всё зависит от того, как настроить маршруты на роутерах.
    Если сеть маленькая, зачем такие огромные диапазоны? Такими полстраны (утрирую) можно охватить. И, как бы, принято для домашних подсетей использовать 192.168.0.0, а на корпоративные сети 10.0.0.0.
    Так что ставьте одну подсеть 192.168.0.0 и всё в неё. Ну или разбить чуток типа 192.168.1.0, 192.168.2.0...
    Так в каждой подсети пару сотен узлов вполне уживутся.
    Другой нюанс - если подключаемые сторонние роутеры Вам подконтрольны (т.е. Вы распоряжаетесь, какие там будут настройки) - то проблем (почти) нет. Но если административно управляются кем-то ещё, то смотреть надо в сторону BGP, и соответственно, всё намного усложняется. Конечно, если сторонние роутеры, это как клиенты, т.е. не имеют куда-то ещё маршрутов и не нужно иметь связность со всеми - путь так и будут на одном IP каждый, а внутри имеют nat с dhcp или что угодно там делают, главное на своём роутере фильтровать, что куда может уходить-приходить, а что нет.
    Ответ написан
    Комментировать