Unix & Linux

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

1
mkfs.vfatの「v」はなぜですか?
インターネットの記事を読んで、次のコマンドでパーティションをFAT32にフォーマットします。 sudo mkfs.vfat -F 32 /dev/sdXn 今、私はのためのマニュアルページを読んで、mkfs.vfatそれは。のmkfs.fatないコマンドの名前として表示されvます その後、なしでパーティションをフォーマットしてみましたがv、期待通りに機能しました。なぜ、mkfs.vfat代わりに同義のコマンドが呼び出されるのmkfs.fatですか? 編集:ああ、「SEE ALSO」man mkfs mkfs.vfatではなくin がリストされていmkfs.fatます。

2
JenkinsのDockerコンテナーでビルドを実行する方法
Jenkinsを使用して、DockerコンテナでC ++プロジェクトを構築しようとしています。Jenkinsでのビルド、またはJenkinsの外のコンテナでのビルドに問題はありません。 以下は私が試したものです。わかりやすくするために、ボリュームマッピングを省略しています。 事例1 次のコマンドは、シェルでビルドを正常に実行します。 docker run --rm --interactive=true --tty=true $IMAGE make ただし、Jenkinsで「シェルの実行」ステップとして実行すると、Dockerは次のエラーを返します。 cannot enable tty mode on non tty input 事例2 次のコマンドは前のものと似ていますが、対話機能を無効にします。 docker run --rm $IMAGE make Jenkinsはビルドを正常に実行できます。ただし、ビルドを中止すると深刻な問題が発生します。ビルドは直ちに中止としてマークされますが、コンテナはビルドが完了するまで実行を続けます。また、コンテナは終了後に削除されません。 シェルで実行すると、コマンドは正常にビルドされますが、コマンドを中断することはできません。また、コンテナは終了後に削除されます。 質問 JenkinsのDockerコンテナでビルドをきれいに実行し、ビルドを中止する機能を保持する方法を誰もが知っていますか? Docker呼び出しはスクリプト内にあり、簡単に抽出できないため、Jenkinsプラグインを使用することはオプションではありません。
18 tty  docker  pty  jenkins 

4
現在のシェルを確認するcheckbashisms準拠の方法
私.profileので、次のコードを使用して、ログインシェルが実際にBashである場合にのみBash関連のエイリアスと関数がソースされるようにします。 # If the current (login) shell is Bash, then if [ "${BASH_VERSION:-}" ]; then # source ~/.bashrc if it exists. if [ -f "$HOME/.bashrc" ]; then . "$HOME/.bashrc" fi fi 現在、シェル構成ファイル、スクリプト、および関数をバージョン管理下に置いています。また、最近、Bash固有の機能の恩恵を受けないカジュアルなBashismをシェルスクリプトから削除するプロセスを開始function funcname()しましたfuncname()。たとえば、に置き換えます。 シェルファイルリポジトリには、リポジトリ内の各ファイルでDebianのdevscriptsパッケージからユーティリティを実行するpre-commitフックを設定し、Bash固有の構文を誤って導入しないようにしました。ただし、これによりmyのエラーが発生します。checkbashismssh.profile possible bashism in .profile line 51 ($BASH_SOMETHING): if [ "${BASH_VERSION:-}" ]; then 私は、どのシェルが実行されているかをチェックする方法があり、それが警告をトリガーしないかどうか疑問に思っていましたcheckbashisms。 POSIXによってリストされたシェル関連の変数のリストをチェックして、現在のシェルを表示するために使用できることを期待しました。また、インタラクティブなDashシェルで設定された変数を調べましたが、適切な候補を見つけることができませんでした。 現時点では、.profile処理対象から除外していますcheckbashisms。小さいファイルなので、手動で確認するのは難しくありません。ただし、問題を調査した後、実行中のシェル(または少なくともcheckbashisms失敗を引き起こさない方法)を判別するPOSIX準拠のメソッドがあるかどうかを知りたいと思います。 さらなる背景/説明 …

3
nmapは、特定のポートが開いているホストのみを表示できますか?
nmapSSHとHTTPの両方を開いているローカルネットワーク上のすべてのホストを一覧表示できますか?そのためには、次のようなものを実行できます。 nmap 192.168.1.1-254 -p22,80 --open ただし、これはすべてのポートを開いているホストを一覧表示しますが、すべてのポートを開いているホストを希望します。さらに、出力は非常に詳細です。 # nmap 192.168.1.1-254 -p22,80 --open Starting Nmap 6.47 ( http://nmap.org ) at 2015-12-31 10:14 EST Nmap scan report for Wireless_Broadband_Router.home (192.168.1.1) Host is up (0.0016s latency). Not shown: 1 closed port PORT STATE SERVICE 80/tcp open http Nmap scan report for new-host-2.home (192.168.1.16) Host …
18 ip  tcp  scanner  nmap 

2
マウントされた共有フォルダーにファイルを保存するにはどうすればよいですか?
UbuntuホストでFedoraワークステーション仮想マシンを実行しています。ゲストに フォルダーを作成し、linux-kvmの指示に従って/home/cl/share共有フォルダー/media/cl/system/virtual/shareをルートとしてマウントしました。 mount -t 9p -o trans=virtio,version=9p2000.L /host /home/cl/share 共有フォルダーからファイルやフォルダーにアクセス(読み取り)できますが、書き込みはできません。 例:ファイルmount-share.txtをフォルダーに保存しようとしています/home/cl/share。 両方のフォルダー(ホストとゲスト)に読み取り/書き込み権限がありますが、エラーが表示されます Error opening file '/home/cl/share/mount-share.txt': Operation not permitted. ホストオペレーティングシステム:Ubuntu 15.10デスクトップ64ビット ゲストオペレーティングシステム:Fedora 23ワークステーション64ビット 仮想化ソフトウェア: qemu qemu-kvm virt-manager ホストシステムの場所:最初の組み込みSSD-ext4形式 仮想ストレージの場所:2番目の内蔵HDD-NTFS形式 共有フォルダーの場所:2番目の内蔵HDD-NTFS形式 ゲストとホスト間でディレクトリを共有し、ゲストに読み書きアクセスを許可するにはどうすればよいですか? sudo chmod a+x /media/cl そして sudo chmod -R 777 /media、状況は変化しませんでした。 ゲストシステム: ls -la /home/cl/share total 16 drwxrwxrwx. 1 cl …
18 kvm  qemu  virt-manager 

9
最初の行を除いて、ファイルから余分なヘッダー行を削除します
このおもちゃの例のようなファイルがあります。実際のファイルには400万行ありますが、そのうち約10行を削除する必要があります。 ID Data1 Data2 1 100 100 2 100 200 3 200 100 ID Data1 Data2 4 100 100 ID Data1 Data2 5 200 200 最初の行を除いて、ヘッダーのように見える行を削除します。 最終ファイル: ID Data1 Data2 1 100 100 2 100 200 3 200 100 4 100 100 5 200 200 これどうやってするの?

1
Postfixメールログに「NISドメインが設定されていません」と表示され続ける
PostfixとDovecotを使用して新しいメールサーバーをセットアップしました。私はトラブルシューティングを行ってきましたが、この行はログ(特に、mail.infoとmail.log)に表示され続けます。NISドメインとは何ですか?また、問題を修正するにはどうすればよいですか? postfix/smtpd[6107]: warning: dict_nis_init: NIS domain name not set - NIS lookups disabled
18 logs  postfix 

3
[“ $ {1:0:1}” = '-']の意味
MySQLプロセスを起動する次のスクリプトがあります。 if [ "${1:0:1}" = '-' ]; then set -- mysqld_safe "$@" fi if [ "$1" = 'mysqld_safe' ]; then DATADIR="/var/lib/mysql" ... このコンテキストで1:0:1はどういう意味ですか?
18 linux  bash  shell 

2
仮想マシンを使用してLinuxモジュールの開発/テストは安全ですか?
私はオペレーティングシステムクラスにいます。カーネルコードを修正する作業を行う必要があります。悪いコードを書いて、すべきではない場所に上書きする可能性があるため、テストにはパーソナルマシンを使用しないことをお勧めします(これはインストールを意味すると思います)。安全のため、ラボ内のマシンにアクセスできます。 VMを使用してテストする場合、潜在的に安全でないコードからホストシステムを保護しますか?私は本当に学校のシステムにこだわる必要はありません。スナップショットが役立ちます。 それでもリスクが高い場合、安全にテストするために考慮する必要があるものについての提案はありますか? まずはlinuxmintのようなものを使用します。現在のプロジェクトの内容を確認したい場合:http : //www.cs.fsu.edu/~cop4610t/assignments/project2/writeup/specification.pdf

2
zshでコマンドを太字で表示するにはどうすればよいですか?
入力したコマンドが太字で表示され、コマンドの出力が通常の太さで表示されるようにbashシェルを設定しました。 これ\e[01mを行うには、PS1変数の最後に太字を追加して、それを使用trap DEBUGして無効にします。 trap 'printf "\e[0m" "$_"' DEBUG そうすれば、\e[0m各コマンドが実行される前にが印刷され、出力で通常のフォントの太さが得られます。 同じ効果を得るにはどうすればいいzshですか?
18 zsh  colors  prompt 

5
`time`の出力をファイルに書き込みます。なぜ括弧が必要なのですか?
timeに書き込みますstderrので2>&1、コマンドラインに追加すると出力がルーティングされるべきだと思いstdoutます。しかし、これは機能しません: test@debian:~$ cat file one two three four test@debian:~$ time wc file > wc.out 2>&1 real 0m0.022s user 0m0.000s sys 0m0.000s test@debian:~$ cat wc.out 1 4 19 file かっこでのみ機能します: test@debian:~$ (time wc file) > wc.out 2>&1 test@debian:~$ cat wc.out 1 4 19 file real 0m0.005s user 0m0.000s sys 0m0.000s この場合、なぜ括弧が必要ですか?なぜ単一のコマンドtime …

6
シンボリックリンクのエイリアスと同等ですか?
ホームフォルダー内のいくつかのディレクトリを頻繁にジャンプして、それらの作成にうんざりする必要があることに気づきました。従来はシンボリックリンクであった、より迅速なアプローチが必要です。 ただし、ホームディレクトリを多数のシンボリックリンクで煩雑にしたくありません。~/links/ディレクトリを作成し、シンボリックリンクで混乱させることもできますが、それでもいです。また、毎日変更するシンボリックリンク(.bashrcで定義)を作成して、現在のディレクトリにジャンプすることもできます。 シンボリックリンクを効果的にエイリアスし、クイックナビゲーションのリンクとして認識されるもののls、ホームディレクトリを実行しても実際には表示されず、現在のセッションを超えて持続しないものを作成する方法はありますか?


4
tarとそのキー文字:バグか機能か?
これらの2つのコマンドの違いを尋ねるのが不思議です(つまり、オプションの順序のみが異なります)。 tar -zxvf foo.tar.gz tar -zfxv foo.tar.gz 最初のものは完全に実行されましたが、2番目のものは言いました: tar: You must specify one of the `-Acdtrux' or `--test-label' options Try `tar --help' or `tar --usage' for more information. そして、タール--test-labelと-zfxv言った: tar (child): xv: Cannot open: No such file or directory tar (child): Error is not recoverable: exiting now tar: Child returned …

6
実行時に変数を引用する必要がありますか?
シェルスクリプトの一般的なルールは、やむを得ない理由がない限り、変数を常に引用することです。あなたがおそらく知りたいと思うより多くの詳細については、この素晴らしいQ&Aを見てください:bash / POSIX shellsで変数を引用するのを忘れることのセキュリティの意味。 ただし、次のような関数を検討してください。 run_this(){ $@ } $@そこに引用されるべきかどうか?少し遊んでみましたが、引用符がないことが問題を引き起こすケースを見つけることができませんでした。一方、引用符を使用すると、引用符で囲まれた変数としてスペースを含むコマンドを渡すときに中断します。 #!/usr/bin/sh set -x run_this(){ $@ } run_that(){ "$@" } comm="ls -l" run_this "$comm" run_that "$comm" 上記のスクリプトを実行すると戻ります: $ a.sh + comm='ls -l' + run_this 'ls -l' + ls -l total 8 -rw-r--r-- 1 terdon users 0 Dec 22 12:58 da -rw-r--r-- 1 …

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