Unix & Linux

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

1
権限がmysqlログへの書き込みを拒否しました
私はVagrantで新しいUbuntu(Vivid 15.04)インストールをテストしていて、mysqlで問題が発生し、カスタムの場所にログを記録しています。 では/var/log/syslogI GET /usr/bin/mysqld_safe: cannot create /var/log/mysqld.log: Permission denied 私ls -l /varが得るなら drwxrwxr-x 10 root syslog 4096 Jun 8 19:52 log / var / logを見るとファイルが存在しません それが問題の原因であるかどうかを特定するために一時的にapparmorを無効にしたと思いましたが、それでも問題が発生しているかどうかはわかりません権限)。 mysqlとして手動でファイルを作成しようとすると、拒否されます(テストのためにbashアクセスを一時的に許可しましたが、後で削除します)。 touch /var/log/mysql.log touch: cannot touch ‘/var/log/mysql.log’: Permission denied 別の実行中のサーバー(centos)を見ると、上記のようなアクセス許可がある(そしてmysqlユーザーとして書き込む)ので、mysqlは通常、/ var / logディレクトリにアクセスするためのアクセス許可をどのように取得するのでしょうか。通常の実行でそのフォルダにアクセスしますか? これが私のmysqlのapparmorプロファイルです /usr/sbin/mysqld { #include #include #include #include #include capability dac_override, …


2
1つのbashファイルに複数のシバン
私は他の人から見たスクリプトがあります(注:これは単一のファイルです)。 #!/bin/bash some commands some commands #!/bin/bash some commands some commands #!/bin/bash some commands some commands 2番目と3番目のシバンの目的は何ですか?それは間違っているのか、それとも故意ですか?

4
stdinのサイズを取得するにはどうすればよいですか?
大きなディレクトリを圧縮しようとしていますが、結果のファイルのサイズを正確に知りたいです。 私は使ってみましたdu: $ tar -cv dir | du -h - du: cannot access '-': No such file or directory 次に、「-」のファイルバージョンを使用してみました。 $ tar -cv dir | du -h /dev/stdin 1.0K この数値は正確ではないと確信しています。stdinのサイズを取得するにはどうすればよいですか?

1
なぜgnome-keyring-daemonがパスフレーズをキャッシュするために公開鍵を必要とするのですか?
私は2つのArch Linuxマシンを使用していますが、どちらも実質的に同じ設定で、どちらも実行してい/usr/bin/gnome-keyring-daemon --daemonize --loginます。どちらも同じSSH秘密鍵を持っていますが、公開鍵を持つのはどちらか一方だけです。公開鍵を持つホストでは、GNOME Keyringデーモンは正​​常に動作します-期待どおりにプロンプ​​トなしで他のマシンにSSHで接続できます。公開鍵のないホストでは、GNOMEキーリングはパスフレーズをすでに入力したことを無視しているようで、毎回プロンプトが表示されます: $ ls ~/.ssh/id_rsa.pub ls: cannot access /home/user/.ssh/id_rsa.pub: No such file or directory $ ssh some-host exit Enter passphrase for key '/home/user/.ssh/id_rsa': $ ssh other-host exit Enter passphrase for key '/home/user/.ssh/id_rsa': また、パスフレーズを入力した後でも、IDはリストされません。 $ ssh-add -l The agent has no identities. 公開鍵を直感的にコピーした後、パスフレーズの入力を求められなくなりました。その後、公開鍵を再度削除すると、症状が元に戻ります。この動作の理由はありますか、それとも単なるバグですか?

4
Xサーバーがない場合のVBox Guest Additionsのインストール
Windows 8.1ホストマシンでVirtual Boxを使用しています。CentOSとUbuntuを「グラフィカルモード」でインストールし、十分な練習をしました。しかし、今は完全に「コマンドラインモード」に切り替えたかったので、そのためのマシンを作成し、「CentOS6.6 Basic Server」/「CentOS7 Minimal」をインストールしました。 Graphical Mahinesでは、これらのいくつかのコマンドでVBox Guest Additionsを簡単にインストールできました。 yum update yum install gcc yum install kernel-devel sh VBoxLinuxAdditions.run (From mounted Location For CDrom) しかし、CLIマシンをインストールして同じコマンドを試したところ、正しくインストールされず、次のエラーが発生します。 Could not find X.Org or Xfree86 Window System, skipping.

2
xargsがサブシェルに渡されるときに最初の引数をスキップするのはなぜですか?
xargsワンライナーで複数のコマンドを呼び出す方法を探していたところ、findutilsで次のようにxargsからシェルを呼び出すように推奨されています。 $ find ... | xargs sh -c 'command $@' 面白いのは、そのようなxargsを使用すると、何らかの理由で最初の引数がスキップされることです。 $ seq 10 | xargs bash -c 'echo $@' 2 3 4 5 6 7 8 9 10 $ seq 10 | xargs -n2 bash -c 'echo $@' 2 4 6 8 10 シェルまたはxargsバージョンに何か問題がありますか?そのドキュメントは不正確ですか? 使用xargsの(GNU用のfindutils)4.4.2とGNUのbashのバージョン4.3.11(1)-release。
8 shell  xargs 

1
Name Service Switch(NSS)で同じライブラリを複数回使用する方法
1つのNSSライブラリを2回以上使用する一般的な解決策はありますか? 私の場合、2つのLDAPサーバーがあり、1つはマシン自体のローカルに、もう1つはリモートにあります。NSSを両方で機能させる必要があります(ローカルに必要なエントリがない場合は、リモートのNSSを使用します)。 現在、単一のライブラリー(PADL / nss_ldap)が2回ビルドされるように解決されました。どちらの場合も、ビルド前にソース内のsedすべてのnss_ldap出現箇所を別のものに変更するために使用されます。ケースごとに異なるテキストが使用されます(nss_ldap_1およびのようにnss_ldap_2)。ビルド結果はそれに応じて名前が変更されます。両方のバイナリはターゲットシステムに保存され、で参照され/etc/nsswitch.confます。 また、これらのライブラリはどちらも異なる構成ファイルを使用しています/etc/(そうしないと、意味がありません!)。ただし、これはconfigureビルド前に実行されるライブラリのスクリプトで引数を変更するだけで簡単に実行できます。 しかし、それは「正しく感じる」わけではありません。他のアプローチはありますか? 私が想像できることは、NSSライブラリ自体が複数の構成をサポートできるため、2つの「単一インスタンス」として機能するということです。ただし、ライブラリの作成者でない場合、これを達成するのは困難です。また、両方の構成でライブラリーを後で呼び出す必要がありますが、その間に他のライブラリーが必要になる場合があります。 もう1つのアプローチは、構成が異なる他のライブラリを呼び出すだけの単純なフォワーダーを作成することです。ただし、この場合も、他のライブラリが何らかの形で再構成可能である必要があります(/etcフォワーダーでいくつかの固定構成ファイルを使用する場合は、最初のバージョンと同じように機能します)。また、1回だけ機能します。ライブラリを3回以上使用すると、フォワーダー自体で同じ問題が再発します。
8 nsswitch 

1
端末からウェブサイトにログインするにはどうすればよいですか?
コンピューターサイエンスの学生として、私は現在、コマンドラインで作業することを学んでいます。ユーザー名とパスワードが特定の範囲の整数であることを知っていて、ブルートフォースを使用してWebサイトにログインする必要があります。これは私が今のところ持っているものですが、うまくいかないようです。 for i in {2000..3000}; do curl http://admin:$i@mywebsite.com/link; done どうすれば続行できますか?
8 curl 

5
apt-getでダウンロードする前にコマンドを実行する方法は?
apt-getがパッケージのダウンロードを開始する前にコマンドを実行するにはどうすればよいですか? dpkgのpre-invokeフック(スクリプトをapt-getにフックする)については知っていますが、ダウンロード後に実行されるようです。 $ apt-get update Get: 11 http://security.debian.org/ wheezy/updates/main qemu amd64 1.1.2+dfsg-6a+deb7u7 [115 kB] Fetched 70.9 MB in 10s (6,776 kB/s) refreshing freenet index --2015-05-19 15:55:25-- http://127.0.0.1:8888/freenet:USK@oRy7ltZLJM-w-kcOBdiZS1pAA8P-BxZ3BPiiqkmfk0E,6a1KFG6S-Bwp6E-MplW52iH~Y3La6GigQVQDeMjI6rg,AQACAAE/deb.mempo.org/-42/ ダウンロードの前にコマンドを実行する必要があります。より正確には、スクリプトはapt-getを呼び出した後、apt-getがオンラインリソースにアクセスする前に実行する必要があります。 プレダウンロードフックのようなものはありますか? スクリプトapt-getを置き換えることなく(そして更新によって元に戻される可能性のある他のことを行わずに)インストールを実行できることが重要です。
8 apt  hook 

2
HP-UXコマンド「less」がプロンプトをめちゃくちゃにしないようにするにはどうすればよいですか?
moreHP-UXの出力が気に入らないので、less代わりにポケットベルとして使用します。 PAGER=less その出力はすばらしいですが、Linuxでは、使用manして終了するとシェルに戻り、ディスプレイは以前の状態に戻りますが、HP-UXではシェルに戻ると次のコマンドが生成するように、プロンプトの前に残っている部分的な行です。 echo -e "text \c" これを見てください: HP-UXの場合: user@hpux2:~$ man ls Riformattazione in corso. Attendere...user@hpux2:~$ (イタリア語のメッセージは「再フォーマット中です。お待​​ちください」) Linuxの場合: user@linux:~$ man ls user@linux:~$ この問題を解決するには?
8 less  hp-ux  more 

1
(ロケール設定ではなく)ロケール定義を変更する
予備の発言:この質問はない程度に設定変更することでロケールをLC_ALL、LC_TIME、LANG、など、それはロケール変更については、むしろだ定義を例で、/usr/share/i18n/locales/de_DEこれらのシステム設定を変更するよりも、より適切なオプションについての提案を取得するには、それぞれ、または。 その目的は、ISO時間表現 を取得することで%Y-%m-%dあり%H:%M:%S、望ましくない副作用はありません。 私がネットで見つけた提案はまだすべて不適切でした(たとえば、ロケールを「デンマーク語」に設定すると、母国語のスペルの平日の名前が維持されません)。 現在、望ましい動作を得るために私が現在見ている唯一の選択肢は、で私のネイティブロケールの定義を変更することです/usr/share/i18n/locales/de_DE。システムの更新により、これらの変更されたファイルが再度上書きされる可能性があるため、これは完全なソリューションではありません。 私の質問は: 特定のシステムロケールファイルを変更するよりも、目的の機能を取得するためのロケール関連のオプションはありますか? 特定のロケール定義ファイルを変更するときに予想される問題はありますか?(そして、システムが更新された場合に、このファイルが上書きされるのをどのように防ぐことができますか?) 既存のロケールファイルの新しい特定のバリアントを定義し、それをLC_*設定で使用する方が良いでしょうか?(そして、その新しいファイル/定義はどのようにしてシステムに正しく知らされるのでしょうか?) 他に何か提案はありますか?
8 date  locale 

1
選択オプションの表示方法を変更できますか?
私はbashでselectとcaseを使用しています。私には現在9つのオプションがあり、オプションの3x3グリッドをきれいに整頓していますが、次のように表示されます。 1) show all elements 4) write to file 7) clear elements 2) add elements 5) generate lines 8) choose file 3) load file 6) clear file 9) exit 列の前の行に表示したいのですが。 1) show all elements 2) add elements 3) load file 4) write to file 5) generate lines 6) clear file …

1
SIGSTOPで停止したサービスへのリクエストはどうなりますか
SIGSTOPをWebサーバーに送信した場合、カーネルはネットワークスタックに、サーバーソケットへのすべての接続がブロックされるかスリープするように指示しますか?サーバーのタイムアウト値は問題ではないようです。それは無期限に待機しますが、どうですか? リクエストは無期限にソケットバッファーに残りますか?Webサーバーが大量のリクエストを受け取った場合はどうなりますか?ソケットバッファーがいっぱいになるとどうなりますか?

2
所定のサイズのgzipファイルを作成する
application/x-gzip100 MBから999 MBの範囲のさまざまなサイズのコンテンツタイプのファイルのアップロードをテストしたいと思います。 .gzこれらの所定のサイズのファイルを作成するにはどうすればよいですか?私が行う場合dd if=/dev/zero of=somefile bs=1 seek=100、通常、圧縮後のファイルは非常に小さくなります。

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