Unix & Linux

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

8
rsync警告を抑制する:転送される前にいくつかのファイルが消えた
次のような実行中のPostfixおよびCourierサーバーファイルをバックアップすると、大量の警告が表示されます。 file has vanished: /var/kunden/mail/username/name@mymail.de/tmp/courier.lock rsyncCronから実行するときにこれらの警告を抑制するにはどうすればよい/usr/bin/rsnapshot hourlyですか? どういうわけかそれらの日記を除外できますか? /var/kunden/mail/*/*/tmp/ tmpフォルダには、例えば、より深いだけでなくすることができます: file has vanished: /var/kunden/mail/username/name@mymail.de/.Presse/tmp/1353871473.M716135P32214_imapuid_36.test.de file has vanished: /var/kunden/mail/username/name@mymail.de/.Presse/tmp/courier.lock
14 rsync 


2
TeamViewerに代わるSSHリバーストンネルを介したリモートデスクトップ
SSH(リバース)トンネルを介してラップトップからデスクトップへのリモートデスクトップセッションを開きたい。それはシンプル(または少なくとも実行可能)である必要がありますか?これまで、私はTeam Viewerを使用してリモートデスクトップにログインしていました。Team Viewerなしで同様の結果を達成したいと思います。 SSHトンネルは次のようになります。 laptop--->nat--->middleman<--nat<--desktop すべてのマシンでLinuxが実行されています(主にKubuntu 12.04またはOpenSuse 12.3)。natルーターでポートを変更したり、構成を変更したりすることはできません。 SSHトンネルについて説明します。これは、私の質問の核心であるVNC /リモートデスクトップの問題を解決するために必要であると思われるためです。この脚について: middleman<--nat<--desktop ...それがどのように確立されているか: autossh -M 5234 -N -f -R 1234:localhost:22 user@middleman.com この脚について: laptop--->nat--->middleman 次のようにして仲介者に接続できます。 me@laptop:~$ ssh -i ~/.ssh/id_rsa admin@middleman ただし、実際に行う必要があるのは、仲介者ではなくデスクトップに直接接続することです。そのためには、仲介業者でnetcat( "nc")を使用します。基づいて、このことは、NCが必要であると表示されます。そこで、ProxyCommandとncを使用するようにラップトップでSSH構成ファイルを編集します。 me@laptop:~/.ssh$ nano config 内容は次のとおりです。 Host family_desktops ProxyCommand ssh middleman_fqdn nc localhost %p User admin PasswordAuthentication no IdentityFile ~/.ssh/my_id_rsa middleman_fqdn「middleman.com」のような場所 次に、1つのステップで「デスクトップ」に接続します。 …

5
キーワード境界を使用してファイルを分割する方法
多数のvcardを含むvcfファイルがあります。 Outlookにvcfファイルをインポートすると、最初のvcardのみがインポートされるようです。 したがって、それらを分割したいと思います。 vcardが次で始まることを考えると BEGIN:VCARD で終わる END:VCARD 各vcardを独自のファイルに分割する最良の方法は何ですか。 ありがとう 更新 すべての回答をありがとう。この性質の質問と同様に、猫の皮を剥ぐさまざまな方法があります。ここに私がやったものを選んだ理由があります。 切り上げする 以下に、各回答で気に入ったものと、そのうちの1つを選択するきっかけをまとめました。 csplit:この方法の簡潔さが本当に好きでした。ファイル拡張子も設定できるようになりました。 gawk:それは私がそれを求めたすべてをした。 paralell:働いた。しかし、新しいものをインストールする必要がありました。(また、私のホームディレクトリに新しい/ binディレクトリを作成することにしました) perl:連絡先の名前に基づいてvcfを作成したことが気に入った。しかし、-oオプションは実際には機能しませんでした 結論 最初に行ったのperlは、少し壊れていたからです 次はparalell、新しいものをインストールしなければならなかったからです 次はcsplit、私が見る限り、出力ファイルに拡張子を作成できないためです そのため、賞はgawkに贈られます。これは、すぐに利用でき、ファイル名を少し変更して変更できるほど十分に汎用性のあるユーティリティであるためです。ボーナスマークcmpも:)
14 files  split 

2
Setuidビットはbashに影響を与えないようです
私は少し実験していて、奇妙なことに気付きました:にあるbashのコピーにsetuidビットを設定/usr/bin/bash-testしても効果がないようです。のインスタンスを実行したときbash-test、ホームディレクトリがに設定されておらず/root、whoamiコマンドを実行したときにbash-test、ユーザー名が報告されず、rootとして実行されていないrootことbash-testが示唆されました。ただし、setuidビットをonに設定するwhoamiと、予想どおりシェルのルートとして報告されました。 setuidビットもオンに設定してみて/usr/bin/bash、同じ動作を観察しました。 setuidビットを設定すると、bashがrootとして実行されないのはなぜですか?selinuxはこれと何か関係がありますか?
14 linux  bash  setuid 

5
年に基づいてファイルを移動する方法
1年ごとにファイルを移動する必要があります。findコマンドを使用しました find /media/WD/backup/osool/olddata/ -mtime +470 -exec ls -lrth {} \;|sort -k6 しかし、このコマンドを正常に実行するには、正確な値を知る必要がありmtimeます。2012年を指定できる場合は、2012年に関連するファイルのみが提供されます。 だから私は方法についてのアドバイスが必要です 2012年などの年に基づいてファイルを検索し、他のディレクトリに移動します。 OS release 5.2 FIND version GNU find version 4.2.27 Features enabled: D_TYPE O_NOFOLLOW(enabled) LEAF_OPTIMISATION SELINUX
14 find 

7
ファイルから複数の空白行を削除する方法は?
メモを作成するために使用するテキストファイルがいくつかあります-単なるプレーンテキストで、通常は単にを使用しcat >> fileます。ときどき、空白行または2行(ちょうど戻る-改行文字)を使用して、新しい主題/思考の行を指定します。各セッションの最後に、Ctrl+ Dでファイルを閉じる前に、通常、セッションを分離するためだけに多く(5〜10)の空白行(リターンキー)を追加します。 これは明らかにあまり賢いものではありませんが、この目的には役立ちます。しかし、私はたくさんの不要な空白行で終わるので、余分な行(のほとんど)を削除する方法を探しています。いくつかのオプションで直接使用できるLinuxコマンド(カット、貼り付け、grep、...?)はありますか?また、誰かがsed、awkまたはperl(私はsedまたはawkが好きですが、実際にはスクリプト言語でも)のスクリプトを考えていますか?C ++で何かを書く(実際に自分でできる)のは、やり過ぎのように思えます。 ケース#1:必要なのは、連続する2行以上(3行以上)の空白行を削除し、それらを2行だけの空白行に置き換えるスクリプト/コマンドです。ただし、複数の行(2行以上)を削除したり、複数の空白行を1つの空白行に置き換えたりできるように調整できると便利です。 ケース#2:2行のテキスト間の単一の空白行を削除するスクリプト/コマンドを使用することもできますが、複数の空白行をそのまま残します(ただし、空白行の1つを削除してもかまいません)。
14 scripting  sed  awk  perl  filter 

2
異なるキーボードからの入力を区別する方法は?
デフォルトのキーボードとアプリケーション用に特別に設計されたキーボードで使用できるアプリケーションをPythonで作成したいと思います。ステッカー付きの小さな数字キーボードを使用して、さまざまなキーにアクションを与えることで、単純に設計します。両方のキーボードはUSBで接続されます。 ただし、これらのキーが押されると、通常の信号(数字、演算子、および入力)のみがPythonに送信され、メインキーボードと特殊キーボードからの信号を区別できなくなります。 Pythonには(私が知る限り)この区別をする方法がないため、OS自体で行いたいと思います。Raspberry Pi用にプログラミングするので、Linuxになります。 したがって、主な質問:特定のキーボードのキーを他のキーコードに再マップするにはどうすればよいですか。他の目的には使用しないFキーを使用することを考えました。または、キーボード上に存在しない一部の文字(そのような文字がある場合)。 これはLinux / Unixで可能ですか?もしそうなら、どうすればいいですか?
14 linux  usb  keyboard 

3
接続されていないネットワークケーブルまたはサーバーのダウンをシミュレートする方法は?
netemを使用してネットワーク遅延をシミュレートしましたが、それは素晴らしいことです。次に、接続されていないネットワークケーブルまたはサーバーがダウンしたときをシミュレートします。アプリケーションのテストを簡単にするためにこれが必要であり、ウェブ上で私に役立つものを見つけることができませんでした。私のサーバーは仮想CentOSインスタンスであり、Virtualbox上にあります。これをphp Webページから行いたいです。
14 linux  shutdown 


1
GNU / Linux:オーバーレイブロックデバイス/スタッカブルブロックデバイス
GNU / Linuxには、dirsをオーバーレイするユニオンマウントがあります。したがって、読み取り専用ディレクトリの上に書き込み可能なディレクトリをマウントできます。書き込み可能なディレクトリがマウント解除されると、読み取り専用ディレクトリは変更されません。 ブロックデバイスにも同じ機能を探しています-できれば書き込み可能な部分をファイルに保存してください。だから私は次のようなものを実行したいと思います: device-setup /dev/newdevice /dev/read-only-device overlayfile / dev / newdeviceに書き込むと、変更はoverlayfileに保存されます。書き込まれたセクターを読み取る場合、overlayfileからデータを取得する必要があります。書き込まれていないセクターを読み取る場合、/ dev / read-only-deviceからデータを取得する必要があります。 そのようなツールは存在しますか?

6
.gzファイル拡張子なしでgzipファイルを作成する方法は?
元のファイル名を保持するgzip圧縮ファイルを作成したいと思います。たとえば、「example.txt」をgzippingすると、「example.txt.gz」ではなく「example.txt」という名前のgzip圧縮ファイルが出力されます。1つのコマンドでこれをエレガントに行うことは可能mvですか?
14 gzip 

5
2つの異なる単語が存在するファイルを検索する方法は?
同じファイルに2つの単語インスタンスが存在するファイルを検索する方法を探しています。私はこれまで、次の方法で検索を実行してきました。 find . -exec grep -l "FIND ME" {} \; 私が遭遇している問題は、「FIND」と「ME」の間にちょうど1つのスペースがない場合、検索結果がファイルを生成しないことです。「FIND ME」ではなく「FIND」と「ME」の両方の単語がファイルに存在する以前の検索文字列をどのように適合させるのですか? AIXを使用しています。
14 grep  find  search 

2
パッチを適用済みのハンクを無視する方法
コードに適用しようとしている非常に大きなパッチファイルがあります。問題は、私のパッチの変更の一部がすでにコードに存在していることです。既に適用されている変更をパッチが正常に無視するようにする方法はありますか? -Nオプションは、私がやりたいことはありません。既に適用されているハンクが検出されると、拒否ファイルが生成され、そのファイルにはそれ以上ハンクが適用されません。その塊を無視して、パッチの残りを適用し続けてほしい。.rejファイルを生成するのは、ハンクを適用できず、既に適用されていないように見える場合だけです。 これを行う方法はありますか?
14 patch 

3
dwmで水平分割を取り除くにはどうすればよいですか
私はdwm今日使用を開始しOpenBox、ウィンドウマネージャーに対する他の唯一の露出と同様に、頭を包み込もうとしています。 公式チュートリアルで提案されているように、私は最初にいくつかのターミナルを開き、最初のターミナルが左に押し出された状態ですべてがタイル化されました。 デフォルトのキーバインドで遊んで、多くのウィンドウやプログラムを開いたり閉じたりしました。私は、タグが何であるか、そしてそれらをどのように使用するかを取得しようとしてかなりの時間を費やしました。 しばらくしてタグ1に戻り、タイルモードではあるが、ウィンドウが次のような水平分割に変更されたことを確認します。 すべての新しいウィンドウが水平方向に追加されます。 既存のウィンドウのレイアウトを変更するための特定のキーバインドが表示されません(などtmux)。 それで、マスターが左側にありスタックが右側にあるデフォルトのタイルモードに戻すにはどうすればよいですか?
14 dwm 

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