Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: iskren в Dec 12, 2007, 11:46



Титла: Bash проблем със symlink-ове
Публикувано от: iskren в Dec 12, 2007, 11:46
Здравейте!

До няколко дена бях с федора 6, и сега като минах на новата баша се държи доста странно. Значи home директорията ми се състои от symlink-ове към разни места (други хардове итн итн). Ето пример (махнах излишните):
Примерен код
[iskren@iskren ~]$ ll
total 32
lrwxrwxrwx 1 iskren iskren 26 2007-12-10 23:54 downloads -> /mnt/disk1/home/downloads/
lrwxrwxrwx 1 iskren iskren 16 2007-12-12 11:22 music -> /mnt/disk4/music
lrwxrwxrwx 1 iskren iskren 22 2007-12-11 03:36 stuff -> /mnt/disk1/home/stuff/
. . .

Значи като влезна в downloads и напиша
Примерен код
$ cp ../mu[TAB] # става реда отдолу
$ cp ../music_[kursor] #има интервал преди курсора - не става ../music/[kursor]

Освен това като изтрия space-а и натисна таб ми показва съдържанието, но ако тръгна да копирам примерно дава следното
Примерен код
$ cp ../music/Osmania\ -\ Face\ Of\ A\ Stranger.mp3 .
cp: cannot stat `../music/Osmania - Face Of A Stranger.mp3': Not a directory

Дава го даже и да няма интервали в името (в смисъл не това е проблема). Някакви идеи защо се държи толкова дървено - не може ли сим линк към директория да се държи ТОЧНО като директория.

Какато се вижда от първия ll пробвах да създам симлинка с '/' накрая на директорията и без - нищо не се промени.

Значи разбрах, че когато се намирам във директория, която е симлинк, като дам ../[каквото и да е] и прави този номер, описан по горе. Т.е някакъв проблем с ../ когато се намирам в симлинк.

Идеи?

::EDIT::
В тоя баш има нещо МНОГО сбъркано!! Не мога да стартирам никакви скриптове (мои) + байнарита (компилирани от мен програми). По някакъв начин нещо му е казало сякаш да не може да се рънва от хоум директорията ... знам ли, страшно е дразнещо. На следния файл
Примерен код
#!/bin/bash
echo
g++ $1.cpp -lm -Wall -O2 -Wextra -Wno-deprecated $2 $3 $4 $5 $6 $7 -o $1.bin

като му дам ./G (така се казва скрипта, правя го в неговата директория, сложил съм chmod +x) и казва
Примерен код
bash: ./G: Permission denied
. А също така ако имам изпълними файлове в директорията и дам ./[TAB] не допълва нищо - все едно няма изпълними файлове .... какво му става ???





Титла: Bash проблем със symlink-ове
Публикувано от: gat3way в Dec 12, 2007, 12:34
Да, има флаг при маунтване на файлови системи, който казва на ядрото да не стартира изпълними файлове, намиращи се на тях. Мисля noexec беше. Виж как са ти маунтнати файловите системи.


Титла: Bash проблем със symlink-ове
Публикувано от: iskren в Dec 12, 2007, 12:54
Да отидох да ям и там се сетих - трябваше да добавя по един exec на всеки ред в fstab-а след което минах на init 3, убих всичко и маунтнах на ново - сега стартирането на скриптове е ок. Остава обаче проблема със симлинковете  ???