タスクスケジューラに登録してあるタスクをコマンドで実行したくなった。
↓結論。
Schtasks.exe /Run /TN [TaskName]
検索すると、コマンドをタスクスケジューラで実行するっていうのしか出てこないんですよね。
タスクスケジューラ"を"コマンドで動かしたいわけで。。。
プログラムとか。作ってて ・試しててハマった事など。誰かのお役に立てば幸いかと。 その他、いろいろエトセトラ。。。
タスクスケジューラに登録してあるタスクをコマンドで実行したくなった。
↓結論。
Schtasks.exe /Run /TN [TaskName]
検索すると、コマンドをタスクスケジューラで実行するっていうのしか出てこないんですよね。
タスクスケジューラ"を"コマンドで動かしたいわけで。。。
Docker for Windows使ってて、結構ハマるので記載。
まず、proxy使ってる場合。Docker for Windowsのsettingsで下記を設定。
プロキシはこれで通るはず。
それでもネットワーク系のエラーが出る場合はsettingsのDockerEngineのjsonを下記の様にする。
上記の設定は色々あるっぽいですが、「insecure-registries」にdocker.io入れないと動かなかった。
この辺まではググれば大体出てくるはず。
で、ハマったエラー。
docker-compose buildでやると、下記の感じのエラーが出る。
failed to solve with frontend dockerfile.v0: failed to create LLB definition: failed to authorize: rpc error: code = Unknown desc = failed to fetch anonymous token: Get "https://auth.docker.io/token?scope=repository%3Alibrary%2Fmariadb%3Apull&service=registry.docker.io": proxyconnect tcp: EOF
これ多分、Docker for Windowsがバグってると思う。どうもcompose通した時のdocker pullがプロキシ使ってないっぽい。何か別の設定あるのかしら?
さらに言うと、「FROM mariadb:10.6」これは通らないけど、「FROM mariadb」これは何故か通る。なんじゃらほい。。。
なので、Dockerfileとかcompose.ymlで指定されているバージョンのイメージを先にpullしておくと上手くいく。
# こんな風に書かれてたら FROM mariadb:10.6 # buildする前に手でpullしておく docker pull mariadb:10:6 # 必要なイメージを全部pullしたら後は普通にbuild docker-compose build
実行すると、「/usr/bin/env: bash\r: そのようなファイルやディレクトリはありません」みたいなエラーになる事が結構ある。
これは改行コードがCRLFになってるから。LFのみに変えてあげないとだめ。
やり方は色々あると思いますが、vscode使ってるならvscodeでやるのが楽かも?
対象ファイル開いて、右下改行コードのところで変更できる。
というか、Gitの改行コードの設定をどうにかしないとホントはダメだと思うんだけど、上手いやり方が思いつかないというか調べてない。。。
随分久しぶりに書く気がする。
WindowsのPythonをしばらくぶりにセットアップしたらpipが動かなくなってた。
Python3.9のインストーラーだとだめっぽい。
Python3.6あたりのインストーラーにしないと無理っぽ。
urllibでプロキシ情報を渡すjson定義が変わったらしく、対応出来てない模様。
まだ治ってないのかな?
しばらく、3.6辺りを使わないと無理。というかpip21に上げちゃうとダメっぽ。
pipでproxy使う場合は環境変数に下記を入れておく。
set HTTP_PROXY=http://[userid]:[pass]@hoge.fuga.proxy:[port] set HTTPS_PROXY=http://[userid]:[pass]@hoge.fuga.proxy:[port]
pip実行時のオプションでも行けるけど、上手く動かない事があるらしいので、↑の方が確実かな?
Linux上でWindowsのバイナリを動かしたくなった。64bit用のバイナリなら、Wineをepelあたりからyumで持って来れば使えそう。ただ、32bitのバイナリだと動かせない。「Bad EXE format」ていうエラーがでる。Wineを32bit版でインストールしないとダメらしいんだけど、yumで取れるのは現状64bit版のみ。32bitにするには自分でビルドからやらないといけない様子。
で、色々参考にWine3.xでやってみたんだけど、ちょっとはまったので記載。
とりあえずビルド。あー作業はrootでやった。CentOS7。
・既存が入ってる場合は削除 yum erase wine wine-* ・ビルドツールをインストール yum install samba-winbind-clients -y yum groupinstall 'Development Tools' -y yum install libjpeg-turbo-devel libtiff-devel freetype-devel -y yum install glibc-devel.{i686,x86_64} libgcc.{i686,x86_64} libX11-devel.{i686,x86_64} freetype-devel.{i686,x86_64} gnutls-devel.{i686,x86_64} libxml2-devel.{i686,x86_64} libjpeg-turbo-devel.{i686,x86_64} libpng-devel.{i686,x86_64} libXrender-devel.{i686,x86_64} alsa-lib-devel.{i686,x86_64} -y #1 自分の環境では↓も入れないとダメでした。 yum install flex bison -y #2 32bitをビルドする場合は↓も必要だった。 yum install glibc-devel libstdc++-devel icoutils openal-soft-devel prelink gstreamer-plugins-base-devel gstreamer-devel ImageMagick-devel fontpackages-devel libv4l-devel gsm-devel giflib-devel libXxf86dga-devel mesa-libOSMesa-devel isdn4k-utils-devel libgphoto2-devel fontforge libusb-devel lcms2-devel audiofile-devel yum install glibc-devel.i686 dbus-devel.i686 freetype-devel.i686 pulseaudio-libs-devel.i686 libX11-devel.i686 mesa-libGLU-devel.i686 libICE-devel.i686 libXext-devel.i686 libXcursor-devel.i686 libXi-devel.i686 libXxf86vm-devel.i686 libXrender-devel.i686 libXinerama-devel.i686 libXcomposite-devel.i686 libXrandr-devel.i686 mesa-libGL-devel.i686 mesa-libOSMesa-devel.i686 libxml2-devel.i686 libxslt-devel.i686 zlib-devel.i686 gnutls-devel.i686 ncurses-devel.i686 sane-backends-devel.i686 libv4l-devel.i686 libgphoto2-devel.i686 libexif-devel.i686 lcms2-devel.i686 gettext-devel.i686 isdn4k-utils-devel.i686 cups-devel.i686 fontconfig-devel.i686 gsm-devel.i686 libjpeg-turbo-devel.i686 pkgconfig.i686 libtiff-devel.i686 unixODBC.i686 openldap-devel.i686 alsa-lib-devel.i686 audiofile-devel.i686 freeglut-devel.i686 giflib-devel.i686 gstreamer-devel.i686 gstreamer-plugins-base-devel.i686 libXmu-devel.i686 libXxf86dga-devel.i686 libieee1284-devel.i686 libpng-devel.i686 librsvg2-devel.i686 libstdc++-devel.i686 libusb-devel.i686 unixODBC-devel.i686 qt-devel.i686 ・ソースを取得 cd /usr/src wget http://dl.winehq.org/wine/source/3.x/wine-3.13.tar.xz tar Jxfv wine-3.13.tar.xz ・ビルド cd wine-3.13 mkdir -p wine32 wine64 cd wine64 ../configure --enable-win64 --without-freetype make -j 2 cd ../wine32 PKG_CONFIG_PATH=/usr/lib/pkgconfig ../configure --with-wine64=../wine64 make -j 2 make install cd ../wine64 make install ・確認 which wine which wine64
#1と#2の対応が自分の環境では必要でした。あとは文字化け対応系。
#epelのインスト yum install epel-release #cabextractのインスト yum --enablerepo=epel install cabextract #実行ファイルの取得 wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks #実行権限の変更 chmod +x winetricks #/usr/local/binへコピー cp ./winetricks /usr/local/bin #確認 winetricks --version #フォントインスト winetricks allfonts
そしたら、↓の感じで動かしたいEXEを実行する。
wine hogefuga.exe
ビルドは結局1時間くらいかかった気がする。。。
参考
https://blog.huwasaku.info/1656
https://ameblo.jp/kousakusya/entry-12333298836.html
https://www.centos.org/forums/viewtopic.php?t=49542
タイトル通り。LDAP認証やる。設定は↓。Redmineの環境としてはWindowsServer2012R2上にBitnamiRedmineでRedmine構築。バージョンは3.3。
検索範囲は「DC=domain,DC=hoge,DC=co,DC=jp」みたいにする。これはつなぎ先のLDAP次第。
で、アカウント使う場合は「user@domain.hoge.co.jp」みたいに@の後ろもつけないと上手くいかなかった。
アカウントをLDAPをもとに作る場合は属性を指定しておく。空欄にしてると、新規ユーザ来たときは入力画面に飛ばされる。
属性はココのサイトが見やすい。