Unix & Linux

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

2
Tmuxステータスバーシェルコマンドでの環境変数の使用
3つのタイムゾーンを表示するtmuxステータスバーを作成しようとしています US Eastern Time :: UTC :: Central European Time。TZ環境変数を使用すると、dateコマンドは指定されたタイムゾーンの時刻を表示します。 私はこのtmux.conf設定でそうしようとしました: set -g status-right "#[fg=white]#S #I:#P #[fg=yellow]:: %d %b %Y #[fg=green]:: #(TZ=America/New_York date +%H:%M) :: #(date -u +%H:%M) UTC :: #(TZ=Europe/Belgrade date +%H:%M)" ただし、パスTZ=fooはの内部では機能しません#(…)。(私dateは期待したものの代わりにサーバーを取得します)。助言がありますか?

2
デフォルトで拡張正規表現モードを使用してsedにならないのはなぜですか?
私はsedを使用しています。私の知る限りでは正しい正規表現を使用していましたが、sedは何もしませんでした。私が\s+理解できないsed を使用していたことがわかりました、そして私が[ ]+それに切り替えたときはうまくいきました。 要約すると、私は正規表現を作成しました。それを機能させるには、ほとんどすべてをエスケープし\s、空白を削除する必要がありました。これらすべてを回避するモードがあるようです-rので、私は尋ねたかった: なぜ-rsedのデフォルトモードではないのですか?すべてを脱出するためになぜそんなに多くのトラブルに行かなければならなかったのですか? manオプションが--posixあり、「POSIX.2 BREをサポートする必要がある」と述べています。これは何を意味しますか?NFA / DFAモード?

2
grub2の検索コマンドの--hintオプションは何をしますか?
http://www.gnu.org/software/grub/manual/grub.html#index-searchにあるsearchコマンドの公式GRUB2ドキュメントを探しています Command: search [--file|--label|--fs-uuid] [--set [var]] [--no-floppy] name Search devices by file (-f, --file), filesystem label (-l, --label), or filesystem UUID (-u, --fs-uuid). If the --set option is used, the first device found is set as the value of environment variable var. The default variable is ‘root’. The --no-floppy option …
10 grub2 

2
Vim-最後のシェルコマンドをキーにマップする
bashに送信された最後のコマンドを繰り返すようにLeader-Rをマップする方法はありますか? たとえば、Cファイルを使用する場合、:!makeやgccと入力せずにvimからプログラムをコンパイルして実行したいと思います。 特定のコマンドをキーにバインドできることはわかっていますが、他の種類のファイルでは機能しません。

2
パッケージのアップグレード後にファイルシステムを読み取り専用に再マウントできません
私のDebianシステムでは、/別のパーティションにマウントしてマウントしていread-onlyます。のみ/home/、/var/および/tmp/書き込み可能です。また、Pre-Invokeおよびも作成しましたPost-Invoke apt hook。これaptにより、パッケージがインストールまたはアップグレードされたときにシステムを自動的に書き込み用に再マウントしread-only、終了時に再マウントできます。 DPkg::Pre-Invoke {"mount -o remount,rw / ;}; DPkg::Post-Invoke {"mount -o remount / ;}; このセットアップ全体は、1つの例外を除いて適切に機能します。場合によっては、インストール/アップグレードプロセス中に、一部のサービスを再起動する必要があります。または、私の/マウント時の短いウィンドウで新しいファイルを開く必要がありread-writeますwrite。これらのファイルは、権限で開かれます。インストール/アップグレードが完了したら、私のPost-Invokeフックを返すエラー、それはない再マウントすることができるので/、バックにread-only。 この問題を解決する方法はありますか?この状況では通常サーバーを再起動する必要があるため、これは非常に煩わしいです。これは非現実的です。 編集 以下は、最新のパッケージアップグレードのログです。これにより、説明されたエラーが発生しました。 root@alpha# apt-get upgrade Reading package lists... Done Building dependency tree Reading state information... Done The following packages will be upgraded: base-files curl libc-bin libc6 libcurl3 libcurl3-gnutls libmysqlclient18 libssl1.0.0 locales multiarch-support mysql-client …
10 debian  apt  readonly 


2
自動マウント時のUSBドライブのアクセス許可
Debianには、ntfsフォーマットのUSBハードドライブを接続しようとしたときに、ディレクトリがrootに属しているため、通常のユーザーとしてそれに書き込むことができないという一般的な問題があります。 少し前に、uid=1000,gid=1000(またはuidとgidが何であれ)オプションを追加することで修正できることを読みました。これで問題は解決しますが、マルチユーザーシステムの場合、ドライブは常に同じユーザーに属し、それをマウントしたユーザーまたはログインしているユーザーではないため、少し厄介なように見えます。 Ubuntuを使用していたときから、これは問題ではなく、NTFSドライブを(GNOMEで)マウントでき、それらをマウントしたユーザーが書き込み可能であったことを覚えています。そのため、GNOMEは、ログインしたユーザーに与えられた権限でドライブをマウントできるようです。 しかし、今はDebian jessieでKDEを使用しています。アクティブなXセッションを持つユーザーの権限でドライブをマウントするようにコンピューターを構成できるかどうか疑問に思っています。

2
すべてのgpgサブキーパスワードを一度にキャッシュしますか?複数のgpgパスワードエントリの必要性を防ぎますか?
gpgパスワードを1回だけ入力して、すべてのサブキー(署名、復号化、認証)のロックを解除できますか? 現時点では、gpgパスワードを3回入力する必要があります(署名、復号、認証)。これは不便です。 私はシェルスクリプトを考え出そうとしました。 #!/bin/bash set -x set -e set +o history signing_key=77BB3C48 encryption_key=CE998547 tempfile="$(mktemp)" echo "test" > testfile unset passphrase || exit 1 read -sp 'Enter password. ' passphrase ; echo exec 3<<<"$passphrase" gpg2 --no-tty --use-agent --batch --yes --passphrase-fd 3 --sign-with "$signing_key" --clearsign "$tempfile" gpg2 --no-tty --use-agent --verify "$tempfile.asc" gpg2 …

3
損傷したハードドライブからデータを復元する:「フリーザートリック」
私は現在、損傷した---そして瀕死の---ハードドライブからデータを回復する仕事をしています(背景情報については、この質問を確認してください)。システムの実行中にドライブが落とされました。そして、馬鹿に私はtestdiskそれに走ろうとしていましたが、私は---私が想定しているもの---「死のクリック」を聞き始めました。 今、私は「フリーザートリック」(たとえば、AskDifferent、Unix SE、AskUbuntu)についていくつかの場所で読みました。その要点は次のとおりです(ただし、完全な指示を読んでください!): 破損したハードドライブをziploc冷凍バッグに入れて、湿気が入らないようにします(2つまたは3つのバッグを使用します。バッグが等温である必要はないことに注意してください)。 ラップしたハードドライブを冷凍庫に入れます ハードドライブを冷凍庫に少なくとも12時間置いてください 次に、ドライブをコンピュータに接続し、データのコピーを開始します ある時点で、ハードドライブは再び故障します。その場合は、すべてのデータがコピーされるか、ドライブが停止するまで、手順を繰り返します。 (現在、削除されたフリーザーのポストハードドライブが機能するように、SuperUserでは、フリーズする前に試す2つの代替医療策は次のとおりです。(1)「ハードドライブを滑らかな表面に置きます。端をつかんで物理的に回転させますユニット全体」、「ユニットをブレードの軸に沿って鋭く回転させる」、および(2)「ヘッドがクラッシュした場合は、ドライブを上下逆さまにして、一時的に稼働させることができます。ドライブを保持してください。ファイルをバックアップする間、上下を逆にします。」) 質問:瀕死のハードドライブからデータを救うための正当な戦略を凍結していますか?それとも、これは単にディスクを確実にブリックするためのファンシーな方法ですか? これは合法的である場合と、一つはそれを試みるべきである前にしようとddrescue、後にしようとddrescue、あるいは私は「冷凍庫のトリック」を組み合わせる必要がありますddrescue(と、関連するログファイル)?

1
GNU ls時間スタイルにカラーリングを含める
私は知っています、私はlsこのようにカスタム時間形式を指定できます ls -lAF --time-style="+ %Y-%b-%d %H:%M:%S" --color=always しかし、時間形式内で色を「密輸」したいと思います。たとえば、年2014を赤にしたいとします。どうすればいいですか? 色コード\033[0;31mをの前に配置しようとしました%Yが、コードは色として解釈されず、意味不明なものとして解釈されます。
10 terminal  ls 


2
zshのローカル変数:zshでのbashの「エクスポート-n」に相当するもの
変数のスコープをシェルに含めようとしていますが、zshで子にそれを表示させません。たとえば、これを.zshrcに入力します。 GREP_OPTIONS=--color=always しかし、次のようにシェルスクリプトを実行すると、 #!/bin/bash echo $GREP_OPTIONS 出力は次のとおりです。 --color=always 私はそれをnullにしたいのですが(上のシェルスクリプトはGREP_OPTIONS変数をまったく見ないはずです)。 bashでは、次のように言うことができますexport -n GREP_OPTIONS=--color=always。これをzshでどのように実現しますか?

2
ディレクトリ名を保持する環境変数のBashオートコンプリート
特にLinux Mint 14でbash 4.2.37を使用しています。 と入力して環境変数の名前をオートコンプリートするTabと、変数名の後にスペースが続きます。 変数の値がたまたまディレクトリ名である場合は、変数名の後にを続けて展開します/。 たとえば、次のように入力すると、 $ ls $HOM<tab> 次のように展開されます。 $ ls $HOME _ where _はカーソルの位置を示します。問題は、私はその後、通常私が入力しなければならないことを意味自分のホームディレクトリの下にいくつかのファイルまたはディレクトリの名前を入力し続けていきたいということでbackspace、その後と/。 私はそうしたい上記にまで拡大します。 $ ls $HOME/_ 変数名全体を入力したときにも同じことが起こります。の後ls $HOME、tabスペースを追加し、それに/。 (もちろん/、変数の値がディレクトリ名でない場合は、を追加したくありません。) bashコマンドを使用するか、bashコマンドを更新することで、bashに希望どおりの動作をさせることができる方法はありますか$HOME/.inputrc? 注:私は特にtab私が望むように動作させる方法を探しています。異なるキーストロークで同じ動作を実現する方法は興味深いでしょうが、私の質問には答えられません。 (/etc/profile.d/bash_completion.shシステムとの相互作用が不十分なため、システムで無効にしましたset -o nounset。簡単な実験により、これはおそらく私の質問には関係ないことが示されています。) ちなみに、tcshはこれを行います。環境変数$FOOBARを指定$FOOBA<tab>する$FOOBAR/と、ディレクトリを参照している場合は$FOOBAR(スペース付きで)参照している場合、タイピングは展開されます。いいえ、tcshに戻るように説得するには十分ではありません。zshもこれを行います。

1
PulseAudioをHDMI上の7.1サラウンドサウンドに設定するにはどうすればよいですか?
マシンをHDMI経由で受信機に接続しています。しかし、PulseAudioで3つ以上のチャネルを使用しようとすると、2つしか取得できません。pacmd list cardsはカードを示していますが、3つ以上のチャネルを持つHDMIプロファイルは表示していません。 ALSAを介して7.1サウンドが機能することを確認しました: pasuspender -- speaker-test -D hdmi -c 8 -m FL,FC,FR,RR,RRC,RLC,RL,LFE 部屋の周りを移動する静電気を生成します。
10 audio  pulseaudio  hdmi 

3
libusbはカーネルにどのようにアクセスしますか?
私が理解していることから: 一般的に言えば、ドライバーはカーネル空間で実行され、ユーザー空間から呼び出すことができます。 カーネル空間内のコードのみが、USB低レベルのものを呼び出すことができます/ ioctl libusb ライブラリなので、ユーザー空間でコンパイルして実行します では、どのようにしてlibusb低レベルUSBを実現するのでしょうか?
10 usb  drivers 

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