サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
買ってよかったもの
horus531.hatenadiary.org
bashのコマンドプロンプトは標準では、 [test1@localhost ~]$ のように表示されます。 この表示は環境変数PS1を書き換えることで変更することができます。 例えば、プロンプトを">>"とするには次を実行します。 [test1@localhost ~]$ PS1=">>" (Enter) >> ← プロンプトが">>"になっている PS1には設定可能は以下の特種文字が設定可能です。(出展:Man page of BASH) 表記 意味 \a ASCII のベル文字 (07) \d "曜日 月 日" という形式の日付 (例: "Tue May 26") \e ASCII のエスケープ文字 (033) \h ホスト名のうち最初の `.' までの部分 \H ホスト名 \j シェルによって現在管理されているジョブの数 \l シェルの端末デバイスのベース名 (basename) \
次回:【bash】リダイレクトとパイプを理解する(2) 普段なにげなくリダイレクトやパイプを使っていますが、勉強を兼ねてまとめてみます。 ※長くなりそうなので適当に複数回に分けます。 標準入出力 標準入出力とはコマンドに与えられた、データストリーム入出力に関するインターフェースのことです。 標準入出力には以下の3つがあります。 名前デフォルトファイルディスクリプタ(FD) 標準入力キーボード0 標準出力画面1 標準エラー出力画面2 標準入力はコマンドへの入力ストリームで、キーボードからの入力です。 標準出力はコマンドからの出力ストリームで、エラー関係以外のメッセージを端末画面に出力します。 標準エラー出力は標準出力と同様にコマンドからの出力ストリームですが、 エラー関係のメッセージを端末画面に出力する点が異なります。 ファイルディスクリプタ(FD) FDはコマンドが外部リソースと通信するた
電波が不安定な状態で無線回線を使っていると回線が頻繁に切断され、その度に作業がやりなおし・・・なんてことがあります。 このような場合に対処するには、screenコマンドが便利です。 screenコマンドを使うと万一回線が切断しても、直前の状態から作業を再開できます。 screenコマンド screenコマンドは仮想端末を管理するコマンドです。 screenコマンド上で複数の仮想端末を立ち上げることができ、1つの画面で複数の端末を切り替えながら使ったりすることができます。 screenコマンドは実に様々な機能を持っていますが、今回は回線切断に対応できるように起動・切断・再接続の方法について説明します。 起動 起動は簡単です。コマンドプロンプトで「screen」と入力します。 入力すると仮想端末が立ち上がります。 ウィンドウタイトルが「screen 0: bash」となっていて、screenコ
sshなどでリモートログインを可能にしている場合、ユーザのログイン履歴を調べたいことがあります。 こうした場合、lastコマンド、lastlogコマンド、lastbコマンドでログイン履歴を調べることができます。 lastコマンド、lastlogコマンドは成功したログインの履歴を表示します。 lastbコマンドは失敗したログインの履歴を表示します。 lastコマンド ≪書式≫ $ last [ユーザ名] ・・・ ログイン履歴を表示する。 ユーザ名:指定するとそのユーザのログイン履歴だけを表示。 省略した場合は全ユーザのログイン履歴を表示。 lastlogコマンド ≪書式≫ $ lastlog [ユーザ名] ・・・ システムに登録された各ユーザの最終ログイン履歴を表示する。 ユーザ名:指定するとそのユーザの最終ログイン履歴だけを表示。 省略した場合は全ユーザの最終ログイン履歴を表示。 last
sshの接続ポートはデフォルトTCP22番。 これは常識ですね。あまりに常識すぎて、デフォルトでインターネットに接続すると攻撃対象になりやすく危険とよく言われますが、本当でしょうか? 実は昨年10月にsshの接続ポートをデフォルトのままにしてサーバをインターネットに接続したところ、 実際に攻撃(というほど大げさではないですが)を受けたことがありました。 主な経緯は次の通りです。 2010年10月21日(木) Linuxサーバのセットアップ開始 2010年10月22日(金) セットアップが終わらないので家で続きをやろうと、 サーバをインターネットからssh接続可能にして帰宅(ssh接続ポートは22番) 2010年10月23日(土) (夜中にブラジルから攻撃) 朝、ログを見て攻撃に気付く → ssh接続ポート変更(とりあえず) → 以後、攻撃は無し btmpファイルを見ると攻撃の様子がわかりま
みんな意外と知らないのでメモ。 suコマンドが禁止されていてsudoコマンドしか使えない場合、コマンド毎にsudoしていませんか? sudoコマンドを"-s"オプション付きで実行するとroot権限で対話式シェルを起動することができます。 【使用例】 [test01@localhost ~] sudo -s (Enter) [sudo] password for test01: ******** (Enter) [root@localhost ~]# こうすればroot権限が必要なコマンドを多く使う場合に、いちいちsudoする必要がなくなり便利です。 ※運用面から見ると、「sudo -s」で起動したシェル上で実行したコマンドはログに記録されない、というセキュリティ上の問題があります。利用には十分注意する必要があります。
前回書いたように、"sudo -s"は対話式シェルを起動できるので、root権限で色々と作業したいときに大変便利ですが、ログに起動したシェル上で行った作業が記録されないという問題があります。 ユーザに特定のコマンドしかsudoさせない場合、"sudo -s"の利用は禁止するのが望ましいです。 /etc/sudoersではオプション利用が禁止できない sudoコマンドの設定は、visudoコマンドで/etc/sudoersファイルを編集して行います。 ところが、/etc/sudoersファイルでは特定のオプション禁止することができません。 シェルコマンドを1つ1つ禁止する "sudo -s"は実行されると環境変数SHELLに設定されたシェルを起動します。 つまり、"sudo -s"は"sudo $SHELL"と同じです。 そのため、$SHELLに設定される可能性がある、/bin/bash、/
緊急のサーバメンテナンスなどでシステムを停止する場合、ログイン中のユーザにその旨を至急通知したい場合があります。 Linuxではログイン中のユーザの相手のターミナルにメッセージを表示させる、wallコマンド・writeコマンドが用意されています。 これらを利用することで、ログイン中のユーザにメッセージを送ることできます。 wallコマンド : 全ユーザにメッセージを送る ≪書式≫ $ wall [Enter] ・・・ ログイン中の全ユーザのターミナルにメッセージを表示する。 (メッセージを記述) [Ctrl + D] → メッセージを送信 ≪記述例≫ 〜 送信側 〜 [root@localhost ~]# wall [Enter] This is test Message. [Ctrl + D] 〜 受信側 〜 [user1@localhost ~]$ Broadcast message
次回:【bash】リダイレクトとパイプを理解する(4) 前回:【bash】リダイレクトとパイプを理解する(2) 前回と前々回でリダイレクトとパイプについて説明しました。 今回は複数のリダイレクト、あるいはリダイレクトとパイプを組み合わせた場合についてまとめます。 リダイレクトやパイプの細かい説明は繰り返しになるので省略します。 Case1 : $ コマンド > out_file.txt 2>&1 まず「 > out_file.txt」により、コマンドのFD1番がファイル「out_file.txt」にリダイレクトされます。 次に「 2>&1 」で、FD2番がFD1番と同じファイル「out_file.txt」にリダイレクトされます。 結果として、ファイル「out_file.txt」にはコマンドの標準出力と標準エラー出力が記録されます。 Case2 : $ コマンド 2>&1 > out_fil
このページを最初にブックマークしてみませんか?
『horus531.hatenadiary.org』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く