Unix & Linux

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

4
名前に特定の文字列があるディレクトリ内のファイルをカウントしますか?
次のファイルがあります。 Codigo-0275_tdim.matches.tsv Codigo-0275_tdim.snps.tsv FloragenexTdim_haplotypes_SNp3filter17_single.tsv FloragenexTdim_haplotypes_SNp3filter17.tsv FloragenexTdim_SNP3Filter17.fas S134_tdim.alleles.tsv S134_tdim.snps.tsv S134_tdim.tags.tsv snp名前に単語(大文字と小文字を区別)が含まれているファイルの数を数えたい。使ってみた grep -a 'snp' | wc -l しかし、私はそれgrepがファイル内を検索することに気づきました。ファイル名をスキャンするための正しいコマンドは何ですか?
12 bash 

2
コマンド履歴の変更を元に戻す方法は?
UNIXシステムでは、上下の矢印キーを押して、前のコマンドに移動できます。これは非常に便利です。 時々、上に行って、もう一度使用したいコマンドを見つけますが、いくつかのバリエーションがあります。このような変更を行った場合、でチェックしない限り、元のコマンドを元に戻す方法がありませんhistory。 キーを使用してアクセスした履歴のコマンドへの変更を「元に戻す」方法はありますか? 現在の回避策は#、コマンドの前にa を付加することです。このように、現在のコマンドはコメントとして実行されるため、何も起こりません。その後、キーを使用してコマンドをもう一度参照できます。問題は、私が使用していたコマンドがリストの中で遠く離れている可能性があることです。そのため、もう一度200回上がれば少しです。Control + Rも解決策ではありません。私が探していたものを正確に覚えていない可能性があるためです。 例 次の「50コマンド前」を入力しました。 ls -l /etc/httpd/conf/ 今、私はその行に行き、それをに変更しました ls -l /etc/init.d/ Enterキーを押しませんでした。さて、ls -l /etc/httpd/conf/また行きたいです。 私の環境 $ echo $SHELL /bin/bash $ echo $TERM xterm

3
「systemctl disable」を使用せずにサービスを無効にする方法
別のサービスが失敗したときにのみ実行したいサービスがあります([Unit] OnFailure=foo)が、このサービス(foo)が起動時に自動的に起動しないようにしたい。1つのオプションは実行systemctl disable foo中ですが、別の方法を探しています。 背景:私はOSイメージを作成していますが、マシンを起動してそのコマンド(systemctl disable foo)を実行し、イメージをfinalと宣言する前にシャットダウンする必要はありません。
12 systemd 

4
cgroupの管理にはrootアクセスが必要ですか?
2つの異なるオペレーティングシステム(UbuntuとCentOS)のコントロールグループを操作しようとしています。聞きたいことはほとんどありません。 cgcreateコマンドを使用してコントロールグループを作成しようとしていますが、マシンでrootアクセスが必要なようです。これまでに見た例はすべて、コントロールグループを作成または変更するためにrootユーザーになる必要があることについて何も述べていません。 rootユーザーである必要は本当にありますか?最終目標は、libcgroup APIを使用してリソースを制御するための制御グループを作成および管理するC ++アプリケーションを作成することです。ただし、C ++アプリケーションはrootユーザーによって実行されることはありません。通常のユーザーである可能性があります。


2
ブランドボットとは何ですか?
Centos 7で実行されている「brandbot」サービスとは何ですか?それは何をするためのものか?私が見つけることができるすべて(マンページはありません)は「柔軟なブランディングサービス」であり、それは「ベース」リポジトリの一部です。
12 centos  services 

2
root以外のユーザーがインスタンスを使用してsystemdサービスを制御できるようにするにはどうすればよいですか?
dbaグループのユーザーがdatabase@サービスを制御できるようにする必要があります。この関連する質問に対する答えsystemctlは、sudoersファイルに許可したいすべての「動詞」をリストすることですが、システムに存在する可能性のあるデータベースが事前にわからないため、私のケースには当てはまりません。たとえば、私がリストした場合 %dba = /usr/bin/systemctl start database@awsesomeapp %dba = /usr/bin/systemctl start database@anotherawsesomeapp %dba = /usr/bin/systemctl start database@yetanotherawsesomeapp %dba = /usr/bin/systemctl start database@wowyetanotherawsesomeapp # ... other "verbs" omitted for brevity 将来存在する可能性のあるインスタンスは対象外であり、dbaは $ sudo systemctl start database@omgwowyetanotherawsesomeapp とにかく、私は特定のシステムをいじるよりも、パッケージの点で多くのことを考えています。 別の関連する質問に対するこの驚くべき回答に示されているように、これにsudoグロブを使用することは、最終的に安全ではないことに注意してください。 %dba ALL = /usr/bin/systemctl start database@[a-z]* # UNSAFE! 許可します $ sudo systemctl start database@awsesomeapp …


3
リストの最後の行だけを表示する方法は?
リストを作成し、一時的な属性でファイルを並べ替えるとします。 ls -ltr -rwxrwxrwx 1 bla bla 4096 Feb 01 20:10 foo1 -rwxrwxrwx 1 bla bla 4096 Feb 01 20:12 foo2 . . . -rwxrwxrwx 1 bla bla 4096 Mar 05 13:25 foo1000 リストの最後の行だけを取得するには、パイプチェーンのls -ltrの後ろに何を追加すればよいですか?私はsedとawkがあることを知っていますが、それらの使用方法はわかりません。何ができるかしかわかりません。
12 command-line  sed  awk  ls 

7
完全にRAMにロードできるLinux OSはありますか?
PCに32 GBのメモリがあります。これはLinux OSには十分です。光学ディスクまたはUSBディスクを介してブートし、完全にRAM内で実行できる使いやすいバージョンのLinux(Ubuntuが望ましい)はありますか?ライブディスクをハードディスクで起動できることは知っていますが、まだディスクからデータが流れており、読み込みに時間がかかります。すべてをRAMにロードして、そこから実行して、完全に揮発性にしたいのですが。作成する必要のあるファイルはすべてUSBディスクに保存されます。 私はhttp://en.wikipedia.org/wiki/List_of_Linux_distributions_that_run_from_RAMを知っていますが、これらはすべて少しのRAMに依存しています。これらのライトバージョンではなく、Ubuntuのようなものを好みます。
12 ram  ramdisk 

2
tmuxでByobuを使用するときにVimでCtrl +矢印キーを使用すると問題が発生する
Vimでは、Ctrl +矢印キーで単語をスキップするように設定していました。これは、gnome-terminal内でVimを実行する場合にうまく機能します。 ただし、byobu(tmux)を使用すると、奇妙な動作を示します。カーソル以降のすべてが削除されます。 参考までに、これらは私のvim設定です: :inoremap <C-Left> <C-\><C-O>b :inoremap <C-Right> <C-\><C-O>w
12 tmux  byobu  vim 

3
パイプするtarですが、-v詳細出力はSTDERRとは別にしてください
通常のtarコマンド tar cvf foo.tar ./foo >foo.out 2>foo.err 3つの出力IOストリームがあります データをfoo.tarにアーカイブする STDOUTへのファイル名のリスト(foo.outにリダイレクトされる) STDERRへのエラーメッセージ(foo.errにリダイレクトされる) 次に、ファイル名のリストを読む必要なく、エラーメッセージについてfoo.errを検査できます。 アーカイブデータで何かをしたい場合(netcatまたは特別な圧縮プログラムにパイプを介して)、tarの-f -オプションを使用でき ます。 tar cvf - ./foo 2>foo.err | squish > foo.tar.S しかし、tarの-v出力は明らかにSTDOUT(アーカイブデータが流れる場所)に行くことができないため、ファイル名のリストはエラーメッセージと混在しています。 Kornシェルを使用して、アーカイブストリームを別のコマンドにパイプ処理しながら、-vエラーメッセージとは別に出力をキャプチャするコマンドを作成する方法はありますか。
12 tar  ksh  io 

2
GNU Linux(Arch Linux)上のSIGINFOがない
私はアプリケーションを開発していますが、必要に応じていくつかのランタイム統計をコンソールに出力したいと考えています。killすぐに信号が浮かんできました。 WikiでUnixシグナルを読むSIGINFOことは、次の理由で進むべき道のようです。 それはされて意図これらの目的のために シグナルハンドラが実装されていない場合はプロセスを終了しません(逆にSIGUSRx- ここを参照) ただし、の出力を調べるkill -lと、サーバーにこの信号が実装されていないようです。 私の質問は: なぜSIGINFO私のシステムにはないのですか?すべてのGNU Linuxシステムに存在しませんか? この信号を有効にする簡単な方法(つまり、カーネル/ glibc再コンパイルなし)はありますか?ない場合、難しい方法は何ですか? ターゲットプロセスで処理されない場合に副作用を引き起こさない、目的に使用できる代替シグナルは何ですか?(glibcのマニュアルで他の適切な信号を見つけることができなかったので、私はすでに何も想定していません) Linuxメタ情報: Linux whatever 3.18.2-2-ARCH #1 SMP PREEMPT Fri Jan 9 07:37:51 CET 2015 x86_64 GNU/Linux 更新:なぜこの信号が条件付きでBSD以外のシステムから除外されるのかについての詳細をまだ探しています(以下のコメントを参照)。信号は多くの目的に非常に役立つようですので、それがただの気まぐれの問題であると私が信じるのは難しいです-それで、この信号がLinuxで利用可能になる本当のショートッパーは何ですか?
12 linux  signals  glibc 

1
「NO-CARRIER」と「DOWN」は無線インターフェースにとって何を意味しますか?
リモートサーバーがあり、サーバーがインターネットにアクセスできないときに、特定のコマンドの出力をログに記録します。 ワイヤレスインターフェイスを使用してインターネットに接続します。 動作状態では、次の出力がip link list表示されます。 3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT qlen 1000 link/ether 00:13:ef:b0:29:74 brd ff:ff:ff:ff:ff:ff それが機能していないときは、ip link listショーの出力: 3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DORMANT qlen 1000 link/ether 00:13:ef:b0:29:74 brd ff:ff:ff:ff:ff:ff これは無線インターフェースにとって何NO-CARRIERをDOWN意味しますか?イーサネットの場合、これはケーブルが切断されていることを意味します。 また、接続が機能しなかった理由をさらにデバッグする方法についてアドバイスをいただければ幸いです。wicd-cli -y -l停止中にもスキャンを行っていますが、アクセスポイントがまだブロードキャストしているようです。カーネルメッセージで他のハードウェアまたはソフトウェアのエラーを見つけることができません。

2
ネットワークドライブの/ etc / fstabを適切に編集する方法
起動時にネットワークドライブを編集して自動的にマウントしようとしています/etc/fstabが、機能しません。 これを実行すると、 sudo mount.cifs //192.168.0.67/test /home/pi/test -o username=myname,password=123 それは素晴らしい働きをします。しかし、私はで同じように適切に書く方法がわかりません/etc/fstab。

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