it-swarm-eu.dev

Jak zjistím, zda je složka ve skutečnosti symbolickým odkazem a jak ji opravit, pokud je poškozená?

Jak zjistím, zda mám v systému Linux odkaz na odkaz, nějaký zástupce nebo složku? Viz následující snímek obrazovky.

symbolic link in linux Shell

Jak vidíte, příkaz ls uvádí seznam objektů, kde jsou některé vybarveny tmavě modrou, zatímco jiné jsou zbarveny světle modrou (azurová). Co jsou to azurově zbarvené objekty? Jsou to skutečné symbolické odkazy?

Jak vidíte, nemůžu cd k tomu, které se jmenuje hdd.

[email protected]:/# cd hdd
-sh: cd: can't cd to hdd

Myslím, že musí přesměrovat na /media/hdd A všiml jsem si, že složka hdd chybí.

Existuje způsob, jak to vyřešit?

Aktualizace: Zde jsou výsledky příkazu ls -al.

symbolic link in linux Shell 2

Jak vidíte, říká hdd -> /media/hdd A je zbarveno červeně. Znamená to, že je přerušeno nebo že je automaticky namontováno, tj. Když je připojeno fyzické hdd?

pdate: Zde je výsledek příkazu grep media /etc/auto*.

symbolic link in linux Shell 3

Co tyto položky /etc/auto.master:/media/net A /etc/auto.network Provedou?

Zde jsou výsledky příkazu ls -Fal /media.

symbolic link in linux Shell 4

Je to nějaká pomoc? ...

Zde jsou výsledky příkazů stat a file, stejně jako výpisy/usr a/bin.

symbolic link in linux Shell 5

Pomáhá mi to nějak? Pomůžeš mi?.

Na druhou stranu byste měli vědět, že se jedná o linuxový STB s BusyBoxem, je to vestavěný systém. Proto nemusí být podporovány všechny příkazy.

Aktualizace: Poslední snímek obrazovky, zobrazující soubory a podporované příkazy v/sbin a/usr/sbin.

symbolic link in linux Shell 6

Aktualizace: Byla přidána nová sdílená složka ...

Nyní jsem odstranil tu starou sdílenou složku a znovu vytvořil sdílenou složku se stejným názvem jako dříve a také jsem přidal druhou sdílenou složku. Teď je mám dvě.

SHARES
remote share   local share
mydream        dream1
mydream2       dream2

LOCATIONS
remote        local
C:\mydream    /media/net/dream1
C:\mydream2   /media/net/dream2

Nahrávky jsou umístěny v/media/net/dream1/movie.

Také pro sdílený sen2 jsem se rozhodl nepřipojit jej jako náhradu HDD ve Správci Mount, protože mám podezření, že není možné mít více než jeden akt jako pevný disk. Kde by to zaznamenal? Na obě místa? S dvojnásobnou datovou rychlostí? ... Nemyslím si, že je to možné.

Z tohoto důvodu neexistuje žádný sdílený film pro sdílenou složku dream2. Podsložky filmu mají pouze ty, které jsou při vytvoření pevného disku zadány při vytvoření.

Pokud jsem cd na hdd od root, jde na /media/net/dream1. Pokud I cd to .. (Rodič), vrátí se zpět k root (/).

Kořen ls -al Dává hdd -> media/hdd. ls -al hdd Dává hdd -> media/hdd. ls -al media Dává /media/net/dream1.

Také, pokud I cd to /media Existuje další hdd symlink. Ještě jsem si toho nevšiml. Myslím, že se to vytvoří automaticky, když je připojena sdílená složka. A pokud jsem cd k tomuto hdd, jde to na /media/net/dream1.

Symlink hdd (/ hdd), který ukazuje na jiný hdd symlink (/ media/hdd), který zase ukazuje na sdílenou složku (/ media/net/dream1)? ... .. mám závratě ...

Nebylo to jako před verzí 3.2.3 nebo alespoň 3.2.0 obrazu Enigma2.

Úpravy: Nastavením druhé sdílené složky, která bude fungovat jako náhrada pevného disku, se stane aktivní sdílenou složkou pro nahrávání. Současně již není nastavena sdílená složka, která bude fungovat jako nahrazení pevného disku, i když je stále nastavena na „ano“ (funguje jako nahrazení pevného disku).

Pokud byl Dream1 poprvé použit jako náhrada pevného disku („ano“, aby fungoval jako náhrada), a potom se Dream2 nastaví jako náhrada HDD, stane se novým podílem pro nahrávání. Stále mohu vidět a prohlížet video soubory uložené ve snu1, ale nemohu na něj nahrávat. Pokud se chci vrátit k použití snu1 pro nahrávání, musím nejprve nastavit snu2 na „ne“ (přestat fungovat jako nahrazení pevného disku) a poté resetovat snu1 na „ano“.

Takže ne, nemůže nahrávat na dva sdílené položky současně. Jeden z nich musí jít. Takže je to buď sen1, nebo sen2, ne obojí. I když bych měl zmínit, že je možné zaznamenat více než jednu službu (televizní kanál), pokud jsou obě na stejném transpondéru, pokud ne, dostanete zprávu „žádný volný tuner“. Toto je STB s pouze jedním tunerem.

30
Samir

Můžete použít soubor, stat nebo ls.

file:

Příkaz file se používá ke klasifikaci souborů podle jejich typu (symlink, adresář, zařízení) nebo obsahu (text, gzip, obrázek, tar, ..., bez ohledu na jejich příponu):

 $ file /dev/stdout
/dev/stdout: symbolický odkaz na `/proc/self/fd/1'
$ soubor/proc/self/fd/1 
/proc/self/fd/1: symbolický odkaz na `/dev/pts/0'
$ soubor /dev/pts/0
/dev/pts/0: character speciální (136/0) 
 $ soubor /etc/passwd
/etc/passwd: ASCII text 

ls:

 $ ls -al /dev/stdout
lrwxrwxrwx 1 root root 15 Jan 27 07:55/dev/stdout -> /proc/self/fd/1

stat:

příkaz stat vytiskne soubor metadat, jako jsou oprávnění, velikost, počet bloků atd. ...

$ stat /dev/stdout
 Soubor: '/ dev/stdout' -> '/proc/self/fd/1'
 Velikost: 15 Bloků: 0 IO Blokovat : 4096 symbolický odkaz 
 Zařízení: 5h/5d Inode: 1212 Odkazy: 1 
 Přístup: (0777/lrwxrwxrwx) Uid: (0/root) Gid: (0/root) 
 Přístup: 2014-01-27 11: 22: 47.971187828 -0200 
 Změnit: 2014-01-27 07: 55: 13.996981285 -0200 
 Změna: 2014-01-27 07:55: 13.996981285 -0200 
 Narození: - 
30
filipenf

bash:

if [[ -h dirname ]]; then
    echo "it's a symbolic link"
    if ! stat $(readlink dirname) &>/dev/null; then
        echo "link target does not exist"
    fi
fi
8
glenn jackman

Nejjednodušší způsob, jak zjistit, jaký typ entity je daný soubor, je použít příkaz file. Má jasný, zdravý výstup, aniž byste si museli pamatovat, co jsou značky klasifikátoru ls, nebo se spoléhat na barevný výstup, který se může lišit v závislosti na uživateli a stroji. Například:

mail ~ # file /test
/test: broken symbolic link to `/nonexist'
mail ~ # file /dev
/dev: directory
mail ~ # file /dev/fd
/dev/fd: symbolic link to `/proc/self/fd'

Pokud se ocitnete v systému bez file, můžete použít příkaz stat, který vám řekne, jaký druh položky souboru je a kam směřuje. Chcete-li zjistit, zda je odkaz přerušen, musíte spustit odkazy stat -L Na odkazy dereference, které v případě, že je odkaz přerušen, zobrazí chybu.

Pokud jde o druhou část vaší otázky, adresář media je často řízen automaty nějakého druhu. Položka /media/hdd Může váš systém použít pro velkokapacitní paměťová zařízení USB nebo může dokonce čekat na správný druh pevného disku (blokovací zařízení ATA vs SCSI vs Xen). Nefunkční odkazy nic neublíží, pokud se program pokusí je použít, a mediální odkazy jsou opravdu pro vaše pohodlí. Můžete bezpečně opustit odkaz /hdd Nebo jej podle potřeby odstranit.

3
joruffin
  1. Ano azurová jsou symbolické odkazy
  2. Chcete-li zjistit, kam směřují: ls -Fal
  3. Výstup ls -Fal /media

Toto je pravděpodobně nějaký automatický bod.

grep media /etc/auto* může způsobit zásah.

1
Nils