Unix & Linux

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

2
特定の変数のみをenvsubstで置き換える
を通じて環境変数の置換を実行しようとしていますenvsubstが、特定の変数のみを置換したいです。 ドキュメントから、envsubst特定の変数のみを置き換えるように伝えることができるはずですが、それを行うことができません。 たとえば、次を含むファイルがある場合: VAR_1=${VAR_1} VAR_2=${VAR_2} envsubstへの参照のみを置き換えるように実行するにはどうすればよい${VAR_1}ですか?

1
`find`の-execオプションを理解する
私は常に自分自身の構文を調べています find . -name "FILENAME" -exec rm {} \; 主に、その-exec部品がどのように正確に機能するのかわからないからです。中括弧、バックスラッシュ、セミコロンの意味は何ですか?その構文の他のユースケースはありますか?
53 shell  find 

2
WindowsとLinux Mint / UbuntuのデュアルブートでのBluetoothペアリング-デバイスのペアリングの停止
Windows 7/10とLinux Mint / Ubuntuをデュアルブートする場合、Bluetoothデバイスを何度も修復しなければならないことがあります。これは、OSを切り替えるたびに発生します。 さて、これをどうやって防ぐのですか? Ubuntu 14.4とLinux mint 17.2、17.3、そして現在Linux Mint 18.xでテストされている次のガイドで、私自身の質問に答えています。

2
crontabファイルの場所
他の多くの(ほとんど?)他の人と同じように、私はcrontabを編集しますcrontab -e。ここでは、増分バックアップ、ntpdate、さまざまなrsync操作などのすべてのルーチン操作を保持します。私が理解したことから、新規インストールまたは新規ユーザーで、ファイルが存在しない場合は自動的に作成されます。ただし、このファイルを別のユーザーにコピーしたいので、編集している実際のファイルはどこにありますか? これがディストリビューション間で異なる場合、Centos5とMint 17を使用しています
53 cron  filenames 

6
「su」とエラー「誤った認証のためX11接続が拒否されました」
ルートとして、コマンドを実行するためにリモートホストに接続しています。「standarduser」のみが適切なidファイルと正しい.ssh / configを持っているため、最初にユーザーを切り替えます。 su standarduser -c 'ssh -x remotehost ./remotecommand' コマンドは正常に動作しますが、「-x」(X11-Forwardingを無効にする)を使用し/etc/ssh/ssh_config、X11Forwardsを無効にしたにもかかわらず、エラーメッセージが表示されます。 X11 connection rejected because of wrong authentication. 「standarduser」としてログインしているときにエラーメッセージが表示されません。 コマンドをcronジョブファイルに統合したいので、これは非常に面倒です。エラーメッセージがルートの.XAuthファイルの誤った認証を指していることは理解していますが、X11経由で接続しようとさえしていません。 「ssh -x」がX11接続を無効にせず、エラーメッセージをスローしないのはなぜですか? 更新:メッセージは、画面内でログインしているときにのみ表示されます。ローカルマシン自体で(画面なしで)上記のコマンドを使用すると、エラーメッセージが表示されないため、cronでも問題ないはずです。 また-v、SSHからのステータス情報の前であっても、同じコマンドを開始し、驚くべきエラーメッセージが最初に表示されました。 root@localhost:~# su standarduser -c 'ssh -x remotehost ./remotecommand' X11 connection rejected because of wrong authentication. OpenSSH_6.2p2 Ubuntu-6ubuntu0.1, OpenSSL 1.0.1e 11 Feb 2013 これは問題自体に私を導きました、それはsshエラーメッセージを投げているものではありません、それはsu: root@localhost:~# su standarduser …
53 bash  gnu-screen  su  xauth 

7
一括名前変更、プレフィックスの変更
多くのファイルのプレフィックスを一括置換するにはどうすればよいですか? 私のようなファイルがたくさんあります TestSRConnectionContext.h TestSRConnectionContext.m すべてを変更したい CLConnectionContext.h CLConnectionContext.m どうすればいいですか?
53 rename  filenames 

3
何か問題が発生した場合、apt-getアップグレードをロールバックできますか?
aptitude upgradeまたはを開始するapt-get upgrade前に、何か問題が発生した場合に実際のアップグレード前の「適切な」状態に「簡単に」システムをロールバックできるように、何かをセットアップする方法はありますか? つまり、たとえば、プロセス中にアップグレードされた古いバージョンのパッケージを再インストールします。 (編集)いくつかのヒント:etckeeperたとえば、フックをapt使用してapt、パッケージをインストールまたはアンインストールするたびに通知されるようにします。新しくインストールされたパッケージとその以前のバージョン番号のリストを保存して、aptキャッシュからそれらを再インストールできるようなスクリプトが存在すると考えられます(/var/cache/apt/archives)。checkinstallファイルの変更を追跡できるものもあります... それを適切に達成する方法に関する詳細はありますか?

4
マニュアルページに例がないのはなぜですか?
ほとんどのマニュアルページにいくつかの一般的な例が含まれていない理由はありますか?彼らは通常、すべての可能なオプションを説明しますが、それは初心者にとって「通常」使用される方法を理解することをさらに難しくします。
52 man  history 

1
「man git init」はどのようにして正しいmanページを取得しますか?
したがってman git init、Ubuntu 14.04システムでbashプロンプトに入力すると、と同じように見えますが、man git-initどうすればよいのかよくわかりません。 (つまり)のmanページは、マニュアルの一部である場合を除き、この構成を許可していないようですが、manページはsectionから来ているようです。manman mangitsection1 これは文書化されていない使用法によってサポートされていmanますか?のドキュメントを誤解していmanませんか?他の魔法が起こっていますか?説明したい人はいますか?
52 man 

3
Linuxでは、「アップタイム」はいつからカウントされますか?
私のコンピューターは言う: $ uptime 10:20:35 up 1:46, 3 users, load average: 0,03, 0,10, 0,13 そして、私がチェックするlastと、私は見る: reboot system boot 3.19.0-51-generi Tue Apr 12 08:34 - 10:20 (01:45) そして、私はチェックします: $ ls -l /var/log/boot.log -rw-r--r-- 1 root root 4734 Apr 12 08:34 boot.log それから私/var/log/syslogは今日の最初の行にあることがわかります: Apr 12 08:34:39 PC... rsyslogd: [origin software="rsyslogd" swVersion="7.4.4" x-pid="820" x-info="http://www.rsyslog.com"] …

3
rmが別のユーザーの所有権の下でファイルを削除できるのはなぜですか?
投稿からなぜ読み取り専用ファイルをrmで削除できるのですか?rmファイルを削除するには、ディレクトリへの書き込み許可が必要なだけだと理解しています。しかし、所有者とグループが異なるファイルを簡単に削除できる動作を消化するのは難しいと思います。 私は次を試しました mtk:私のユーザー名 abc:新しいユーザーを作成しました $ ls -l file -rw-rw-r-- 1 mtk mtk 0 Aug 31 15:40 file $ sudo chown abc file $ sudo chgrp abc file $ ls -l file -rw-rw-r-- 1 abc abc 0 Aug 31 15:40 file $ rm file $ ls -l file <deleted> 私はこれが許可されるべきではないと考えていました。ユーザーは、所有権のあるファイルのみを削除できますか?誰かがこれが許可されている理由を明らかにできますか?そして、これを避ける方法は何ですか?親ディレクトリの書き込み許可を制限するだけで、ファイルの不意の削除を禁止できます。

5
SSHはパブキーをスキップしてパスワードを要求し続けます
リモートサーバーにSSH接続するたびに、パスワードを入力する必要があります。次を使用して、公開キー(id_dsa.pub)をリモートサーバーにコピーしました。 ssh-copy-id -i id_dsa.pub user@server authorized_keysに正しく追加されたことを確認しました。すべてのファイル/ディレクトリ許可が正しい: ~user 755 ~user/.ssh 700 ~user/.ssh/authorized_keys 640 ~user/.ssh/id_dsa.pub 644 / etc / ssh / sshd_configのPasswordAuthenticationフィールドはyesに設定されています。sshdをデバッグモードにし、sshコマンドに冗長スイッチを追加しました。サーバーは、次の行のためにid_pub.dsaを使用しようとしなかったという印象を受けます。 Skipping ssh-dss key: ........... not in PubkeyAcceptedKeyTypes サーバー側に暗号化されたディスクはありません。進歩するためのアイデアはありますか?sshデーモンのデバッグ情報は次のとおりです。 sudo /usr/sbin/sshd -d ==== debug1: sshd version OpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014 debug1: key_parse_private2: missing begin marker debug1: read PEM private …

5
複数のコマンドを実行し、bashでそれらを殺します
単一のシェルで複数のコマンド(プロセス)を実行したい。それらはすべて独自の連続出力を備えており、停止しません。バックグラウンドでそれらを実行すると壊れますCtrl- C。それらをすべてCtrl-で停止できるように、単一のプロセス(サブシェル、多分?)として実行したいと思いCます。 具体的には、単体テストmocha(監視モード)を実行し、サーバーを実行してファイルの前処理(監視モード)を実行し、1つのターミナルウィンドウでそれぞれの出力を確認します。基本的に、タスクランナーの使用を避けたいと思います。 バックグラウンドでプロセスを実行することで実現できますが(&)、その後、それらを停止するにはフォアグラウンドに配置する必要があります。それらをラップするプロセスが欲しいのですが、プロセスを停止すると、その「子」が停止します。

5
各ファイルのハードリンクを使用して再帰的にディレクトリをコピーする方法
各ファイルが元のファイルへのハードリンクであるディレクトリツリーの「コピー」を作成したい 例:ディレクトリ構造があります: dirA/ dirA/file1 dirA/x/ dirA/x/file2 dirA/y/ dirA/y/file3 予想される結果は、各ファイルが元のファイルへのハードリンクであるディレクトリツリーの「コピー」です。 dirB/ # normal directory dirB/file1 # hardlink to dirA/file1 dirB/x/ # normal directory dirB/x/file2 # hardlink to dirA/x/file2 dirB/y/ # normal directory dirB/y/file3 # hardlink to dirA/y/file3

6
ルートアクセスなしでzshをデフォルトシェルにする
私は学校のコンピューターを使用していますが、のzsh代わりに使用したいと思いbashます。デフォルトのシェルにしたいのです$ chsh -s $(which zsh)が、管理者権限がないなどのコマンドを実行できません。 回避策として開いたときに.bashrc自動的に呼び出すものを自分に入れる方法はありzshますか? 明確にするために、zsh既にインストールされています。
52 bash  zsh  login  profile 

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