Unix & Linux

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

2
Linuxカーネルが、実際にはiノードが不足しているのに、「ディスク領域不足」を報告するのはなぜですか
Linux環境でのプログラミングは好きだが、Linuxの管理についてはよく知らない私の友人が、最近彼のOS(Ubuntu)が「XXXボリュームのディスク容量不足」を報告していた問題に遭遇しました。しかし、彼がボリュームをチェックしに行ったとき、まだ700 GBが残っていました。多くの時間を浪費した後、彼は最終的に自分がiノードの外にあることを理解することができました。(彼はこのボリュームにバックアップシステムからの小さな増分更新をたくさん保存し、彼のすべてのiノードを焼き付けていました。) Linuxカーネルがエラーメッセージ(「ディスク容量不足」)を適切に報告(「inode不足」)するのではなく、なぜ報告したのかと彼は私に尋ねました。私は知らなかったので、StackExchangeに質問すると思いました。 なぜこれが起こるのか誰でも知っていますか?そしてなぜそれがこれらすべての年月の後でまだ修正されていないのですか?(1995年に別の友人がこの問題について教えてくれたのを覚えています。)

1
tarアーカイブのパスを抽出せずに変換する
GNUにtar(1)はと呼ばれるきちんとしたオプションがあります--transform。manページから: --transform、-xform EXPRESSION は、sed replace EXPRESSIONを使用してファイル名を変換します これにより、アーカイブの抽出中にその場でパス名を変換できるため、どこにどのように抽出するかを制御できます。 私の質問は、その場で同様の変換を実行する方法はありますか。つまり、アーカイブを抽出せずに? 例 [user@host]$ tar tf test.tar ./foo/blah ./foo/bleh [user@host]$ some_deep_magic 's/foo/bar/' test.tar [user@host]$ tar tf test.tar ./bar/blah ./bar/bleh 使用事例 tar基本的に無知なエンドユーザーにアーカイブを配布していますが、邪魔されずに正しいパスに抽出してほしいと思います。私は、アーカイブの抽出、ディレクトリの名前の変更、アーカイブが多すぎるので再パックするという簡単な解決策を避けようとしています。
10 tar 

3
「バー」が10行以内に表示されない「フー」のインスタンスを検索するgrep
「Foo」が発生するすべてのCPPファイルをツリー全体で検索するとします。私はするかもしれません: find . -name "*.cpp" | xargs grep "Foo" ここで、前の結果の3行以内に「Bar」が発生しないという他の文字列があるインスタンスのみをリストしたいとします。 したがって、2つのファイルが与えられます。 a.cpp 1 Foo 2 qwerty 3 qwerty b.cpp 1 Foo 2 Bar 3 qwerty a.cppからの "Foo"は検出されますが、b.cppからの "Foo"は検出されない単純な検索を作成したいと思います。 これをかなり簡単な方法で達成する方法はありますか?
10 grep 

2
$ TERM変数を手動で設定することは正しいですか?
$TERM行XTerm*termName: xterm-256colorを.Xresourcesファイルに追加する変数を設定しました。私がそれをしたとき、私はそれが何を意味するのか正確には知りませんでした(私はの外観を変更するためにオンラインガイドに従っていましたxterm)、今私はもう少し読んで、私がしたことが間違っているかどうか心配しています。具体的には、$TERM変数を手動で設定することに問題があることを知りたいのです。その場合、どうすれば間違いを元に戻すことができますか。 必要に応じて、私はFedora 20をで実行していxtermます。

3
Debian Wheezy KDEでタッチパッドのスクロールとタップを有効にする方法は?
ラップトップのタッチパッドでスクロールとタップをオンにしようとしています(左と右の2つのボタンで問題ありません)。私はDebian 7.3(Wheezy)KDEデスクトップを使用しており、Synapticタッチパッドを持っています。私のラップトップは2007年の古いHPモデルなので、マルチタッチをサポートしていません。rootとして、/etc/X11/xorg.conf.d/synaptics.conf以下にコピーしたファイルを作成しました。次に、Konsoleでsynclient -l次のコードを指定して取得しました。 Parameter settings: LeftEdge = 1752 RightEdge = 5192 TopEdge = 1620 BottomEdge = 4236 FingerLow = 25 FingerHigh = 30 FingerPress = 256 MaxTapTime = 180 MaxTapMove = 221 MaxDoubleTapTime = 180 SingleTapTimeout = 180 ClickTime = 100 FastTaps = 0 EmulateMidButtonTime = 75 EmulateTwoFingerMinZ = 282 …

2
いつcp --attributes-onlyを使用しますか
基本的なUNIXコマンドにいくつかの研究をしていると私は、次のコマンドラインオプションを使用したい場合などを取得しようとしている--attributes-onlyコマンドのためにcp こちらはcpmanページから --attributes-only don't copy the file data, just the attributes
10 files  cp 

4
findにすべてではなくほとんどのシンボリックリンクをたどるにはどうすればよいですか?
私のOSとホームディレクトリはSSDにあります。いくつかの大きなファイルをハードディスクに保存し、ホームディレクトリからハードディスクへのシンボリックリンクを作成します(たとえば、〜/ Videos / Filmsは/ mnt / hdd / Filmsへのシンボリックリンクです)。私はいくつかのWineプレフィックスも持っています。それぞれにdosdevices / z:/にシンボリックリンクがあります。 したがって、-Lを指定せずにfindを使用すると、ハードディスク上のすべてが失われます。しかし、-Lを指定してfindを使用すると、Wineの/へのシンボリックリンクが原因でループになってしまいます。 これを解決するための賢明な方法はありますか?直感的に、「dosdevicesと呼ばれるディレクトリの下にない限り、シンボリックリンクをたどる」という流れに沿って何かが必要です。「ハードディスク上の何かへのシンボリックリンクをたどる」も機能します。
10 find  symlink 

1
ターゲットがローカルホストである場合でも、ネットワーク経由でパケットを送信する
Linuxでは、パケットをネットワークインターフェースの1つのアドレスに送信すると、このパケットは内部でルーティングされ、ネットワーク経由で送信されることはありません。それは99.99%のケースで正しいことです。 場合によっては、ネットワーク構成をテストするときに、マシン自体をターゲットとして、マシン自体からローカルリンク経由でパケットを送信すると便利です。これどうやってするの?少なくともポイントツーポイントリンクでない場合は、イーサネットなどのバスタイプリンク。興味があるのはIPパケット(IPv4とIPv6の両方)だけです。

7
同じ端末コマンドを使用して、LANの内外からのSSHアクセス
Raspberry Pi(RPi)を使用していて、sshを使用してRaspberry Piにリモート接続しています。ローカルエリアネットワークとインターネットの両方から(ルーターで開いた特定のポートを使用して)RPiにアクセスできるように、sshを正しく設定できました。 ユーザー名johnと次の名前のRPiを想定しますraspi。 内部LANアクセス ssh john@192.168.2.7 ssh john@raspi ssh raspi 外部LANアクセス ssh -p 1234 john@12.345.67.89 ssh -p 1234 12.345.67.89 しかし、どうすれssh raspiばLANの外から簡単に実行できますか?LAN内とインターネット上の2つのIPアドレスを指すようにraspiを構成する方法はありますか? 基本的に私が望んでいるのは、家にいるか仕事に関係なく、RPiに単一の方法でアクセスすることです。

3
VOBファイルをaviファイルに変換する方法
Ubuntu 13.10でDVDからコピーしたVOBファイルをaviファイルに変換しようとしています。私が試したdvdripフレームカウントエラーか何かのために失敗しました、。私もacidripを試しましたが、それはいつも私が使いたくないオーディオトラックを選びました。コマンドラインソリューションを使用して、次の機能を持つaviファイルを作成したいと思います。 mplayerで使用可能(つまり、step関数を使用) 必要に応じて字幕付き(または誰もいない) 正しいオーディオトラックで ビデオとオーディオの同期 私はいくつか試したffmpegし、avconvコマンドをしてAVIファイルを作成するために管理しますが、映像と音声が同期していcompletlyました。では、VOBファイルをaviファイルに変換するには、どのオプションを使用すればよいですか? 提案されたオプションについての説明をお願いします! 追加情報: このffmpegコマンドは、入力ファイルに対して次の出力を提供します Input #0, mpeg, from 'Videos/Test/VIDEO_TS/VTS_01_1.VOB': Duration: 00:04:53.32, start: 0.045500, bitrate: 29284 kb/s Stream #0.0[0x1e0]: Video: mpeg2video (Main), yuv420p, 720x480 [PAR 8:9 DAR 4:3], 7500 kb/s, 27.68 fps, 59.94 tbr, 90k tbn, 59.94 tbc Stream #0.1[0x82]: Audio: ac3, 48000 Hz, 5.1, …

1
古いフロッピーイメージファイル(.ima形式)のマウント-どれくらい難しいですか?
mountArchLinuxで.ima形式のフロッピーイメージファイル(.imgのようなフロッピーへの生のダンプ)にアクセスしようとしています。 このファイルは、30のセットの一部です。ブート可能ではなく、セットの続きです。インストールやクローニングのための操作ではありません。ディスクの他のデータに含まれているドキュメントに興味があります。 画像ファイル情報 この画像ファイルに関する情報は次のとおりです。 # file U19.IMA U19.IMA: PC formatted floppy with no filesystem # fdisk -lu U19.IMA Disk U19.IMA: 1.4 MiB, 1474560 bytes, 2880 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 …

2
どうすれば殺しにくいプロセスを作成できますか
(root権限で)起動すると(管理者でも)停止しにくいプログラムを作成したい。いったん開始すると、プロセスは、停止するように要求されるまで、起動時にそれ自体を開始し続けるはずです。停止プロセスには時間がかかるはずです(つまり、コストがかかるはずです)。 これは悪意のあるソフトウェアのように聞こえるかもしれませんが、本当の理由でそれが欲しいです。自分のラップトップ(管理者)でサイトブロッカーを実行したい。そして、私がそれらを止めることを困難にしたいと思います。 私が考えた解決策は次のとおりです- プロセスは実行されるたびに異なる名前で実行する必要があるため、プロセス名を予測して強制終了することはできません。 プロセスはシャットダウン時に自身を/etc/rc5.dに保存します プロセスは、既知の場所にある暗号を使用してその名前を暗号化します。停止プロセスは、ブルートフォースを使用してプログラム名を回復し、強制終了する必要があります。 このタスクの良い解決策を見つけたいのですが。
10 security  process  kill 

1
sshを実行して切断すると、継続中の操作はどうなりますか?
mvコマンドを使用して、あるディレクトリを別のディレクトリに移動しています。 しかし、私は自分のコンピューターをシャットダウンすることを余儀なくされました。つまり、サーバーへの接続が失われました。 mvコマンドはどうなりますか? 注:再ログインした後、接続を閉じたときに移動されなかったことが確認されていても、すべてのファイルが適切に移動されていることがわかりました。mvは実行を続けたようです。 これは私がsteadfast.netクラウドサーバーのcentoshマシンにsshすることです。
10 ssh 

4
ファイルを分割して、対応するデータ構造に入れますか?
以下の1行を含むファイルがあります。 {machineA=[0, 1024, 4, 1028], machineB=[1, 1025, 5, 1029]} ここには2つのデータセットがあります。 machineA=[0, 1024, 4, 1028] machineB=[1, 1025, 5, 1029] ここで、上記のファイルを読み取り、上記のように各マシンの情報を抽出していくつかのデータ構造に格納できるように分割する必要があります。 現在、bashシェルスクリプトでどのデータ構造を使用すればよいか混乱しています。これをJavaで実行している場合は使用しますMap<String, Set<String>>が、シェルスクリプトで何を使用すればよいかわかりません。 そして、それを何らかのデータ構造に格納した後、それを反復して結果を出力する必要があります。 以下のシェルスクリプトを使用して上記のファイルを読み取ることができます。 #!/bin/bash while read -r line; do echo "$line" done < data.txt しかし、私は上記のラインデータをどのように分割して、各マシン情報を抽出し、それをいくつかのデータ構造に格納できるかわかりませんか? 更新:- 以下は、glennの提案に従って作成したシェルスクリプトです。 #!/bin/bash while read -r line; do echo "$line" declare -A "$( echo "x=(" …

3
mutt:表示するヘッダーを定義します(作成中)
でメッセージを作成するとmutt、次のヘッダーが表示されます。 From: To: Cc: Bcc: Subject: Reply-To: Fcc: ~/.mail/sent Mix: <no chain defined> Security: None Mix:ヘッダーの目的がわかりません。また、ヘッダーが必要になることもないと思います。同様に、Reply-To:ヘッダーを編集する必要はありません。 これら2つの役に立たないラインが貴重なスペースを占めています。これらのヘッダーを完全に削除することは可能ですか?作成メニューに表示するヘッダーを指定できますか?
10 mutt 

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