Unix & Linux

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

4
凍結せずにジョブをバックグラウンドに配置
あなたはこのように仕事を始めるとしましょう foo そして、それをバックグラウンドに置きたいと望みます。Ctrl+ Zと入力するとbgトリックが行われますがfoo、Ctrl+ Zとの間でフリーズしbgます。最初にフリーズせずにfooをバックグラウンドに配置するにはどうすればよいですか?
9 bash 

3
カーネルセクション9のマンページに、関数、データ構造、およびヘッダーを文書化する方法を教えてください。
カーネルソースには、たとえば次のように文書化された関数とデータ構造が含まれていますpanic.c。 /** * panic - halt the system * @fmt: The text string to print * * Display a message, then perform cleanups. * * This function never returns. */ void panic(const char *fmt, ...) 毎回ソースを調べる代わりに、これらのAPIをマンページとして表示し、この既存のドキュメントフレームワークを活用すると便利です。 前述の関数とデータ構造を文書化したカーネルセクション9マンページ(/usr/share/man/man9)をどのようにインストール/作成しますか?

2
systemd Dockerコンテナーで環境変数を継承する
systemdを実行しているDockerコンテナーがあります。その下のアプリケーションに環境変数を渡したいのですが。 Docker内から(/sbin/initコマンドラインとして)systemdを起動すると、Dockerは変数をsystemdに公開しますが、子サービスには公開しません。systemd.setenv=...コマンドラインに追加すると、変数が渡されます。よりクリーンな解決策を探しています。 /sbin/init開始されたアプリケーションに渡された環境変数を公開するにはどうすればよいですか? % docker run -v /sys/fs/cgroup:/sys/fs/cgroup:ro --privileged -ti \ -e VAR1=1 motiejus/systemd_fedora20 \ init systemd.setenv=VAR2=2 ... Welcome to Fedora 20 (Heisenbug)! ... [ OK ] Reached target Multi-User System. [root@740690365eb0 ~]# env | grep VAR VAR2=2 VAR1=1コマンドの実行中に表示されることを期待しています。 言い換えれば、systemdはそれに渡された変数を、それが開始する子に渡すことができますか? Dockerfileについては、githubリポジトリを参照してください。

4
grepを使用して固定数の文字で文字列を照合する
を6使用してすべての文字の単語を検索しようとしていますgrep。私は現在これを持っています: grep "^.\{6\}$" myfile.txt :しかし、私はまたのような結果を取得していますことを発見していますétuis、étude。 e上記の言葉の上の記号に何か関係があると思います。 これが起こらないようにするために私ができることはありますか? ご協力いただきありがとうございます!

5
grepで正確な文字列を見つける
例として、私は多くのメールアドレスを含む大きなテキストファイルを持っています。bashを使用して、メールが存在する(または存在しない)ことを検索/確認する必要があります。「アンカー」(のみ)を使用する必要がありますか? grep '^user1@example.com' text_file またはより良い方法がありますか?bashスクリプトを作成する必要があり、安全を確保したいのですが。
9 grep 

1
公開鍵とPAMを使用したSSHの2要素認証
2要素認証を設定しようとしています。次の場合、ユーザーに正常にログインしてほしい: 公開秘密/公開キーが一致する(認証方法:publickey)またはパスワードが正しい 私のpam認証方法は成功しました。 2番目の認証方法はPAMファイルです。だから私はそれを/usr/lib/pam/に追加して追加auth required my_pam_module.soしました/etc/pam.d/sshd。 これまでのところ、(publickeyメソッド)または(パスワード、およびpamモジュールで必要なもの)を使用してログインできます。それで私は追加AuthenticationMethods publickey,keyboard-interactiveしました、/etc/sshd_configそして今、私は公開鍵、パスワード、そして「私に必要なものpamモジュール」を持っていることが要求されます。 上記で説明したことを達成するために、どの行を変更する必要がありますか?Mac OS X Mavericks(10.9)を使用しています。Macに慣れていない場合は、Linuxシステムでの作業にも役立ちます。


4
開いているすべてのウィンドウを強制終了する方法は?
デスクトップに表示されているすべてのウィンドウを閉じたいのですが。私はでこれを行うことを考えましたがpkill、一度に1つしか殺すことができませんでした。これは私が望んでいることではありません。最終目標は、これをスクリプトに入れてキオスクを実行することです。キオスクソフトウェアが実行されているかどうかを検出し(この部分がわかった)、実行されていない場合は、開いているすべてのウィンドウを強制終了して再起動しますキオスクソフトウェア。
9 x11  kill  logout  kiosk 

5
=記号の周りのスペースはいつ禁止されますか?
〜/ .bashrc では、代入で記号の前後にスペースを入れてはいけません=。 $ tail -n2 ~/.bashrc alias a="echo 'You hit a!'" alias b = "echo 'You hit b!'" $ a You hit a! $ b b: command not found MySQL構成ファイル/etc/my.cnfを確認しましたが、次のことがわかりました。 tmpdir=/mnt/ramdisk key_buffer_size = 1024M innodb_buffer_pool_size = 512M query_cache_size=16M =標識の周りのスペースに問題がないことをどのように確認できますか? この質問は/etc/my.cnfファイルに固有のものではなく、一般に* NIX構成ファイルに固有のものであることに注意してください。私の最初の傾向はRTFMですが、実際man mysqlには問題について言及していません。それぞれのケースでオンラインでハンティングする必要がある場合、どこにも行きません。確認するための慣習や簡単な方法はありますか?ご覧のように、複数の人がこのファイルを編集しており(=標識の規則は異なります)、スペースを使用しないように強制したり、構成されている可能性のあるすべての要素をチェックしたり、正しくない場合があります。 編集:私の意図は、現在構成されているファイルが適切に実行されるようにすることです。自分でファイルを設定するときは、パッケージのメンテナがそこに入れた規則に従っています。

2
LibreSSLを試すのは時期尚早ですか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 5年前休業。 LibreSSLの開発と最近のリリースについていくらかフォローしてきましたが、偶然にも最近、個人/趣味のプロジェクト用に構成している新しいFreeBSD Webサーバーがあります。でも、私はまだシステム管理者とUnixの重いものについてはかなりn00bishです。 security/libressl今は港があるようです。単なるシステム管理者である私がインストールした場合、OpenSSLを使用するよりもストレスをかけずにNginxを使用するようにNginxを構成できますか? OpenSSLを期待するようになった他のポートについてはどうですか?たとえば、configureに移動するとdatabases/mariadb55-server、OpenSSLを使用するオプションが表示されますが、LibreSSLは使用されません。LibreSSLをインストールした場合、そのライブラリはOpenSSLとして表示され、使用されますか、またはLibreSSLを明示的にサポートするためにMariaDBポートが更新されるのを待つ必要がありますか? より広い質問は、この時点でアマチュアのシステム管理者の観点から、LibreSSLとOpenSSLはどのように互換性があるのでしょうか?LibreSSLがより広く使用され、期待されるまで待つべきですか?

1
.docxファイルをプレーンテキストに変換し、改行を保持してソースドキュメントへの行番号参照を維持する:ハウツーと影響?
MS Wordのコンテンツをプレーンテキストにエクスポートして、text&fileユーティリティで使用します。MSソフトウェアで行番号付け機能が有効になっているという制約があり、最終出力の行番号への参照はすべてその番号付けと一致する必要があります。したがって、「番号付け行」を入力します。 (ポー、EA) 明らかにWordの場合、この種の番号付けは改行で改行せず、右マージン(または何か)の後の「行」を改行します。のようなスクリプトはdocx2txt、デフォルトではこれを考慮に入れていないようで、改行で改行します。したがってgrep -n、番号付けを使用すると、上記のように、行はソース行番号機能と一致しません。この場合、Perlスクリプトを編集してファイルを変換する方法をドキュメントから明確に明確にすることはできません。 our $config_newLine = "\n"; # Alternative is "\r\n". our $config_lineWidth = 80; # Line width, used for short line justification. 代用\nしてみました\r\nが、うまくいきません。そこで、次の設定でWordから直接ドキュメントをエクスポートすることにしました(v.2013,64pcでプレーンテキストとして保存)。 Unicode(UTF-8) (CR / LF)で改行と行末を挿入 文字の置換を許可する そして実際に、ファイルを使用する.txtと、ソース番号付け機能の行番号とgrep -n出力が完全に一致します。 私が知っている必要がある特定の構成/プロセス、docx2txtまたは私がしたようにWordに頼ることなく改行を維持しながら.docxファイルをプレーンテキストに変換できる同様のコマンドラインユーティリティはありますか? 改行やフォーマットに関して、MS Wordドキュメント(アクセント付き文字が含まれている場合があります)をプレーンテキストにエクスポートしてファイル/テキストユーティリティで使用する場合のベストプラクティスはどれですか。また、エクスポート用に選択した設定、つまりCR / LFの挿入に否定的な影響はありますか? サンプル 提案されているように、サンプルを提供します。このrar アーカイブでは、単純な段落を含む.docxファイルと、前述のオプションを使用してWordを使用してエクスポートされた.txtファイルをバンドルしました。後者はdocx2txt、ソースファイルのデフォルトの実行と比較できます。

2
端末からプリンタージョブを停止する
私は実際には自分のマシンではない古いCentOバージョン(5.0)を使用しています。 最近、暗い理由で印刷に問題があります。 ジョブはキューに残り、バーアイコンからキャンセルすることはできません。 端末コマンドをいくつか試してみましたが(cancel -a私が持っていないパスワードを要求し、lpq -aその他、私が本当に意味を知らないものについて尋ねます)、ジョブはまだプリンターアイコンで止まっています。 何か提案はありますか? 画像は私の状況と最初の回答でこれを修正できない方法を説明しています。 cronyは別のプリンタの名前ですが、私が使用しているのはcrustです。

1
いくつかの実行可能ファイルを扱うマンページを作成します
ほぼ同じ引数を受け入れる実行可能ファイルの束でアプリケーションをパッケージ化しています。一般的な説明と引数のリストを含むマンページを1つだけ記述(および提供)したいと思います。 要するに、私はそれをお願いします man execFoo man execBar 同じページを指します。 私は、2つの同一を生成する方法を知っているexecFoo.1とexecBar.1彼らは次善のようです。このパッケージをDebian用にリリースする予定なので、Debianパッケージチェーン(などdh_installmake)に依存するソリューションも問題ありません。
9 debian  man 

2
シェルパラメータ変数($ 1、…、$ @)をCLIで直接使用することは可能ですか?
場合によっては、上記の変数を小さな例でエミュレートして検証する必要があり、すぐにスクリプトなどにコピーできます。 次の方法で簡単な例を使用して解決しようとしました: (find $1) /tmp sh -c '(find $1) /tmp' sh -c "find $1" /tmp echo '(find $1) /tmp' | sh そして他の組み合わせで。また、シバンインタープリターディレクティブを追加して実験しました#!/bin/sh -xが、望ましい結果が得られませんでした。 これは簡単にできますか?

2
自宅から外部RDS TSGサーバーに接続できません
会社にはRDS(リモートデスクトップサーバー)TSG(ターミナルサービスゲートウェイ)サーバーがあり、従業員が自宅からRDSセッションに接続できるため、自宅から仕事用のRDSデスクトップを見ることができます。 これは、次の設定でWindows 7を使用している自宅のコンピューターで正常に機能します。 ただし、一部のユーザーはLinuxを自宅に持ち、freerdp 1.2.0を使用しようとしています。 次のコマンドを使用して社内LANに接続されたラップトップでこれをテストしましたが、正常に動作します。 $ xfreerdp /f /rfx /cert-ignore /v:farm.company.com /d:company.com /u:administrator /p: ただし、会社のLAN接続(つまり、ホーム接続)を使用していないラップトップでそのコマンドを使用しようとすると、次のようになります。 freerdp_set_last_error 0x2000C Error: protocol security negotiation or connection failure したがって、私はfreerdp 1.2.0の新しいTSGコマンドのいくつかを次のように使用しようとしていますが、これも機能しません。 TSG関連のコマンドは4つしか表示されません。 /g:<gateway>[:port] Gateway Hostname /gu:[<domain>]<user> or <user>[@<domain>] Gateway username /gp:<password> Gateway password /gd:<domain> Gateway domain 私が/g特定のシナリオで本当に使用する必要がある場所を読んだのですが、間違って読んだ可能性があります。 だから私がしようとすると: $ xfreerdp /f /rfx /cert-ignore /v:farm.company.com …

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