sslug-teknik team mailing list archive
-
sslug-teknik team
-
Mailing list archive
-
Message #95876
Re: xterm: Can't execvp /usr/local/bin/comgt: Permission denied
On Thu, 2008-07-24 at 11:59 +0200, Mogens Kjaer wrote:
> Søren Larsen wrote:
> ...
> > xterm: Can't execvp /usr/local/bin/comgt: Permission denied
> >
> > Hvis jeg så kigger på rettighederne på comgt:
> >
> > soren@soren-laptop:~$ ls -al /usr/local/bin/
> > drwxr-xr-x 3 root root 4096 2008-07-21 14:45 .
> > drwxr-xr-x 10 root root 4096 2008-04-22 19:48 ..
> > drwxr-xr-x 2 root root 4096 2008-07-21 14:45 comgt
> >
> > Er der nogen der kan fortælle mig, hvorfor xterm kommer med Permission
> > denied?
> >
> > Skal /usr/local/bin/comgt egentligt være tomt?
>
> Du kan ikke eksekvere et directory. comgt burde være en eksekverbar
> fil.
>
> Mogens
Nej, selvfølgelig da ikke. Det havde jeg ikke lige fokus på.
Jeg er lidt usikker på, om programmet comgt, bliver installeret
ordentligt, når jeg køre en "make install". Derfor har jeg prøvet, at
studere filen Makefile, som har følgende indhold:
LIB = -L/usr/local/lib
INC = -I/usr/local/include
EXE = /usr/local/bin
MAN = /usr/share/man/man1
CPROG = comgt
SCRIPTPATH = /etc/comgt/
SCRIPTSRC = ./scripts/
BIN = $(CPROG)
MANP = comgt.1 sigmon.1
CFLAGS = -c
LDFLAGS =
all: $(BIN)
install:
chmod a-w $(BIN)
chmod u+rw $(BIN)
chmod a+x $(BIN)
cp $(BIN) $(EXE)
chmod a-wx $(MANP)
chmod u+rw $(MANP)
chmod a+r $(MANP)
cp $(MANP) $(MAN)
-mkdir $(SCRIPTPATH)
chmod a-w $(SCRIPTPATH)
chmod u+rw $(SCRIPTPATH)
chmod a+x $(SCRIPTPATH)
cp -f $(SCRIPTSRC)* $(SCRIPTPATH)
chmod a-w $(SCRIPTPATH)*
chmod u+rw $(SCRIPTPATH)*
chmod a+x $(SCRIPTPATH)*
uninstall:
cd $(EXE); rm $(BIN)
cd $(MAN); rm $(MANP)
-rm -r $(SCRIPTPATH)
clean:
-rm *.o
-rm $(CPROG)
-rm *~
-rm $(SCRIPTSRC)*~
comgt: comgt.o
cc comgt.o $(LDFLAGS) -o comgt
comgt.o: comgt.c comgt.h
cc comgt.c $(CFLAGS)
Når "make install" køres stopper den med en fejl:
root@soren-laptop:/home/soren/Desktop/comgt.0.32# make install
chmod a-w comgt
chmod u+rw comgt
chmod a+x comgt
cp comgt /usr/local/bin
cp: omitting directory `comgt'
make: *** [install] Error 1
root@soren-laptop:/home/soren/Desktop/comgt.0.32#
Derfor har jeg været inde i Makefile og rettet følgende:
"cp $(BIN) $(EXE)" til "cp -r $(BIN) $(EXE)", for at få den til at
kører færdig.
Resultat er, at der bliver oprettet i tomt katalog ved navn comgt
i /usr/local/bin og et katalog ved navn comgt i /etc.
Kataloget /etc/comgt indeholder:
root@soren-laptop:/etc/comgt# ls -al
total 36
drwxrwxrwx 2 root root 4096 2008-07-21 14:45 .
drwxr-xr-x 124 root root 12288 2008-07-24 11:02 ..
-rwxrwxrwx 1 root root 662 2008-07-21 14:45 command
-rwxrwxrwx 1 root root 470 2008-07-21 14:45 dump
-rwxrwxrwx 1 root root 3046 2008-07-21 14:45 operator
-rwxrwxrwx 1 root root 731 2008-07-21 14:45 README
-rwxrwxrwx 1 root root 1372 2008-07-21 14:45 sigmon
Skal kataloget "/usr/local/bin/comgt", ik' også indeholde noget?
Follow ups
References