/ Forside / Teknologi / Operativsystemer / Linux / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Linux
#NavnPoint
o.v.n. 11177
peque 7911
dk 4814
e.c 2359
Uranus 1334
emesen 1334
stone47 1307
linuxrules 1214
Octon 1100
10  BjarneD 875
Forklaring udbedes...
Fra : Rander


Dato : 12-05-02 03:51

Er der ikke en der gider at forklare mig det her?

[root@linux snmp]# ls -l
total 24
-rwxr-xr-x 1 root root 175 May 12 04:44 cputemp
-rw-r--r-- 1 root root 4052 May 12 04:19 snmpd.conf
-rw-r--r-- 1 root root 14890 May 12 03:33 snmpd.conf.ok
[root@linux snmp]# ./cputemp
bash: ./cputemp: No such file or directory
[root@linux snmp]# exec cputemp
bash: exec: cputemp: not found
[root@linux snmp]# cat cputemp
#!/bin/sh
PATH=/bin:/usr/bin
[osv]

Altså, filen eksisterer ikke, men den vil gerne cat'e den?

--
Lars Rander, www.rander.dk ICQ#: 987520 ** Pil ikke ved min adresse **
Sjathelt og beskytter af det svage køn (udnævnt af diktator SEJ 5/6-99)

Min fader døde pludseligt, men det var ikke alvorligt. Hvoraf min moder døde,
ved jeg ikke, men af sidste sygdom kom hun sig. (Skadesanmeldelse)


 
 
Torben Simonsen (12-05-2002)
Kommentar
Fra : Torben Simonsen


Dato : 12-05-02 05:36

Rander <ldNOSPAM@rander.dk> writes:

> Er der ikke en der gider at forklare mig det her?
>
> [root@linux snmp]# ls -l
> total 24
> -rwxr-xr-x 1 root root 175 May 12 04:44 cputemp
> -rw-r--r-- 1 root root 4052 May 12 04:19 snmpd.conf
> -rw-r--r-- 1 root root 14890 May 12 03:33 snmpd.conf.ok
> [root@linux snmp]# ./cputemp
> bash: ./cputemp: No such file or directory
> [root@linux snmp]# exec cputemp
> bash: exec: cputemp: not found
> [root@linux snmp]# cat cputemp
> #!/bin/sh
> PATH=/bin:/usr/bin
> [osv]
>
> Altså, filen eksisterer ikke, men den vil gerne cat'e den?

Du har ret i, at det er en meget forvirrende fejlmeddelelse at få
i hovedet, men jeg er næsten sikker på, at filen, der ikke findes,
er filen i "hash-bang"-linien - altså "/bin/sh".

Problemet plejer at opstå, hvis et script f.eks. har været en tur
omkring en editor på en DOS- eller Windows-maskine og derfor har
fået linier, der afsluttes med CR/LF i stedet for bare LF. Det får
din shell til at lede efter en fil ved navn "/bin/sh\r" - altså
"/bin/sh" med et efterhægtet CR-tegn (ASCII-kode 13). Denne fil
findes naturligvis ikke.

Prøv at udføre følgende kommando:

head -1 cputemp | od -c

Det burde give følgende output:

0000000 # ! / b i n / b a s h \n
0000014

.... men i dit tilfælde vil jeg gætte på, at du i stedet får:

0000000 # ! / b i n / b a s h \r \n
0000015

Fejlen er det ekstra "\r"-tegn.

--
-- Torben.

Torben Simonsen (12-05-2002)
Kommentar
Fra : Torben Simonsen


Dato : 12-05-02 05:43

Torben Simonsen <ts@biograferne.dk> writes:

> Prøv at udføre følgende kommando:
>
> head -1 cputemp | od -c
>
> Det burde give følgende output:
>
> 0000000 # ! / b i n / b a s h \n
> 0000014

Argh! Jeg mente selvfølgelig:

0000000 # ! / b i n / s h \n
0000012

Det var jo "/bin/sh" og ikke "/bin/bash".

--
-- Torben.

Rander (12-05-2002)
Kommentar
Fra : Rander


Dato : 12-05-02 15:28

12 May 2002 06:35:52 +0200 brugte Torben Simonsen 49 linier på at fortælle
dette til dk.edb.system.unix:

>> Er der ikke en der gider at forklare mig det her?
[...]
>Problemet plejer at opstå, hvis et script f.eks. har været en tur
>omkring en editor på en DOS- eller Windows-maskine og derfor har
>fået linier, der afsluttes med CR/LF i stedet for bare LF. Det får

ARRRGH!

Du har ret! Jeg lavede scriptet i UltraEdit på min windows-maskine, og
glemte at bede den om at gemme i Unix-format...

Tænk at man kan sidde og rive håret af sig selv over sådan en bagatel...


--
Lars Rander, www.rander.dk ICQ#: 987520 ** Pil ikke ved min adresse **
Sjathelt og beskytter af det svage køn (udnævnt af diktator SEJ 5/6-99)

Fantasi er vigtigere end kundskab. (Albert Einstein)


Kent Friis (12-05-2002)
Kommentar
Fra : Kent Friis


Dato : 12-05-02 17:02

Den Sun, 12 May 2002 16:27:55 +0200 skrev Rander:
>12 May 2002 06:35:52 +0200 brugte Torben Simonsen 49 linier på at fortælle
>dette til dk.edb.system.unix:
>
>>> Er der ikke en der gider at forklare mig det her?
>[...]
>>Problemet plejer at opstå, hvis et script f.eks. har været en tur
>>omkring en editor på en DOS- eller Windows-maskine og derfor har
>>fået linier, der afsluttes med CR/LF i stedet for bare LF. Det får
>
>ARRRGH!
>
>Du har ret! Jeg lavede scriptet i UltraEdit på min windows-maskine, og
>glemte at bede den om at gemme i Unix-format...
>
>Tænk at man kan sidde og rive håret af sig selv over sådan en bagatel...
>

hvad med at lave en fil der hedder /bin/sh^M med flg. indhold?
(^M fås ved at trykke CTRL-v ENTER eller CTRL-V CTRL-M)

#!/bin/sh
echo "error: Please uninstall windows to continue" >&2



Mvh
Kent
--
"Intelligence is the ability to avoid doing work, yet get the work done"
- Linus Torvalds

Søg
Reklame
Statistik
Spørgsmål : 177557
Tips : 31968
Nyheder : 719565
Indlæg : 6408877
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste