मैं रूट के रूप में फ़ोल्डर को स्थानांतरित करने या कॉपी करने के लिए नौटिलस विशेषाधिकार कैसे बढ़ा सकता हूं?


11

कहो कि मेरे पास Nautilus में एक फ़ोल्डर खुला है जो मेरी /home/user/tempनिर्देशिका में है। मैं वहां से अपनी /optनिर्देशिका में एक फ़ोल्डर ले जाना चाहता हूं (यह एक कार्यक्रम है)। क्या कोई ऐसा तरीका है जिससे मैं कॉपी कमांड को ऊपर उठा sudoसकता हूं ताकि मैं बिना कमांड लाइन से Nautilus के एक नया इंस्टेंस शुरू करने के लिए फ़ोल्डर को कॉपी कर सकूं?

जवाबों:


6

जहां तक ​​मैं कह सकता हूं, जो मैंने जाना और अनुभव किया है, उसके आधार पर:

sudoकमांड लाइन एप्लिकेशन / कमांड के लिए उपयोग किया जाता है और gksudoजब आप Alt + F2 को दबाकर रन एप्लिकेशन डायलॉग विंडो का उपयोग करके प्रोग्राम चलाने का प्रयास करते हैं तो यह उपयोगी होता है ।

मैंने पढ़ा है कि gksudoसिर्फ ग्राफिक संस्करण है sudo

वैसे भी, आप जो चाहते हैं उसे करने के लिए sudo nautilusऔर / या gksu nautilus टर्मिनल में दोनों आदेशों के समान प्रभाव वाले दोनों को छोड़ सकते हैं। लेकिन अगर आप टर्मिनल को छोड़ना चाहते हैं और आप इसे " रन एप्लिकेशन " डायलॉग विंडो से सीधे चलाना चाहते हैं, तो बस Alt + F2 दबाएं और लिखें gksu nautilus, जिसके बाद आपको अपना पासवर्ड दर्ज करने के लिए प्रेरित किया जाएगा, फिर नॉटिलस फ़ाइल ब्राउज़र खुल जाएगा रूट विशेषाधिकारों के साथ।

इसके अतिरिक्त, आप राइट क्लिक के माध्यम से "Open as Administrator" विकल्प का उपयोग करके एक क्लिक के साथ रूट के रूप में फ़ाइलों / फ़ोल्डरों को खोलने के लिए प्राप्त कर सकते हैं। जो किसी भी स्थिति में दिए गए फ़ोल्डर के लिए एक नया नॉटिलस इंस्टेंस खोलेगा और रूट के रूप में फाइलें खोलेगा, यह एप्लिकेशन को रूट के रूप में भी खोल / चला सकता है लेकिन मैंने अभी तक इसका परीक्षण नहीं किया है।

यहाँ छवि विवरण दर्ज करें

आप अपने प्रासंगिक मेनू में कमांड लाइन के माध्यम से नॉटिलस-गक्सू स्थापित sudo apt-get install nautilus-gksuकरके या अगली छवि में दिखाए गए synaptic का उपयोग करके "ओपन ऐज़ एडमिनिस्ट्रेशन" विकल्प प्राप्त कर सकते हैं :

यहाँ छवि विवरण दर्ज करें

सौभाग्य!


ऐसा लगता है कि मुझे "ओपन एज़" कमांड प्राप्त करने के लिए कुछ जोड़ना होगा। क्या आपको याद है कि यह क्या था? मैं उब ११ में हूँ
१oll:५३ पर जूलम

नॉटिलस-गक्सु, सिनैप्टिक (जोड़ा गया चित्र) या कमांड लाइन (उत्तर में भी प्रदान किया गया) के माध्यम से
गेपेटव्स डी'कोन्स्टेंजो

3
यहाँ हमें प्रयोग क्यों gksu nautilusनहीं करना चाहिए sudo: askubuntu.com/q/11760
Takkat

2
क्या नॉटिलस-गक्सू चल पड़ा? गायब होना? मैं इसे USC या apt-get में नहीं ढूँढ सकता।
जौलम

2
@jcollum nautilus-gksuअब Ubuntu 12.04 के रूप में रिपॉजिटरी में मौजूद नहीं है।
IQAndreas

5

आपको रूट के रूप में नॉटिलस को चलाने की आवश्यकता है

इसे टर्मिनल में टाइप करें

gksu nautilus

अब आप GUI का उपयोग करके आगे बढ़ सकते हैं।

या इस कमांड का उपयोग करें

sudo mv -r /home/user/temp/<foldername>/ /opt/

1
तो जवाब है "आप Nautilus को पुनरारंभ किए बिना नहीं कर सकते हैं"?

आपको nautilus को पुनरारंभ करने की आवश्यकता नहीं है, बस gksu कमांड के साथ एक और उदाहरण खोलें। लेकिन अगर आप "मेरे उपयोगकर्ता के साथ नॉटिलस खोलें और फिर फ़ाइलों को स्थानांतरित करने के लिए उस उदाहरण में रूट विशेषाधिकार प्राप्त करते हैं" तो शायद यही है कि आपको upubuntu.com/2011/12/…
zurdo

आपको एक नई नॉटिलस विंडो खोलने की आवश्यकता होगी, लेकिन चीजों को आसान बनाने के लिए आप बार से स्थान को कॉपी करेंगे, और कमांड को चलाएंगे: gksu nautilus "/path/to/dir/pasted/here"(पथ के आसपास के उद्धरण महत्वपूर्ण हैं)
IQAndreas

1

यहाँ नौटिलस-स्क्रिप्ट है जिसका उपयोग मैं एक व्यवस्थापक (रूट) Nautilus विंडो खोलने के लिए करता हूं:

#!/bin/bash
# This Nautilus script opens the current nautilus window in admin mode.
# Requires: perl, liburi-perl

ERROR_NEED_PERL="This script requires the liburi-perl package. Install it and try again."
GKSUDO_MESSAGE="Enter your password to open an admin window on: "
ERROR_BROKEN_LINK="Broken link."

## Check for liburi-perl (and hence perl)
let PERLOK=$(dpkg-query -W --showformat='${Status}\n' liburi-perl|grep "install ok installed")
if [ "" == "$PERLOK" ]; then
   zenity --error --text "$ERROR_NEED_PERL"
   exit 1
fi

let LEN_NSSFP=${#NAUTILUS_SCRIPT_SELECTED_FILE_PATHS}-1
[ $LEN_NSSFP -lt 0 ] && let LEN_NSSFP=0
let LEN_NSSU=${#NAUTILUS_SCRIPT_SELECTED_URIS}-1
[ $LEN_NSSU -lt 0 ] && let LEN_NSSU=0

## if clicking happens on the Desktop (or a file or folder on it),
## $1 will be a path (i.e. with "/" in it); otherwise (in a folder
## window) $1 will be just a file or folder name (without path).
## Note that selecting the home desktop namespace extension yields
## a $# of zero but NAUTILUS_SCRIPT_SELECTED_FILE_PATHS pointing to the
## target (in the computer (computer:///) and trash (trash:///) desktop
## namespace extension cases, ...PATHS is empty).

## Initially, we stripped the file:// prefix from NAUTILUS...CURRENT_URI,
## yielding the full path, and then retrofit spaces, like this:
#OBJECT="`echo -n $NAUTILUS_SCRIPT_CURRENT_URI | cut -d'/' -f3- | sed 's/%20/ /g'`"
## However, this fails if any special characters other than spaces are in the path,
## such as accented letters, etc. We need to convert not just spaces, but any
## UTF-8 embedded in there...The URI<->path conversion requires perl (and liburi-perl):
OBJECT=$( echo "$NAUTILUS_SCRIPT_CURRENT_URI" | perl -MURI -le 'print URI->new(<>)->dir' )
## ->file is to be used for file URIs instead of ->dir, which is for directory URIs

CONTEXT="$OBJECT"
## Add the selection to the path, if defined and unique
if [ $# -eq 1 ] ; then
   ## If a single Desktop object, override
   if echo $1 | grep -q "/" ; then ## Desktop (or object on desktop)
      OBJECT="$1"
      CONTEXT=""
   else ## $1 is a simple file or folder name, without a path
      ## The container could be root (/)
      OBJECT="${OBJECT%/}/$1"
   fi
# elif [ $# -eq 0 -a -n "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" ] ; then
elif [ $# -eq 0 ] ; then
   ## desktop name space extension selected?
   if [ -n "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" ] ; then ## Home
      OBJECT="${NAUTILUS_SCRIPT_SELECTED_FILE_PATHS:0:LEN_NSSFP}"
   elif [ -n "$NAUTILUS_SCRIPT_SELECTED_URIS" ] ; then ## Computer, Trash
      ## These typically map to root (/)
#     OBJECT="`echo ${NAUTILUS_SCRIPT_SELECTED_URIS:0:LEN_NSSU} | cut -d'/' -f3- | sed 's/%20/ /g'`"
      OBJECT="${NAUTILUS_SCRIPT_SELECTED_URIS:0:LEN_NSSU}"
      OBJECT=$( echo "$OBJECT" | perl -MURI -le 'print URI->new(<>)->dir' )
   fi
   CONTEXT=""
fi
## Note that a desktop shortcut (.desktop file) does not trip -h
if [ -h "$OBJECT" ] ; then ## symbolic link
   ## readlink has no "follow symlinks as far as they exist" option
   OBJECT=`readlink -e "$OBJECT"`
   if [ -z "$OBJECT" ] ; then
      zenity --error --text "$ERROR_BROKEN_LINK"
      exit 1
   fi
fi

# zenity --info --text "\$OBJECT is « $OBJECT »"
if [ -f "$OBJECT" ] ; then
   ## Regular file
   DIR=`dirname "$OBJECT"`
else
   ## Directory (or no object)
   DIR="$OBJECT"
fi

## If DIR is empty, gnome-open opens in the default (home) directory (i.e. "~") anyway
#if [ -z "$DIR" ] ; then
#   DIR=~
#fi

## At this point, the test [ ! "$CONTEXT" = "$DIR" ] serves to indicate
## that the target directory is not matched to the one the script was
## invoked from (if any).

gksudo --message "$GKSUDO_MESSAGE$DIR" gnome-open "$DIR"

exit $?

0

कमांड लाइन से रूट (सुडो) विशेषाधिकारों के साथ Nautilus की एक और प्रतिलिपि लॉन्च करने के लिए एक और बांका समाधान है:

gksudo xdg-open <path> &

समापन का &मतलब है कि कमांड पृष्ठभूमि की नौकरी के रूप में चलती है; इसलिए gksudo(का उपयोग करने sudoका मतलब होगा एक अदृश्य संकेत है कि आप का जवाब नहीं कर सकते हैं)। xdg-openखोजकर्ता विंडो ( nautilusया अन्य) लॉन्च करने का ध्यान रखता है ।

आपको पहले से पैकेज xdg-utilsऔर gksuपैकेज स्थापित करने की आवश्यकता हो सकती है ।

आप चेतावनी और का एक समूह मिल सकता है Gtk-CRITICALऔर Glib-GObject-CRITICALऊपर उठाया नॉटिलस विंडो बंद करने पर संदेशों, लेकिन इन जहाँ तक मैं बता सकता हूँ हानिरहित हैं। मैं उनसे छुटकारा पाना पसंद करूंगा, अगर किसी को पता हो कि कैसे।


-1
sudo mv /home/user/temp/[Filename] /opt

इसके बजाय [Filename], ब्रैकेट के बिना अपनी फ़ाइल का नाम लिखें []


2
-1, प्रश्न को संबोधित नहीं करता है ... मैंने नहीं पूछा कि एमवी कमांड का उपयोग कैसे करें।
जूलम

3
रूट के रूप में ग्राफिकल नॉटिलस खोलने की तुलना में रूट के रूप में केवल एक कमांड का उपयोग करना बेहतर अभ्यास के रूप में जाना जाता है।
अग्रीमोर

-2

एक और आसान तरीका है

sudo gnome-open foldername

या मैं नीमो फ़ाइल प्रबंधक स्थापित करने की सलाह दूंगा। इसके राइट क्लिक संदर्भ मेनू में 'ओपन ऐज रूट' है

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.