Linux(FreeBSD)のTips一覧

Linux(FreeBSD)のTips一覧

Linux(FreeBSD)のTips一覧

Linux(FreeBSD)の記事一覧です。

古い記事にも最新情報を随時追記しています。

AWSの無料利用枠内で複数サイトをサクサクと運営する方法

VagrantでCentOS6.9のイメージを使う

CentOS7 が既に 7.3 まで出ていますが、AmazonLinux がまだ 6 の構成と似ていることから、なかなか 7 系に移行できません。 そこで、Vagrant のイメージも 6 系の最新版を使うと思ったのですが、下記の BOX ...

Linux(FreeBSD) / CentOS / Vagrant

>>記事を確認する

シェルスクリプトで開始日から終了日までの日付を算出

過去データの集計をやり直す SQL を作るために、シェルで終了日から 1 日ずつ減算していく方法を考えてみました。 日付自体はよく使いますが、カウントアップやカウントダウンのような動作をさせることも稀な...

Linux(FreeBSD) / シェル

>>記事を確認する

awkで最後から2番目のカラムの値を取得する

Apache のアクセスログを見ていたら、リクエストの処理に掛かった時間が最後から 2 番目に出力されるログ設定になっていました。 ちなみに、%T が秒で、%D がマイクロ秒となるので、用途に合わせて出力してお...

Linux(FreeBSD) / awk / シェル

>>記事を確認する

Linuxのdiffコマンドでgitブランチ間の差分を確認する

GitHubや BitBucket など Git のバージョン管理システム上では、Web ブラウザ上でブランチ間の差分確認やマージ作業ができるので、リポジトリの運用管理が楽です。 しかし、チーム内の開発において、ブランチ...

Linux(FreeBSD) / git

>>記事を確認する

MySQLで日付単位に分割したテーブルを作成するシェルスクリプト

一般ユーザ相手のサービスをする場合、ユーザ数がどこまで増えるか読みにくいので 1 つのテーブルに格納されるレコード数が気になるところです。そこで、パーティショニングやシャーディングなどの手法が候補と...

Linux(FreeBSD) / MySQL / シェル

>>記事を確認する

pythonでget-pip実行時の参照先エラー

手元の vagrant の環境(CentOS6.7)で python の pip コマンドが入っていなかったのでインストール。どうやら参照先が古いようで bootstrap.pypa.io を指定されました。 $ curl -kL https://raw.github.com/p...

Linux(FreeBSD)

>>記事を確認する

コピーコマンドのエイリアスのオプションを無効化する

サーバ上でディレクトリのコピーをする際に、-f オプションを付けているにも関わらず、ファイルの上書き確認が出るので何でだろうと思っていました。 $ cp -rf /tmp/images /var/www cp: overwrite ‘/var/w...

Linux(FreeBSD)

>>記事を確認する

crontabを消しちゃった時にアタフタしない対処法

たまたま crontab 関連で検索していたところ、こんなタイトルの記事が目に留まりました。 ・ crontab -e は「絶対に」使ってはいけない 例えば root ユーザーで crontab -e すると、/var/spool/cron/root...

Linux(FreeBSD)

>>記事を確認する

Linuxのdateコマンドでよく使う日付フォーマット

久し振りにシェルでバッチでも書こうかと思い、前日の日付を取得しようとして date コマンドのフォーマット指定の仕方を忘れる。結局、別のファイルを見て思い出すか、ネットで検索するハメになるのですが、自分...

Linux(FreeBSD)

>>記事を確認する

Linuxでディスク消費量をディレクトリ別にチェックする

Web サーバなどを運用していると、サイトへのアクセスが増えてくるのはうれしいものですが、そうなると通常の想定以上に膨れ上がってくるのがログファイルやキャッシュなどの容量です。 これまでは 1 日 500K...

Linux(FreeBSD)

>>記事を確認する

Redisでキーをワイルドカード検索して一括削除したい

Redis を使った運用をしていて、場合によっては特定のキー削除をするケースに遭遇するかもしれません。 例えば、テスト開発中に無駄なキーをたくさん作ってしまったとか、有効期限(TTL)を多めに設定してしま...

Linux(FreeBSD) / Redis

>>記事を確認する

sedで連続する半角スペースを1つにまとめる

MySQL のスロークエリを定期的にレポートするシェルを書いていたのですが、発行される SQL に改行(\nや\r)やらタブやら連続するスペースが混在していて、ちょっと苦戦していました。\r が混ざっていたのにはなか...

Linux(FreeBSD)

>>記事を確認する

CentOSでRedisサーバを使う

冗長化した Web サーバなどで、セッションの管理や、セッションや特定のユーザーに紐付く一時データを管理するのに memcache を使う場面は多いと思います。 その memcache の中でも主流なのが memcached です...

Linux(FreeBSD) / CentOS / Redis

>>記事を確認する

プロキシを経由したRedHatNetworkへのシステム登録

RedHat EnterpriseLinux5.6(RHEL)の体験版ダウンロード の最後で追記したように、RedHat のインストール後にシステムプロファイルを登録しないと、アップデートなどのサービスを受けることができません。 C...

Linux(FreeBSD)

>>記事を確認する

RedHat EnterpriseLinux5.6(RHEL)の体験版ダウンロード

仕事先で RedHat EnterpriseLinux の体験版ダウンロードページまで辿り着けないって聞いていたので、自宅で試してみることにしました。今回は RedHat EnterpriseLinux5.6 の 64bit 版をダウンロードして VMWare ...

Linux(FreeBSD)

>>記事を確認する

Linuxのzipコマンドで圧縮と解凍

複数のファイルをアーカイブ化する際に tar を利用していましたが、手っ取り早く圧縮したり、Windows 環境の人向けに提供するには zip がシンプルでいいです。 でも、いざ Linux 上で使おうと思うとオプシ...

Linux(FreeBSD)

>>記事を確認する

curlでファイルアップロード(HTTP PUT)

Linux のコンソール上でファイルをダウンロードする時には wget をよく利用します。逆に http のプロトコルを使って手軽にファイルをアップロードしたい場合は curl が便利です。 curl は FTP などもっと多...

Linux(FreeBSD)

>>記事を確認する

Mono2.8.2のソースファイル

Mono の最新版(2011年1月現在)のソースファイルは以下のサイトからダウンロードができる。単純に C# などで作成した exe を実行するには mono のインストールのみで OK ですが、GUI や Web(ASP.NET)を使う場合は...

Linux(FreeBSD)

>>記事を確認する

tarコマンドでtar.gzの解凍と圧縮

Linux 向けのちょっとしたツールを扱う時、tar でアーカイブして gzip で圧縮したファイル形式が多い。逆に複数のファイルやディレクトリをまとめて提供する場合も tar.gz の形式に圧縮して渡す場合が多い。 ...

Linux(FreeBSD)

>>記事を確認する

Linuxのパーミッションの先頭の1文字

/tmp の下を見ていたら、パーミッションの先頭が s のファイルを発見。先頭はファイル種別が定義されますが、これまでに一般のファイルやディレクトリ、シンボリックリンクくらいしか見ることはありませんでした...

Linux(FreeBSD)

>>記事を確認する

ゼロデバイスでNULL埋めする

fdisk で作成したパーティション情報を書き込もうと思ったら下記のエラーが。どうやら、再起動後に反映されるようなので再起動をして再度トライしてみます。 WARNING: Re-reading the partition table fa...

Linux(FreeBSD)

>>記事を確認する

Linux起動時のファイルシステムエラー

Linux 起動時に下記のエラーに遭遇しました。エラーが発生したデバイスは USB メモリでブートイメージをここに入れています。 UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY. Ubuntu では m キー...

Linux(FreeBSD)

>>記事を確認する

シェルスクリプトで数値計算

シェルスクリプトで数値計算をする時に expr を使用することが多いですが、割算をした場合は小数部分を表示させることができません。例えば、3 / 5 の場合は実際に計算をすると 0.6 になりますが、expr 3 / 5 の...

Linux(FreeBSD)

>>記事を確認する

シェルスクリプトで大量ファイルを作成

リモートへのファイルコピーを検証していて、1 つのファイルの容量は軽くてもいいから大量のファイルのコピーを試したい場合があります。そんな時、シェルを使うと楽で、少し調整すればコマンドラインからワンラ...

Linux(FreeBSD)

>>記事を確認する

DRBDでディスクのネットワーク経由ミラーリング

サーバの冗長化の調査で DRBD について少し調べることになった。DRBD は、TCP/IP ネットワークを通じて、複数のサーバ間のHDD(パーティション)をミラーリングするソフトウェアで、GPLv2 のライセンスで利用する...

Linux(FreeBSD)

>>記事を確認する

SMARTでハードディスクの温度を計測する

smartctl コマンドは HDD の故障検知をするものですが、HDD の温度も一緒に出力してくれます。一般的に、HDD の温度は上限が 50~55 度くらいと聞いたことがありますが、省スペースの PC やノート PC では 50 度...

Linux(FreeBSD)

>>記事を確認する

Linuxのiptablesのサンプル

Linux でサーバを構築する際にパケットフィルタリングは欠かせません。よく見かけるのは、外部ネットワークからのパケットの入り口となるルータでパケットを制御して、Web サーバや DB サーバは制御しないパター...

Linux(FreeBSD)

>>記事を確認する

シェルのmailコマンドでfromを設定

前にメモしておいたと思ったのですが、見事に忘れてしまったので調べ直しました。レンタルサーバなどの sendmail だと、root やユーザー名が from に設定されることが多いので、From は設定するようにしています...

Linux(FreeBSD)

>>記事を確認する

Debianのバージョン確認

Debian のバージョンを調べることになったので調査。CentOS などのディストリビューションだと、uname コマンドで OS のバージョンも出力された記憶があるのですが、Debian はカーネルのバージョンしか出力され...

Linux(FreeBSD)

>>記事を確認する

tarで圧縮時に指定ファイルを除外する

1 日に 1 回、サーバ上の Web コンテンツをバックアップしていますが、動画ファイルなど容量の大きいものはディスク容量が気になるので除外しています。もちろん、別途バックアップしておく必要はあるのですが。...

Linux(FreeBSD)

>>記事を確認する

sedでhtmlのタグを除去する

文字列の置換に sed はよく利用していますが、複雑な正規表現が少し苦手です。今回は html のタグを除去する正規表現を試してみましたが、果たしてこれで問題ないのかどうか・・・。 [saratoga.txtの中身] &...

Linux(FreeBSD)

>>記事を確認する

ユーザーのcrontabの設定ファイルの場所

root ユーザーで cron の設定管理をしていたら、ユーザーごとの設定内容がどのファイルに定義されているのかわからなくて探しました。cron は /etc/crontab や /etc/cron.daily などに直接定義することも可能で...

Linux(FreeBSD)

>>記事を確認する

sshクライアントでconfig設定

ssh でリモート接続する機会が増えてきたので、久しぶりに config ファイルに接続先情報をまとめてみました。接続先によって、ホスト名やポート番号などが違うので、config ファイルに定義してコマンドはエイリ...

Linux(FreeBSD)

>>記事を確認する

改行コードを変更する(dos2unix編)

sitemap.xml を作成するための Perl スクリプトを作成してみましたが、久しぶりに改行コードをミスったので備忘録。Windows 上で作成したファイルは、通常は改行コードを CRLF で扱いますが、Linux 上では LF で...

Linux(FreeBSD)

>>記事を確認する

sortコマンドで並び替え対象のカラムを指定する

アクセスログの解析などで、数値の大小や時間などを軸にデータを見る場合に並び替えをよく使います。並び替えの昇順と降順については sort コマンドの -r オプションで対応することが可能ですが、項目が複数あっ...

Linux(FreeBSD)

>>記事を確認する

標準出力と標準エラー出力をパイプに渡す

よく、標準出力先をファイルにリダイレクトすることはありますが、意外に標準エラー出力は使う機会がありません。しかし、やはりツールやパッケージ製品になると標準エラー出力も活用されているようです。でも、...

Linux(FreeBSD)

>>記事を確認する

ファイルの文字コード変換(iconv)

仕事で EUC の文字コードのファイルしか受け付けないシステムがあったので、nkf で文字コードを変換しようと思ったら入ってない。まあ、こんな時は iconv しかシェルで頼るものはないのですが、さすがにこれは入...

Linux(FreeBSD)

>>記事を確認する

echoで連続するファイル出力

シェルスクリプトの実行中にログをファイルに残そうとすると、後から見やすくするためにログをきれいに整形したくなります。しかし、わかりやすいログを書いていくと、echo での出力箇所が多くなって、何度もフ...

Linux(FreeBSD)

>>記事を確認する

シェルスクリプトで文字列操作

シェスルクリプトでは、複数のコマンドを実行するだけで、処理を自動化するために使う機会が多かったですが、文字列を制御する場面に出くわしたので備忘録です。まず、変数に入っている文字列の長さを算出するに...

Linux(FreeBSD)

>>記事を確認する

kshのechoで改行を制御

ksh で改行しないように echo の -n オプションを使ってみましたが、どうやら -n オプションはサポートされていないようです。例えばスクリプトで処理を実行して、処理が完了したら OK を表示したいようなプログ...

Linux(FreeBSD)

>>記事を確認する

ftpコマンドで使えるオプション(chmod)

このセキュリティの厳しい時代に ftp って言うとブーイングを受けるかもしれませんが、今でも多くの場所で使われています。 私が知る限りでは、ローカルの PC で作ったプログラムを一時的にイントラネット内...

Linux(FreeBSD)

>>記事を確認する

diffでよく使うオプション

diff は別に Linux に特化した機能でもないですが、ここでは Linux や FreeBSD の diff コマンドについて紹介します。diff は 2 つのファイルの差分や、ディレクトリの差分をわかりやすく結果出力してくれるコマ...

Linux(FreeBSD)

>>記事を確認する

ヒアドキュメントでファイル出力

シェル(Shell)でヒアドキュメントを使うと、まとめて文章や文字列が表示できて便利です。mail の body 出力として過去によく利用していましたが、ファイル出力は echo ばかり使っていたような気がします。今回は...

Linux(FreeBSD)

>>記事を確認する

kshでコマンド補完とコマンド履歴

仕事でたまたま IBM の AIX を使う機会があったのですが、デフォルトのシェル(shell)が ksh(korn Shell)になってて苦戦(笑)シェルは一般的には、bash, csh, zsh あたりが有名ですが、ksh とは珍しいです。(UNIX...

Linux(FreeBSD)

>>記事を確認する

シェルスクリプトでshiftとwhileの組み合わせ

前回、シェルスクリプトの shift については書きましたが、今回は shift を使った便利なテクニックです。テクニックといっても、全部の引数をループで受け取るだけの簡単な TIPS ですが・・・。では、while を使...

Linux(FreeBSD)

>>記事を確認する

シェルスクリプトのshiftで引数制御

シェルスクリプト(ここではbash)で引数を受け取るときは、$(ダラー)を使って表現します。例えば、最初の引数は $1、2 番目の引数は $2 のように、9 個の引数($9)まで利用することができます。じゃあ、10 個以上...

Linux(FreeBSD)

>>記事を確認する

リダイレクトとファイルディスクリプタ(2)

前にリダイレクトについて書いたのですが、bash に特化していたので csh についても補足。 (参考: リダイレクトとファイルディスクリプタ(1) ) まあ、補足と言うか、レンタルサーバの OS が FreeBSD だったの...

Linux(FreeBSD)

>>記事を確認する

vimで正しいファイルエンコード表示

vim でマルチバイト(日本語など)の文字列を含むファイルを開くと文字化けします。OS 上の文字コードが utf-8 の場合、vi でエンコードを確認すると utf-8 が返ってきます。 :set enc encoding=utf-8...

Linux(FreeBSD)

>>記事を確認する

簡易なサーバの状態表示

Linux サーバのあらゆる情報を html で見たいと思って、強引な即席スクリプトを作ってみました。滅多に使わないコマンドは忘れちゃうので備忘録程度に・・・。もちろん、商用サービスとかだとローカルやリモート...

Linux(FreeBSD)

>>記事を確認する

sudoでroot権限のスクリプトを実行する

Linux において、root にしか実行権限のないシェルスクリプトを一般ユーザーで実行したい場合、sudo コマンドを使って実行を許可できます。sudo コマンドは、セキュリティに大きく絡むコマンドなので設定ファイ...

Linux(FreeBSD)

>>記事を確認する

7日前など一定期間を過ぎた古いファイルを削除する

Linux でバックアップファイルを作成するときに、いつ作成したのかがわかりやすいようにファイル名に日付を付けたりします。 TODAY=`date +%Y-%m-%d` tar czvf hogehoge-${TODAY}.tar.gz hogehoge find...

Linux(FreeBSD)

>>記事を確認する

MRTGでディスクIO(FreeBSD6.2編)

前回、CentOSとIBMのサーバでMRTGの設定をしました。 MRTGでディスクIOの値を取得(1) さて、今回はエージェントを FreeBSD6.2 にしたら、ディスク IO の値が取得できなかったので調べてみました。多分、CPU...

Linux(FreeBSD)

>>記事を確認する

ユーザーの削除(FreeBSD編)

Linux などでユーザー管理していると、ユーザーの登録や削除をする場面に遭遇する。大抵、Linux には追加や削除のコマンドが最初から用意されています。 しかし、OS によってコマンドが違うのですよ...

Linux(FreeBSD)

>>記事を確認する

リダイレクトとファイルディスクリプタ(1)

今日はリダイレクトのお話です。リダイレクトといっても、Http リダイレクトとは別です。プログラムの入力元や出力先を通常とは違うものに変更することの方です。この話題については非常に苦い思い出があるので...

Linux(FreeBSD)

>>記事を確認する

coLinuxでFedoraCore5を動かす(2)

続いてネットワークの設定です。今のノート PC は無線 LAN を使っているので、WinPcap はどうやら使えなさそうです。 そこで TAP ドライバーを使うことにします。TAP ドライバーでは、「Windows でブリッジ...

Linux(FreeBSD)

>>記事を確認する

coLinuxでFedoraCore5を動かす(1)

Windows 環境に Linux の環境を導入。cygwin ではなく、そのまま Linux 環境を入れるのが今回の目的です。そこで、何年か前から話題になってる coLinux を試してみることにしました。 [coLinux] ・ http://...

Linux(FreeBSD)

>>記事を確認する

クラスタ環境のサーバ監視(ganglia)

Linux などでサーバの CPU の状態などを監視するとき、Web などで視覚的に見えるものだと便利です。 どんなソフトウエアが流行っているのだろうと、少し調べてみましたが、そこそこの規模のクラスタ環境だ...

Linux(FreeBSD)

>>記事を確認する

daemontools(Linux)

UNIXサービス(デーモン)の、起動/終了/状態監視/ログの取得を行うツールに daemontools がある。 まず、下記のサイトから daemontools をダウンロードします。 ・ http://cr.yp.to/daemontools/inst...

Linux(FreeBSD)

>>記事を確認する

screenで遠隔からコンソール共有

遠隔からサーバに ssh などでログインした時、複数のコンソールを扱えるとログを tail などで監視しながら、別の作業ができたりして楽になります。また、コンソールを他人と共有することで、遠隔の人のオペレ...

Linux(FreeBSD)

>>記事を確認する

MRTGでディスクIO(Linux編)

今回は MRTG のお話です。MRTG は遠隔のサーバから、対象サーバに対して、CPU の負荷やメモリの状態、ハードディスクの容量などをチェックするツールです。 また、ネットワークのトラフィックもチェックで...

Linux(FreeBSD)

>>記事を確認する

digコマンドでDNSの問い合わせ

DNS の問い合わせ確認をするコマンドとしては nslookup が有名ですが、dig(domain information groper)を使うと、応答メッセージのヘッダ情報や、問い合わせにかかった時間などの情報も表示されます。 よっ...

Linux(FreeBSD)

>>記事を確認する

tcpdumpでよく使うコマンド

ファイアウォール(FW)などを構築する時や、その他サーバなどを構築する時に、他のネットワークからアクセスが来ているか、または外部からのアクセスを遮断できているか調べる場面に遭遇します。 確認自体は実...

Linux(FreeBSD)

>>記事を確認する

yumのキャッシュ用のファイルを削除する

yumでパッケージの一覧などの情報を取得すると、ディスクにキャッシュの情報を作成しているみたいです。だから、連続で実行すると情報取得が早いのですね。ちなみに使用している領域は下記に存在します。 /v...

Linux(FreeBSD)

>>記事を確認する

yumコマンド一覧

最近、CentOSを使うようになったので、yumでよく使う機能についてまとめてみます。 # 利用可能なパッケージの一覧を表示 $ yum list # インストール済みのパッケージ一覧を表示 $ yum list installe...

Linux(FreeBSD)

>>記事を確認する

ログローテートの実行結果

Linux の syslog は、logrotate のデーモンが指定した設定通りにローテートしてくれます。そのローテート処理の実行されたタイミングや、実行結果を見たい時は下記のファイルを参照します。 $ less /var/...

Linux(FreeBSD)

>>記事を確認する

Linuxのプロセス表示で実行中コマンドの最後まで見る

Linuxでプロセスを表示する時、実行中のコマンドなどが長い場合にコンソール画面に納まらずに切れてしまうことがあります。 $ ps -ef そんな時、w オプションを使用すると行が折り返されて、コマ...

Linux(FreeBSD)

>>記事を確認する

snmpでデバイスの情報を取得

snmpでデバイスの情報を取得するコマンドです。これを元に、ディスクIOなどのMIB値を探します。 $ snmpwalk -v 2c -c {SNMPGROUPNAME} localhost 1.3.6.1.4.1.2021.13.15.1.1.2 (結果の一部) UCD-DIS...

Linux(FreeBSD)

>>記事を確認する