আমি আর্চ লিনাক্স চালাচ্ছি, এবং আমার একটি উদেব নিয়ম রয়েছে যা একটি ডিভাইস isোকানো হলে একটি পরিষেবা শুরু করে। এই ক্ষেত্রে, কোনও 3G মডেম প্লাগ ইন করা অবস্থায় এটি সংযোগ ডায়াল করে।
KERNEL=="ttyUSB*", SYMLINK=="gsmmodem", TAG+="systemd", ENV{SYSTEMD_WANTS}="netcfg@wvdial.service"
তবে, ডিভাইসটি সরানো থাকলে, সিস্টেমডড পরিষেবাটি থামিয়ে দেবে না এবং তাই এটি আবার প্লাগ ইন করা অবস্থায়, এটি পরিষেবাটি আরম্ভ করবে না, কারণ এটি ইতিমধ্যে চলছে।
আমার যা দরকার তা হল একটি ম্যাচিং উদেব নিয়ম যা পরিষেবাটি বন্ধ করতে যখন ডিভাইসটি সরানো হয় তখন চলে।
হালনাগাদ
নীচের উত্তরটি ব্যবহার করে, আমার কাছে এখন যা রয়েছে তা হ'ল নিম্নলিখিত ইউদেব বিধি
KERNEL=="ttyUSB*", SYMLINK=="gsmmodem", TAG+="systemd", ENV{SYSTEMD_WANTS}="vodafone.service"
নিম্নলিখিত পরিষেবা ফাইলের সাথে (যা মূলত অনুলিপি করা হয়েছে এবং নেটকফিজ পরিষেবা ফাইল থেকে আটকানো হয়েছিল:
[Unit]
Description=Netcfg networking service for Vodafone Dongle
Before=network.target
Wants=network.target
BindsTo=dev-gsmmodem.device
After=dev-gsmmodem.device
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/bin/netcfg check-iface wvdial
ExecStop=-/usr/bin/netcfg down wvdial
KillMode=none
[Install]
WantedBy=multi-user.target
আমি netcfg-wvdial
ডায়ালিং করতে এওআর থেকে ব্যবহার করছি ।