[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: alternatives mit Parameter starten?



Markus Raab <markus.raab@aon.at> wrote:

> Gibt es eine Möglichkeit, dass editor immer mit Parameter -X startet?
> visudo startet z.b. /usr/bin/editor -> /etc/alternatives/editor -> 
> usr/bin/vim. Diese vim Variante möchte aber mit einem X fenster
> starten.
>
> Man könnte natürlich /usr/bin/vim zu einem Skript machen:
> #!/bin/sh
> /usr/bin/real-vim -X $*
>
> andere Vorschläge? pager wird bei mir z.b. immer mit -s gestartet, also
> muss es irgendwie gehen...

Das Problem ist in diesem Fall ein ganz eigenes 'visudo' Problem.
Ich wollte auch mal den gvim als Editor setzen, aber die manpage zu
visudo hat mich da eines Besseren belehrt:

,----
|        There is a hard-coded list of editors that visudo will use
|        set at compile-time that may be overridden via the editor
|        sudoers Default variable.  This list defaults to the path
|        to vi(1) on your system, as determined by the configure
|        script.	Normally, visudo does not honor the EDITOR or
|        VISUAL environment variables unless they contain an editor
|        in the aforementioned editors list.  
`----

und weiter:

,----
|        However, if visudo is
|        configured with the --with-enveditor flag or the enveditor
|        Default variable is set in sudoers, visudo will use any
|        the editor defines by EDITOR or VISUAL.	Note that this
|        can be a security hole since it allows the user to execute
|        any program they wish simply by setting EDITOR or VISUAL.
`----

Visudo akzeptiert also nur einige wenige Editoren in den
umgebungsvariablen EDITOR und VISUAL. Es sei denn es ist mit
--with-enveditor kompiliert, was aber ein Sicherheitsloch darstellt,
und deswegen bei debian sicher so nicht kompiliert wurde.

Wenn du einen Editor mit X willst, dann nimm dies:

export EDITOR=/usr/bin/xemacs
export VISUAL=$EDITOR


xemacs wird von visudo akzeptiert. GNU/emacs bitte selber ausprobieren.

Heino



Reply to: