HOME / コンピュータTips / Solaris / PATHの設定

Date: 2017/12/17 |  このエントリーをはてなブックマークに追加  |  Tags: solaris opensolaris path

Solarisはその歴史上、BSDを経て、SVR4に変化、そしていま、Linuxに対する歩み寄りをしていることもあり、PATHの設定が難しい。

私が知ってる限り:D

パス名説明
/bin,/usr/binPOSIXのデフォルト的なもの
/sbin,/usr/sbinPOSIXのデフォルト的なスーパーユーザ用
/usr/sfw/binSunがSolarisのインストールディスクの中で追加したフリーソフト。
/usr/ccsSunの開発系?
/usr/ucbBSD系のツール群。Solarisにとっては、Solarisと言われる以前のものとの互換のためにある
/usr/xpg[46]/binX/Open Portability Guide関係のもの。WikiPedia
/usr/dt,/usr/openwin,/usr/X11X系
/opt/sfw/binCompanion Disc系で、インストールされるもの
/opt/csw/binBlastwave.orgで配布されているもの。pkg-getでインストールする
/opt/JPC/bin参考:私が私用に作るパッケージ
/usr/local/bin管理者が自分自身の出てコンパイルしたもの。SunSiteのパッケージもの。

などなど。

これらのPATH設定は、順番が非常に意味を持つ。

なぜなら同名のコマンドが至るところにあるためだ。

これは何故かというと、Solarisがいろいろな経緯をもって進化したからだ。その頃に作られたシェルスクリプトなどが動作するためには、同じオプション、同じ結果がでてこないと互換性を取ることが出来ない。UNIXはとにかくいろいろなリビジョンがある。

従って、たとえばシェルでは便利なPATHが設定されたとしても、Makefileを利用したときは、開発者と同じ環境でないと、configureではエラーが出る可能性がある。なぜなら開発者と同じタイプのコマンドを利用しなくてはならないためである。

従って、なるべくrootでは標準のままのPATHにしておき、必要に応じて環境変数を設定するのが良いだろう。

私の環境・・・

次のようにPATHを設定している。

PATH=/bin:/usr/bin:/sbin:/usr/sbin:/opt/JPC/bin:

/usr/sfw/bin:/opt/csw/bin:/usr/local/bin:/usr/ccs/bin:

/usr/ucb:/usr/X/bin:/usr/dt/bin:/bin

LD_LIBRARY_PATHS=/usr/lib /usr/sfw/lib /opt/sfw/lib /opt/csw/lib /usr/X11/lib /usr/openwin/lib /opt/JPC/lib /usr/local/lib

私はコマンドラインではcshを使っているので、.cshrcでは、このように設定している。

#       PATH SETTINGS
        setenv EXPAND_PATHS '/opt/JPC/bin /opt/JPC/sbin \
/usr/sfw/bin /opt/sfw/bin /opt/csw/bin /opt/SUNWspro/bin \
/usr/local/bin /usr/local/sbin'
        setenv EXPAND_PATH ""
#       GROUP EXPAND PATH
        setenv GROUP_EXPAND_PATHS "~/bin/${OSTYPE}/${MACHTYPE} \
~/bin ~/bin/${OSTYPE}/${MACHTYPE}"
        setenv GROUP_EXPAND_PATH ""
        foreach add_path (${EXPAND_PATHS})
            if ( -d ${add_path} ) then 
                setenv EXPAND_PATH "${EXPAND_PATH} ${add_path}"
            endif
        end
        foreach add_path (${GROUP_EXPAND_PATHS})
            if ( -d ${add_path} ) then 
                setenv GROUP_EXPAND_PATH \
"${GROUP_EXPAND_PATH} ${add_path}"
            endif
        end
        set path=(/bin /usr/bin /sbin /usr/sbin ${EXPAND_PATH} \
/usr/ccs/bin /usr/ucb /usr/X/bin /usr/dt/bin ${GROUP_EXPAND_PATH} )


#       LD_LIBRARY_PATH SETTINGS
        setenv LD_LIBRARY_PATHS "/usr/lib /usr/sfw/lib /opt/sfw/lib \
/opt/csw/lib /usr/X11/lib /usr/openwin/lib /opt/JPC/lib /usr/local/lib"
        setenv LD_LIBRARY_PATH "/lib"
        foreach add_path (${LD_LIBRARY_PATHS})
            if ( -d ${add_path}/amd64 ) then 
                setenv LD_LIBRARY_PATH "${LD_LIBRARY_PATH}:${add_path}/amd64"
            endif
            if ( -d ${add_path} ) then 
                setenv LD_LIBRARY_PATH "${LD_LIBRARY_PATH}:${add_path}"
            endif
        end

コンピュータTips/Solaris

Recent Updates

ディスクの不良を確認する(iostat -EnのError等)

ディスク関係のスタックをざっくり書くと次の様になっています 例、SAS Expanderを使う場合、 例、AHCIなどを使う場合、 これらのエラーは、次の様なコマンドで知ることができます。 出力結果例 このなかで、 たとえば、SATAディスクを利用している際に負荷が上がってしまい、ディスクの応答が間に合わないシチュエーションでは、Transport Errorが一気に …
»続きを読む

2017年、新年明けまして、おめでとうございます。

日記/2017年、新年明けまして、おめでとうございます。

新年明けまして、おめでとうございます。今年もよろしくお願いします。 昨年中は、皆様にお世話になりました。 昨年は、コツコツと3年程前から行ってきた改革がある程度完成された年で、この先5年、10年を見据えて、次のフェーズへと進む為の土台が完成した年でもありました。 それにキャッチアップする形で、個々の従業員一同が、役割を自覚し、明確に動けた年であったかと考えています。 …
»続きを読む

RSA鍵認証のみにし、Password認証を無効化する

意外に覚えきれなくて、いつも忘れるので、メモついでに残しておきます。 古いOpenSSHや、SunSSHの場合は、これも無効にします。 ユーザ目線でのザックリとした説明を。OpenSSHではなく別のSSH実装も含めて考えているので、OpenSSHのソースをじっくり読んだわけではないため、間違ってたらすみません。 まず、Password認証を無効にする場合、 PasswordAut …
»続きを読む

Nexus7 2013をMarshmallow(Android 6.0)化

OTAでない方法で。 だいたい ここに書いてある方法 なんだけど、adbなどが一式使えている状態で。 まずは自分の機種のものをダウンロードする。僕のは、 Android 6.0 Marshmallow for Nexus 7 2013 Wi-Fi 。tgzを展開し、zipも解いておく。 まずはboot loaderへ。 bootloader自体のアップデート。一式、updat …
»続きを読む

OS X 10.11 El Capitanで、phpのモジュールインストール

Yosemiteからのアップデートは割と簡単です。なぜならYosemite時に、すでにapache 2.4になり、php 5.5になっているから(笑 アップデート前に、まずはphp.iniとhttpd.confをバックアップしておきましょう きになるなら、hostsとかapache以下全てをバックアップしておいてもいいかも。 後はEl Capitanにアップデートする。 アッ …
»続きを読む

EasyAcc Powerbank PB4000CB

スマフォTips/モバイルバッテリー/モバイルバッテリー製品レビュー/EasyAcc Powerbank PB4000CB

薄型のモバイルバッテリーEasyAcc Powerbank PB4000CBです。 今や、モバイルバッテリーは大型のものが好まれるのか、隙間無く商品があります。20,000mAh越えで、「でけえ!」とか言ってますけど、大きいのを探せば、100Wh(27,000mAh)、200Wh当たり前、探せば500Wh(135,000mAh)とか、もっともっとあるのです。用途がどんどん異なっていくので …
»続きを読む

EC Technology Sports Headsets S10-JWH07B

デバイスTips/Bluetooth/EC Technology Sports Headsets S10-JWH07B

Bluetoothのスポーツヘッドセット、 S10-JWH07B について。 今までブログに記載することはなかったのですが、実は割とBluetoothと言うか無線型のヘッドフォンを沢山持っています。赤外線や独自物、Bluetoothなどいくつもストックを持っていたりします。普通の人からするとマニアです。でも、マニアからみるとそうでもないレベルです。 ただ「ヘッドフォンの音質」というの …
»続きを読む

静岡県内をVPNでつなぐ(割と特殊な例)

静岡というのはある意味特殊な土地で、ほとんどのインターネットプロバイダのPOIは静岡でつながれておらず、NTT西圏内のどこかで繋がっているので、大抵大阪折り返しになる。仮に静岡県内にPOIがあっても、だいたい静岡でルーティングしてないので、やっぱり東京折り返しになってたりする。例え 同じプロバイダを使っていたとしても 。 だから静岡←→静岡のVPNは、静岡←→東京や、静岡←→大阪よりも遅 …
»続きを読む

最新  |  << 前ページ  |  次ページ >>  |  最初