# X non parte da utente in console [RISOLTO]

## Cazzantonio

Mi sono accorto che il mio utente non riesce a lanciare X da console:

```
ale@heavensdoor ~ $ startx

xauth:  creating new authority file /home/ale/.serverauth.9052

Fatal server error:

Cannot move old log file ("/var/log/Xorg.0.log" to "/var/log/Xorg.0.log.old"

giving up.

xinit:  Connection refused (errno 111):  unable to connect to X server

xinit:  No such process (errno 3):  Server error.
```

Tutto questo pare un problema di permessi... infatti da root funziona tutto correttamente e da gdm riesco comunque a fare login senza problemi con tale utente.

I permessi su /var/log sono i seguenti:

```
drwxr-xr-x 10 root    root    1,0K 24 dic 10:33 log
```

```
-rw-r--r-- 1 root root 54K 24 dic 10:35 /var/log/Xorg.0.log

-rw-r--r-- 1 root root 54K 24 dic 10:35 /var/log/Xorg.0.log.old
```

Ovvero perfettamente uguali a quelli di qualsiasi altra distro che mi sia capitato di vedere.

Se cambio i permessi sui file di log e basta ancora non è sufficente... per eliminare quell'errore devo dare un chmod 777 sulla directory /var/log.

Pure facendo una cosa tanto estrema ottengo questo errore:

```
ale@heavensdoor ~ $ startx

xauth:  creating new authority file /home/ale/.serverauth.11059

X Window System Version 7.1.1

Release Date: 12 May 2006

X Protocol Version 11, Revision 0, Release 7.1.1

Build Operating System: Linux 2.6.17-gentoo-r8 i686

Current Operating System: Linux heavensdoor 2.6.18-gentoo-r5 #1 PREEMPT Sat Dec 23 12:14:35 CET 2006 i686

Build Date: 16 October 2006

        Before reporting problems, check http://wiki.x.org

        to make sure that you have the latest version.

Module Loader present

Markers: (--) probed, (**) from config file, (==) default setting,

        (++) from command line, (!!) notice, (II) informational,

        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.

(==) Log file: "/var/log/Xorg.0.log", Time: Sun Dec 24 11:33:59 2006

(==) Using config file: "/etc/X11/xorg.conf"

Fatal server error:

xf86EnableIOPorts: failed to set IOPL for I/O (Operation not permitted)

XIO:  fatal IO error 104 (Connection reset by peer) on X server ":0.0"

      after 0 requests (0 known processed) with 0 events remaining.
```

Il mio utente è membro dei seguenti gruppi:

```
ale@heavensdoor ~ $ cat /etc/group|grep ale

tty:x:5:ale

wheel:x:10:root,ale

man:x:15:man,ale

audio:x:18:root,ale

cdrom:x:19:root,ale,haldaemon

video:x:27:root,ale

games:x:35:ale

cdrw:x:80:root,ale,haldaemon

usb:x:85:ale,haldaemon

users:x:100:games,ale

plugdev:x:443:root,ale,haldaemon
```

qualcuno ha la benché minima idea di quale sia il problema??

----------

## Cazzantonio

up?

----------

## zolar czakl

Giusto per avere un riferimento.

```
-rw-r--r-- 1 root    users    25k 2006-12-30 23:35 Xorg.0.log

-rw-r--r-- 1 root    users    25k 2006-12-30 23:34 Xorg.0.log.old
```

Ho provato a cambiare il gruppo in  root, come nel tuo caso ed e' stato riportato a  users (dopo startx da console, come utente).

 *Quote:*   

> I permessi su /var/log sono i seguenti:
> 
> ```
> 
> drwxr-xr-x 10 root    root    1,0K 24 dic 10:33 log
> ...

 Qui invece e' uguale.

Immagino che eliminando i log non cambi nulla.

----------

## noice

puoi provare a vedere qui

ciao  :Wink: 

----------

## Cazzantonio

Ho una ub unbuntu dove /var/log e Xorg.0.log sono entrambi appartenenti a root:root e dove l'utente non può accedere a tali files. Nonostante tutto riesco a lanciare startx da utente.

Infatti anche se cambio i permessi relativi ai log ottengo comunque:

```
xf86EnableIOPorts: failed to set IOPL for I/O (Operation not permitted) 
```

Temo che il problema sia altrove e vorrei cercare di lanciare startx da utente senza dover smanettare troppo con i permessi... startx da console è il metodo STANDARD per lanciare X, dubito che sia richiesto di modificare a mano i permessi di accesso a fasi chiave come i log, in ogni caso non l'ho MAI fatto prima d'ora per eseguire tale operazione.

----------

## djinnZ

 :Twisted Evil: Last edited by djinnZ on Mon Feb 23, 2009 8:50 pm; edited 1 time in total

----------

## Deus Ex

 *djinnZ wrote:*   

> Ma con le ultime versioni di X non era stato deprecato l'avvio da console per motivi di sicurezza?
> 
> 

 

Ho grossi grossi dubbi al riguardo  :Wink: 

Se poi lo hai letto da qualche fonte autorevole, allora non ne sono a conoscenza. Ma se così fosse, ti prego di segnalarne il link perchè mi interessa la questione.

----------

## djinnZ

 :Twisted Evil: Last edited by djinnZ on Mon Feb 23, 2009 8:50 pm; edited 1 time in total

----------

## randomaze

 *djinnZ wrote:*   

>  con le ultime versioni di linux (inteso genericamente) non era stato sconsigliato l'avvio di X con startx?
> 
> ...
> 
> Lessi qualcosa sugli annunci di grsec od selinux se non erro, proprio a proposito dei problemi con alcune configurazioni del kernel.

 

(my 2cents): Forse la cosa vale per grsec e/o selinux ma in condizioni normali non ho mai saputo uan cosa del genere

----------

## Cazzantonio

 *djinnZ wrote:*   

> mi pare che un elemento di X dovesse essere settato setuid root manualmente perchè sempre per sicurezza era stato disattivato di default.

 

Beh siccome è una cosa che non mi è mai capitato di fare vorrei capire cosa devo impostare come setuid root e soprattutto perchè!   :Smile:  (nel senso di "perché ora si e prima no")

 *Quote:*   

> il file di log cosa dice? se non è vuoto.

 L'hai detto!

 *Quote:*   

> dimenticavo: se usi grsec/pax controlla la configurazione del kernel.

 Mai usato pax o grsec in vita mia, il mio sistema è un laptop configurato in modo decisamente standard

Mi sono imbattuto in questo errore mentre scrivevo un initscript per caricare X di default senza passare per il login manager (tanto ho un solo utente, che sarei io, e una password da bios)

Comunque la cosa si risolve semplicemente... a voi funziona startx da console?   :Smile: 

----------

## veonline

 *Quote:*   

> 
> 
> Comunque la cosa si risolve semplicemente... a voi funziona startx da console? 
> 
> 

 

a me si   :Wink: 

dai un occhio ai permessi del file /usr/X11R6/bin/Xorg. i miei sono

```

veo@melchior ~ $ ls  /usr/X11R6/bin/Xorg -la

-rws--x--x 1 root root 1799788 15 dic 11:27 /usr/X11R6/bin/Xorg

```

----------

## X-Files

Ultima cosa, ma forse tutto sta dietro questo, in preferenze->getione energetica non ho configurazione relativa alla batteria ma solo a corrente normale... e sempre sulla ubuntu vedo che esiste anche un pannello per le impostazioni relative al funzionamento a batteria. 

Ho installato gnome con useflag accessibility, cdr, cups, dvdr, hal.

sorry [url]spam-url-removed by amne[/url]

----------

## randomaze

 *X-Files wrote:*   

> Ultima cosa, ma forse tutto sta dietro questo, in preferenze->getione energetica non ho configurazione relativa alla batteria ma solo a corrente normale... e sempre sulla ubuntu vedo che esiste anche un pannello per le impostazioni relative al funzionamento a batteria. 
> 
> Ho installato gnome con useflag accessibility, cdr, cups, dvdr, hal.
> 
> sorry [url]spam-url-removed by amne[/url]

 

Mi spieghi il senso del tuo post?

1. Parli di gestione energetica in un thread che tratta dell'avvio di X (quindi lo definirei OT)

2 Metti il link a un forum esterno che parla di nonsobenecosa (e quindi potrebbe anche essere visto come spam anche se la lingua usata in quel forum è incomprensibile all'italiano medio)

Sbagliato thread?

----------

## Cazzantonio

no è proprio spam... anche se una forma molto curiosa e intelligente (mettere post semi-nonsense all'interno di altri post); guarda l'altro suo post nel forum inglese...

meglio spostarlo in dustbin   :Wink: 

[EDIT]

guarda qua:

https://forums.gentoo.org/viewtopic-t-528456-highlight-forse+tutto+sta+dietro+questo.html

Pare sia una qualche forma di script automatico che legge pezzi di altri post e li riutilizza per creare un post che a prima vista paia sensato, aggiungendoci in fondo un po' di spam ovviamente   :Wink: 

Molto curioso e intelligente... (anche se immorale ovviamente)

Se non è una cosa conosciuta forse merita quasi di essere segnalata agli admin perché facciano attenzione ai post di questo tipo...

[/EDIT]

----------

## gutter

 *Cazzantonio wrote:*   

> no è proprio spam... anche se una forma molto curiosa e intelligente (mettere post semi-nonsense all'interno di altri post); guarda l'altro suo post nel forum inglese...
> 
> 

 

Davvero curioso.

----------

## Cazzantonio

Il problema è risolvibile con un 

```
chmod +s /usr/bin/xinit
```

Solo che non dovrebbe essere così! Ovvero altre distribuzioni funzionano perfettamente senza tale accortezza (che trovo un tantino poco sicura peraltro..)

Per tale motivo mi permetto di fare nuovamente un UP di questo thread

----------

## zolar czakl

 *Cazzantonio wrote:*   

> Solo che non dovrebbe essere così! Ovvero altre distribuzioni funzionano perfettamente senza tale accortezza

 

Ed infatti

```
-rwxr-xr-x 1 root root root 11k 2006-12-01 21:41 /usr/bin/xinit
```

Mentre i permessi di Xorg, come suggerito sopra da veonline?

----------

## Cazzantonio

se imposto il bit setuid su /usr/bin/Xorg non cambia nulla... funziona solo su xinit

----------

## lucapost

/semiOT

 *Cazzantonio wrote:*   

> 
> 
> Mi sono imbattuto in questo errore mentre scrivevo un initscript per caricare X di default senza passare per il login manager (tanto ho un solo utente, che sarei io, e una password da bios)
> 
> 

 

Ti spiace renderlo pubblico? Io tengo solo uno scriptino in bash_profile che mi avvia X.

----------

## Cazzantonio

 *lucapost wrote:*   

> Ti spiace renderlo pubblico? Io tengo solo uno scriptino in bash_profile che mi avvia X.

 

E' un po' OT comunque eccotelo   :Wink: 

```
#!/sbin/runscript

depend() {

        need localmount cron

        before local

}

start() {

        ebegin "Starting X"

        source /etc/profile

#        chown ale:wheel /var/log/Xorg.*.log

        /bin/su - ale -c 'source /etc/profile;startx 2>/dev/tty10 &' 2>/dev/tty10

        eend $?

}

stop() {

       TO_BE_KILLED="X wmaker xinit startx"

 

       function stopme ()

       {

                if [ `pgrep $1|wc -l` -gt 0 ]

                then

                  einfo "  Stopping $1.."

                  pkill $1

                fi

       }

       ebegin "Stopping X"

       for prog in ${TO_BE_KILLED}; do stopme ${prog}; done

       eend $?

}
```

----------

## Cazzantonio

ho aggiornato x11-base/xorg-server alla versione 1.1.1-r4 e ora pare funzionare senza particolari smanettamenti con chmod   :Smile: 

----------

