# Kate/kwrite da superuser in terminale

## Soulless6.3

Da tempo ho un problema a cui ho cercato una soluzione ma non ne trovo il problema è questo:

Nelle precedenti distro da me utilizzate(kubuntu e ubuntu) per editare dei file da console ho sempre usato kwrite(a volte anche kate ma quella storia delle sessioni non è utile per i file di configurazione).

Sbarcato su gentoo ho trovato il problema che riscontro tuttora:

```
soulless@localhost ~ $ sudo kwrite

Password:

kwrite: cannot connect to X server

soulless@localhost ~ $ sudo su

localhost soulless # kwrite

bash: kwrite: command not found
```

Invece se da semplice utente provo a lanciare kwrite il tutto funziona a meraviglia...

Identica cosa con kate.

Il fatto è che a editare con nano si perdono molte comodità e potenzialità che invece fornisce un editor di testi avanzato quale kate o kwrite.

Vorrei quindi sapere se è possibile utilizzarli anche come superuser o con sudo(anche perchè molte altre applicazioni che usano il server X(anche k-apps) funzionano perfettamente) e se si come...

Nel caso servisse ho installato kde con kdebase-startkde e poi kate come pacchetto singolo(quindi non è una dipendenza).

----------

## bandreabis

No,così non va.

Devi dare da root:

```
DISPLAY=:0 /usr/kde/3.5/bin/kwrite
```

PS. non dico che non ci siano altri metodi, ma così almeno funziona.

----------

## Scen

Prova con

```

kdesu <comando>

```

----------

## bandreabis

 *Scen wrote:*   

> Prova con
> 
> ```
> 
> kdesu <comando>
> ...

 

ehehehe

----------

## Soulless6.3

 *Scen wrote:*   

> Prova con
> 
> ```
> 
> kdesu <comando>
> ...

 

Così funziona ma posso lanciarlo solo come utente semplice(come root mi dà errore).

Non c'è un modo per lanciarlo anche da superuser?Visto che a volte dopo tutti giri che si fanno non si cpaisce più dove e quando lanciare un comando specie per un no00b come me...

----------

## Scen

Non riesco a capire qual'è il tuo problema. Vuoi modificare i file "di sistema" (scrivibil da root) tramite programma grafico (k{write,kate}) pero lanciando il programma da console? O qualcos'altro che non sono riuscito a comprendere?

Se è come dico io, kdesu basta ed avanza.

----------

## devilheart

devi aggiungere la directory dei binari di kde nel path di root

----------

## Soulless6.3

 *Scen wrote:*   

> Non riesco a capire qual'è il tuo problema. Vuoi modificare i file "di sistema" (scrivibil da root) tramite programma grafico (k{write,kate}) pero lanciando il programma da console? O qualcos'altro che non sono riuscito a comprendere?
> 
> Se è come dico io, kdesu basta ed avanza.

 

Voglio poter lanciare i suddetti programmi direttamente da root(ovviamente con tutti i comandi intermedi del caso) da una cartella in modo ad esempio di non dovermi rispostare in quest'ultima, mentre se ora da root provo a scrivere kdesu kate mi da errore...

----------

## MeMyselfAndI

ma da root non ha senso usare kdesu.... basta usare il nome del comando. Se poi non lo trova nel PATH e' tutta un'altra questione (di facile soluzione peraltro).

----------

## Soulless6.3

Credo di non essermi spiegato bene e quindi mi scuso di avervi fatto perdere tempo per via di queste incomprensioni e spero che la console sappia esporre il mio problema meglio di me:

```
soulless@localhost ~ $ kwrite

soulless@localhost ~ $ kdesu kwrite

soulless@localhost ~ $ su

Password:

localhost soulless # kwrite

bash: kwrite: command not found

localhost soulless # kdesu kwrite

bash: kdesu: command not found

```

Come potete vedere con i diritti di semplice user riesco a lanciare kwrite anche con diritti da superuser(con kdesu) ma da superuser non riesco a lanciarlo.

Quello che voglio fare è quindi posizionarmi in una cartella e poter scrivere qualcosa che assomigli(nel senso che faccia la stessa cosa) di

```
~ # kwrite nomefile
```

----------

## Kind_of_blue

l'ultimo comando che hai dato non ha senso:

 *Quote:*   

> localhost soulless # kdesu kwrite 

 

sei già root

in linea di massima da root, per lanciare un programma kde da riga di comando, devi dargli tutto il path ... oppure aggiungi il path delle applicazioni kde alla variabile PATH

infatti se da root invece che dare

```
kwrite
```

dai

```
/usr/kde/3.5/bin/kwrite
```

... vedrai che funziona

----------

## Soulless6.3

 *Kind_of_blue wrote:*   

> l'ultimo comando che hai dato non ha senso:
> 
>  *Quote:*   localhost soulless # kdesu kwrite  
> 
> sei già root
> ...

 

È esattamente quello che voglio  :Very Happy: 

La console è riuscita a spiegare tutto meglio di quanto sarei riuscito a fare io  :Very Happy:  .

Come faccio ad aggiungerlo alla variabile PATH(dove sta questa variabile?)?

----------

## Scen

 *Soulless6.3 wrote:*   

> Come faccio ad aggiungerlo alla variabile PATH(dove sta questa variabile?)?

 

Della serie "RTFM"  :Wink:  : Manuale Gentoo - Variabili d'ambiente.

----------

## MeMyselfAndI

puoi aggiungerla a .bashrc...

----------

## Soulless6.3

 *Scen wrote:*   

>  *Soulless6.3 wrote:*   Come faccio ad aggiungerlo alla variabile PATH(dove sta questa variabile?)? 
> 
> Della serie "RTFM"  : Manuale Gentoo - Variabili d'ambiente.

 

Sarò tardo ma la guida l'avevo letta ma la prima volta non avevo capito a cosa serviva il file e ora non capisco cosa devo aggiungere al /etc/env.d/05gcc(che a me è /etc/env.d/05gcc-i486-pc-linux-gnu) sarà la niubbaggine...  :Embarassed: 

----------

## Kind_of_blue

aggiungila a .bashrc

----------

## Soulless6.3

 *Kind_of_blue wrote:*   

> aggiungila a .bashrc

 

Premettendo che prima in .bashrc non esisteva alcuna riga con la scritta path e che ora è così(ho cancellato i commenti):

```

if [[ $- != *i* ]] ; then

   return

fi

PATH="/usr/kde/3.5/bin"

LC_ALL="it_IT@euro"

```

ho un altro problema:

```
soulless@localhost ~ $ su

bash: su: command not found
```

----------

## nikko96

 *Soulless6.3 wrote:*   

> 
> 
> .....[cut]......
> 
> ho un altro problema:
> ...

 

Da utente normale,dando questo comando cosa ottieni?

```
echo $PATH
```

----------

## MeMyselfAndI

 *Soulless6.3 wrote:*   

>  *Kind_of_blue wrote:*   aggiungila a .bashrc 
> 
> Premettendo che prima in .bashrc non esisteva alcuna riga con la scritta path e che ora è così(ho cancellato i commenti):
> 
> ```
> ...

 

Cosi' hai semplicemente assegnato il valore della stringa a PATH, cancellando quello che conteneva precedentemente; la soluzione corretta e' PATH="$PATH:/usr/kde/3.5/bin"

In pratica assegni alla variabile PATH il suo vecchio valore + quello nuovo

Edit: naturalmente se lo fai ora non risolvi nulla: prima credo tu debba dare un bel env-update

----------

