Unix & Linux

Linux、FreeBSDおよび他のUn * xのようなオペレーティングシステムのユーザーのためのQ&A

1
readelfがLinuxではなくOSとして「System V」を表示するのはなぜですか?
ELFファイル形式を理解するために、gccを使用して小さなCプログラム(2行のコード)をコンパイルしました。readelf -hオブジェクトファイルでを行うと、ヘッダーにあります: OS/ABI: UNIX - System V 私はFedoraを使用していますが、なぜLinuxではないのですか? 編集:私が編集した int main(){ int x = 0; x++; } とgcc -o main.o -c main.c。私のgccバージョンは gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
10 linux  elf 

4
複数の遺失物ディレクトリーを見つけることができますか?
私はこの質問mklost+foundを読むまでコマンドに気づきませんでした。 このmklost+foundコマンドは、pwdに新しいlost + foundディレクトリを作成します。 このコマンドを実行する必要があるのはなぜですか?lost + foundディレクトリは、私がチェックしたすべてのディストリビューションの/にすでに存在しています。 複数の遺失物ディレクトリーがある場合はどうなりますか?復元されたデータフラグメントは/のlost + foundディレクトリに移動しますか、それとも、最後に作成されたlost + foundディレクトリに移動しますか? これをテストするために意図的にデータフラグメントを作成する方法がわかりません。

4
ディレクトリのおおよそのサイズを取得します(すべてのファイルとサブディレクトリを再帰的に含めます)
ディレクトリ(再帰的に、そのすべてのサブディレクトリを含む)の正確なサイズをすばやく取得する方法はありますか?サブディレクトリのサイズは必要ありません。レポートされた合計サイズに再帰的に含める必要があることを意味します。 失敗した場合、おおよそのサイズを取得する方法は?dfファイルシステム全体に対して迅速な応答が得られるようなものを考えていますが、今回は特定のディレクトリ(およびそのサブディレクトリ)についてです。 使用duするソリューションは、ディレクトリに数千のサブディレクトリが含まれている場合、時間がかかるようです。
10 bash 

3
バックアップの実行を安全に除外できるエントリ
rsnapshotに基づくバックアップ戦略を計画しています。 復元でシステムが再び機能するのに役に立たないファイルとディレクトリを除いて、システム全体のバックアップを実行したいと考えています。私はすでに除外しました: # System: exclude /dev/* exclude /proc/* exclude /sys/* exclude /tmp/* exclude /run/* exclude /mnt/* exclude /media/* exclude /lost+found # Application: exclude /*.pyc exclude /*.pyo 復元されたシステムを危険にさらすことなく、他のどのエントリを除外リストに追加できるのでしょうか。「一般的な」Linuxシステムについて話すと、さらにglob拡張、一時ディレクトリ、キャッシュなどを提案できますか?安全に除外できますか?

3
実行中のウィンドウを失うことなくデスクトップのフリーズから回復する方法は?
VirtualBoxがMint 16 Cinnamon Desktop 64ビットをランダムにフリーズさせることがあります。実際に何が問題なのか、どこにバグレポートを記入するのかさえ特定できません。 しかし、人生は続いており、既存のアプリケーションで行った作業を失わずにウィンドウサブシステムを再初期化する手段が必要です。 私が実行sudo service mdm restartすると、すでに実行されているすべてのアプリケーションが残酷に殺されました。 cinnamon --replace -d :0呪文は何もしません。ハングアップするだけです。それは、すでに動いているシナモンと何らかの形で協力する必要があるからだと思いますが、それには対応していません。 Alt + F2で入力されたコマンドは無視され、シナモンを再起動するために使用された "r"コマンドも無視されます。画面は更新されず、キーストロークそのものが無視されているようです。 私の他のオプションは何ですか? フリーズの症状: このバグは、グラフィックターミナルの画面更新を凍結するだけで明らかになります。マウスは大丈夫です。画面のさまざまな部分にカーソルを合わせると、アイコンが変わります。問題は、それで何もできないことです。また、画面が更新されず、キーボードも何も実行しません。しかし、テキストコンソールに切り替えると、ウィンドウのプロセスが適切に実行されていることがわかります。イベントとアプリケーションとの対話が可能で、何らかの形式のCLI対話(VBoxManageなど)を提供します。 再現するには: Linux Mint 16とCinnamon 2.0 64ビットをインストールする 壁紙を変更するプログラムをインストールし(さまざまでテストされ、wallch)、バックグラウンドタスクとして壁紙の変更を開始するように設定します。 背景が数回変わるのを待ちます。バグは最初のバックグラウンドの変更では発生しません。しばらく待つ必要があります。 .xsession.errorsにそのようなものが表示されます。 編集: 症状を更新しました。時間が経つにつれ、問題をより適切に切り分けることができました。それは、いかなる方法でもVirtualBoxアクティビティとは関係ありません。

5
ファイルシステムをそのまま正確にコピーするにはどうすればよいですか?
私がプログラミングしているデバイス用のファイルシステムがあり、正確なコピーを作成したいと考えています。理想的には、このコピーを、コピー元のフォルダーと同一にする必要があります。私が使って試してみましたcp -r cp -aし、rsync -azvPこれを達成しようとします。ただし、それぞれが異なるサイズのフォルダーを生成し(を使用du -s)、最終的に、デバイスが元のフォルダーで実行されても、コピーしたものでは実行されません。 私が使用したコマンドが考慮に入れられていないことは何ですか? ファイルシステム/フォルダーをコピーするときにすべてを同一に保つことは可能ですか?もしそうなら、私はそれをどうやってやりますか? PS私はStackOverflowに同様の質問を投稿しましたが、間違った交換で質問したことにすぐに気付きました 編集:これは役に立たないかもしれませんが、コピーしたディレクトリを使用する方法に関係なく、問題のマシンは常に次の出力でカーネルパニックを引き起こします。 VFS:NFS経由でルートfsをマウントできません。フロッピーを試しています。VFS:ルートデバイス「nfs」またはunknown-block(2,0)を開けません。正しい「root =」ブートオプションを追加してください。使用可能なパーティションは次のとおりです。1f0064 mtdblock0(ドライバー?)1f02 64 mtdblock2(ドライバー?)1f04 2432 mtdblock4(ドライバー?)1f05 128 mtdblock5(ドライバー?)1f06 4352 mtdblock6(ドライバー?)1f07 204928 mtdblock7(ドライバー?)1f08 50304 mtdblock8(ドライバー?)0800 8388608 sdaドライバー:sdカーネルパニック-同期しない:VFS:ルートブロックをunknown-block(2,0)にマウントできません
10 linux  filesystems  rsync  cp 

6
正規表現でファイルから複数の行を取得する方法は?
正規表現でファイルから複数の行を取得する方法は? 正規表現で複数の行を取得したり、複数の行を変更したりすることがよくあります。事例: 私はXML / SGMLファイルの一部を読み込もうとしています(形式が正しくないか、予測可能な構文であるとは限らないため、正規表現は適切なパーサーよりも安全です。さらに、これを完全に実行できるようにしたいと思います。いくつかのキーワードだけがわかっている非構造化ファイル)(SolarisおよびLinuxで実行される)シェルスクリプト内。 XMLの例: <tag1> <tag2>bar</tag2> </tag1> <tag1> <tag2>foo</tag2> </tag1> これから私は<tag1>それがその中にfooどこかに含まれている場合に読みたいと思います。 以下のような正規表現は、(<tag1>.*?foo.*?</tag1>)右側の部分が、のようなツール与えるべきであるgrepとsed、単一のラインを持つ私のためだけの仕事を。どうすれば入手することができますか <tag1> <tag2>foo</tag2> </tag1> この例では?
10 shell  sed  grep 

1
Bashで「エイリアス」を作成する方法はいくつありますか?
私は2つの方法しか知りません:alias foo=barとfunction foo() { bar }。 私が質問している理由は、bashセッションの1つで突然- がエラーになるlnため、コマンドを実行できないためbashです-bash: /usr/local/.../ln: No such file or directory(/usr/local/.../は私のPATH環境変数のエントリの1つです)。 PATHただし、問題が発生することはありません。実行するwhich lnと期待されるバイナリが出力されるためです/usr/bin/ln(絶対パスを指定すれば問題なく実行できます)。 私はまたのためにチェックしln、私にaliasとfunction宣言し、何もありません。 $ declare -f | grep ln $ alias | grep ln 問題は1つのbashセッションで発生しているだけです。新しいシェルを開始すると、再び正常に機能しますが、この特定のbashセッションで突然この問題が発生した原因を知りたいのです。 これを引き起こしている可能性のあるものに関するアイデアはありますか?
10 bash  shell  alias 

1
NFSマウントでinotifyイベントが異なるのはなぜですか?
しばらく前に、ファイルがNFSマウントに保存されるときとローカルファイルシステムに保存されるときでは、inotifyによって報告されるイベントが異なることに気付きました。 基盤となるVFSは、ファイル操作の統一されたビューを提供するべきではありませんか? 以下は、Debian 7.1(Linux 3.2)でファイルを保存するVIMのトレースです。 NFSマウントの場合: wd=1 mask = 32 (IN_OPEN) wd=1 mask = 16 (IN_CLOSE_NOWRITE) wd=1 mask = 2048 (IN_MOVE_SELF) wd=1 mask = 4 (IN_ATTRIB) wd=1 mask = 1024 (IN_DELETE_SELF) wd=1 mask = 32768 ) ローカルファイルシステム wd=1 mask = 32 (IN_OPEN) wd=1 mask = 16 (IN_CLOSE_NOWRITE) wd=1 mask = …
10 linux  nfs  inotify 

2
dhcpcdが起動時に起動できない
dhcpcd起動後に実行するとすべて正常に動作しますが、自動起動に追加しようとするとsystemctl enable dhcpcd@eth0.service、起動するたびに非アクティブになります dhcpcd@eth0.service loaded inactive dead start dhcpcd on eth0

1
OpenSUSE 12.2の間違ったパスワードでxscreensaverを使用すると遅延が大きすぎる
OpenSUSE 12.2でxscreensaverを使用してログインすると、遅延が大きすぎる ---実際の遅延は10秒ですが、構成のどこにも見つかりません すでに完了: login.defsで pamタイムアウトをチェック(3秒) どの/etc/pam.d/ファイルにもpam_faildelay.soオプションはありません YaSTを介してログイン設定を確認しました(login.defsを使用しているため役に立たない) /etc/pam.d/login、/etc/pam.d/commom-auth-pcファイルのpam_faildelay.so遅延パラメータで再生 .xscreensaver 構成 /home/ タイムアウト:0:10:00 サイクル:0:10:00 ロック:True lockTimeout:0:00:00 passwdTimeout:0:00:05 visualID:デフォルト installColormap:True 冗長:False タイムスタンプ:True スプラッシュ:偽 splashDuration:0:00:05

1
/ dev / randomをファイルに書き込みますか?
以下を実行するとどうなりますか? cat /dev/random > ~/randomFile # don't run ドライブの容量がなくなるまで書き込まれるのでしょうか、それともシステムがこれに問題を見つけて停止するのでしょうか(無限シンボリックループのように)。
10 kernel  devices  random 

4
現在のパスにあるすべてのファイル/バイナリを一覧表示します
現在のPATH内のすべてのファイル/実行可能バイナリを一覧表示するための「ls -la」スタイルのコマンドを実行する「簡単な」方法はありますか? (私は出力をgrepにパイプして、プレフィックスは不明であるが基本的には「名前」がわかっているコマンドを探すために、bashのオートコンプリート/タブ移動が本質的に役に立たない場合の種類です。したがって、ある種の「逆オート完全な機能」...)
10 bash  ls  path  autocomplete 

5
bashのパス名のパターンマッチング
ディレクトリ内のサブディレクトリのリストを操作したい。検討してください: for x in x86-headers/*/C/populate.sh; do echo $x; done これは与える x86-headers/elf/C/populate.sh x86-headers/gl/C/populate.sh x86-headers/gmp/C/populate.sh x86-headers/gnome2/C/populate.sh x86-headers/gtk2/C/populate.sh x86-headers/jni/C/populate.sh x86-headers/libc/C/populate.sh しかし、私は対応して経路の第2の部分に、という値が欲しい elf、glなど私が大手を取り除く方法を知っているがx86-headers。 for x in x86-headers/*/C/populate.sh; do i=${x##x86-headers/}; echo $i; done 与える elf/C/populate.sh gl/C/populate.sh gmp/C/populate.sh gnome2/C/populate.sh gtk2/C/populate.sh jni/C/populate.sh libc/C/populate.sh また、パスの後半の用語を取り除く方法も知っています。つまり、1レベル下がっています。 cd x86-headers for x in */C/populate.sh; do i=${x%%/*}; echo $i; done 与える elf …

1
同じ内容のディレクトリ内のすべてのフォルダを検索します
Ubuntuで、ディレクトリ内の重複するフォルダー(つまり、同じ内容のフォルダー)を見つけるものはありますか?重複するファイル(fdupesなど)を見つけるためのコマンドラインツールは既にいくつかあると思いますが、代わりに重複するフォルダーを見つけたいと思います。つまり、ファイル名と他のメタデータは異なる場合がありますが、それらに含まれるファイルの内容に関して一致するフォルダーを見つけます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.