Iwao Dev

気付いたことをメモしています.

この画面は、簡易表示です

Synology NAS

弦と矢と半径 – 4

先日の Python コードのバグ(整数で計算されてしまうため結果が異なる).
原因はすぐわかるが,対応は悩む所.
コードを分解して動作を確認してみた.

def	r_cs_o	(c , s)	:	return	(        ( c*c )  / ( 8 *s )  +  s/2  )
def	r_cs_n	(c , s)	:	return	(        ( c*c )  / ( 8.*s )  +  s/2. )

print   (6*6)
print   (8*1)

print   (36/8)
print   (36/8.)

print   (1/2)
print   (1/2.)

print	("")
print   (36/8 +1/2 )
print   (36/8.+1/2.)

print	("")
print	(r_cs_o(6,1))
print	(r_cs_n(6,1))

Python での「浮動小数点数」の動作テスト
https://docs.python.org/ja/3/howto/pyporting.html?highlight=除算


Synology NAS DSM では Python 2.7 が標準で入っているみたい.
「パッケージ センター」で Python3 を追加できる.

C:\Program Files\Microsoft Office\Office14>cd C:\Users\Iwao\AppData\Local\Temp

C:\Users\Iwao\AppData\Local\Temp>ssh -l Iwao -p 2200 192.168.1.116
Iwao@192.168.1.116's password:
Iwao@DS116:~$ python3
Python 3.5.1 (default, Jan 29 2018, 14:16:30)
[GCC 4.9.3 20150311 (prerelease)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
Iwao@DS116:~$ python2
Python 2.7.12 (default, May 12 2020, 04:48:57)
[GCC 4.9.3 20150311 (prerelease)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
Iwao@DS116:~$ python
Python 2.7.12 (default, May 12 2020, 04:48:57)
[GCC 4.9.3 20150311 (prerelease)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
Iwao@DS116:~$

Synology NAS DS116  python コマンド
ASUSTOR NAS ADM では入ってない.「App Central」でインストール可能.
ASUSTOR NAS Python


2020/11/20
QNAP NAS での Python3 は,他の NAS と異なるみたい.
opkg install python3 でインストールしなければならなかった.
https://mish.myds.me/wordpress/dev/2020/08/29/ts253d-setup-3-opkg/
https://mish.myds.me/wordpress/dev/2020/08/17/ts-253d-setup-7-python3/

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


AS5202T 温度

最近気温が少し高くなってきたので,ちょっと気になる ASUSTOR NAS の温度.
HDD の温度が Synology NAS と比べると高い.
Synology NAS では 40℃前後.AS5202T は 50℃前後になっている.
AS5202T の温度
CPU温度は ASUSTOR NAS の場合は問題ないらしい.
UNISTAR のサポート情報  CPU温度が70度というのは正常ですか?
ここを読むと,ファン速度を「自動」にしている限りは HDD の温度の許容範囲ということか?
ファン速度は 770 RPM なので「低速」の状態.
手動で「中速」や「高速」にすると,それぞれ 2590 RPM と 4280 RPM .


今も使用している WD Cloud も 50℃前後.
以前 WD Cloud に大量のデータをコピーしていたら 55℃を超えた位からコピー速度が遅くなった.
この動作は WD Cloud によるのか WD Red によるものなのかは不明.
WD Red は PC でも使用しているが,こちらは十分冷却されているので遅くなったと感じたことはない.

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


サイトがダウンしています

メールをチェックしていると,


サイトがダウンしています
Iwao Dev が読み込めませんでした (Jetpack 2020年5月20日 (水) 8:30 AM時点)
サイトのアクティビティログを確認すると、この問題の原因になっている可能性のある最近の変更に関する詳細がわかります。サイトに変更を加えていない場合はホスティングサービスに連絡し、追加のサポートを受けてください。
サイトが再びオンラインになったことをJetpackが検出したときに、こちらから別のメールを送信します。
サポートが必要ですか ? ご心配はいりません。
このメールは、サイトでダウンタイムモニタリングが有効にされているため、送信されました。サポートにご連絡いただく場合は、リファレンス番号 [136721373/intermittent] をお知らせください。
これらのアラートはセキュリティ設定でカスタマイズできます。
Automattic, Inc.
60 29th St. #343, San Francisco, CA 94110, USA
WordPress.com のメール設定を管理します。
サイトがダウンしています


DS116 のログを見みると,DSM のアップデートがかかった.
普段であれば更新後うまく動作すると思うが…
DDNS の更新通知がうまく機能していなかった?
「コントロール パネル」-「外部アクセス」-「DDNS」で「今すぐアップデートする」で更新.
これでうまくアクセスできるようになった.

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


PHP から iconv コマンド呼び出し

シフトJIS のデータファイルをアップロードして WebGL で表示のテスト.
PHP から作成した .out を呼び出しているが,その中で文字コードの変換がうまく機能していない.
.out の中では iconv ライブラリを呼び出す.うまく機能しない時は iconv または uconv コマンド.
.out をコンソールから実行した時はうまく機能している.


いろいろと動作を調べていると,次の様なコマンドが PHP から呼出された時うまく機能していない様子.
iconv -f CP932 shiftjis.txt > out_file.txt
コンソールでは OK .
ここまで絞り込むのに 1 日かかった


今回の修正前 Synology NAS では次の様にしていた.
uconv -f sjis -t utf8 shiftjis.txt -o out_file.txt


先日テストしていた時 ASUSTOR NAS ではエラーになったので,単純に -t オプションを取ってしまった.

Iwao@AS5202T:/volume1/Web/Test/mics/tc_xconv $ iconv -f CP932 -t utf8 shiftjis.txt
iconv: conversion to utf8 unsupported
iconv: try 'iconv -l' to get the list of supported encodings
Iwao@AS5202T:/volume1/Web/Test/mics/tc_xconv $

iconv -l を幾つかの環境で調べていると “utf8” の指定がうまくない.
いろいろな環境でうまく機能しそうなのは “UTF-8” .
Fedora iconv -l | grep -i utf
Raspberry Pi iconv -l | grep -i utf
DS116 uconv -l | grep -i utf
AS5202T iconv -l | grep -i utf


-t オプションを指定しないとうまくないみたいで,次の様に変更.
iconv -f CP932 -t UTF-8 shiftjis.txt > out_file.txt
これで意図した動作になった.


2020/09/08 変換できない文字が存在した時に止まらない様な指定を追加.
https://mish.myds.me/wordpress/dev/2020/09/07/upload-mbcs-name/
exec_ic.hxx
text_gnc.hxx

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


ASUSTOR NAS 上の iconv , whois

ASUSTOR NAS の iconv は Fedora や Synology NAS uconv の -o(出力ファイルの指定)がない.

[Iwao@fedora ~]$ iconv --help
使用法: iconv [OPTION...] [FILE...]
与えられたファイルのエンコーディングをあるエンコーディングから別のエンコーディングに変換します。
 入力/出力形式の指定:
  -f, --from-code=NAME       元のテキストのエンコーディング
  -t, --to-code=NAME         出力用のエンコーディング
 情報:
  -l, --list
                             全ての既知の符号化された文字集合を一覧表示します
 出力制御:
  -c                         出力から無効な文字を取り除く
  -o, --output=FILE          出力ファイル
  -s, --silent               警告を抑制する
      --verbose              経過情報を表示する

  -?, --help                 このヘルプ一覧を表示する
      --usage                短い使用方法を表示する
  -V, --version              プログラムのバージョンを表示する
長い形式のオプションで必須または任意の引数は、それに対応する短い形式のオプションでも同様に必須または任意です。
For bug reporting instructions, please see:
.
[Iwao@fedora ~]$ iconv --version
iconv (GNU libc) 2.30
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
作者 Ulrich Drepper。
[Iwao@fedora ~]$ 
Iwao@AS5202T:/volume1/home/Iwao $ iconv --help
Usage: iconv [OPTION...] [-f ENCODING] [-t ENCODING] [INPUTFILE...]
or:    iconv -l
Converts text from one encoding to another encoding.
Options controlling the input and output format:
  -f ENCODING, --from-code=ENCODING
                              the encoding of the input
  -t ENCODING, --to-code=ENCODING
                              the encoding of the output
Options controlling conversion problems:
  -c                          discard unconvertible characters
  --unicode-subst=FORMATSTRING
                              substitution for unconvertible Unicode characters
  --byte-subst=FORMATSTRING   substitution for unconvertible bytes
  --widechar-subst=FORMATSTRING
                              substitution for unconvertible wide characters
Options controlling error output:
  -s, --silent                suppress error messages about conversion problems
Informative output:
  -l, --list                  list the supported encodings
  --help                      display this help and exit
  --version                   output version information and exit
Report bugs to .
Iwao@AS5202T:/volume1/home/Iwao $ iconv --version
iconv (GNU libiconv 1.14)
Copyright (C) 2000-2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later 
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by Bruno Haible.
Iwao@AS5202T:/volume1/home/Iwao $

AS5202T iconv help
次の様にリダイレクトして指定すれば良い.
iconv -f CP932 sjis_file.txt > out_file.txt
他にも whois はサーバを指定しないとうまく機能しない?
whois -h whois.apnic.net 27.92.169….

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


NAS 日本語ソースのコンパイル

Synology NAS と違い iconv が存在するので,コンパイルの指定で試してみた.
が,うまく動作しない.

Iwao@AS5202T:/volume1/home/Iwao/gcc_test/Test/t_linux/MsgStr/cc_ml_1 $ which iconv
/usr/bin/iconv
Iwao@AS5202T:/volume1/home/Iwao/gcc_test/Test/t_linux/MsgStr/cc_ml_1 $ g++ -Wall cc_ml_1.cpp -finput-charset=SJIS-WIN
cc1plus: error: conversion from SJIS-WIN to UTF-8 not supported by iconv
Iwao@AS5202T:/volume1/home/Iwao/gcc_test/Test/t_linux/MsgStr/cc_ml_1 $ g++ -Wall cc_ml_1.cpp -finput-charset=SJIS
cc1plus: error: conversion from SJIS to UTF-8 not supported by iconv
Iwao@AS5202T:/volume1/home/Iwao/gcc_test/Test/t_linux/MsgStr/cc_ml_1 $ iconv -f SJIS cc_ml_1.cpp  > u8_ml_1.cpp
Iwao@AS5202T:/volume1/home/Iwao/gcc_test/Test/t_linux/MsgStr/cc_ml_1 $ g++ -Wall u8_ml_1.cpp
Iwao@AS5202T:/volume1/home/Iwao/gcc_test/Test/t_linux/MsgStr/cc_ml_1 $ ./a.out
名称 3
Iwao@AS5202T:/volume1/home/Iwao/gcc_test/Test/t_linux/MsgStr/cc_ml_1 $         

iconv -f  SJIS  , g++
結局 Synology NAS と同様で,予め UTF-8 に変換しておく必要がある.


iconv -f SJIS-WIN SJ_file.txt ができなかった.
iconv -f CP932 SJ_file.txt ならば通る.
他にも iconv -f SJIS なら通るが,Fedora ではダメだったので CP932 を使用することに.


Windows 上で管理しているソースは,私が作成した次のツールで変換しています.
https://i–tools.blogspot.com/2020/02/copycc202001.html

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


AS5202T セットアップ – 6

DS116 からの WordPress の移行.
2017/01 は wordpress.com から DS115j に.2017/10 には DS115j から DS116 に移行している.
今回行うのは Synology NAS DS116 からで,どこまで動作する(移行できる)かのテスト.


DS116 側 の「ダッシュボード」で「ツール」-「エクスポート」.
Synology NAS WordPress エクスポート
「すべてのコンテンツ」を選んで「エクスポートファイルをダウンロード」.


AS5202T の「ダッシュボード」-「ツール」-「インポート」.
「WordPress」の所の「今すぐインストール」,「インポータの実行」.
「参照…」から xml ファイルを指定して「ファイルをアップロードしてインポート」すると,

WordPress のインポート
エラーが発生しました。
アップロードしたファイルは php.ini で定義された upload_max_filesize を超過しています。

PHP 7.3 php.ini の upload_max_filesize は 2M になっている.xml は 6.3MB .
php.ini を編集しようかとも思ったが,PHP 7 を無効にすると PHP 5.6 になり 10MB になっている.
もう一度,xml の「ファイルをアップロードしてインポート」.
「添付ファイルをダウンロードしてインポートする」にチェックをつけて「実行」.
添付ファイルをダウンロードしてインポート
時間は 30 分程度かかった.
AS5202T WordPress 移行


この記事を公開後,もう一度 Synology NAS で「エクスポート」,ASUSTOR NAS で「インポート」.
新しいこの記事は追加されるが,変更した以前の記事は反映されないみたい.
「All in One SEO Pack」プラグインを入れたタイミングかは不明だが,SEO 情報も移行できている.
xml には書かれているのでプラグインを入れた段階で反映されていたのかもしれない.

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


NAS g++ で a.out が作成されない?

warning はあるが,エラーの表示はない状態まで修正して g++ .

Iwao@DS116:~/gcc_test/Test/t_linux/t_calc$ g++ t_calc.cpp -Wall
In file included from /volume1/public/C_Sync/GoogleD/Develop/_.SRC/_gcc/V2_FuncA.hxx:1:0,
                 from Calc_16.cpp:46,
                 from t_calc.cpp:29:
/volume1/public/C_Sync/GoogleD/Develop/_.SRC/__CPR_/v2_funca.hxx: In constructor 'vd2_arc::vd2_arc()':
/volume1/public/C_Sync/GoogleD/Develop/_.SRC/__CPR_/v2_funca.hxx:28:9: warning: 'vd2_arc::tc' will be initialized after [-Wreorder]
  double tc ;
         ^~
/volume1/public/C_Sync/GoogleD/Develop/_.SRC/__CPR_/v2_funca.hxx:27:9: warning:   'double vd2_arc::ts' [-Wreorder]
  double ts ;
         ^~
/volume1/public/C_Sync/GoogleD/Develop/_.SRC/__CPR_/v2_funca.hxx:23:2: warning:   when initialized here [-Wreorder]
  vd2_arc () : lr(0) , tc(0) , ts(0) {}
  ^~~~~~~
/volume1/public/C_Sync/GoogleD/Develop/_.SRC/__CPR_/v2_funca.hxx: In function 'Vd2 get_point_pie(const Vd2&, const Vd2&, double, double)':
/volume1/public/C_Sync/GoogleD/Develop/_.SRC/__CPR_/v2_funca.hxx:263:6: warning: variable 'lm' set but not used [-Wunused-but-set-variable]
  Vd2 lm = (le-ls) / 2 ;
      ^~
In file included from t_calc.cpp:29:0:
Calc_16.cpp: In member function 'virtual int VarCnv::SetError(LPCTSTR, ...)':
Calc_16.cpp:1319:7: warning: variable 'cnt' set but not used [-Wunused-but-set-variable]
  int  cnt ;
       ^~~
Iwao@DS116:~/gcc_test/Test/t_linux/t_calc$ ls
Calc_16.BAK  Calc_16.cpp  Calc_16.hpp  t_calc.BAK  t_calc.cpp  t_calc.dsp
Iwao@DS116:~/gcc_test/Test/t_linux/t_calc$ g++ t_calc.cpp
Iwao@DS116:~/gcc_test/Test/t_linux/t_calc$ ls
Calc_16.BAK  Calc_16.cpp  Calc_16.hpp  t_calc.BAK  t_calc.cpp  t_calc.dsp
Iwao@DS116:~/gcc_test/Test/t_linux/t_calc$ ll
total 248
drwxrwxrwx+  2 Iwao users   4096 Feb  6 11:46 .
drwxrwxrwx+ 16 Iwao users   4096 Feb  6 10:18 ..
-rwxrwxrwx+  1 Iwao users 103036 Feb  6 11:45 Calc_16.BAK
-rwxrwxrwx+  1 Iwao users 103032 Feb  6 11:46 Calc_16.cpp
-rwxrwxrwx+  1 Iwao users  11608 Feb  5 18:53 Calc_16.hpp
-rwxrwxrwx+  1 Iwao users   2756 Feb  6 11:18 t_calc.BAK
-rwxrwxrwx+  1 Iwao users   2420 Feb  6 11:43 t_calc.cpp
-rwxrwxrwx+  1 Iwao users   4420 Feb  5 16:39 t_calc.dsp
Iwao@DS116:~/gcc_test/Test/t_linux/t_calc$ 

なのに a.out が作成されない.
Raspberry Pi で同様に動かすと

pi@raspberrypi:~/projects/t_calc $ g++ t_calc.cpp
In file included from t_calc.cpp:29:
Calc_16.cpp: In function ‘int ExpDel_Bracket1(TCHAR*, size_t, int, int, char)’:
Calc_16.cpp:2152:6: error: ‘_tcspbrk’ was not declared in this scope
  if (_tcspbrk(val,bracket)==NULL){ return FALSE ; } // ���ʂ����݂��Ȃ����͉������Ȃ�
      ^~~~~~~~
Calc_16.cpp:2152:6: note: suggested alternative: ‘wcspbrk’
  if (_tcspbrk(val,bracket)==NULL){ return FALSE ; } // ���ʂ����݂��Ȃ����͉������Ȃ�
      ^~~~~~~~
      wcspbrk
Calc_16.cpp:2161:21: error: ‘_tcsrchr’ was not declared in this scope
  LPTSTR equStartB = _tcsrchr(tmpLeft,startB) ; // �ŏ��� ')' �ɑΉ����� '(' �̈ʒu�����߂�
                     ^~~~~~~~
Calc_16.cpp:2161:21: note: suggested alternative: ‘_tcschr’
  LPTSTR equStartB = _tcsrchr(tmpLeft,startB) ; // �ŏ��� ')' �ɑΉ����� '(' �̈ʒu�����߂�
                     ^~~~~~~~
                     _tcschr
pi@raspberrypi:~/projects/t_calc $ 

どうも ShiftJIS のコメントが邪魔してかエラーが表示されてないだけみたい.
Raspberry Pi でコンパイルするとエラーが表示される
未定義となっているので正しく宣言して対応.


次は warning .

.../v2_funca.hxx:28:9: warning: 'vd2_arc::tc' will be initialized after [-Wreorder]      double tc ;
.../v2_funca.hxx:27:9: warning:   'double vd2_arc::ts' [-Wreorder]                       double ts ;
.../v2_funca.hxx:23:2: warning:   when initialized here [-Wreorder]                      vd2_arc () : lr(0) , tc(0) , ts(0) {}

これは,クラス内の変数の宣言と初期化の順番が異なる場合のものらしい.
もう一つの [-Wunused-but-set-variable] は戻り値を使用していないもの.

warning: variable 'lm' set but not used [-Wunused-but-set-variable]

変数を削除して対応.


前後するが 先日のツール で ShiftJIS のソースを UTF-8 に.

Iwao@DS116:~/gcc_test/Test/t_linux/t_calc$ cd test_sj/
Iwao@DS116:~/gcc_test/Test/t_linux/t_calc/test_sj$ ls
Calc_16.cpp  Calc_16.hpp  t_calc.BAK  t_calc.cpp
Iwao@DS116:~/gcc_test/Test/t_linux/t_calc/test_sj$ g++ t_calc.cpp -Wall
Iwao@DS116:~/gcc_test/Test/t_linux/t_calc/test_sj$ ll
total 132
drwxrwxrwx+ 2 Iwao users   4096 Feb  6 16:39 .
drwxrwxrwx+ 3 Iwao users   4096 Feb  6 16:38 ..
-rwxrwxrwx+ 1 Iwao users 103036 Feb  6 14:41 Calc_16.cpp
-rwxrwxrwx+ 1 Iwao users  11608 Feb  5 18:53 Calc_16.hpp
-rwxrwxrwx+ 1 Iwao users   1821 Feb  6 16:04 t_calc.BAK
-rwxrwxrwx+ 1 Iwao users   1841 Feb  6 16:39 t_calc.cpp
Iwao@DS116:~/gcc_test/Test/t_linux/t_calc/test_sj$ g++ t_calc.cpp -Wall -finput-charset=SJIS
cc1plus: error: conversion from SJIS to UTF-8 not supported by iconv
Iwao@DS116:~/gcc_test/Test/t_linux/t_calc/test_sj$ g++ t_calc.cpp -Wall
In file included from t_calc.cpp:27:0:
Calc_16.cpp: In function 'int ExpDel_Bracket1(TCHAR*, size_t, int, int, char)':
Calc_16.cpp:2152:26: error: '_tcspbrk' was not declared in this scope
  if (_tcspbrk(val,bracket)==NULL){ return FALSE ; } // 括弧が存在しない時は何もしない
                          ^
Iwao@DS116:~/gcc_test/Test/t_linux/t_calc/test_sj$ ll
total 136
drwxrwxrwx+ 3 Iwao users   4096 Feb  6 16:46 .
drwxrwxrwx+ 3 Iwao users   4096 Feb  6 16:38 ..
-rwxrwxrwx+ 1 Iwao users 108716 Feb  6 14:41 Calc_16.cpp
-rwxrwxrwx+ 1 Iwao users  12170 Feb  5 18:53 Calc_16.hpp
drwxrwxrwx+ 2 Iwao users   4096 Feb  6 16:45 org
-rwxrwxrwx+ 1 Iwao users   1841 Feb  6 16:39 t_calc.cpp
Iwao@DS116:~/gcc_test/Test/t_linux/t_calc/test_sj$

エラーが表示される.

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


Linux でのメモリの空き容量の取得

C++ のコードで Linux 環境でのメモリの使用状況 を知りたくなった.
コマンドでは free などがあるが,それと同等のものを取得する関数.

Iwao@DS116:~/gcc_test/Test/t_linux/T_mem/t_mem$ free -h
              total        used        free      shared  buff/cache   available
Mem:           1.0G        695M         29M         49M        281M        162M
Swap:          2.0G        1.0G        1.0G
Iwao@DS116:~/gcc_test/Test/t_linux/T_mem/t_mem$ cat /proc/meminfo
MemTotal:        1030632 kB
MemFree:           16720 kB
Buffers:            9392 kB
Cached:           203592 kB
SwapCached:       227532 kB
Active:           393336 kB
Inactive:         489268 kB
Active(anon):     322836 kB
Inactive(anon):   397436 kB
Active(file):      70500 kB
Inactive(file):    91832 kB
Unevictable:        1408 kB
Mlocked:            1408 kB
SwapTotal:       2097148 kB
SwapFree:        1060108 kB
Dirty:               200 kB
Writeback:             0 kB
AnonPages:        538800 kB
Mapped:            71992 kB
Shmem:             50524 kB
Slab:              89312 kB
SReclaimable:      17608 kB
SUnreclaim:        71704 kB
KernelStack:        4368 kB
PageTables:        14768 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     2612464 kB
Committed_AS:    4943664 kB
VmallocTotal:    1039360 kB
VmallocUsed:        6916 kB
VmallocChunk:     961204 kB
Iwao@DS116:~/gcc_test/Test/t_linux/T_mem/t_mem$ ./a.out
16474112
1055367168
Iwao@DS116:~/gcc_test/Test/t_linux/T_mem/t_mem$ cat main.cpp

#include        <iostream>
#include        <sys/sysinfo.h>

int     main    ()
{
        {
                struct  sysinfo meminfo ;
                ::sysinfo(&meminfo);
                std::cout << meminfo.freeram  << std::endl;
                std::cout << meminfo.totalram << std::endl;
                }
        return 0;
        }

Iwao@DS116:~/gcc_test/Test/t_linux/T_mem/t_mem$

Synology NAS DS116 ::sysinfo
最初 getrusage を見つけたが,マニュアルにある様にこの目的では使えない.値は 0 で返ってくる.
次に見つけたのが sysinfo
Fedora や Raspberry Pi ,Synology NAS で動作することを確認.

-		meminfo	{...}			sysinfo
		uptime		17198		__kernel_long_t
-		loads				__kernel_ulong_t [3]
		[0]		35520		__kernel_ulong_t
		[1]		30240		__kernel_ulong_t
		[2]		26880		__kernel_ulong_t
		totalram	2078154752	__kernel_ulong_t
		freeram 	107687936	__kernel_ulong_t
		sharedram	19849216	__kernel_ulong_t
		bufferram	145534976	__kernel_ulong_t
		totalswap	2227171328	__kernel_ulong_t
		freeswap	2206625792	__kernel_ulong_t
		procs   	468		__u16
		pad     	0		__u16
		totalhigh	0		__kernel_ulong_t
		freehigh	0		__kernel_ulong_t
		mem_unit	1		__u32
		_f				char [0]

memstat.hxx

この投稿は役に立ちましたか? 役に立った 役に立たなかった 1 人中 1 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


NAS のシャットダウン,再起動

Synology NAS なのであまり使用することはないが,SSH などで接続したコンソールから

シャットダウン sudo shutdown -h now sudo poweroff
再起動 sudo shutdown -r now sudo reboot
Synology NAS は,shutdown と poweroff ,reboot 共に可能
ASUSTOR NAS は, poweroff ,reboot が可能
QNAP NAS は,admin で入った端末から poweroff と reboot

Synology NAS DS115j コンソールからの「再起動」
DS115j reboot NOW


2020/12 poweroff ,reboot の追加.
https://mish.myds.me/wordpress/dev/2020/12/01/nas-poweroff-reboot/



2021/09/03
NAS によって,起動中アプリのシャットダウン動作が異なるので注意が必要.
NAS の再起動などのスケージュール


http://mish.work/joomla/various/nas.html

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ



    top

    %d人のブロガーが「いいね」をつけました。