ラベル Windows の投稿を表示しています。 すべての投稿を表示
ラベル Windows の投稿を表示しています。 すべての投稿を表示

2017年2月3日金曜日

Windows Linux 任意のサイズを指定してファイルを作成する

テスト等である程度のサイズのファイルを作成したい際、コマンドでファイルを作成できます。特に大きいサイズのファイルを作成する際は、以下のコマンドが非常に便利です。

Windowsの場合は、コマンドプロンプトからfsutilコマンドを使います。
  fsutil△file△createnew△[ファイル名]△[ファイルサイズ]

例えば、C:¥temp フォルダの中にサイズ 1024byteでファイル名 1k.txtを作成する場合
  fsutil△file△createnew△C:¥temp¥1k.txt△1024

Linux の場合は、ddコマンドを使います。
  dd△if=[ファイルを作るまての元データ]△of=[作成するファイル名]△bs=[bytes]△count=[blocks]

例えば、/tmpディレクトリの下にサイズ 1024byteでファイル名 1k.txtを作成する場合
※ファイルの中身はランダムなデータ(/dev/urandom)
  dd△if=/dev/urandom△of=/tmp/1k.txt△bs=1024△count=1
  ※bs × count のサイズでファイルが作成されます。そのため、上記例の場合は、bs=1、count=1024 としても同じサイズのファイルが作成出来ます。

また、Linux の場合はアンパサンド(&)を付ければ、バックグラウンドで処理することが出来ます。
例えば、/tmpの下に1MBのファイルを3つ(1m1.txt、1m2.txt、1m3txt)を作成する場合は、
  dd△if=/dev/urandom△of=/tmp/1m1.txt△bs=1024△count=1024△&
  dd△if=/dev/urandom△of=/tmp/1m2.txt△bs=1024△count=1024△&
  dd△if=/dev/urandom△of=/tmp/1m3.txt△bs=1024△count=1024△&
を実行することで各コマンド終了を待たずに、他の作業をすることが出来ます。
バックグラウンド処理の終了状況はjobs コマンドで確認できます。


ご指摘、ご質問などはコメントへお願いします。

2017年1月15日日曜日

Windows ネットワークドライブの割り当てをコマンドで実行する

Windowsでネットワークドライブの割り当て方法として、以下の2つの方法があります。
    ・「ネットワークドライブの割り当て」画面から設定
    ・コマンドプロントでnet useコマンドを実行

net useコマンドの場合、デフォルトのオプションが「次回ログオン時に自動で割り当てる」となっていますので、自動で割り当てたくない場合はオプション persistent:no を指定する必要があります。

例えば、異なるドメインの端末で1つのサーバへネットワークドライブを割り当てる際、自動で割り当てるように設定していると端末が設定時のユーザとパスワードを記憶しているため、ユーザのパスワード変更によりアカウントがロックしてしまう可能性が高いです。

上記の運用が想定される場合は、ログオンの都度、ネットワークドライブを割り当てる必要があります。

都度 画面での設定やnet useコマンドの打鍵ではなく、net useコマンド(オプション persistent:noを記載、パスワードは記載しない)のバッチファイルをスタートアップに配置すると楽です。

ご指摘、ご質問などはコメントへお願いします。

2017年1月13日金曜日

Windows Oracle OSが64bitで、32bitのODBCを設定する

Windows OSが64bitの場合、コントロールパネル(管理ツール)のODBCデータソースを起動した場合、64bit版のODBC設定画面になります。

32bit版のODBCデータソース(ODBC設定画面)を設定(起動)したい場合は、以下の実行ファイル(odbcad32.exe)を直接実行する必要があります。

%windir%¥syswow64¥odbcad32.exe

なお、64bit版のODBCデータソース(ODBC設定画面)の実行ファイル(odbcad32.exe)は以下です。

%windir%¥system32¥odbcad32.exe

AccessからODBCデータソースを設定した場合、Officeのbit数によって32bitか64bitのODBCデータソースのどちらかに設定されます。

ODBCデータソース(ODBC設定画面)での表示について、Windowsの仕様により、システムDSNには各bit(32bit/64bit)のODBC設定画面で設定した内容のみが表示されますが、ユーザーDSNには64bitと32bitの両方表示されてしまいます。

例えば、以下のように32bit版と64bit版のDSNを設定した場合、
    64bit版のODBC設定
        システムDSN     DNS名:sysdsn64
        ユーザーDSN    DSN名:usrdsn64

    32bit版のODBC設定
        システムDSN     DNS名:sysdsn32
        ユーザーDSN    DSN名:usrdsn32

以下のように表示されます。
    64bit版のODBC設定
        システムDSN     DNS名:sysdsn64
        ユーザーDSN    DSN名:usrdsn64    DSN名:usrdsn32

    32bit版のODBC設定
        システムDSN     DNS名:sysdsn32
        ユーザーDSN    DSN名:usrdsn64    DSN名:usrdsn32

ご指摘、ご質問などはコメントへお願いします。

2017年1月11日水曜日

HULFT 改行コード、文字コードの変換について

以下の話は、HULFTのバージョン 7、8です。

配信定義で、改行コードや文字コード、フォーマットを変換することが出来ます。

配信定義の転送タイプでバイナリ転送以外を指定した場合、コード変換で無変換を指定しても、配信元と集信先で情報ホスト情報を元に改行コードの変換が実行されます。
例えば、
    配信元の詳細ホスト情報のホスト種をUNIX
    集信先の詳細ホスト情報のホスト種をWindowsNT    で定義した場合、
    転送ファイルは改行コードはLFからCRLFへ変換されます。

そのため、コード変換(改行コードと文字コードの変換)を行いたくない場合は、転送タイプをバイナリ転送に指定する必要があります。

文字コードを変換(Shift-JISからUTF-8へ変換等)したい場合は、コード変換を配信側変換又は集信側変換を指定します。
変換する文字コードは、情報ホスト情報の漢字コード種類で指定します。

コード変換の指定により、変換処理のタイミング(配信側、集信側)を変えられます。
そのため、変換処理のタイミング(コード変換を配信側で処理するのか、それとも集信側で処理するのか)は、サーバのスペックや処理効率を考慮して決められます。

ご指摘、ご質問などはコメントへお願いします。

2017年1月10日火曜日

Windows CIFSやようこそ画面によるログオン失敗について

Windowsへログオンする際に「ようこそ」画面を使っていると、アカウント選択時に(パスワードを設定している場合)パスワード入力プロンプトを表示しますが、その際に一度パスワード入力失敗が発生しています。
選択したアカウントにてパスワード入力無しでログオンを試行し、一度ログオンが失敗しています。ようこそ画面を使わない場合は自動でログオン試行(失敗)しません。

同様に、エクスプローラ(cifs)で他PCやサーバに接続時、ログオンしている機器と接続先のアカウントとパスワードが異なる場合、アカウントとパスワード入力画面が表示されますが、その際もログオンしているアカウントとパスワードでログオンを試行し、一度ログオンが失敗しています。

上記のログオン失敗により、認証先でログオン失敗のログ(セキュリティのイベントログ)が出力されます。

他PCやサーバに接続時にネットワークドライブを設定することで、ログオン失敗を回避できます。
ネットワークドライブは、画面やコマンド(net use)から設定が出来ます。

ご指摘、ご質問などはコメントへお願いします。

Windows Oracle sqlnet.oraのNTSによる認証エラーについて

Windows Oracle sqlnet.oraのNTSによる認証エラー(ORA-01017)について
Windows OSにOracle Clientをインストールして、Accessなどを使ってOracleのデータベースへ接続する際、認証エラー(ユーザとパスワードを入力する画面が出ない)で接続出来ず、エラー(ORA-01017)が発生する場合があります。

sqlnet.oraに以下の記載があると、Windows認証情報(※)でOracleに自動で接続しようとしまするため、Windows OSにログオンしているユーザ&パスワードと同じ情報がOracleに登録されていない場合、認証エラーになることがあります。

SQLNET.AUTHENTICATION_SERVICES=(NTS)

Windows認証情報を使わず、Oracle認証情報でログインする場合は、sqlnet.oraの記載をコメントアウト(行頭に # を付ける)又は以下のようにNONEを設定します。

#SQLNET.AUTHENTICATION_SERVICES=(NTS)
    又は
SQLNET.AUTHENTICATION_SERVICES=(NONE)

コメントアウト又はNONEに設定した後は、OracleのIDとパスワードでログイン出来るようになります。設定変更した後、Windows OSの再起動やサービスの再起動などは不要です。

sqlnet.oraのデフォルト設定ではNTSとなっているため、注意が必要です。

※Windows認証情報…Windows OSにログオンしているユーザとパスワード

ご指摘、ご質問などはコメントへお願いします。