অন্য এক্স-সেশনে অ-রুট হিসাবে অ্যাপ্লিকেশন আরম্ভ করুন


4

নন-রুট অ্যাপ্লিকেশনটির একটি সেশন দিয়ে রুট হিসাবে এক্স সার্ভারটি কীভাবে শুরু করবেন?

কিছু হতে হবে

xinit 'su -c openbox user' -- :1

কিন্তু কাজ :)

উত্তর:


3

চেষ্টা

su -c 'startx openbox -- :1' user

সম্পাদনা করুন : চলমান চেষ্টা করুন

X :1 &
su -c 'DISPLAY=:1 openbox &' user

অসমর্থিত ব্যবহারকারী হিসাবে 'স্টার্টেক্স' চালু করার অনুমতি দেওয়া থাকলে এটি সম্ভব। অন্যথায়, এটি "এক্স: ব্যবহারকারীকে এক্স সার্ভার চালনার জন্য অনুমোদিত নয়, বাতিল করে দেয়।"
— কলিপ্টো

@o_O: আমার সিস্টেমের (আর্চ লিনাক্স) সেটআপড /usr/bin/Xorg-রুট রয়েছে বলে মনে হচ্ছে ।
— মাধ্যাকর্ষণ

2

দেখে মনে হচ্ছে একমাত্র উপায় অস্থায়ী .xinitrcফাইল তৈরি করা । লিপিটি এখানে:

#!/usr/bin/env bash

username="$USER"
let xdisplay=${DISPLAY:1}+1

# Temporary xinitrc
temp_xinit="$(tempfile -p '.xinit' -s 'rc')" || exit
trap "rm -f -- '$temp_xinit'" EXIT

# Launch X
echo "sudo -u $username $@" > "$temp_xinit"
sudo xinit "$temp_xinit" -- :$xdisplay

ব্যবহারের উদাহরণ:

$ Xnew.sh /usr/local/games/braid [..options...]

2
এর পরিবর্তে কোরিউটিলেরmktemp অংশ ব্যবহার করা ভাল । tempfile
— মাধ্যাকর্ষণ

@ কলিপ্টো যখন আমি এটি প্রয়োগ করি তখন আমি যে অ্যাপ্লিকেশনটি চালাতে চেয়েছিলাম (যেমন / ইউএসআর / লোকাল / গেমস / ব্রেইড) প্রকৃতপক্ষে ব্যবহারকারী হিসাবে চালানো হয় তবে এক্স সার্ভার নিজেই মূল হিসাবে চালিত হয়। আপনি কি উভয়কেই আপনার ব্যবহারকারী হিসাবে চালানোর জন্য কোনও উপায় খুঁজে পেয়েছেন (সর্বাধিক গুরুত্বপূর্ণ এক্স সার্ভার)? ধন্যবাদ
— NoamG
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.