PHPからコマンドラインを実行する

【php】ちょっとしたphpをコマンドラインからさくっと実行する at softelメモ

$ php -r "echo '123';"
123 ← 実行結果

ちょとちがう。

 

python と php | ハックノート

  1. <?php
  2. /* python 実行 exec : 長くなってしまいましたが無視 */
  3. exec("C:/pleiades/xampp/python/python C:/pleiades/xampp/htdocs/dev/test.py", $output, $return_var) ;
  4. if($return_var === 0) {
  5. foreach($output as $key => $val) {
  6. echo $val."<br />" ;
  7. }
  8. } else {
  9. echo "exec error : ".$return_var ;
  10. }

PHP でコマンドライン・ツールを使う

1
2
3
4
5
6
7
<?php
$results = exec('wc -w *.txt | head -5');
echo $results;
 
#would print out just the last line or results, i.e.:
#3847 myfile.txt
?>

exec()を使う。

 

 

【php】exec()で実行したコマンドが正常に終了し成功したか確認する at softelメモ

exec - PHP return_var codes? - Stack Overflow

http://tldp.org/LDP/abs/html/exitcodes.html#EXITCODESREF

execの$return_varのエラーコード一覧

CQ SDRファン祭り行きたかった話

www.youtube.com

FPGA FM Stereo Tuner

ディジタルFMステレオ・チューナの製作 ―― 雑誌の付属基板でここまでできる|Tech Village (テックビレッジ) / CQ出版株式会社

mcHF QRP transceiver | Small and inexpensive homebrew HF radio

万年準備中のブログ: mcHFというQRPトランシーバキット

Ubuntuのインストールをするなど

よく忘れること。

 

Windows 10でパーティションのサイズを変更する方法 -EaseUS

Windowsパーティションを切って、領域を確保する。

コントロールパネルのディスクの管理で

ボリュームの縮小をして、領域を作る。

 

windowsでUSBへのイメージ書き込みソフトウェアを

ダウンロードして、使用しUSBに書き込み。

 

Ubuntu 16.04 インストール(BIOS) その2 - BIOSのPCにUbuntu 16.04をインストールする(パーティションの作成 〜 ブートローダーの設定) - kledgeb

Linuxのパーティションとは?とパーティションの区切り方を詳細解説

推奨される Swap 領域の目安 - eTuts+ Server Tutorial

[UEFI環境編]Ubuntu 14.04 LTS と Windows10 とのデュアルブート環境の構築 | えび天サーバ ( abten server )

CentOS 7 と Windows とのデュアルブート環境の構築 | えび天サーバ ( abten server )

Ubuntu16.04 + Windows10 のデュアルブート環境を構築する - 俺とプログラミング

パーティションは何を作れば良いのか。

/ (root)とswapだけで良いというのもあれば、

/ (root), swap, bootを作ると良いのもあれば、

/ (root), swap, boot, /usr, /var, /home(UNIX形式?)のもあって迷う。

 

今回は

swapに実メモリの2倍、

bootに1GB、

残りを / (root)に割り当ててインストールした。

死せるssh、生けるtmuxを走らす

tmuxの使い方 - Qiita

conohaにsshでつないで処理をコンパイルを走らせてたけど、

PCをほっとくとスリープモードになってsshが切れて処理が止まりまくって、

はわわわわわわ。。。となりました。

(もちろんスリープなしの常時ONにするのもあり)

tmuxを使うとsshが切れてもバックグラウンドで走るやで〜ということで使うことに。

 

$ tmux new -s chino

でセッションの追加とアタッチ。

 

ctrl+bを押して、離してからd

デタッチ

 

追記:2019/08/02、コマンドを修正した。

ConohaにSFTPした話

f:id:takuwz:20170918101930j:plain

Conohaにファイルをアップロードしたかったので

Filezillaを使って、ConohaにSFTPしました。

SFTPを使ってファイルをアップロードする(Filezilla編)|VPSならConoHa

Conohaのコントロールパネルのセキュリティ>SSH Keyで

+パブリックキー ボタン

を押して、pemファイルをダウンロードしました。

FilezillaのSettingsのSFTPの項目で

Add key file...で、ダウンロードしたpemファイルを追加しました。

Fillezillaのサーバへ接続ボタンを押して、

Host:をConohaのアドレスを入力、

Protocol:をSFTP、

Logon Type: をNormal、

User: rootで

Password:を入力して

接続できました。

 

作業用にroot以外のuserを作っていましたが、

これでは接続できず。

 

お前らのSSH Keysの作り方は間違っている - Qiita

秘密鍵から公開鍵を生成する - Qiita

SSH-KEYGEN (1)

作業用のユーザは

conohaにログインして

ssh-keygenして(-t ed25519はed25519の暗号方式の指定)

生成されたid_ed25519のファイル内にある公開鍵、

-----BEGIN OPENSSH PRIVATE KEY-----から

-----END OPENSSH PRIVATE KEY-----まで

(BEGIN OPENSSH PRIVATE KEY、END OPENSSH PRIVATE KEY含む)

をコピー、手元でペーストで公開鍵のファイルを作成して、

authorized_keysに公開鍵を追加した。

手元に公開鍵のファイルはFillezillaにAdd key file...したところ、

作業用のユーザでSFTPできた。

(authorized_keysに公開鍵を追加するのが重要で、

ssh-keygenするのは手元のPCでも良かったっぽい。

というかセキュリティ的にはそっちの方が良い。)

 

以下、ログ。

chino@kafuu:~$ ssh-keygen -t ed25519
Generating public/private ed25519 key pair.
Enter file in which to save the key (/home/chino/.ssh/id_ed25519):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/chino/.ssh/id_ed25519.
Your public key has been saved in /home/chino/.ssh/id_ed25519.pub.
The key fingerprint is:
SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx chino
The key's randomart image is:
+--[ED25519 256]--+
|         |
|         |
|         |
|         |
|         |
|         |
|         |
|         |
|         |
+----[SHA256]-----+
chino@kafuu:~$ cat .ssh/id_ed25519
-----BEGIN OPENSSH PRIVATE KEY-----
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
-----END OPENSSH PRIVATE KEY-----
chino@kafuu:~$ cd .ssh/
chino@kafuu:~/.ssh$ ls
authorized_keys id_ed25519 id_ed25519.pub id_rsa id_rsa.pub
chino@kafuu:~/.ssh$ cat id_ed25519.pub >> authorized_keys

 

ConoHa VPSでUbuntuの初期設定(作業ユーザ追加、ssh設定)メモ - Qiita

新しいConoHaでSSHで接続する - プログラムを楽しもう

$ ssh -i ./key-2017-09-xx-xx-xx.pem root@yyy.yyy.yyy.yyy

key-2017-09-xx-xx-xx.pemはダウンロードしたpemファイル

yyy.yyy.yyy.yyyはConohaのアドレス

 

スピリットベンチャー宣言!!!