انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید




نویسنده موضوع: اجرای یک ماشین مجازی در هر بار بالا آمدن سیستم قبل از لاگین  (دفعات بازدید: 905 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین سینوسی

  • Full Member
  • *
  • ارسال: 144
  • جنسیت : پسر
سلام دوستان من یک ماشین مجازی دارم روی اوبونتو بالا آوردم که کار اشتراک و محدودسازی اینترنت بین کامپیوترهای شرکت رو انجام میده.
سعی کردم با crontab، کاری کنم با هر بار بالا اومدن سیستم (چه بعد از ریبوت دستی، چه بعد از خطای برق رسانی و ...)، قبل از لاگین این ماشین بالا بیاد. اما به هیچ عنوان کار انجام نمیشه.

دستوری که استفاده میکنم این هست.

@reboot sleep 20; /usr/bin/vmrun start "/path/to/vm.vmx" nogui
« آخرین ویرایش: 11 اسفند 1397، 10:35 ب‌ظ توسط سینوسی »
طوطی ها برای آزادی خود را به مردن میزنند
ما به نفهمی

آفلاین Farhaad 1992

  • Hero Member
  • *
  • ارسال: 943
  • جنسیت : پسر
  • گنو با گنوم
هر برنامه ای باید در یک نشست لاگین متعلق به یک کاربر، مثلا کاربر روت یا کاربر معمولی اجرا شود، لذا درخواست شما غیرمنطقی و ناممکن است:

https://en.wikipedia.org/wiki/Login_session

شما باید سیستم را تنظیم کنید که وقتی بالا اومد فلان کاربر در سیستم کنسول لاگین شود، سپس برنامه موردنظر خود حالا هرچی که هست در آن سیستم کنسول توسط آن کاربر اجرا شود، البته این برای برنامه های متنی (غیر-گرافیکی) است، برای برنامه های گرافیکی باید به یک نشست گرافیکی لاگ-این کرد تا بتوان برنامه گرافیک را حالا به طور دستی یا به طور اتوماتیک اجرا کرد.

https://en.wikipedia.org/wiki/System_console
* نام کاربری حساب من Fedora-Red Hat است ولی نام نمایهٔ (پروفایل) من، نام حقیقی + سال تولد من است
* از دی ۱۳۹۸ دیگر فعالیت پیوسته و دائم ندارم
* نظرات و ارسال‌های من فقط در زمان ارسال خود معتبر بودند و نشان‌دهنده طرز فکر و سطح دانش فعلی من نیستند

آفلاین علی رزم دیده

  • عضو کاربران ایرانی اوبونتو
  • *
  • ارسال: 1244
  • جنسیت : پسر
  • ali76 سابق
سلام دوستان من یک ماشین مجازی دارم روی اوبونتو بالا آوردم که کار اشتراک و محدودسازی اینترنت بین کامپیوترهای شرکت رو انجام میده.
سعی کردم با crontab، کاری کنم با هر بار بالا اومدن سیستم (چه بعد از ریبوت دستی، چه بعد از خطای برق رسانی و ...)، قبل از لاگین این ماشین بالا بیاد. اما به هیچ عنوان کار انجام نمیشه.

دستوری که استفاده میکنم این هست.

@reboot sleep 20; /usr/bin/vmrun start "/path/to/vm.vmx" nogui

سلام
دستور وارد شده مشکلی نداره اگه آدرس ماشین رو درست داده باشین اصولاً باید جواب بده. من همین الان تست کردم و زمان بندی رو از طریق crontab کاربر عادی ست کردم مشکلی وجود نداره.

$ crontab -e
@reboot sleep 20; /usr/bin/vmrun start /home/asus/vmware/CentOS\ 7\ 64-bit/CentOS\ 7\ 64-bit.vmx nogui

و همون طور که می بینین بدون مشکل به ماشین متصل شدم :
$ sudo nmap -sP 192.168.1.0/24
Nmap scan report for 192.168.1.101
Host is up (0.00024s latency).

$ ssh 192.168.1.101
asus@192.168.1.101's password:
Last login: Mon Mar  4 02:08:12 2019 from 192.168.1.104
[asus@dhcppc1 ~]$ exit
logout
Connection to 192.168.1.101 closed.

شما چطوری چک می کنین که ماشین اجرا شده یا نه ؟ توی processes بررسی می کنین که vm ران شده یا از طریق بررسی ip ها ؟
اگه مورد دوم هست حتماً بررسی کنین وضعیت vmware-networks.service و تنظیمات شبکه درست باشه (مثلاً یا bridging باشه یا در صورت استفاده از NAT باید port forwarding انجام بدین و ...)


پ.ن:چرا از kvm یا xen استفاده نمی کنین ؟ کارایی مشابهی دارن و در عین حال آزاد هم هستن. توصیه ی خود من این دو تا هستش.

آفلاین سلمان م.

  • ناظر انجمن
  • *
  • ارسال: 4106
  • جنسیت : پسر
  • GNU Operating System - سیستم عامل گنو
بنظر من ماشین مجازی رو با QEMU/KVM بساز (اگه پوسته گرافیکی می‌خوای با virt-manager استفاده کن). بعد از اون می‌تونی ماشین‌های مجازی رو با virsh مدیریت کنی:

مثلا اسم ماشین مجازیت ubuntu1804 هست:

$ sudo virsh net-start default
$ sudo virsh start ubuntu1804

برای اطلاعات بیشتر:
$ man virsh

ببین نمیشه به عنوان یه service توی systemd معرفیش کنی؟

آفلاین Farhaad 1992

  • Hero Member
  • *
  • ارسال: 943
  • جنسیت : پسر
  • گنو با گنوم
ooops!! من چون خیلی ساله از cron یا at استفاده نکردم یادم نبود که وقتی این دو برنامه را برای انجام کاری تنظیم میکنیم به طور اتوماتیک نشست کاربری مطابغ با همون کاربر را اجرا میکند.

تجربه شد که در تاپیک هایی که اطلاع زیادی از موضوع ندارم پستی ارسال نکنم.
* نام کاربری حساب من Fedora-Red Hat است ولی نام نمایهٔ (پروفایل) من، نام حقیقی + سال تولد من است
* از دی ۱۳۹۸ دیگر فعالیت پیوسته و دائم ندارم
* نظرات و ارسال‌های من فقط در زمان ارسال خود معتبر بودند و نشان‌دهنده طرز فکر و سطح دانش فعلی من نیستند

آفلاین سینوسی

  • Full Member
  • *
  • ارسال: 144
  • جنسیت : پسر
سلام دوستان من یک ماشین مجازی دارم روی اوبونتو بالا آوردم که کار اشتراک و محدودسازی اینترنت بین کامپیوترهای شرکت رو انجام میده.
سعی کردم با crontab، کاری کنم با هر بار بالا اومدن سیستم (چه بعد از ریبوت دستی، چه بعد از خطای برق رسانی و ...)، قبل از لاگین این ماشین بالا بیاد. اما به هیچ عنوان کار انجام نمیشه.

دستوری که استفاده میکنم این هست.

@reboot sleep 20; /usr/bin/vmrun start "/path/to/vm.vmx" nogui

سلام
دستور وارد شده مشکلی نداره اگه آدرس ماشین رو درست داده باشین اصولاً باید جواب بده. من همین الان تست کردم و زمان بندی رو از طریق crontab کاربر عادی ست کردم مشکلی وجود نداره.

$ crontab -e
@reboot sleep 20; /usr/bin/vmrun start /home/asus/vmware/CentOS\ 7\ 64-bit/CentOS\ 7\ 64-bit.vmx nogui

و همون طور که می بینین بدون مشکل به ماشین متصل شدم :
$ sudo nmap -sP 192.168.1.0/24
Nmap scan report for 192.168.1.101
Host is up (0.00024s latency).

$ ssh 192.168.1.101
asus@192.168.1.101's password:
Last login: Mon Mar  4 02:08:12 2019 from 192.168.1.104
[asus@dhcppc1 ~]$ exit
logout
Connection to 192.168.1.101 closed.

شما چطوری چک می کنین که ماشین اجرا شده یا نه ؟ توی processes بررسی می کنین که vm ران شده یا از طریق بررسی ip ها ؟
اگه مورد دوم هست حتماً بررسی کنین وضعیت vmware-networks.service و تنظیمات شبکه درست باشه (مثلاً یا bridging باشه یا در صورت استفاده از NAT باید port forwarding انجام بدین و ...)


پ.ن:چرا از kvm یا xen استفاده نمی کنین ؟ کارایی مشابهی دارن و در عین حال آزاد هم هستن. توصیه ی خود من این دو تا هستش.


برای خودم هم عجیبه که چرا اجرا نمیشه، نه ای پی ماشین پینگ میشه، نه سیستم‌های که باید از این ماشین آی پی بگیرن، آی پی میگیرن.
طوطی ها برای آزادی خود را به مردن میزنند
ما به نفهمی