Hur bli root med en rad i terminalen?

Trädvy Permalänk
Medlem
Plats
Karlstad
Registrerad
Nov 2001

Hur bli root med en rad i terminalen?

Precis som topic säger så söker jag ett sätt att bli root med en rad, typ
su root lösenord
Finns det sätt att göra detta på? Har googlat runt men inte hittat något bra sätt. Skall användas i ett program som behöver root-rättigheter för vissa saker och när terminalen frågar efter lösen så haltar allt nämligen. Så behöver allt på en rad. Någon som vet hur?

Kör Ubuntu för övrigt

Trädvy Permalänk
Medlem
Plats
Borås
Registrerad
Mar 2005

Du vill att det inte skall fråga om lösenord när du kör skriptet? kolla på sudo och NOPASSWD

Plan9 fan. In glenda we trust.

Trädvy Permalänk
Hedersmedlem
Plats
Uppsala
Registrerad
Jul 2001

Se till att användare får köra kommandot i fråga (eller alla kommandon) via sudo, så är det bara att göra "sudo <kommando>".
T ex detta i sudoers-filen:
username ALL=(ALL) NOPASSWD: ALL

(tänk på säkerhetshålet om du kör så, dock, allt du laddar hem kan köra sudo rm -rf /... Det är bättre att ange vilka kommandon som ska få köras som root.)

X370 Taichi / R7 1700 @ 3.75 GHz 1.2 V / 2x8 GB 3200 MHz CL16 / MSI GTX 1070 Gaming, OC / Samsung 960 EVO 500 GB / Corsair RM650x
LG G6 (H870)

Trädvy Permalänk
Medlem
Plats
at home
Registrerad
Nov 2007

De här kan vara värda att läsa angående varför Ubuntu
valt sudo lösningen

https://help.ubuntu.com/community/RootSudo

https://help.ubuntu.com/community/Sudoers

Är själv allergisk mot de som permanent rootat sin burk....höjden av WIndoz lathet...

ASUS K56CB i7, W10.
HTC 10 ICE InsertCoin SVN, Nougat
ASUS Transformer Prime 32GB, Nougat :)
Ubiquiti Edge Lite, UniFi AP-AC-Lite (AP) samt ASUSAC68U och N66U (AP), fiber 250/100Mbit/s.
Mitt nätverk: http://imgur.com/VYJjrzL Bild http://imgur.com/89WYq81

Trädvy Permalänk
Medlem
Plats
Karlstad
Registrerad
Nov 2001

Asså jag är inte permanent root. Utan meningen är att mitt lilla program skall bli root, göra det den skall, logga ut o sen stänga ned.
Skriver mitt program i C och då blir det ju system("su root ....");
Det är så jag menar. Lösenord måste ju anges för att få vara root. Det som är lite av problemet. Att jag inte kan få den att göra allt på en gång. Men skall läsa på länkarna.

Trädvy Permalänk
Medlem
Plats
Skogås
Registrerad
Jul 2004
Citat:

Ursprungligen inskrivet av Gladiac
Asså jag är inte permanent root. Utan meningen är att mitt lilla program skall bli root, göra det den skall, logga ut o sen stänga ned.
Skriver mitt program i C och då blir det ju system("su root ....");
Det är så jag menar. Lösenord måste ju anges för att få vara root. Det som är lite av problemet. Att jag inte kan få den att göra allt på en gång. Men skall läsa på länkarna.

Kör ditt program med sudo program istället.

Ökar säkerheten avsevärt. Annars kan vem som helst köra ditt program och göra root-saker. Inte den lösning du ville ha, men bara ett tips.

People... What a bunch of bastards... | Mac Pro 2x2.26GHz QuadCore - Nehalem, 24GB DDR3, ATI HD4870, 3TB HDD | MacBook Pro 13.3 ", Core 2 Duo - 2.26GHz, 8GB DDR3, 9400M 256MB, 120GB SSD | PowerMac G4 MDD, Dual 1,25GHz, 2GB DDR, 1,45TB HDD | FCNSA | VCP4

Trädvy Permalänk
Hedersmedlem
Plats
Stockholm
Registrerad
Dec 2002

*host*

Nej vars, kolla på sudo som de andra sagt.

Ett annat alternativ är att använda sig av expect, men det är inte lika snyggt...

Vim
Kinesis Classic Contoured (svart), Svorak (A5)
Medlem i signaturgruppen Vimzealoter.

Trädvy Permalänk
Medlem
Plats
::1
Registrerad
Jun 2005
Citat:

Ursprungligen inskrivet av Gladiac
Asså jag är inte permanent root. Utan meningen är att mitt lilla program skall bli root, göra det den skall, logga ut o sen stänga ned.
Skriver mitt program i C och då blir det ju system("su root ....");

Med reservation för att det också kan medföra en säkerhetsrisk om du inte vet precis vad du gör så låter det som ett jobb för SETUID...