কীভাবে ডলফিনকে মূল হিসাবে চালাবেন?


14

আমি বর্তমানে ব্যবহার করি dolphin 17.04.3এবং যখনই আমি এটিকে sudo হিসাবে চালনা করি Executing Dolphin as root is not possible.এটি কেন বা বিকল্প ব্যাখ্যা না দিয়ে নিম্নলিখিত ত্রুটিটি দেয় । সুতরাং আমি কীভাবে ফাইলগুলি অনুলিপি বা মুছে ফেলার জন্য রুট হিসাবে ডলফিন চালাতে পারি?


আপনি উবুন্টুর কোন সংস্করণ ব্যবহার করছেন?
জর্জ উদোসেন

1
আপনি ওয়েল্যান্ডল্যান্ড ব্যবহার করছেন? ডিফল্টরূপে ওয়েল্যান্ডল্যান্ড জিইউআই প্রোগ্রামগুলিকে রুট হিসাবে চালানোর অনুমতি দেয় না।
রাভির

কাজ করে না ফাইলগুলি তৈরি বা সরানোর বিকল্পটি প্রসঙ্গ মেনুতে কেবল ধূসর। দয়া করে আপনার সংস্করণটি দেখুন
অঙ্কুর এস

আমি Kde ইনস্টল করে উবুন্টু 17.10 এবং x11 ব্যবহার করছি
অঙ্কুর এস

2
"তাহলে আমি কীভাবে ফাইলগুলি অনুলিপি বা মুছে ফেলার জন্য ডলফিনকে রুট হিসাবে চালাতে পারি?" এই প্রশ্নের পুনরায় মূল্যায়ন করুন। অ্যাডমিন কাজের জন্য কমান্ড লাইন ব্যবহার করুন। এটি অ্যাডমিন কাজের জন্য বিশেষত আছে। গ্রাফিকাল সরঞ্জামগুলি অ্যাডমিন কাজের জন্য ব্যবহার করা উচিত নয়। অনুমোদনের বিষয়ে অ্যাডমিন হিসাবে গ্রাফিকাল সরঞ্জামগুলি চালনার অদৃশ্য পার্শ্ব প্রতিক্রিয়া রয়েছে এবং শেষ অবধি এমনটি মনে করা হয় যে বিকাশকারীরা সক্রিয়ভাবে এটি অবরুদ্ধ করে। গ্রাফিক্যাল ফাইল ম্যানিপুলেশন সরঞ্জামটি ঠিক কী করতে পারে এবং কী জানে (বা জানা উচিত বলে মনে হয়)) এমন লোকদের বিরুদ্ধে যাওয়া কি আসলেই ভাল ধারণা বলে আপনি মনে করেন?
রিনজুইন্ড

উত্তর:


11

ছোটগল্প ঃ

ডলফিন 17.04

ডলফিন 17.04 বা তার পরে একটি চেক রয়েছে:

if uid == 0 then show the "Executing Dolphin as root is not possible." and exit.

একটি workaround

আপনি উত্সগুলি সম্পাদনা করতে এবং চেকটি অক্ষম করতে পারেন। তারপরে ডলফিন আগের মতো কাজ করবে।

ডলফিন 18.08

কয়েকটি পর্যালোচনা অনুরোধ

  • ডলফিনকে মূল ব্যবহারকারী হিসাবে চলমানটিকে পুনরায় অনুমতি দিন (তবে এখনও সুডো ব্যবহার করছেন না): https://phabricator.kde.org/D12795

  • রুট ব্যবহারকারী হিসাবে চলার সময় একটি সতর্কতা দেখান: https://phabricator.kde.org/D12732

ডলফিন 18.08.0 এই পরিবর্তনগুলি ব্যবহার করছে এবং ডলফিনকে প্রশাসনিক সুপার ব্যবহারকারী হিসাবে pkexec কমান্ড দিয়ে চালু করা যেতে পারে।

pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY KDE_SESSION_VERSION=5 KDE_FULL_SESSION=true dolphin

আরও: কে। ডি। ফরুনস - কীভাবে ডাবলফিন 18.08 কুবুন্টু বা কেডিএ নিওনের সাহায্যে চালানো যায়? - https://forum.kde.org/viewtopic.php?f=224&t=153655

এখানে চিত্র বর্ণনা লিখুন

পটভূমি:

এর আগে - কেডিএ ফোরাম - কীভাবে ডলফিনকে মূল হিসাবে চালানো যায় ?: https://forum.kde.org/viewtopic.php?f=224&t=141836

সুরক্ষার কারণে: ডলফিনকে লিনাক্সের মূল হিসাবে চালিত করার অনুমতি দিন - https://cgit.kde.org/dolphin.git/commit/?id=0bdd8e0b0516555c6233fdc7901e9b417cf89

মূলত লিনাক্সে ডলফিনকে মূল হিসাবে নির্বাহ করা নিষ্ক্রিয় করুন মূলত কমিট কেট / 9adcebd3c2e476c8a32e9b455cc99f46b0e12a7e একটি অনুলিপি যা মার্টিন গ্রাসলিন লিখেছিলেন

লিনাক্সে কেট এবং কৌরাইটকে মূল হিসাবে নির্বাহ করুন: https://phabricator.kde.org/R40:9adcebd3c2e476c8a32e9b455cc99f46b0e12a7e

আরও টিপস

কেডিএ রেডডিট - কেপি অ্যাপ্লিকেশনে ডলফিন মূল 17.04: https://www.reddit.com/r/kde/comments/6785b1/dolphin_root_on_kde_app_1704/

বাইপাস "ডলফিনকে মূল হিসাবে চালানো সম্ভব নয়" এবং কেডিএ ডলফিন রুট সুবিধাগুলি পুনরায় অর্জন করুন: https://www.reddit.com/r/kde/comments/6xs3mp/bypass_executes_dolphin_as_root_is_not_possible/

ভবিষ্যৎ

KIO- এ পোলকিট সমর্থন: https://phabricator.kde.org/T6561

এটি প্রস্তুত হলে ডলফিন প্রয়োজনে পাসওয়ার্ড কোয়েরি প্রদর্শন করবে। এখন, প্যাচযুক্ত ডলফিন এবং কেআইও সহ:

এখানে চিত্র বর্ণনা লিখুন


1
"সুরক্ষার কারণে" আপনি কি আরও কিছুটা ব্যাখ্যা করতে পারেন?
জিম ম্যাকএডামস

আপনি কি phabricator.kde.org/… পড়েছেন ? একই / আরও: মার্টিন গ্রাসলিন - রুট হিসাবে ফাইলগুলি সম্পাদনা করা হচ্ছে: blog.martin-graesslin.com/blog/2017/02/editing-files-as-root
ব্যবহারকারী 26687

সুতরাং, এর সহজ উত্তর "আপনি ডলফিনকে রুট হিসাবে চালাতে পারবেন না, যদি না আপনি কোনও প্যাচযুক্ত সংস্করণ ইনস্টল করেন"?

@ ব্যবহারকারী 47206: কেন এটি নিজেরাই প্যাচ করবেন না? ;) আমার উত্তর নীচে দেখুন!
উইচক্র্যাফট

10

কোনও উত্তর নয়, ওপি ( copying or deleting files) দ্বারা উল্লিখিত উদ্দেশ্যটির জন্য কেবল একটি কর্মপরিকল্পনা ।

ধারণাটি হয়

  1. অন্য ফাইল ম্যানেজারটি ইনস্টল করুন যার সীমাবদ্ধতা নেই এবং এটি প্রচুর নির্ভরতা আনতে পারে না

  2. এই অন্যান্য ফাইল ম্যানেজারের জন্য ডলফিনে "রুট হিসাবে খুলুন" প্রসঙ্গ মেনু তৈরি করুন।

অন্যান্য ডেস্কটপগুলির প্রধান ফাইল পরিচালকদের ব্যবহার করা যেতে পারে (নটিলাস, নিমো, কজা, থুনার) তবে তারা কিছুটা নির্ভরতা নিয়ে আসে। এমনকি PCManFM এবং PCManFM-Qt এটি করে। আপনার যদি অন্য কোনও উদ্দেশ্যে এর প্রয়োজন হয় তবে এটির একটি ভাল সমাধান হতে পারে adding

আমি দেখতে পেয়েছি যে কুরুসাদার (যা আমি পূর্বে কিছু কে.ডি. সিস্টেমে ডিফল্টরূপে ইনস্টল করা হত বলে মনে করি) সহজেই ইনস্টল করা যায়, কুবুন্টুতে কোনও নির্ভরতা আনেনি 18.04, এবং এটি রুট হিসাবে ব্যবহার করা যেতে পারে।

sudo apt install krusader

এর সরঞ্জামগুলির অধীনে এটিতে "রুট" বিকল্প রয়েছে।

এখানে চিত্র বর্ণনা লিখুন

যা জিআই-তে পাসওয়ার্ড চাইবে।

ডলফিনে একটি প্রসঙ্গ মেনু যুক্ত করতে, ফোল্ডারটি তৈরি করুন ~/.local/share/kservices5/ServiceMenusএবং তারপরে করুন

kate ~/.local/share/kservices5/ServiceMenus/filemanager_root.desktop

এবং যোগ করুন

[Desktop Action root]
Exec=/usr/lib/kde4/libexec/kdesu krusader
Icon=dolphin
Name=Open in Krusader file manger as administrator

[Desktop Entry]
Actions=root
Icon=krusader_root
MimeType=inode/directory
ServiceTypes=KonqPopupMenu/Plugin
Type=Service
X-KDE-Priority=TopLevel
X-KDE-StartupNotify=false

কিছু কারণে kdesu krusaderনা কাজ করে, এবং আমি থেকে সমাধান ব্যবহার করেছেন এখানে .. কি এছাড়াও কাজ করে konsole -e sudo krusader, কিন্তু যে শো পাসওয়ার্ড প্রম্পটের জন্য একটি GUI পরিবর্তে টার্মিনাল।

তারপরে, আপনি ডলফিনে দেখতে পাবেন:

এখানে চিত্র বর্ণনা লিখুন

একটি সংলাপ আনা

এখানে চিত্র বর্ণনা লিখুন

যা একটি কাজ করে ..


5

উপরের উত্তরগুলির উপর ভিত্তি করে আমি আমার নিজস্ব সংস্করণ তৈরি করেছি। সুতরাং ডলফিনকে মূল হিসাবে খোলার জন্য একটি প্রসঙ্গ মেনু যুক্ত করতে এই পদক্ষেপগুলি অনুসরণ করুন:

  • DolphinAsRoot.desktopডিরেক্টরিতে উদাহরণস্বরূপ বলা একটি ফাইল তৈরি করুন~/.local/share/kservices5/ServiceMenus/
  • একটি পাঠ্য সম্পাদক সহ নিম্নলিখিত লিখিত সামগ্রীটি এতে রাখুন:
[Desktop Entry]
Actions=root
Icon=system-file-manager-root
MimeType=inode/directory
ServiceTypes=KonqPopupMenu/Plugin
Type=Service
X-KDE-Priority=TopLevel
X-KDE-StartupNotify=false

[Desktop Action root]
Exec=/usr/bin/pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY KDE_SESSION_VERSION=5 KDE_FULL_SESSION=true dolphin
Icon=system-file-manager-root
Name=Open as administrator
  • যদি এটি ডলফিনের প্রসঙ্গ মেনুতে এখনও উপস্থিত না হয় তবে "সেটিংস -> ডলফিন কনফিগার করুন ...-> পরিষেবাদি" এ যান এবং আপনি সম্প্রতি যুক্ত বিকল্পটি সক্রিয় করুন। এটা সেখানে থাকা উচিত। যদি তা না হয় তবে ডলফিন বন্ধ করুন বা এমনকি আপনার সেশনে লগ আউট করুন।

এগুলিই, আমি আশা করি এটি আপনার সকলকে যেমন এটি আমাকে সহায়তা করেছে তেমন সহায়তা করে;)


0

আমি যা করেছিলাম তা হ'ল টার্মিনালটি টুলবারে যুক্ত করা হয়েছিল (যদিও কীবোর্ড শর্টকাট এফ 4 এর সাথে আবদ্ধ) এবং কমান্ড লাইনটি প্রয়োজনীয় হিসাবে সুডো হিসাবে অপারেশন সম্পাদন করতে ব্যবহৃত হয়েছিল।

তাই ভালো

হ্যাঁ এটি ততটা সুবিধাজনক নাও হতে পারে তবে কমান্ডটি কীভাবে কাজ করে তার চাক্ষুষ প্রতিনিধিত্ব করার সময় এটি আপনাকে কমান্ড লাইনটি শিখতে বাধ্য করে forces

এটি আর্কে রয়েছে তবে উবুন্টুতে কার্যকারিতা একই হওয়া উচিত। আশা করি যে সাহায্য করেছে।


0

এখানে এটি ডলফিন 17.x এর জন্য কার্যকর

export XDG_CURRENT_DESKTOP=KDE; LD_PRELOAD=/home/roger/Downloads/dolphin/usr/lib64/libkdeinit5_dolphin.so /usr/bin/dolphin

পেতে libkdeinit5_dolphin.soথেকে এখানে

আমার দ্বারা পরীক্ষিত, এটি উবুন্টু বায়োনিকে দুর্দান্ত কাজ করে।

সূত্র


0

এটা তুচ্ছ!

কেবল কেট এবং ক্রাইটের উত্স কোডটি দেখুন:

diff --git a/kate/main.cpp b/kwrite/main.cpp

"মূল" ফাংশনের শুরুতে কোডের প্রথম লাইনে আপনি খুঁজে পাবেন:

/**
 * Check whether we are running as root
 **/
if (getuid() == 0) // uid = user id = 0 ==> means if you are user 0 (aka root)
{
    std::cout << "Executing Kate as root is not possible. To edit files as root use:" << std::endl;
    std::cout << "SUDO_EDITOR=kate sudoedit <file>" << std::endl;
    return 0;
}

ডলফিন আলাদা নয়, কেবল libkdeinit5_dolphin.so এ ঘটে।

সুতরাং রুট হিসাবে চালানো তুচ্ছ, আমাদের কেবলমাত্র uid = 0 চেকটি বাদ দেওয়া উচিত।

আমরা যেভাবে এটি করি তা হ'ল পারমা-প্যাচিং কেট, কুইরাইট এবং ডলফিন।
সুতরাং, আমরা প্রথম যে কাজটি করি তা হ'ল বাইনারি সামগ্রীটি একটি পাঠ্য-ফাইলে ডাম্প করা:

objdump -Crd /usr/bin/kate >> ~/kate.txt
objdump -Crd /usr/bin/kwrite >> ~/kwrite.txt

এখন আপনি ফাইলটির সাথে এটি দেখতে পারেন gedit ~/kate.txtএবং যদি আপনি গিগুইড অনুসন্ধান করেন তবে আপনি এর মতো কিছু পাবেন:

   2a985:   31 c0                   xor    %eax,%eax
   2a987:   89 bc 24 dc 00 00 00    mov    %edi,0xdc(%rsp)
   2a98e:   e8 ed ce ff ff          callq  27880 <getuid@plt>
   2a993:   85 c0                   test   %eax,%eax
   2a995:   0f 84 e9 1e 00 00       je     2c884 <__cxa_finalize@plt+0x1f5c>

এখন, বাম দিকে, আপনি মেমরি ঠিকানাটি খুঁজে পান, কোলনের পরে (:) আপনি বাইনারি নির্দেশ কোড (হেক্স) এবং তার ডানদিকে দেখতে পাবেন, আপনি সেই কোডটির বিচ্ছিন্নতা দেখতে পাচ্ছেন (ওরফে যার অর্থ) ।

এখন, আপনি দেখুন, এটি getuid কল, যদি এটি শূন্য হয় পরীক্ষা করে এবং if-বিবৃতিতে লাফ দেয়, অর্থাত্ যদি ফেরতের মান শূন্যের সমান হয় (জে: ঝাঁপ দাও সমান)।

এখন আমরা ইফের মধ্যে ঝাঁপ দিতে চাই না, সুতরাং আমরা কেবল সেই ছাঁটাইটি সেখানে সরিয়ে ফেলব। তবে কেবল সেই বকাবালি সরানোই 6 বাইট দ্বারা অ্যাড্রেস পরিবর্তন করবে, প্রোগ্রামটিতে যে কোনও আপেক্ষিক জাম্প ট্র্যাশ করবে এবং ফলস্বরূপ, প্রোগ্রামটি। সুতরাং পরিবর্তে আপনি শুধু লাফ বিবৃতির সমগ্র দৈর্ঘ্য NOP সঙ্গে (সংক্ষেপে প্রতিস্থাপন এনঅপ নির্দেশাবলী eration), ওরফে 0x90 নির্দেশ কোড / হেক্স হবে।

সুতরাং আপনাকে সেখানে প্রতি লাফ বাইট 0x90 দিয়ে প্রতিস্থাপন করতে হবে যেখানে আপনার আগে যেখানে ছিল

0f 84 e9 1e 00 00

তোমার থাকবে

90 90 90 90 90 90

এটি কেবলমাত্র একটি হেক্স-সম্পাদক দিয়ে করা যায়।
সুতরাং আমরা একটি ইনস্টল করুন:

sudo apt-get install wxhexeditor

এখন হেক্স সম্পাদকে আপনি 0f 84 e9 1e 00 00 অনুসন্ধান করেছেন এবং এটি 90 90 90 90 90 90 90 দিয়ে প্রতিস্থাপন করুন 0 যদি 0f 84 ই 9 1e 00 00 এর কেবলমাত্র একটি উপস্থিতি আছে এবং সেখানে থাকে তবে এটি তুচ্ছ সহজ। কেবলমাত্র হেক্সের বাইটগুলি 90 90 90 90 90 90 এ পরিবর্তন করুন এবং সংরক্ষণ করুন। সম্পন্ন হয়েছে। কেট বা কুরাইট এখন খুলবে, আপনি রুট হন বা না হন।

আপনি যদি ডলফিনের সাথেও একই কাজ করেন তবে আপনি বুঝতে পারবেন যে objdump -Crd /usr/bin/dolhinখুব ছোট একটি বিচ্ছিন্নতা উত্পাদন করবে।

আপনি যদি চালনা করেন তবে ldd /usr/bin/dolphinদেখতে পাবেন ডলফিন ভাগ করে নেওয়া লাইব্রেরি libkdeinit5_dolphin.so

linux-vdso.so.1 (0x00007ffc2fdf0000) libkdeinit5_dolphin.so => ​​/usr/lib/x86_64-linux-gnu/libkdeinit5_dolphin.so (0x00007fb54e76c000)

সুতরাং আপনি libkdeinit5_dolphin.so এজেডডাম্প করুন:

objdump -Crd /usr/lib/x86_64-linux-gnu/libkdeinit5_dolphin.so >> ~/libkdeinit5_dolphin.txt

এখন অবজেক্টটি খুলুন: gedit ~/libkdeinit5_dolphin.txt

সন্ধানের জন্য অনুসন্ধান করুন এবং আপনি দেখতে পাবেন যে অনুসন্ধানের ফলাফলগুলির মধ্যে একটি হ'ল:

   41f95:   31 c0                   xor    %eax,%eax
   41f97:   89 7c 24 5c             mov    %edi,0x5c(%rsp)
   41f9b:   e8 50 b6 ff ff          callq  3d5f0 <getuid@plt>
   41fa0:   85 c0                   test   %eax,%eax
   41fa2:   0f 84 58 1a 00 00       je     43a00 <kdemain@@Base+0x1a90>
   41fa8:   48 8d 84 24 a0 00 00    lea    0xa0(%rsp),%rax

এটি দুর্দান্ত, আপনি দেখুন, কেট এবং ক্রাইটের মতো আরও বোকা।
এখন /usr/lib/x86_64-linux-gnu/libkdeinit5_dolphin.soআপনার হেক্স-সম্পাদকটিতে খুলুন , এটি অনুসন্ধান করুন 0f 84 58 1a 00 00এবং এর সাথে প্রতিস্থাপন করুন 90 90 90 90 90 90
হিট সেভ, এবং সম্পন্ন।

ডলফিন এখন মূল হিসাবে চালায়।

দ্রষ্টব্য: কেবলমাত্র আপনি চ ***** আপ করার ক্ষেত্রে, আপনি যে ফাইলগুলি সংশোধন করেছেন তার ব্যাকআপ কপি তৈরি করার জন্য ভাল ধারণা।

এছাড়াও, আপনি কেবল কেট, কুইরাইট এবং ডলফিনের উত্সটি ডাউনলোড করতে পারেন, উত্স কোড থেকে সেই ক্র্যাপটি সরিয়ে, সংকলন এবং ইনস্টল করতে পারেন। তবে যেহেতু মূup় কামেক সিস্টেমটি আইকনগুলির মতো কিছু বোকা বোকা জন্য কিছু ক্র্যাপ ক্রেপ টেম্পলেট অনুপস্থিত, সম্ভবত রেপো সরবরাহকৃত চক্রটি পুরানো তাই এটি কাজ করে না। খুব খারাপ, খুব সহজ হত যদি এটি কেবল কাজ করে, এটি না।

তবে আমি যেমন বর্ণনা করেছি ঠিক তেমন এক্সিকিউটেবলদের প্যাচিং দ্রুততর, সুতরাং যে কেহই কেয়ার করে।

আপনি দেখুন, এটি সরল নয়, এটি তুচ্ছ।

PS:
এখন, যে কোনও সময় কেট, কুইরাইট বা ডলফিন অ্যাপের মাধ্যমে আপডেট করা হয়, আপনার পরিবর্তনগুলি ওভাররাইট করা হবে। এগুলি পুনরায় প্রয়োগ করতে হবে। আমি আপনার প্যাচ-প্রক্রিয়াটি স্বয়ংক্রিয়রূপে সক্ষম হাতের চেয়ে আরও বেশি, এবং আপনার প্রোগ্রামিং অফ জিওয়েস ছেড়ে যাব;)

এটি কি খাঁটি বাশে করা যায়?

এছাড়াও, যদি আপনি একই ক্রাপের জন্য ভিএলসি প্যাচ করতে চান তবে আপনি সেড দিয়ে এটি করতে পারেন:

sed -i 's/geteuid/getppid/' /usr/bin/vlc

কেবলমাত্র সেড-স্টেটমেন্টটি কোনও স্ক্রিপ্টে রেখে দিন, তাই আপনি যদি অফলাইনে থাকেন এবং কোনও ইন্টারনেট অ্যাক্সেস নেই আপনার যদি প্রয়োজন হয় তবে আপনি পুনরায় আবেদন করতে পারবেন।

ভিএলসি-তে কিছু দেখার / শোনার সময় কেট, কুইরাইট এবং ডলফিন সহ - মূল হিসাবে - শুভ হ্যাকিং k

পিএস 2: দু:
খজনক রুট চেকগুলি কেডিএ ভি 19.04-তে ডোডোর পথে চলেছে।
কে বলেছিল n বিবর্তন একটি খারাপ জিনিস was
অগ্রগতি - চিয়ার্স!


0

কোনও সমাধান নয়, একটি পরামর্শ .... ডলফিন এবং ফাইলগুলি পরিবর্তিত করা ঝুঁকিপূর্ণ। ডাবল কমান্ডার একটি দুর্দান্ত বিকল্প, এবং আশ্রয়স্থলে পাওয়া যায়। এটি রুট বিভ্রান্তি ছাড়াই ইনস্টল করবে। রুট পেতে, টার্মিনালে কেবল 'sudo DoubleCd' লিখুন। বড় এবং কয়েক মিলিয়ন ফাইলের সাথে কাজ করার সময় এর অনেক সুবিধা রয়েছে।

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