Bagaimana cara meluncurkan aplikasi sebagai root dari Unity Launcher?

81

Terutama saya mencari cara untuk menyematkan aplikasi ke bilah peluncuran Unity, dan menjalankannya sebagai root.

Saat ini, bahkan jika saya memulai aplikasi dengan sudo, dan menyematkannya setelah mulai, itu akan mulai sebagai pengguna saat ini di lain waktu.

Sedih, tetapi tidak ada opsi menu konteks "jalankan sebagai ...".

Pembaruan : Saya beralih ke gnome3 dan sekarang saya senang, saya hanya melewatkan pencarian.

Sorin
sumber
Jika Anda mengetahui risiko menjalankan aplikasi grafis sebagai root dan masih ingin melanjutkan, ikuti langkah 1 di sini: askubuntu.com/a/118483/41562
edm
Anda tidak mengerti pertanyaannya, saya tahu cara menggunakan sudodan saya sudah menyetelnya. Pertanyaannya adalah bagaimana cara membuat pintasan ke peluncur Ubuntu Unity ke aplikasi yang ingin saya jalankan sebagai root.
sorin
Untuk peluncur persatuan, saya tidak tahu. Tetapi jika Anda memiliki file yang berada di desktop Anda dan Anda ingin menjalankannya sebagai gksu, maka Anda dapat menginstal ekstensi "nautilus execute".
Curious Apprentice

Jawaban:

89

Jika Anda ingin aplikasi selalu berjalan sebagai root

  1. Sematkan aplikasi ke peluncur seperti biasa.

  2. Temukan file .desktop aplikasi yang ada di:

    • /usr/share/applications/APPNAME.desktop
    • ~/.local/share/applications/APPNAME.desktop
    • atau di tempat lain, gunakan locate .desktop|grep APPAME
  3. Buka dengan gedit:

    gksudo gedit /usr/share/applications/APPNAME.desktop
    
  4. Kemudian ganti baris

    Exec=APP_COMMAND
    

    untuk

    Exec=gksudo -k -u root APP_COMMAND
    
  5. Menyimpan

Perintah ini juga akan menjaga lingkungan Anda yang sangat berguna jika Anda perlu terhubung ke server lain dan menggunakan kunci pribadi Anda.

Untuk menambahkan opsi daftar cepat ke 'Jalankan sebagai root'

Ikuti langkah 1, 2 dan 3 di atas

Jika peluncur saat ini tidak memiliki opsi daftar cepat lain, cukup tambahkan ini di akhir dokumen

X-Ayatana-Desktop-Shortcuts=Runroot

[Runroot Shortcut Group]
Name=Run as root
Exec=gksudo -k -u root APP_COMMAND
TargetEnvironment=Unity
edm
sumber
51
Mengapa sangat rumit untuk mengatur Shortcut sederhana? Apa yang salah dengan pembuat ubuntu?
Sliq
7
untuk gksudoperintah, Anda harus menginstalsudo apt-get install gksu
Arul
5
@ Slq ini disebut keamanan ... Memiliki ikon desktop yang dijalankan sebagai root tanpa memerlukan kata sandi ... sangat berbahaya ... Bagi saya ini sebenarnya adalah kesenangan dari linux ... Jika saya menginginkan kehidupan yang mudah .. saya akan menggunakan windows sebagai sistem utama saya ...
Marah 84
3
@sliq "Mengapa begitu sulit untuk melakukan grep dari cmd prompt? apa yang salah dengan pembuat Windows?" - Pembuat Ubuntu ... mungkin
thenaglecode
3
usang untuk Ubuntu 18.XX Dapatkah seseorang memberikan solusi yang diperbarui?
JRsz
4

Dalam Menu Utama di bawah Sistem, Preferensi, ketikkan gksudobidang Perintah Properti Peluncur, misalnya:

/usr/bin/gksudo /usr/bin/yourapplication

Bidang Nama Anda mungkin mengatakan:

sudo aplikasi Anda

Jadi pengguna tahu mereka mungkin melihat sembulan kata sandi dan mengapa ...

Saya tidak yakin tentang Unity Launcher vs Menu Utama. Mungkin ini bisa membantu?

Semoga berhasil

boolship
sumber
3
Anda mungkin tahu bahwa straight sudoseharusnya tidak digunakan untuk menjalankan aplikasi grafis karena - rootsetelah semua, Anda menggunakan gksudo(yang merupakan salah satu cara yang baik). Untuk alasan yang sama, tidak disarankan untuk menggunakan sudodalam bidang nama seperti yang Anda miliki, karena hal itu (1) menciptakan kesan di antara pengguna yang cukup berpengalaman bahwa peluncur Anda salah dibuat, dan (2) menciptakan kesan di antara pengguna yang kurang berpengalaman bahwa boleh menggunakan lurus sudountuk menjalankan aplikasi grafis sebagai root.
Eliah Kagan
Unable to locate package gksudo- Ubuntu 18.04.1 LTS
8bitjunkie
2

Berikut ini tampaknya melakukan hal yang sama, tanpa memerlukan atribut pribadi:

Actions=Runroot;Another

[Desktop Action Runroot]
Name=Run as root
Exec=gksudo -k -u root APP_COMMAND

[Desktop Action Another]
Name=Another action
Exec=whatever
Daniel
sumber
Unable to locate package gksudo- Ubuntu 18.04.1 LTS
8bitjunkie
2

Sebagai alternatif cepat dan sederhana untuk tuntutan rumit yang dijelaskan dalam jawaban di sini, saya sudah terbiasa melakukan yang berikut ...

  1. Luncurkan terminal baru.
  2. Memasukkan gksu nautilus

    ( sudo -i nautilusbekerja juga.)

Jendela yang dihasilkan jatuh di bawah payung sudo, sehingga Anda dapat menggunakannya untuk mengakses dan meluncurkan file dengan hak akses sudo-root ke isi hati Anda sampai ditutup. Ini berguna untuk situasi sementara di mana Anda tidak memerlukan solusi yang lebih permanen. Saya menggunakannya secara rutin untuk mengekstrak file terkompresi ke folder sistem yang dilindungi, misalnya.

Syndog
sumber
2
Menggunakan sudodengan aplikasi grafis BUKAN ide yang bagus. Gunakan gksuatau jika Anda harus sudo -i.
Seth
2
@Seth: Diperbarui. Juga ... Sedikit penjelasan tentang mengapa tidak akan lalai, daripada hanya secara samar-samar mengatakan itu bukan ide yang baik.
Syndog
Sebuah utas menarik tentang topik: crunchbang.org/forums/viewtopic.php?id=8468
Syndog
1

Saya memposting hal ini sehubungan dengan pertanyaan @ Chris dalam komentar:

Misalkan Anda ingin membuat peluncur yang akan membuka "pengelola file (nautilus)" sebagai root. Maka Anda dapat melakukan ini:

Terminal terbuka. Tipe:

sudo -H gedit /usr/share/applications/nautilus_root.desktop

Tekan enter. Saat ditanya, masukkan kata sandi login Anda dan tekan enter. Ini akan membuka gedit (editor teks). Sekarang, rekatkan yang berikut di sini:

[DesktopEntry]
Encoding=UTF-8
Name=Nautilus(Root)
Comment=FileManager
Exec=gksu nautilus
Icon=file-manager
Categories=System;
Type=Application
Terminal=0

Sekarang, simpan saja dan keluar. Kamu selesai. Sekarang jika Anda mencari di dash maka Anda akan menemukan peluncur baru "Nautilus (Root)". Mengklik ini akan meminta Anda kata sandi, dan pada otentikasi nautilus akan dibuka sebagai root.

Catatan: Hati-hati saat Anda menjalankan "Nautilus (Root)". Dalam mode ini Anda dapat menghapus hampir semua hal dari /dan merusak sistem.

Magang Penasaran
sumber
0

Mungkin ini seharusnya komentar tentang solusi Daniel. Ini bekerja untuk saya, bahkan di Ubuntu 15.04. Saya harus menempatkan perintah di antara tanda kutip Exec=gksu "nautilus --new-window"karena argumen tambahan. Juga, entah bagaimana, saya tidak tahu mengapa, saya harus mengedit peluncur secara langsung untuk menjaga menu asli (bersama dengan opsi baru). Jika Anda menyeret peluncur Anda sendiri, peluncur itu akan didaftarkan, tetapi Anda tidak akan memiliki menu yang sama.

Di Ubuntu 15.04, peluncur untuk nautilus adalah usr/share/applications/org.gnome.Nautilus.desktop. Anda harus menggunakan baris perintah untuk melihat nama file yang sebenarnya.

Penelitian lebih lanjut membawa saya ke apa yang saya yakini sebagai pilihan yang lebih baik: http://ubuntuhandbook.org/index.php/2014/04/ubuntu-14-04-add-open-as-rootadministrator-to-context-menu/ . Alih-alih membuka Nautilus sepenuhnya sebagai Root, ini memungkinkan Anda untuk membuka direktori yang dipilih sebagai Root dalam Nautilus. Lagi pula, saya memeriksa, dan dua opsi ini kompatibel. Jika Anda membuka Nautilus sebagai Root dan kemudian menggunakan opsi kedua untuk membuka direktori sebagai Root, itu hanya membukanya tanpa meminta kata sandi.

Dominic108
sumber