Home > Linux > Как да сверим часовника на VPS (виртуална машина)

Как да сверим часовника на VPS (виртуална машина)

Наскоро ми се наложи да сверявам часовника на една от машините на bgmafia.com
До тук всичко е ок, с изключение на това, че машината се оказа VPS. Слез известно време и ровене из google попаднах на интересните думи (не буквален превод) – “не можете да сверите часовника на VPS, защото той се наследява от часовника на host машината”.

Q: Как да сверим часовника на VPS (виртуална машина)
A: Като сверим часовника на host машината

Categories: Linux Tags:
Вижте всички статии от
Technology lover
Този автор е написал 156 статии

  • Използването на VPS като термин няма нищо общо с виртуална машина. Използва се главно за споделен хостинг под GNU/Linux, при което единственото, което се виртуализира е достъпът до файловата система, мрежовите ресурси и паметта. Виртуализацията е до толкова, до колкото да те затвори в твоя свят, за да не виждаш останалите, които съществуват върху машината. Т.е. на практика ядрото не ти дава да заемеш повече от X рам, не ти дава да пуснеш повече от Y процеса, подава ти само пакетите за и от IP адрес Z и в повечето случаи не ти дава да си създадеш повече от N inode-а върху файловата система, защото и тя е споделена в повечето случаи между всичките VPS-и ползващи машината …… и ти налага още един тон ограничения от към ресурсите, които можеш да ползваш. Разликата с виртуалните машини е, че при тях клиентът получава достъп до виртуален хардуер и може да си говори с него през каквато и да е операционна система. Т.е. може да си сложиш и puppy-linux или solaris, ако щеш.

    Та като собственик на VPS под GNU/Linux получаваш 2 привилегии:
    * наблюдателят да стартира 1 процес по избор от твоята папка, когато натиснеш бутона старт (a.k.a boot/power on)
    * възможността този процес (както и другите) да си говорят с ядрото, което ти предоставя разни функции: да си пуснеш още процеси, да си заделиш памет, да получаваш пакети по мрежата и т.н.

  • Ако се питаш – защо само толкова, то отговорът е: за да е рентабилно да се пуснат 20 VPS-а на 1 машина, без тя да трябва да “виртуализира” през цялото време, вместо да изпълнява процесите на клиентите – възможно по-малко виртуализации -> повече време за изпълнение на клиентски код -> по-малко машини за Х на брой клиента.

    Та, понеже ядрото е шефът и никой не е написал код за виртуализация на клиентския часовник 🙂 не можеш да си смениш времето – предполага се, че клиентите, както и наблюдателят искат да ползват универсалното време на земята, а не да си работят по тяхно си време => като не ти е наред часовника, значи приятелката на админ-а не е от тази планета (понеже той не трябва да закъснява за срещи, трябва да се води по нейното време, а както знаем времето е различно за всички :), но на земята отклоненията са пренебрежими )

  • За любознателните:
    аналогът на VPS под FreeBSD е jail. Всеки затвор получава отличителен номер (jail id), който се прикрепя към данните идентифициращи всеки процес. Всеки затвор има достъп една директория (аналог на chroot), която вижда като главна, получава и достъп до 1 или няколко IP адреса и до там се свърша. Виртуализацията е проста: всеки процес може да говори с друг, който има същият jail id (т.е. принадлежи на същия затвор), получава мрежовите пакети за себе си и не вижда само директорията, до която има достъп затвора.
    Разликата с VPS-ите под linux е липсата на други ограничения – памет, cpu, брой inodes, дисково пространство и т.н. За такива неща може да се ползват различни техники и програми.

  • Няма логика това да бъде така, ти сам определяш и разполагаш с ресурсите си, сам инсталираш операционна система