Bagaimana menjalankan aplikasi sebagai root?


13

Saya mengalami masalah aneh dengan Kate dan Kwrite. Ketika saya mengklik Open File , itu crash dengan kesalahan segmentasi.

Saya seorang pemula yang lengkap untuk Linux, dan saya pikir masalahnya adalah bahwa saya tidak menjalankan aplikasi sebagai root.

Bagaimana cara menjalankan aplikasi sebagai root di Ubuntu? Apakah praktik yang buruk untuk melakukan ini? Apa tujuan dari seluruh root, di mana meskipun kita perlu menggunakan root begitu sering, itu tidak digunakan sebagai default?


Anda dapat melakukan beberapa hal yang sangat merusak ketika menggunakan root untuk membuka editor jadi tolong jangan pergi ke sana;) 2 solusi lain yang tidak memerlukan root: coba dan perbaiki segmentation faultatau gunakan editor lain (gedit adalah editor gnome). kate en kwrite adalah program KDE (jadi bukan Gnome).
Rinzwind

1
hal-hal yang merusak dapat dilakukan oleh editor teks. terdengar gila
l

1
@ АртёмЦарионов Untuk satu hal, sebagai root Anda dapat mengedit file yang digunakan komputer Anda untuk memulai sistem operasi atau memuat lingkungan grafis Anda, secara efektif merusak komputer Anda.
Amanda

Jawaban:


15

Cukup mudah untuk menjalankan program sebagai root.

Untuk penggunaan program konsol

sudo <program name>

Jika itu penggunaan aplikasi GUI

gksudo <program name>

13

Sistem operasi mirip UNIX (termasuk Linux) menggunakan konsep yang disebut pemisahan hak istimewa untuk memastikan bahwa sistem tetap aman. UNIX dirancang sebagai sistem multi-pengguna dari bawah ke atas - yaitu, ia dirancang sedemikian rupa sehingga banyak orang dapat menggunakan satu komputer yang menjalankan UNIX sekaligus. Karena sebagian besar pengguna tidak perlu dapat memodifikasi sistem inti hanya administrator sistem yang memiliki hak istimewa itu. Pengguna istimewa itu secara tradisional disebut root . (Root sangat mirip Administrator di Windows.)

Ini masuk akal pada beberapa tingkatan. Umumnya, server web atau proses lain yang mengekspos port ke komputer lain (mungkin berbahaya) akan berjalan sebagai pengguna sendiri (Apache berjalan sebagai pengguna nobody), sehingga bahkan jika program server web diretas, penyerang tidak dapat membuang seluruh mesin cukup mudah. Bahkan masuk akal untuk sebagian besar mesin pengguna tunggal seperti desktop: jika anggota lain dari keluarga Anda, misalnya, entah bagaimana berhasil menjalankan rm -rf /( JANGAN jalankan itu ), mereka tidak akan memiliki izin untuk menghapus setiap file pada sistem , seperti mereka akan melakukannya jika tidak ada pemisahan hak istimewa.

Ada beberapa perintah yang dapat Anda gunakan untuk meningkatkan hak istimewa Anda. The sudoperintah ada untuk memberikan sementara Anda hak akses root-level ketika Anda membutuhkan mereka untuk mengelola sistem. Anda juga dapat menggunakan perintah gksudoatau su. Yang terakhir hanya dapat digunakan jika Anda mengetahui kata sandi root dan merupakan opsi yang baik jika akun Anda tidak memiliki izin untuk menggunakan sudo.

Pengguna root dapat melakukan apa saja pada sistem, dengan hampir tanpa pengecualian. Jadi, bahkan jika Anda meminta sesuatu secara tidak sengaja, itu akan dilakukan dengan sedikit atau tanpa peringatan, bahkan jika itu buruk bagi kesehatan sistem Anda. Inilah sebabnya mengapa itu praktik yang baik untuk melakukan sebagian besar kegiatan Anda sebagai pengguna normal, dan menggunakan root hanya saat diperlukan, seperti ketika Anda menginstal program.

Anda tidak perlu menggunakan root untuk menghilangkan kesalahan segmentasi. Jika root adalah satu-satunya hal yang memperbaiki segfault, maka program tersebut memiliki bug. Program tidak boleh gagal seperti itu hanya karena mereka tidak memiliki root.


Saya telah mengalami kesalahan semacam ini dan biasanya sudah ada hubungannya dengan izin file. Menggunakan rootseperti mengambil palu untuk memecahkan kacang. Lebih baik mengidentifikasi file dan memutuskan apakah Anda mengubah kepemilikan atau izin sesuai kebutuhan. Misalnya saya memiliki admingrup untuk file yang orang lain tidak perlu perbarui atau akses.
akan

5

Selain jawaban sebelumnya, yang mengatakan tentang sudo dan gksudo, ya, jelas merupakan praktik yang buruk untuk menjalankan program sebagai root kecuali ini adalah administratif.

Coba cari tahu mengapa program macet. Silakan mencari bantuan orang lain jika perlu.


2

Anda juga dapat masuk ke /usr/share/applicationsubuntu dan mengedit file peluncuran aplikasi yang ingin Anda jalankan.
Seperti saya mengedit file github atom, biasanya saya menggunakan wildcard untuk menemukan file seperti ini

sudo nano atom*

Ini akan membuka atom.desktopfile, sekarang temukan perintah Exec dan tambahkan gksudo.For misalnya.,

Sebelum

Exec=/usr/share/atom/atom %U  

Setelah

Exec=gksudo -k -u root /usr/share/atom/atom %U

Sekarang setiap kali aplikasi diluncurkan ia akan meminta kata sandi root.


baik saya tidak bisa melihat file seperti itu di server Tomcat. Saya harus menjalankan aplikasi GUI dengan cara ini: "sudo ./manager-linux-x64.run" setiap hari, yang saya tahu bukan hal yang baik untuk dilakukan. Tetapi pkexec tidak bekerja pada aplikasi ini.
Prabesh bhattarai
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.