問題タブ [solaris-10]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gcc - Solaris 10 での gcc コンパイル エラー
ソースコードをコンパイルしたいのですが、__sync_xxx
関数に関するコンパイルエラーがあります (__sync_bool_compare_and_swap
など)。
マシン上の GCC バージョンは 3.4.3 (アトミック ビルトインをサポートするには gcc 4.1 以降である必要があります) であるため、GCC v4.6 をダウンロードし、それを別のディレクトリにコピーし (v3.4.3 は削除しませんでした)、$PATH
パスを変更します。 GCC 用ですが、動作しません (同じエラーが発生します)。
export PATH=...
新しいGCCでコンパイルするのに十分なgccパスを変更するだけですか?
bash - PS1 ='$PWD$'はシェルスクリプトからは機能しません
私はSolarisの専門家ではなく、プロンプトをPWDに、kshをbashに変更するシェルスクリプトを作成しようとしています。これは次のとおりです。
PS1 ='$ PWD $'exec bash --noprofile --rcfile / dev / null
また
PS1 ='\ w $'exec bash --noprofile --rcfile / dev / null
それらの両方はshから動作しません。コマンドラインからそれらを追加すると、最初にbashがプロンプトに表示され、2回目にPS1 ='$ PWD $'が起動して、プロンプトが変更されます。
まず、PS1 ='$PWD$'がシェルスクリプトから機能しないのはなぜですか。結果を得るには、コマンドラインからコマンドを2回実行する必要があるのはなぜですか。
また、私のexport / home / syed /ディレクトリには、local.login、local.profile、local.cshrcの3つのファイルがあります。ログインするたびにシェルスクリプトを実行する必要がなく、ログイン時に必要に応じてbashシェルとプロンプトが表示されるようにする方法はありますか(質問が多すぎますが、kshは好きではありません)上矢印の最後のコマンドの呼び出しやタブのオートコンプリート機能などの機能はありません)
ありがとうサイード...
jruby - SolarisでJRubyを使用するRails3.2
誰かがJRubyを使ってSolaris-10でRails3.2を動作させることができましたか?
厄介な依存関係の渦に巻き込まれているようです。Rails 3.2には、次の条件に従ってJRuby1.6.6以降が必要です。Rails3.2でのJRubyの使用
ただし、JRuby 1.6.5は、Solarisにgemを正常にインストールできる最後のバージョンです:http://jira.codehaus.org/browse/JRUBY-6494
そこにパッチや私たちが考えていなかった何かがある可能性はありますか?
java - Oracle VM でコマンドを実行する方法
Solaris マシンに Oracle 仮想マシンがインストールされています。(Windowsにのみインストールできるwaptproツールが必要です)。そのため、このツールを Oracle 仮想マシンにインストールしました。
これで、solaris マシンに Java コードができました。solaris マシンから waptpro ツールを実行する必要があります。Solaris から Oracle 仮想マシンでコマンドを実行できるコマンドがあれば、これを Javacode に統合できます。
それで、solarisからoracle仮想マシンでコマンドを実行する方法を知っている人がいたら教えてください。
java - glassfishv3「要求されたターゲットへの有効な認証パスが見つかりません」
この質問は重複しているように見えるかもしれませんが、私が閲覧したスレッドはどれも私の状況に対処したり助けたりしていないようです。
私は何日もの間、自己署名SSL証明書を作成しようとしています。証明書は、HTTPSを介してWSDLファイルを提供する必要があるGlassfishドメインにアクセスするために必要です。デフォルトのSSLポート(443)を使用しないSolaris10でGlassfish3.1.1を使用しています。現在、8181を使用しています。
SSL証明書は、SSL証明書へのアクセスに使用されるホスト名に非常に細心の注意を払っています。証明書は、複数のネットワークゾーンで有効である必要があります。したがって、glassfishドメインには複数の異なるIPが関連付けられています。ホスト名(これをfoobarと呼びましょう)は、私が見る限り、サーバー自体の外部からはアクセスできません。
多くの調査の結果、これらのIPを示すサブジェクト代替名を使用して自己署名証明書を生成する必要があると判断しました。以下は私が取ったステップです。
SANを使用して証明書を生成する最も簡単な方法は、この機能を備えたkeytoolユーティリティを含むJava7をダウンロードすることです。OracleWebサイトからJDK1.7.0_04をダウンロードし、foobarにインストールします。
glassfish domain1構成ディレクトリに移動します(例:/ opt / glassfish3 / glassfish / domains / domain1 / config)。
(以下は、Oracle Glassfish 3.1のドキュメントから変更されています:http://docs.oracle.com/cd/E18930_01/html/821-2435/ablqz.html)
キーストアで証明書を生成します。注:各glassfishドメインには独自のキーストアがあります。以下の証明書は、HTTPSポート8181に関連付けられているdomain1に対して生成されます。
keytool -genkey -alias foobar -keyalg RSA -dname "CN=foobar, OU=xxxxxxx xxxx, O=xxxxxxxxxx, L=xxxxx xxx, S=xx, C=xx" -ext "SAN=IP:12.34.56.78,IP:99.88.77.66" -keypass changeit -storepass changeit -validity 3650 -keystore keystore.jks
生成された証明書をファイル(この場合はfoobar.cer)にエクスポートします
keytool -export -alias foobar -storepass changeit -file foobar.cer -keystore keystore.jks
証明書を信頼できる証明書としてcacertsにインポートします。これを2回行います。1回はGlassfishcacertsファイル用で、もう1回はfoobarのJavaJREcacertsファイル用です。
keytool -import -v -trustcacerts -alias foobar -file foobar.cer -keypass changeit -storepass changeit -keystore cacerts.jks
/ usr / java / jre / lib / security:
keytool -import -v -trustcacerts -alias foobar -file foobar.cer -keypass changeit -storepass changeit -keystore cacerts
念のため、HTTPSにアクセスするWindowsワークステーションのJava JRE cacertsファイルにも証明書をダウンロードしてインポートしました(おそらく必要ありません)。
C:\ Program Files \ Java \ jre \ lib \ security:
keytool -import -v -trustcacerts -alias foobar -file foobar.cer -keypass changeit -storepass changeit -keystore cacerts
glassfishdomain1を再起動します。
asadmin restart-domain domain1
再起動が完了したら、接続をテストします。私の場合、JavaアプリをNetbeansにロードしているWindowsワークステーションに移動します。HTTPSを介してWSDLが必要な場所でテストを実行
https://12.34.56.78:8181
し、ソースとして入力します。
これにより、次のエラーが発生します。
代わりに、domain1にデフォルトのGlassfish SSL証明書を使用すると、サブジェクト代替名が存在しないことを示すエラーが発生します。そのため、そもそも証明書を再生成するという問題を経験しました。
私の知る限り、信頼できるCA証明書として証明書をインポートすると、この「有効な証明書パスが見つかりません」というエラーを解決できるはずです。私はネットワークの専門家ではないことを認めますが、これまでの私の調査はすべて、そうなることを示しています。ここでの問題が非標準のSSLポートを使用しているためかどうかはわかりません(:8181を追加する必要があると、SAN IPとの不一致が発生する可能性があります)。まだ試していません。しかし、CNまたはSANのいずれかで、IP:ポートの組み合わせに対して自己署名証明書を生成する方法はありませんか?
ありがとう...助けていただければ幸いです!
PS必要に応じてアプリケーションコードを提供できます。
ruby-on-rails - rails 3.2.1 solaris 10でsetuidスクリプトを実行すると、railsrunnerが失敗します
ユーティリティタスクを実行するには、cronではなくメインフレームベースのスケジューラを使用する必要があります。このスケジューラーは、ホスト上のエージェントと通信します。エージェントは、必要な引数とともに実行するユーティリティを引数として取る一般的なsetuidkshスクリプトを実行します。次に、setuid kshスクリプトは、その引数を使用して別のスクリプトを呼び出します。
私の場合、次のスクリプト(execute_something.ksh
)は、いくつかの環境変数cd
sをRailsルートに設定しrails runner Module.function -e <environment>
、environmentが渡される引数である場合に実行します。
だから〜だ:
私が直接呼び出すexecute_something.ksh
と、私自身のように、それはうまく機能します。setuidスクリプトを呼び出すと、次のエラーが発生します。
/ [path] / bin / rails:15:in `force_encoding':不明なエンコーディング名-BINARY(ArgumentError)from / [path] / bin / rails:15:in main
これは許可の問題ではありません。関連するすべてのファイルは、setuidユーザーが所有しているか、setgidグループに対する完全なグループ権限を持ち、そのグループに属しています。(はい、やり過ぎですが、それが私に与えられたものです。)
setuidスクリプトは私の環境を継承します(setuidユーザーのEUIDがあることを除いて)。
また、実行されているrailsスクリプトは、私のLinuxラップトップにインストールされているものとは異なります(これはsolarisの問題であると述べました)。
railsスクリプトは次のとおりです。
これは私として機能します。のホームディレクトリサンドボックスへのすべての参照を明示的に削除しました。これは、setuidユーザーではなく、引き続き機能しますPATH
。LD_LIBRARY_PATH
私には地球環境で物事を変更する権限がありません-私はリクエストを入れて待つ必要があります。モジュールの実行方法を変更する方法はありません。
誰かお願いします-私にいくつかのアイデアを教えてください?これは多くの人に当てはまるとは思いませんが、面白いパズルではありませんか?
TIA。
カリルダ
c - 警告: 不適切なポインタ/整数の組み合わせ: op "="
Solaris で C プログラムをコンパイルすると、この警告が表示されます。
私のコードには含まれています
68行目は
構造体 cmsghdr および CMSG_FIRSTHDR は、socket.h で次のように定義されています。
コードに socket.h を含めました。しかし、それでもこのエラーが発生します。
java - Javaでハードリンクカウントを取得する
javaのsolaris10osのファイルからハードリンクカウントを取得するために何かが必要です。
ls-lの解析はオプションではありません。
posix for java http://bmsi.com/java/posix/index.htmlを使用してみましたが、機能させることができませんでした。
この情報を取得するための他の軽量APIまたはコードはありますか?
database - Solaris10へのOracle11gのインストール
ローカルのSunマシンのSolaris10にOravcle11Gをインストールしています。オラクルのドキュメントに記載されているすべての前提条件の手順に従いましたが、その後、オラクルユーザーを使用してインストーラーを実行しようとしたときに実行しました。インストーラーは前提条件をチェックし、次のエラーを表示します。
モニターの確認:256色で表示するように構成する必要があります。コマンド/usr/ openwin / bin/xdpyinfoを使用して表示色の自動チェックを実行できませんでした。dsiplay変数が設定されているかどうかを確認します
Dispay変数を設定するには、次のコマンドを使用しました:$ DISPLAY = localhost:0.0 export DISPLAY
このエラーを無視してインストールを続行すると、次のように表示されます。
/ tmp/OraInstall2012-07-12_05-57-10PMからユニバーサルインストーラーを起動する準備をしています。お待ちください...$Xlib:サーバーによって「localhost:0.0」への接続が拒否されましたXlib:クライアントはサーバーへの接続を許可されていません。
Sunサーバーにローカルでインストールを実行しているわけではありません。
bash - Solaris10:inted-started bashスクリプトでリモートエンドIPアドレスを取得するにはどうすればよいですか?
Solaris 10ホストには、事前に構成されたポート/サービスへの着信TCP接続を取得したときにbashスクリプトを開始するように構成されたinetdサービスがあります。呼び出されたbashスクリプトでリモートクライアントのIPアドレスを見つける方法はありますか?
GNUバージョンのinetdを使用している場合は、--environment
コマンドラインフラグを使用します。しかし、私はデフォルトのSolarisバージョンのinetd / inetadmを使用しています。これは、このフラグをサポートしていないようです。この設定に相当するSolarisはありますか?
また、0()または1( )でgetpeername(2)
呼び出されると目的の情報が返されると思いますが、bashスクリプトを実行しているため、frombashに相当するものを呼び出す方法が見つからないようです。fd
stdin
stdout
getpeername(2)
Cラッパーを呼び出して、getpeername(2)
それを環境変数(またはコマンドライン引数)に格納し、メインのbashスクリプトを呼び出す唯一のオプションはありますか?
ありがとうございました!