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

کمک و پشتیبانی => انجمن عمومی => نویسنده: mobin1387 در 02 خرداد 1400، 10:27 ب‌ظ

عنوان: اجرای اسکریپت در هنگام اجرای آرچ (حل شد)
ارسال شده توسط: mobin1387 در 02 خرداد 1400، 10:27 ب‌ظ
سلام. بنده برای انجام یک کاری نیازمند اجرای کد زیر در هنگام بالا اومدن آرچ هستم

sudo vmware-modconfig --console --install-all(برای یک کاری نیازمند ماشین مجازی وی ام وار هستم که نمیشه در بقیه ماشین مجازی ها انجامش داد)

ویکی آرچ رو خوندم اما به نتیجه نرسیدم. ممنون میشم پاسخ بدید ممنون  \\:D/
عنوان: پاسخ : اجرای اسکریپت در هنگام اجرای آرچ
ارسال شده توسط: Dragon- در 02 خرداد 1400، 11:32 ب‌ظ
یه سرویس systemd بسازید و اون رو enable کنید تا هر بار موقع بوت شدن سیستم اجرا بشه.

اینجا (https://maaleki.ir/1081/creating_service_systemd/) و اینجا (http://www.usefzadeh.com/2019/02/25/%D8%AA%D8%B9%D8%B1%DB%8C%D9%81-%D8%B3%D8%B1%D9%88%DB%8C%D8%B3-%D8%AF%D8%B1-systemd-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A7%D8%B3%D8%AA%D8%A7%D8%B1%D8%AA-%D8%AE%D9%88%D8%AF%DA%A9%D8%A7%D8%B1-%D8%AF%DB%8C%D8%AA/) رو ببینید. اینو میشه توی هر توزیعی که از systemd استفاده می‌کنه، انجام داد. فرقی نداره از چه توزیعی استفاده می‌کنید.
عنوان: پاسخ : اجرای اسکریپت در هنگام اجرای آرچ
ارسال شده توسط: آرمان اسماعیلی در 02 خرداد 1400، 11:58 ب‌ظ
سلام. اولین و آخرین مرجع همون ویکی آرچه. دقیق‌تر بخونید جواب میده:
https://wiki.archlinux.org/title/Autostarting
عنوان: پاسخ : اجرای اسکریپت در هنگام اجرای آرچ
ارسال شده توسط: mobin1387 در 03 خرداد 1400، 12:58 ق‌ظ
انجام دادم اما خطا داد

گزارش systemctl
➜  ~ systemctl status vm_kernel
× vm_kernel.service - Vmware Kernel Moudel (VKM)
     Loaded: loaded (/etc/systemd/system/vm_kernel.service; enabled; vendor preset: disabled)
     Active: failed (Result: exit-code) since Mon 2021-05-24 00:55:23 +0430; 1s ago
    Process: 1738 ExecStart=/home/mobin/vmware_kernel.sh (code=exited, status=203/EXEC)
   Main PID: 1738 (code=exited, status=203/EXEC)
        CPU: 514us

مه 24 00:55:23 Mobin-Mahdi-PC systemd[1]: Started Vmware Kernel Moudel (VKM).
مه 24 00:55:23 Mobin-Mahdi-PC systemd[1]: vm_kernel.service: Main process exited, code=exited, status=203/EXEC
مه 24 00:55:23 Mobin-Mahdi-PC systemd[1]: vm_kernel.service: Failed with result 'exit-code'.

فایل service ای که نوشتم
# Created by Mobin user
# Dont Modify this file
[Unit]
 Description= Vmware Kernel Moudel (VKM)

[Service]
 ExecStart=/home/mobin/vmware_kernel.sh

[Install]
 WantedBy=multi-user.target


عنوان: پاسخ : اجرای اسکریپت در هنگام اجرای آرچ
ارسال شده توسط: Dragon- در 03 خرداد 1400، 01:19 ب‌ظ
به نظر میاد شما یه اسکریپت ساختید و دستوری که بالا گذاشتید رو توی اون نوشتید. بعد گفتید که systemd اون رو موقع بوت شدن سیستم اجرا کنه. باید می‌گفتید که با bash اجرا بشه.

شما دو راه دارید:
۱- اینکه مستقیم دستور رو بنویسید و از اون اسکریپت استفاده نکنید. یعنی ExecStart رو اینجوری تعریف کنید:
ExecStart=/usr/sbin/vmware-modconfig --console --install-allاین با این فرض هست که vmware-modconfig توی مسیر /usr/sbin/ باشه.
برای اینکه مسیر رو پیدا کنید، از این دستور استفاده کنید:
which vmware-modconfig
۲- اگه می‌خواهید از همون اسکریپت استفاده کنید، ExecStart رو به این شکل تغییر بدید:
ExecStart=/bin/bash /home/mobin/vmware_kernel.sh
عنوان: پاسخ : اجرای اسکریپت در هنگام اجرای آرچ
ارسال شده توسط: mobin1387 در 03 خرداد 1400، 06:50 ب‌ظ
به نظر میاد شما یه اسکریپت ساختید و دستوری که بالا گذاشتید رو توی اون نوشتید. بعد گفتید که systemd اون رو موقع بوت شدن سیستم اجرا کنه. باید می‌گفتید که با bash اجرا بشه.

شما دو راه دارید:
۱- اینکه مستقیم دستور رو بنویسید و از اون اسکریپت استفاده نکنید. یعنی ExecStart رو اینجوری تعریف کنید:
ExecStart=/usr/sbin/vmware-modconfig --console --install-allاین با این فرض هست که vmware-modconfig توی مسیر /usr/sbin/ باشه.
برای اینکه مسیر رو پیدا کنید، از این دستور استفاده کنید:
which vmware-modconfig
۲- اگه می‌خواهید از همون اسکریپت استفاده کنید، ExecStart رو به این شکل تغییر بدید:
ExecStart=/bin/bash /home/mobin/vmware_kernel.sh

ممنون از شما تمامی کسانی که کمک کردند \\:D/