Linuxにシンボリックリンク、一種のショートカット、フォルダがあるかどうかはどうすればわかりますか?以下のスクリーンショットをご覧ください。
見てわかるように、ls
コマンドはいくつかのオブジェクトをリストし、そのうちのいくつかは濃い青で、いくつかは薄い青(青緑色)です。このターコイズオブジェクトは何ですか?これは実際のシンボリックリンクですか?
ご覧のとおり、cd
hddというハードドライブにアクセスできません。
root@dm500hd:/# cd hdd
-sh: cd: can't cd to hdd
にリダイレクトする必要があるようですが/media/hdd
、hddフォルダが欠落していることがわかりました。
この問題を解決する方法はありますか?
修正する:これがls -al
コマンドの結果です。
ご覧のとおりhdd -> /media/hdd
、赤です。これは、破損しているか自動的にマウントされることを意味します(たとえば、物理ハードドライブが接続されている場合)。
修正する:これがgrep media /etc/auto*
コマンドの結果です。
このアイテム/etc/auto.master:/media/net
と/etc/auto.network
アイテムは何をしますか?
これがls -Fal /media
コマンドの結果です。
これは役に立ちますか? ...
stat
以下は、file
コマンドの結果と/ usrと/ binのリストです。
これはどのようにして私に役立ちますか? …助けになりますか? ...
一方、これは組み込みシステムBusyBoxを搭載したLinuxベースのSTBであることを知っておく必要があります。したがって、すべてのコマンドがサポートされるわけではありません。
修正する:最後のスクリーンショットは、/sbinおよび/usr/sbinのファイルとサポートされているコマンドを示しています。
修正する:新しい共有が追加されました...
以前の共有を削除し、以前と同じ名前で共有を再作成し、2番目の共有も追加しました。今、二つができました。
SHARES
remote share local share
mydream dream1
mydream2 dream2
LOCATIONS
remote local
C:\mydream /media/net/dream1
C:\mydream2 /media/net/dream2
録音ファイルは/media/net/dream1/movieに保存されます。
また、共有dream2の場合、複数のHDDがHDDとして機能するかどうか疑わしいので、インストーラはHDDの交換としてインストールしないことにしました。どこに記録されますか? 2つの場所に?データレートを2倍にしますか? …それは不可能だと思います。
そのため、dream2 共有に movie というサブフォルダはありません。作成時に、HDD交換用に指定されたフォルダのみがムービーサブフォルダを持つことになります。
ハードドライブをルーティングするcd
とに移動します/media/net/dream1
。私が(cd
親..
)場合に戻りますroot (/)
。
root.given.givenにls -al
提供されています。
hdd -> media/hdd
ls -al hdd
hdd -> media/hdd
ls -al media
/media/net/dream1
また、他のシンボリックリンクがcd
ある場合も同様です。私は前に気づかなかった。共有がマウントされると自動的に生成されるようです。このハードドライブに移動すると。/media
hdd
cd
/media/net/dream1
1つのシンボリックリンクhdd
(/ hdd)hdd
は、共有フォルダ(/media/net/dream1)を指す別のシンボリックリンク(/media/hdd)を指します。 .....めまい...
Enigma2 イメージ バージョン 3.2.3 または少なくともバージョン 3.2.0 以前はそうではありませんでした。
編集する:2番目の共有をHDD交換に設定すると、録画用のアクティブ共有になります。同時に、以前にHDD交換で動作するように設定された共有は、まだ「はい」(HDD交換で動作)に設定されていても、もはや有効になりません.
dream1 を初めて HDD 交換として使用し(代替として「はい」を選択)、dream2 を HDD 交換として有効にすると、録画に使用される新しい共有になります。 dream1に保存されているビデオファイルを引き続き表示して確認できますが、録画することはできません。 dream1を再度録音するには、まずdream2を「no」(ハードドライブ交換の役割を停止)に設定し、次にdream1を「yes」にリセットする必要があります。
したがって、同時に両方の共有にログインすることはできません。どちらかは行かなければなりません。したがって、夢1または夢2のいずれかであり、両方ではありません。複数のサービス(テレビチャンネル)がすべて同じトランスポンダにある場合は録画が可能であることに注意する必要がありますが、そうでない場合は「無料チューナーなし」というメッセージが表示されます。チューナーが1つしかないセットトップボックスです。
答え1
file、stat、またはlsを使用できます。
文書:
fileコマンドは、タイプ(シンボリックリンク、ディレクトリ、デバイス)またはコンテンツ(テキスト、gzip、イメージ、tar、...、拡張子に関係ありません)に基づいてファイルを分類するために使用されます。
$ファイル/dev/stdout /dev/stdout: "/proc/self/fd/1"へのシンボリックリンク $ファイル/proc/self/fd/1 /proc/self/fd/1: "/dev/pts/0"へのシンボリックリンク $ファイル/dev/pts/0 /dev/pts/0: 特殊文字(136/0) $ファイル/etc/passwd /etc/passwd: ASCII テキスト
LS:
$ls -al /dev/stdout lrwxrwxrwx 1ルートルート15 1月27日07:55 /dev/stdout -> /proc/self/fd/1
統計:
statコマンドは、権限、サイズ、ブロック数などのファイルメタデータを印刷します。
$統計/dev/stdout ファイル: '/dev/stdout' -> '/proc/self/fd/1' サイズ: 15 ブロック: 0 IO ブロック: 4096 Symlink デバイス: 5h/5d Inode: 1212 リンク: 1 訪問: (0777/lrwxrwxrwx) Uid: (0/ ルート) Gid: (0/ ルート) 接続時間:2014-01-27 11:22:47.971187828 -0200 修正: 2014-01-27 07:55:13.996981285 -0200 変更: 2014-01-27 07:55:13.996981285 -0200 生まれます:-
答え2
大きな打撃:
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
答え3
指定されたファイルがどのタイプのエンティティであるかを確認する最も簡単な方法は、このfile
コマンドを使用することです。ls
分類子タグが何であるかを覚えたり、ユーザーとコンピュータによって異なる可能性のあるカラー出力に頼る必要がない、鮮明で明確な出力を提供します。たとえば、
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'
システムにファイルエントリがない場合、file
このコマンドを使用すると、stat
そのファイルエントリの種類とポイントの場所を示します。リンクが壊れていることを確認するには、stat -L
リンクが壊れたときにエラーが発生する逆参照リンクを実行する必要があります。
質問の2番目の部分については、ディレクトリmedia
は通常一種の自動インストーラによって管理されます。この/media/hdd
エントリは、システムがUSB大容量記憶装置に使用することも、正しいタイプのハードドライブ(ATA、SCSI、Xenブロックデバイス)を待っている可能性があります。壊れたリンクは、プログラムがそれを使用しようとしない限り害を及ぼさず、メディアリンクは実際にはユーザーの便宜のためです。/hdd
必要に応じてリンクを安全に維持または削除できます。
答え4
- はい、ターコイズはシンボリックリンクです。
- 彼らが指している場所を確認するには:
ls -Fal
- 出力
ls -Fal /media
これはおそらく一種の自動マウントポイントです。
grep media /etc/auto*
波紋を引き起こす可能性があります。