Mengapa gksu tidak lagi diinstal secara default?

99

Saya selalu merekomendasikan menekan ALT+ F2dan mengetik misalnya gksu nautilusatau gksudo nautiluskeduanya sama; untuk menjalankan program grafis dengan hak akses root . Namun, saya baru saja menginstal raring pada sistem pengujian dan ini tidak lagi berfungsi.

gksudan gksudotidak diinstal sebagai bagian dari instalasi raring default; meskipun mereka berada di repositori. Dalam 12,04 setidaknya gksudohanya tautan simbolis kegksu

Alasan saya selalu melakukan ini adalah karena sementara itu sering aman untuk digunakan sudodalam beberapa keadaan dapat menyebabkan masalah dengan aplikasi grafis karena gksuAnda menjalankan program sebagai root sementara sudoAnda menjalankan sebagai diri sendiri tetapi dengan hak istimewa yang tinggi.

Ini bisa berarti Anda secara tidak sengaja mengubah pemilik file sistem kritis. Ini bisa menimbulkan masalah.

Alasan ini dijelaskan lebih baik di sini:

Mengapa perintah dihapus dari instalasi baru dan apa yang harus kita gunakan sebagai gantinya?

Warren Hill
sumber
1
Lihat gksudo hilang di forum Ubuntu .
user68186
4
Sebagai klarifikasi, gksudodan gksuyang tidak identik, meskipun salah satu adalah symbolic link ke yang lain (program mendeteksi bagaimana itu dimulai). Ada perbedaan halus yang, dalam kasus yang jarang terjadi, dapat menyebabkan hilangnya file sistem yang dipilih. Karena itu, sampai Anda mulai menggunakan pkexec, harap selalu gunakan gksudosebagai ganti gksu.
Paddy Landau
1
@ PaddyLandau Saya suka banyak orang lain di sini selalu 'gksu` dan gksudosama-sama melihat Apa perbedaan antara gksudo dan gksu? . Bisakah Anda menambahkan jawaban untuk pertanyaan yang menjelaskan perbedaannya? atau beri kami tautan ke situs web yang menjelaskannya agar salah satu dari kami bisa.
Warren Hill
2
Patut diperhatikan bahwa tidak ada dari jawaban sejauh menjelaskan mengapa gksu tidak lagi diinstal secara default, yang merupakan pertanyaan yang sebenarnya.
MestreLion
3
@MestreLion. Alasan gksuberhenti diinstal secara default adalah bahwa pengembang berpikir polkit adalah cara yang lebih baik untuk mengontrol hak istimewa. Jadi mereka secara bertahap memigrasikan aplikasi untuk menggunakannya. gksuhanya bagian dari instalasi default karena aplikasi lain bergantung padanya. Karena tidak ada dalam instalasi default tergantung pada gksuatau gksudotidak lagi ditarik sebagai dependensi.
Warren Hill

Jawaban:

68

Setelah diskusi panjang tentang # ubuntu-devel saya sekarang mengerti pemikirannya.

gksu dapat diinstal pada 13.04 dengan sudo apt-get install gksudan itu akan berfungsi.

Jika Anda memutuskan untuk menginstal gksu dan menggunakan versi 64-bit, Anda harus menjalankannya gksu-propertiessekali untuk mengatur otentikasi ke sudo. Tidak perlu melakukan ini pada 32-bit karena secara default diatur ke sudo.

Namun gksu tidak direkomendasikan lagi dan itu dapat dihapus seluruhnya dari masalah Ubuntu di masa depan. Secara umum tim pengembang lebih memilih kita untuk tidak menggunakan aplikasi GUI sebagai root tetapi menggunakan sudo dan baris perintah sebagai gantinya.

Dalam jangka panjang pkexec lebih disukai tetapi itu tidak sangat mudah digunakan saat ini.

pkexec memungkinkan pengguna yang sah untuk menjalankan PROGRAM sebagai pengguna lain. Jika nama pengguna tidak ditentukan, maka program akan dieksekusi sebagai pengguna super administratif, root.

lihat halaman manual man pkexec untuk informasi lebih lanjut.

Sementara itu, Anda dapat membuka terminal CTRL+ ALT+ Tatau mencari terminal dengan tanda hubung.

Jangan tutup terminal sampai Anda selesai ini penting karena program GUI adalah anak dari terminal dan jika Anda menutupnya, program GUI juga akan ditutup.

Memasukkan sudo -i

Anda sekarang masuk sebagai root sehingga dapat membuat perubahan yang Anda inginkan misalnya

gedit path_to_file 

untuk mengedit file konfigurasi, atau

nautilus 

untuk menjalankan manajer file

Setelah Anda selesai tutup aplikasi GUI lalu di terminal

exit

Anda sekarang dapat menutup terminal.

Warren Hill
sumber
58
Memberitahu pengguna untuk menggunakan baris perintah alih-alih menjalankan aplikasi grafis karena root tidak akan berjalan baik dengan Windows yang dikonversi ...
Seth
4
@seth apa, mereka punya dos dan PowerShell sekarang, kan? Selamat datang di masa depan retro-futuristik, sekarang dengan lebih banyak klien.
belacqua
4
Ngomong-ngomong, Anda bisa membatalkan masalah "menutup terminal membunuh semua program yang muncul" dengan meluncurkan program dengan &akhiran sehingga berjalan sebagai proses latar belakang dan kemudian mengeluarkan disown %1bash - atau apa pun nomor pekerjaan program tersebut. Kemudian Anda dapat menutup terminal dengan aman. Jadi, bisa jadi seperti:sudo my-program &;disown %1;exit;
Chuck R
18
However gksu is not recommended any more and it may be removed entirely.... Ingin menguraikan mengapa ?
MestreLion
3
Lebih lanjut tentang windows, menggunakannya hanya ... Lambat. Segala sesuatu tentangnya lambat. Cara Anda melakukan sesuatu, alasan yang buruk untuk terminal, menginstal perangkat lunak, mem-boot dan mematikan, menghapus perangkat lunak, mengetik perintah, mencoba membuat shell script, tugas yang dapat saya selesaikan dalam 5 detik di Linux dapat membawa saya hingga 10 menit di windows. Tidak efisien adalah pernyataan yang meremehkan. Fakta bahwa saya merasa seperti memiliki lebih banyak kontrol di os x, atau di ponsel Android saya, benar-benar mengatakan sesuatu tentang pilihan desain windows.
Braden Best
9

Saya baru saja menginstal 13,04: GKSU sudah diinstal ...


sumber
Saya baru saja memeriksa ..... sudah diinstal .......
Qasim
1
Saya akan membuat perintah tentang jawaban ini tetapi mengambil satu detik untuk memeriksa apakah gksu ada di sana. Ini. Saya bahkan menginstal 13,04 64 bit baru dan juga ada di sana.
Luis Alvarado
1
Saya baru saja memeriksa lagi di sistem saya. Masih tidak ada di sana melihat utas ini di Forum Ubuntu di sini dan di sini . Mungkin itu telah ditambahkan ke pembaruan terbaru, atau mungkinkah Anda membelinya dengan menginstal sesuatu yang lain?
Warren Hill