_ Sudo systemctl সম্পাদনা [ইউনিট-ফাইল] _ এর জন্য ডিফল্ট সম্পাদককে ভিমে পরিবর্তন করুন


18

[4.13.12-1-জর্োমে জিনোম 3 এবং জিডিএম সহ ARCH]

আমি ইতিমধ্যে আমার ভিজ্যুয়াল এবং সম্পাদকের এনভ-ওয়ার্সকে সেট করে রেখেছি vim। একইভাবে আমি SYSTEMD_EDITOR="vim"; export SYSTEMD_EDITOR আমার। / .Bashrc এ চেষ্টা করেছিলাম, কোনও লাভ হয়নি।

আর্কে ইউনিট ফাইলগুলি পরিবর্তন করার সময় (সিস্টেমড) মাধ্যমে via

 $ sudo systemctl edit _unit_ 

আমি নিজেকে এ অনিমেষনেত্রে এটি nano। জীবন খুব ছোট এবং আমি vimসব উপায়ে চাই। আমি এটা কিভাবে করবো ?

উত্তর:


13

আপনি আপনার নিজের ব্যবহারকারীর জন্য ভেরিয়েবলগুলি সেট করছেন তবে systemctlকমান্ডটি রুট ( sudo) হিসাবে চালাচ্ছেন । অতএব, আপনার ব্যবহারকারীর জন্য আপনি যে ভেরিয়েবলগুলি সেট করেছেন তা অপ্রাসঙ্গিক।

এটি ঠিক করার জন্য, আপনি হয় (তবে 1 এর সাথে যেতে পারেন):

  1. চালান sudoদিয়ে -Eতাই এটি বর্তমান পরিবেশ রপ্তানি পণ্য:

    sudo -E systemctl edit _unit_
    
  2. মূলটির জন্য ভেরিয়েবলটি যুক্ত করুন (আপনার কেবল এটির প্রয়োজন SYSTEMD_EDITOR) ~/.profile:

    export SYSTEMD_EDITOR="/bin/vi" 
    

    তারপরে চালাও

    sudo -i systemctl edit _unit_ 
    

শেষ অবধি, নোট করুন যে আপনার সম্পাদকের পুরো নাম নির্দিষ্ট করে দেওয়া দরকার, কেবল এটির নাম নয়। সুতরাং এটি /bin/viএবং না vim।


আমি ইতিমধ্যে sudo -E ...সংশোধন পরে কাজ করেছিলাম /root/.bashrc। লগইন শেল ( sudo -i ...) হিসাবে সুডো চালানোর কথা ভাবেনি । আপনার সংশ্লিষ্ট পতাকাগুলি মনে রাখার মতো খুব সন্তোষজনক নয়, তবে ওহে ... আরও খারাপ কিছু আছে, আমার ধারণা ... এখনও (সম্ভবত এটি আগ্রহী), আমি নিশ্চিত করি যে আমাদের কারও জন্য: SYSTEMD_EDITOR=/usr/bin/vim; export SYSTEMD_EDITOR(মূল হিসাবে) ঠিক আছে। সমস্ত পথ আপনি কীভাবে vim1 ম স্থানে yr pkg ইনস্টল করেছেন তার উপর নির্ভর করে । আমি মূল হিসাবে PATH সংজ্ঞায়িত হিসাবে vimযথেষ্ট , যথেষ্ট। এটি করার একমাত্র উপায় নেই। ধন্যবাদ @ ইটারডন
— সিবিহে

1
@ সিবিহ আহ, ঠিক আছে আমি ন্যায়বিচারের সাথে চেষ্টা করেছি vimএবং এটি অভিযোগ করেছিল যার কারণেই আমি এটি উল্লেখ করেছি। আরে আমি একজন
— ইমাস

1
@ চবি আমাকে বিশ্বাস করুন এটি কোনও সহজ পছন্দ ছিল না। এমনকি এটি ব্যবহার করে পরীক্ষাও করেছি vim! জিনিসটি বন্ধ করতে আমার তিন দিন সময় লেগেছে।
— টেরডন

23

প্রথম পদ্ধতি, আপনি এই লাইনটি এতে যুক্ত করতে পারেন ~/.bashrc:

export SYSTEMD_EDITOR=vim

এবং তারপরে sudo visudoএবং এই লাইনটি যুক্ত করুন:

Defaults  env_keep += "SYSTEMD_EDITOR"

কার্যকর করতে নতুন বাশ সেশন শুরু করুন, তারপরে sudo systemctl edit <foo>যথারীতি চালান ।

দ্বিতীয় পদ্ধতিটি হ'ল update-alternatives:

আপনার পছন্দসই ইনস্টল করুন editor, যেমন vim.gtk3:

$ কোন সম্পাদক
সম্পাদক / usr / বিন / সম্পাদক হয়
do sudo আপডেট-বিকল্প - "ইনস্টল" $ (কোন সম্পাদক) "সম্পাদক" $ (যা vim.gtk3) "15

তারপরে আপনার পছন্দসইটি বেছে নিন editor:

$ sudo update-alternatives --config editor
There are 7 choices for the alternative editor (providing /usr/bin/editor).

  Selection    Path                Priority   Status
------------------------------------------------------------
  0            /usr/bin/vim.gtk3    50        auto mode
  1            /bin/ed             -100       manual mode
* 2            /bin/nano            40        manual mode
  3            /usr/bin/code        0         manual mode
  4            /usr/bin/gedit       5         manual mode
  5            /usr/bin/vim.basic   30        manual mode
  6            /usr/bin/vim.gtk3    50        manual mode
  7            /usr/bin/vim.tiny    15        manual mode

Press <enter> to keep the current choice[*], or type selection number: 6
update-alternatives: using /usr/bin/vim.gtk3 to provide /usr/bin/editor (editor) in manual mode

তৃতীয় পদ্ধতিটি সরাসরি EDITORরানটাইমের সময় সেট করে :

sudo EDITOR=vim systemctl edit <foo>

নজিরটি হ'ল প্রথম পদ্ধতি> তৃতীয় পদ্ধতি> দ্বিতীয় পদ্ধতি ।

"জিইউআই" সম্পাদক যেমন সেট করার চেষ্টা করবেন না geditকারণ কেন gksu / gksudo বা ওয়েল্যান্ডের সাথে সুডো কাজের সাথে একটি গ্রাফিকাল অ্যাপ্লিকেশন চালু করা হচ্ছে না? এবং গেডিট ফাইল সম্পাদনা করার সময় 100% সিপিইউ ব্যবহার করে


1
ধন্যবাদ 林果 皞, তবে আমি আসলে বোঝাতে চেয়েছি vim, তা নয় gedit।
— সিবিহে

@ সিবিহে geditএটি প্রমাণ করার জন্য কেবল একটি উদাহরণ যে এমনকি গুই সম্পাদকও কাজ করছেন, অবশ্যই আপনি vimএই উত্তরটি ব্যবহার করতে পারেন ।
— 皞

1
হ্যাঁ, আপনি ঠিক বলেছেন। আসলে আমি এর সাথে sudoers ফাইল সম্পাদনা করে yr সমাধান বাস্তবায়ন করেছি sudo visudo... আমি প্রথম প্রতিক্রিয়া গ্রহণ করতে খুব দ্রুত ছিলাম। আমি যা খুঁজছিলাম তা হ'ল /etc/suddoersফাইলটি যেমন আপনি প্রস্তাব করেছিলেন ঠিক তেমন পরিবর্তন । ধন্যবাদ এবং দুঃখিত yr সমাধান না চয়ন করার জন্য। আমার খারাপ।
— সিবিহে

[আপডেট] আমি পরামর্শ যোগ করার জন্য সেট না আমার উত্তর সম্পাদিত gedit।
— 皞

0

আমি ন্যানোর সাথে ধৈর্য ধরছি এবং একটি কামান দিয়ে মশা মারা পছন্দ করি।

আমি ন্যানো মুছুন এবং তার জায়গায় ভিমে একটি সিমিলিংক রাখি।

সম্পন্ন.


0

আমি একটি শেল ওরফে ব্যবহার করি:

sc='sudo SYSTEMD_EDITOR=/bin/vi /usr/bin/systemctl'

তারপরে:

sc edit service-name

এটি systemctlযেমন restart, ইত্যাদি ক্ষেত্রে 9 টি অক্ষরের মধ্যে 7 টাইপ করা এড়াতে উপকারী useful

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.