問題タブ [aix]
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.
sockets - AIX 固有のソケット プログラミング クエリ
質問1
SUSE の man ページから、ソケット接続オプションの以下の詳細を取得します
開始ソケットが接続モードの場合、connect() は、アドレス引数で指定されたアドレスへの接続を確立しようとします。接続をすぐに確立できず、ソケットのファイル記述子に O_NONBLOCK が設定されていない場合、connect() は、接続が確立されるまで、指定されていないタイムアウト間隔までブロックします。接続が確立される前にタイムアウト間隔が切れた場合、connect() は失敗し、接続の試行は中止されます。connect() が、ブロックされて接続の確立を待機している間に捕捉されたシグナルによって割り込まれた場合、connect() は失敗し、errno を [EINTR] に設定しますが、接続要求は中止されず、接続は非同期的に確立されます。
質問 : 上記の内容は AIX OS (特に接続タイムアウト、タイムアウト待機など) に有効ですか? AIX の man ページ (5.1 および 5.3) には表示されないため
質問2
属性がaのクライアントソケットがあります
。SO_RCVTIMEO 、SO_SNDTIMEO は 5 秒に設定されます。
b. AF_INET と SOCK_STREAM。
c. SO_LINGER のリンガーがオンで、時間は 5 秒です。
d. SO_REUSEADDR が設定されています。
クライアントソケットは O_NONBLOCK ではないことに注意してください。
質問 : O_NONBLOCK が設定されておらず、SO_RCVTIMEO と SO_SNDTIMEO が 5 秒に設定されているため、これはどういう意味ですか?
を。NON Blocking または Blocking で接続しますか?
b. ブロックする場合、それは時限ブロックですか、それとも「無限」の時間ブロックですか?
c. 無限の場合、タイムアウトが t 秒の O_BLOCKING である「接続」システムコールを確立するにはどうすればよいですか。
質問が非常に素朴で申し訳ありません。
ご意見をお寄せいただきありがとうございます。
awk - できれば「grep」を使用して、一致する構成ファイルのエントリから行を数える必要があります
さまざまなデバイスのエントリを含む構成ファイルがあり、各エントリは空白行で区切られています。特定のデバイス タイプのすべてのインスタンスのファイルを検索し、出現に続く非空白行の数を数え、最初の空白で停止する必要があります。
例えば:
Server=foo
設定行 1
設定行 2
設定行 3Server=bar
構成行 1
構成行 2Server=foo
設定行 1
サーバー「foo」に関連付けられている「構成行」の合計数を知りたい場合は、4 つ取得する必要があります。助けていただけますか?
私は AIX 5.3 を使用しています。pcregrep はありません。:( Grep、sed、および awk は、私がアクセスできるすべてです。
c - AIX での netcat のコンパイル
しばらくの間、AIX で netcat.c をコンパイルしようとしましたが (コマンドを使用してmake aix
)、コンパイラは次のような奇妙なフィードバックを返します。
"netcat.c"、117.12 行目: 1506-275 (S) 予期しないテキスト 'int' が見つかりました。
ファイル netcat.c の 117 行目をチェックすると、次の行が見つかります (以下のコードの 2 行目)。
同じテストのために int を char に変更したとしても、ファイルを保存してコマンドを再実行すると、同じエラーが発生します
エラーコードを読む際に何かが欠けていますか?
date - 1 人のユーザーまたはアプリケーションに静的なシステム日付を設定する方法 -- 「グラウンドホッグの日」
QA テストの目的でシステム日付を任意の値に設定する必要がある AIX のベンダー アプリケーションがあります。アプリケーションはシステムから日付を取得し、パラメーターから日付を取得するように変更することはできません。アプリケーションは特定のユーザー ID で実行されます。システム上の他のすべてのユーザーやアプリケーションに影響を与えることなく、このアプリケーションまたはユーザーの日付を非公開の値に設定する方法を見つけたいと考えています。これまでのところ、LPAR をこのアプリケーション専用にすることしかできませんでした。毎日午前 0 時にルート crontab ジョブが日付を静的な値にリセットします。これは機能しますが、リソースが無駄になります。そして今、私はもちろん、異なる日付を必要とする他のアプリケーションに対してこれを行うという要件に直面しています。これに対する賢い解決策はありますか?システムから返された日付を非公開の値に設定できるサンドボックス環境を作成する方法が必要です。先ほども言ったように、OS は AIX であり、このアプリケーションでもそれを変更することはできません。
delphi - AIXでのDelphiユーザー認証
ユーザーがAIXシステムに接続してさまざまなタスクを実行できるようにするDelphiアプリケーションを作成しています。
ユーザーが何かを実行できるようになる前に、ユーザーがAIXシステムにサインオンできるようにする必要があるため、ユーザー名/パスワードを認証できる方法が必要です。
私は当初、ユーザー名とパスワードを入力するサインオン画面を表示してから、AIXシステムとのFTP接続(またはTelnetなど)を確立できると考えていましたが、これは機能として信頼できる方法ではありません。ロックダウンされる可能性があり(たとえば、FTPポートがブロックされるなど)、ユーザー名/パスワードの資格情報が正しいにもかかわらず、明らかにサインオンに失敗する可能性があります。
つまり、Delphiを使用してAIXユーザーアカウントに対してユーザーのユーザー名/パスワードを認証するにはどうすればよいですか?同僚はSSHの使用がうまくいくかもしれないと提案しましたが、そのためにサードパーティのコンポーネントが必要だと思います(存在する場合)。Delphi2009Proを使用しています。
formatting - AIX を使用してハードディスクをローレベルフォーマットする方法は?
AIX 6.1 を搭載したサーバーがあり、diag ツールを使用していくつかの hdisk をフォーマットしましたが、何らかの方法でその VGDA の一部が残っていました。
AIX を使用してハードディスクをローレベルフォーマットするにはどうすればよいですか?
また
特定の hdisk の VGDA をクリアするにはどうすればよいですか?
ありがとう
aix - AIX 0403-006 実行許可が拒否されました
AIX でシェル スクリプトを使用しています。
chmod を使用して実行権限を付与しました
が、次のエラーが表示されます。
ksh: ./getcwd.exe: 0403-006 実行権限が拒否されました。
何か案が?
database - ORA-00060: リソースの待機中にデッドロックが検出されました
Oracle 10g をホストする AIX サーバー上で一連のスクリプトを nohup として並行して実行しています。これらのスクリプトは他の誰かによって書かれており、同時に実行されることを意図しています。すべてのスクリプトがテーブルで更新を実行しています。私はエラーが発生しています、
ORA-00060: リソースの待機中にデッドロックが検出されました
これをグーグルで検索したところ、 http://www.dba-oracle.com/t_deadly_perpetual_embrace_locks.htmが見つかりました
スクリプトは同じテーブルで同時に更新を実行していますが、WHERE
句によって決定されたテーブルの異なるレコードで更新を実行しており、それらの間でレコードが重複することはありません。
それで、これはエラーを引き起こしたでしょうか?.
テーブルのどこで更新が実行されても、このエラーは発生しますか?
テーブルでの同時更新を常に避けるべきですか?
PL/SQL successfully completed
奇妙なことに、上記の引用されたエラーの後に、nohup.out ログにもありました
。
これは、オラクルがデッドロックから回復し、更新を正常に完了したことを意味しますか?それとも、これらのスクリプトを連続して再実行する必要がありますか? どんな助けでも大歓迎です。
前もって感謝します。
linux - バックグラウンドプロセスを順次実行するUNIX
「S1」と「S2」という 2 つのスクリプトがあります。これらのスクリプトを次のように実行します。
nohup S1 &
nohup S2 &
しかし、それらを順次実行したいと思います。つまり、S2 は、S1 が正常に完了した場合にのみ実行する必要があります。これを行うにはどうすればよいですか?S1 がいつ実行を終了したかを知るにはどうすればよいですか? どんな例でも大歓迎です。ありがとう。
c++ - AIX 6.1 リンカー エラー
AIX でアプリケーションをコンパイルしようとしています。Linux、Solaris x86、および Windows で問題なくビルドできますが、AIX でのビルドを試みたのはこれが初めてです。すべてのライブラリを一緒にリンクするところまでたどり着きましたが、次のようなエラー メッセージが表示されました: Linking... ld: 0711-101 FATAL ERROR: Allocation of 96864 bytes failed in routine get_RLDs. 十分なメモリがありません。ulimit またはページング・スペースを確認するか、ローカルの問題報告手順を使用してください。collect2: ld が 12 の終了ステータスを返しました
ページスペースを 1GB 増やしました - 違いはありません ulimit 値を増やしました - 違いはありません maxdata フラグをリンカに渡そうとしました - 違いはありません
他に試すべきことはありますか?
問題の原因となっているライブラリを特定する方法がわかりません。私たちは、boost_date_time、xerces-c、libz、および 50 の内部ライブラリに対して静的にリンクしようとしています。動的リンクに変更できず、システムの構造をあまり変更できないため、ld を試すための構成またはパラメーターのアイデアを探しています。