忍者ブログ
物理学者(ポスドク)による日々の研究生活のメモ書きです ( python/emacs/html/Japascript/シェルスクリプト/TeX/Mac/C言語/Linux/git/tmux/R/ポケモンGO)
■ 過去記事 : CUI環境の Linux に Dropbox をインストール

↑2012年の記事だけど参考になる


■ 過去記事 : Dropbox Headless install via command line

↑Dropbox 公式
64-bit:

cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86_64" | tar xzf -
Next, run the Dropbox daemon from the newly created .dropbox-dist folder.

~/.dropbox-dist/dropboxd
If you’re running Dropbox on your server for the first time, you’ll be asked to copy and paste a link in a working browser to create a new account or add your server to an existing account. Once you’ve done this, your Dropbox folder will be created in your home directory. Download this Python script to control Dropbox from the command line. For easy access, put a symlink to the script anywhere in your PATH.
これに従って、スクリプトのダウンロードと初期の起動をやってみた
dropbox.pyもローカルに落として、scpでDebianサーバーに転送
% chmod 700 dropbox.py
% sudo mv dropbox.py /usr/local/bin/dropbox

# 起動は
% dropbox start

# 状況確認
% dropbox status
■ 過去記事 : Linux で Dropbox デスクトップ アプリをアンインストールする方法
dropbox stop
dropbox status # Should report "not running"
rm -rf ~/.dropbox-dist
rm -rf /var/lib/dropbox
rm -rf ~/.dropbox*
sudo apt-get remove nautilus-dropbox
sudo apt-get remove dropbox
rm /etc/apt/source.d/dropbox

■ crontabでサーバー起動時に、Dropboxが自動起動するように設定する
drontab -e

以下を追記する
[user-name]は適時置き換える

@reboot [user-name] /usr/local/bin/dropbox start

■ lansyncを無効にする
一応実行したけど、本当にうまくいってるのか確認する方法がわからん
dropbox lansync n





PR
とりあえず、考えられる理由は色々あるけど、大概は
sudo tail /var/log/apache2/error.log
でエラーログを見たら、解決する
LinuxのOSが違うと、ファイル名やファイルのPATHが違うので注意
今回はDebian環境


今回の場合は
[Fri Apr 09 12:14:00.596509 2021] [cgi:error] [pid 9149] [client XXXXXXXXXXX] Options ExecCGI is off in this directory: /var/www/html/aaaa/cgi-bin/make_plot.py
って感じだった(一部改変)



(2021/08/10 追記)
このエラーは、新しいディレクトリを追記する必要がある
sudo emacs /etc/apache2/conf-available/serve-cgi-bin.conf

# apacheを再起動する
sudo service apache2 restart




apache2の再起動は
sudo systemctl restart apache2
htmlからcgi-binの実行はできたけど、Internal Server Errorとなるときは
・webブラウザ上のコンソールからエラーメッセージを見る
・/var/log/apache2/error.log でエラーメッセージを見る
で原因を調べる










この1ヶ月くらいうまくいかなかったことが1つ解決したのでメモ

Linuxでは再起動とか重要なコマンドには管理者権限が必要
けど、すごく頻繁に使うコマンドで毎回sudoパスワードを聞かれるとめんどくさい
ましてや、今回の目的はcrontabでsudoが必要なコマンドを走らせること
(書いてて気づいたけど、もしかしたら自分のユーザーアカウントじゃなくてcronというアカウントにこの権限を付与しないといけないのかも、まぁそうなら追記します)


■ 過去記事 : sudo のパスワードを入力なしで使うには

ここを見てもらったらだいたいわかる
これの一部のコマンドのみパスワード入力を省略するってところを参考にすればok


自分のユーザーアカウントはsudo 関連で何ができるのかはsudo -lで一覧できる
sudo -l

# Cmnd alias specification
Cmnd_Alias USERCOMMANDS = /bin/umount

# User privilege specification
root ALL=(ALL:ALL) ALL
hoge ALL=PASSWD: ALL, NOPASSWD: USERCOMMANDS

と書いておけばOK
ユーザーじゃなくてグループに割り当てる場合は % をつける

自分がハマっていたのは、おそらくこの設定ファイルに同じことを2回書いていて
ずっと上の方を修正してたけど、下にある古い記述が優先されて、何も変化が起きなかったんだと思う
最初は書く場所が悪いんだとか思ってたけど、場所はおそらく関係ない






関係しそうな過去記事

■ 参考 : 【CentOS7】MacのVirtualBoxにCentOS7をインストールして環境整備する

■ 参考 : 【Debian9】をVirtual Boxで使えるようにする 初期設定+解像度変更

が参考になるかも





■ 機会があって、Debian10をインストールした

基本的に↑の過去記事と同じような感じでインストールはできた

あとどうでもいいけど、HDDのサイズを20GBにしてそのまま色々とインストール作業を進めてたら
condaをインストールする時点でディスクの空き容量が不足しています
って出て、もっかい最初からインストールし直した・・・・


virtual boxの設定で、ディスクの割当サイズを後から可変できるらしくて
そのとおりにやってみたけど、これでは「空き容量が少ないです」のままでうまくいかなかった

https://coffeepote.tumblr.com/post/625601693768417280






■ sudoを一般ユーザーに付与
どうやったか忘れた・・・

過去記事によると、
# su
# gpasswd --add [ユーザ名] vboxsf

成功しましたみたいな表示が出る

# reboot

やけど、これをやった気がしないんやけどなぁ・・・







ここに書かれていた方法で解決できた

■ 参考 : 【LIVA】【Ubuntu server14.04】apt-getでエラー発生(post-installationスクリプトエラー)
エラーの内容の確認
sudo dpkg --audit

--configureで実行してみる(どのパッケージが原因か大体わかる)
sudo dpkg --configure squid3

/var/lib/dpkg/info配下の関係するファイルを削除(どのファイルを消すべきかわからんけど、参考リンクでは以下の3種類の拡張子を消していた)
rm squid3.postinst
rm squid3.prerm
rm squid3.postrm

sudo rm -fr squid3.postinst squid3.postrm squid3.prerm

もう一度configureをしてみる
sudo dpkg --configure squid3

これでエラーメッセージが変わってるはず







(2020/10/22 追記)

同じようなエラーがpython-pip, python-pil:amd64, python-imaging でも起こった・・・
python関連のコードはすべてanacondaでやりたいと思っていたが、たぶん/usr/bin以下のpythonとanacondaのpython-pipがコンフリクトしてるんやろう

ひとまずanacondaの設定をオフにする(~/.zshrcの最後の方にあるanacondaの設定をコメントアウトする)

/var/lib/dpkg/info配下の関係するファイルを削除

その後で
sudo apt --fix-broken install
すると、エラーが変わったが、最終的に

Errors were encountered while processing:
python-pip
python-pil:amd64
python-imaging
E: Sub-process /usr/bin/dpkg returned an error code (1)


configureをもう一度してみたけどエラーが出てうまくいかない
% sudo dpkg --configure python-imaging
dpkg: dependency problems prevent configuration of python-imaging:
python-imaging depends on python-pil; however:
Package python-pil:amd64 is not configured yet.

dpkg: error processing package python-imaging (--configure):
dependency problems - leaving unconfigured
Errors were encountered while processing:
python-imaging
zsh: exit 1 sudo dpkg --configure python-imaging


問題になってたパッケージをremoveしてみたらなぜかできた?
% sudo apt-get remove python-pip python-imaging python-pil:amd64
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libjsoncpp1 libpython-all-dev python-all python-all-dev python-crypto python-dbus python-keyring python-keyrings.alt
python-secretstorage python-wheel python-xdg
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
python-imaging python-pil python-pip
0 upgraded, 0 newly installed, 3 to remove and 127 not upgraded.
3 not fully installed or removed.
After this operation, 2,177 kB disk space will be freed.
Do you want to continue? [Y/n] Y
dpkg: warning: files list file for package 'libroot-core-dev' missing; assuming package has no files currently installed
(Reading database ... 296051 files and directories currently installed.)
Removing python-imaging (4.0.0-4+deb9u2) ...
dpkg: warning: while removing python-imaging, directory '/usr/lib/python2.7/dist-packages/PILcompat' not empty so not removed
Removing python-pil:amd64 (4.0.0-4+deb9u2) ...
dpkg: warning: while removing python-pil:amd64, directory '/usr/lib/python2.7/dist-packages/PIL' not empty so not removed
Removing python-pip (9.0.1-2+deb9u2) ...
dpkg: warning: while removing python-pip, directory '/usr/lib/python2.7/dist-packages/pip/vcs' not empty so not removed
dpkg: warning: while removing python-pip, directory '/usr/lib/python2.7/dist-packages/pip/utils' not empty so not removed
dpkg: warning: while removing python-pip, directory '/usr/lib/python2.7/dist-packages/pip/req' not empty so not removed
dpkg: warning: while removing python-pip, directory '/usr/lib/python2.7/dist-packages/pip/operations' not empty so not removed
dpkg: warning: while removing python-pip, directory '/usr/lib/python2.7/dist-packages/pip/models' not empty so not removed
dpkg: warning: while removing python-pip, directory '/usr/lib/python2.7/dist-packages/pip/compat' not empty so not removed
dpkg: warning: while removing python-pip, directory '/usr/lib/python2.7/dist-packages/pip/commands' not empty so not removed
dpkg: warning: while removing python-pip, directory '/usr/lib/python2.7/dist-packages/pip/_vendor' not empty so not removed
Processing triggers for man-db (2.7.6.1-2) ...







■ 参考 : Raspberry Pi2にWebサーバを構築し、LEDを点灯させる

↑にすべて書いてあるので、この通りにやればOK




コマンドメモ
# UserDir を有効化する
sudo a2enmod userdir

# 再起動
sudo service apache2 restart

# CGIを有効にする
# ただ、手元の環境では元からファイルがあったのでエラー
sudo ln -s /etc/apache2/mods-available/cgi.load /etc/apache2/mods-enabled/cgi.load

# 設定ファイルの変更
sudo emacs /etc/apache2/sites-available/000-default.conf

//上記のファイルの 以下のコメントを外す
Include conf-available/serve-cgi-bin.conf

# 拡張子.pyのCGIが動作出来るように設定する。
sudo emacs /etc/apache2/mods-available/mime.conf

(変更前)
#AddHandler cgi-script .cgi
(変更後)
AddHandler cgi-script .cgi .py

# CGIを動かすディレクトリの設定
# 変更後のディレクトリは自分が好きなディレクトリにする
/etc/apache2/conf-available/serve-cgi-bin.conf

(変更前)
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
(変更後)
ScriptAlias /cgi-bin/ /home/pi/public_html/cgi-bin
<Directory "/home/pi/public_html/cgi-bin">

# 再起動
sudo service apache2 restart
Pythonスクリプトの準備をする(詳しくは以下のページを参照)
$ sudo emacs ~/public_html/cgi-bin/test.py

■ 参考 : Pythonスクリプトを利用する







(2021/08/10 追記)

新しいディレクトリでcgi-binを1から作る作業をしてた
permission deniedと出て困っていたが、原因は所有者や実行権限ではなかった

スクリプトの実行権限は755に設定しておく
chmod 755

また所有者はdebianの場合は
$ sudo chown -R www-data:www-data ./

■ 過去記事 : 【Debian9】pukiwikiを導入する


今回ハマっていた原因は、ディレクトリがシンボリックリンクだったから

一応、/etc/apache2/apache2.conf の
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
では、FollowSymLinksオプションはオンになってるはずなんだがなぁ・・・

そのディレクトリになにか書き出すわけでなければ、所有者をwww-dataにする必要はないっぽい












イントラサーバーを立てたくなったのでやってみた
OS : Debian 9

一番使用経験があって、有名なのでpukiwikiを使ってみる
開発者は日本人っぽい

まずはここに一度目を通しておく

■ 参考 : PukiWikiのインストール (公式ページ)



■ 必要なコマンドのインストール
sudo apt-get update
sudo apt-get install wget
sudo apt-get install unzip
% phpはすでにインストールされてたのでそのまま使う
(実はインストールされてなくて2日ほどハマる)

wget 'https://ja.osdn.net/projects/pukiwiki/downloads/69652/pukiwiki-1.5.2_utf8.zip/' -O pukiwiki.zip
unzip pukiwiki.zip
mv pukiwiki-1.5.2_utf8 pukiwiki
■ pukiwikiディレクトリを公開場所へ移動する
sudo cp -r pukiwiki /var/www/html/
パーミッション系のことがよくpukiwikiで問題になると検索してたらヒットしたけど
今はzipでダウンロードしてきてunzipすれば特に問題ないっぽい

■ pukiwiki.ini.php の修正
設定をいじるには pukiwiki.ini.php を修正すればいい
sudo emacs pukiwiki.ini.php
修正する箇所は
1. 管理人の名前を設定する
$modifier = 'anonymous';

2. $page_title = 'PukiWiki';

3. 公開するサーバーのアドレスなどにする
$modifierlink = 'http://pukiwiki.example.com/';

4. 管理者パスワードを設定する
$adminpass = '{x-php-md5}!';

md5のパスワードの生成の仕方は
$ echo -n 'pass' | md5sum
って感じ
これでpassをmd5で暗号化したパスワードが得られるのでこれを書けばいい
$ echo -n 'pass' | md5sum
1a1dc91c907325c69271ddf0c944bc72 -
なので、
$adminpass = '{x-php-md5}' . md5('1a1dc91c907325c69271ddf0c944bc72');

かとおもいきや、正解は
$adminpass = '{x-php-md5}'1a1dc91c907325c69271ddf0c944bc72';

■ 参考 : PukiWikiで凍結解除パスワードにMD5を使用する。

ここでも1時間くらいハマった・・・
アニメ見ながらのんびり解決。


基本的な修正はこれだけでOK




いろんな記事を見てると、これで
http://pukiwiki.example.com/pukiwiki
とかの設定したアドレスにアクセスすればwikiが動くと書いてあるが、自分の場合はどうにもうまくいかない・・・

ウェブブラウザのターミナルでエラーメッセージを確認すると、
Failed to load resource: the server responded with a status of 500
みたいなのが表示されてた

これについて調べてみたが、ドンピシャな解決方法が見つからない・・・

原点に立ち戻ってserver worldでwebサーバー立ち上げのあたりの記事を見直してみる

■ 参考 : Apache2 インストール/設定

■ 参考 : PHPスクリプトを利用する


もしかしてphpのインストールがうまく行っていないとか・・・?
$ apt -y install php php-cgi libapache2-mod-php php-common php-pear php-mbstring

$ sudo a2enconf php7.0-cgi

$ sudo emacs /etc/php/7.0/apache2/php.ini
924行目:コメント解除しタイムゾーン設定
date.timezone = "Asia/Tokyo"
これで、なんとかpukiwikiがうごくようになった・・・
https://coffeepote.tumblr.com/post/188747764783
.htaccessが邪魔をしてるとか関係なかったんや・・・・
(一応README.txtには.htaccessが原因かもとか書いてある)

このあと、次のエラーが出てきてまた困った・・・
Directory is not found or not writable (DATA_DIR)
4つくらいエラーメッセージが出てたけど、こっちは調べたら前例がいっぱいあった
/var/wwwという場所の所有者はrootだけど
実際にpukiwikiを動かしているのはapatcheなので所有者をapatcheのユーザーにしないといけないらしい(たぶん)

調べたらよく出てくるのが

■ 参考 : オーナー(所有者)の設定

この通りにやってみると
$ chown -R apache:apache ./
chown: invalid user: ‘apache:apache’
apatcheというユーザーはいません、とのこと

/etc/httpd/conf/httpd.conf
というファイルを見ると、良いとあるがこれは別のlinuxでの話

「"debian" apache group user」とかで調べてみると
Debianではapatcheではなくて、www-dataらしい

設定ファイルは /etc/apache2/envvars
これを書き換えたら、apatcheのユーザー名を変更できる? やらないがー

■ 参考 : apacheのグループと実行ユーザを調べる

「このようにRedHat系OSだとデフォルト値は”apache”、Deb系OSだとデフォルト値は”www-data”となっているので注意が必要です。」らしい


なので、オーナーを変えるには
$ sudo chown -R www-data:www-data ./






■ トップページとかメニューバーの言語を英語にする

■ 参考 : トップ][編集][凍結]とか、 インストール後にある使い方等の説明とか、 全て英語のバージョンはないのでしょうか。
pukiwiki,ini.phpのLANGの欄をjaからenにすればOK

// LANG - Internal content encoding ('en', 'ja', or ...)
define('LANG', 'ja');

// UI_LANG - Content encoding for buttons, menus, etc
define('UI_LANG', en); // 'en' for Internationalized wikisite
UI_LANGとLANGは効果が違うらしいが、今の所LANGをenにするだけでうまくいってるのでこのままいってみる


ただし、LANGをenにすると修正したときの時間などもUTCになってしまう
ので、設定ファイルのlocal time settingの項目を修正する

めんどくさいので、いかなるときも日本時間で表示するように修正した
// Local time setting
switch (LANG) { // or specifiy one
case 'ja':
define('ZONE', 'JST');
define('ZONETIME', 9 * 3600); // JST = GMT + 9
break;
default :
define('ZONE', 'JST');
define('ZONETIME', 9 * 3600); // JST = GMT + 9
break;
// define('ZONE', 'GMT');
// define('ZONETIME', 0);
// break;
}








すでにOSはインストール済のサーバーについて初期設定をしたのでメモ




■ まずは取扱説明書を読む

パスワードやら電源のボタンなどの説明がある
それすら知らないレベルでサーバーのことはわからん




■ 計算機の電源を切るには
% su -
# shutdown -h now
■ 計算機の再起動をするには
# su -
# shutdown -r now

または
# reboot
■ ユーザーを追加する

■ 参考 : ユーザーを追加する
# adduser hoge
この後パスワードを聞かれるので設定する

シェルをtcshにしたい場合は以下の通り
取説には -s /bin/tcsh って書いてあったけどこれではエラーが出た
# adduser --shell /bin/tcsh hoge

ユーザーのパスワードを変更したい場合は
# passwd hoge
ただpasswdと打つとスーパーユーザーのパスワードを変更することになるので注意



■ HDDのパーティションを確認
# df -h
■ OSのversionを見るには
% cat /proc/version



今回はDHCPじゃなくて固定IPで運用する
取扱説明書にはnmtuiってコマンドでネットワーク設定をすると書いてあったので、
そのままやってみた
そしたら、意外とうまくいかなくて詰まった

■ 参考 :ネットワーク設定

にある通り以下の設定ファイルを修正する
# vi /etc/network/interfaces

# 以下追記
auto hoge
iface ens3 inet hoge
# IPアドレス
address 10.0.0.30
# ネットワークアドレス
network 10.0.0.0
# サブネットマスク
netmask 255.255.255.0
# ブロードキャストアドレス
broadcast 10.0.0.255
# デフォルトゲートウェイ
gateway 10.0.0.1
# ネームサーバー
dns-nameservers 10.0.0.10
みたいに書く(値は各人の環境で置き換える)
ただし、自分の環境ではOSがミニマムでインストールされていたのかDNSがきちんと動いていなかった

設定内容の詳細は
■ 参考 :man interfaces 覚書



DHCPで動かしたかったら
# vi /etc/network/interfaces

auto eth0
iface eth0 inet dhcp
でいいはず(やってないのでただのメモ)


■ ネットワークへの接続確認
ping [ゲートウェイサーバーのIPアドレス]
これで何も応答がないならなにかトラブってる

本当に素人なので↓とかのサイトを見ながらあれこれやってみた
■ 参考 :ネットワークにつながらない時に確認する4つの手順Linux

■ 参考 :インターネットに繋がらないときの5つのコマンド(Linux編)Linux



■ DNSサーバーを登録する

dns関連のパッケージが入っていないので手でDNSサーバーのIPアドレスを
/etc/resolv.conf に追記する
これでDSNサーバー問題が解決した

その後はパッケージを最新にしてアップデートする
# apt update
# apt upgrade
必要そうなパッケージをインストールする
# apt -y install dnsmasq resolvconf
# apt -y install emacs
# apt -y install tmux
■ sudoの設定
# apt -y install sudo
すでに入っていた
# visudo

最終行に
hoge ALL=(ALL) ALL
と追記する
他の設定で、再起動や電源を落としたり一部のコマンドをsudoで使えないようにすることも可能



■ ntpサーバーの設定
2つのサービスがある
chronyd : 仮想環境や NTP サーバと常に通信できない環境で選択
ntpd : NTP サーバと常に通信できる環境で選択
# apt -y install ntp
# vi /etc/ntp.conf

# 18行目:コメント化
# pool 0.debian.pool.ntp.org iburst
# pool 1.debian.pool.ntp.org iburst
# pool 2.debian.pool.ntp.org iburst
# pool 3.debian.pool.ntp.org iburst
# 同期をとるサーバーを指定
server 0.0.0.0 iburst
# 50行目:時刻同期を許可する範囲を追記
restrict 10.0.0.0 mask 255.255.255.0 nomodify notrap


ファイルを修正後にntpサービスを再起動する
% sudo systemctl restart ntp
ntpq -pで動作確認できる


■ sshサーバーの設定
sudo apt -y install openssh-server

% sudo emacs /etc/ssh/sshd_config

32行目:コメント解除して no に変更
PermitRootLogin no
■ webサーバーの立ち上げ
sudo apt -y install apache2
設定を書くファイルは通常は `/etc/httpd.conf`だが、Debianは少し違う
■ 参考 : DebianのApache2設定ファイルについて
% sudo emacs /etc/apache2/conf-enabled/security.conf

25行目:変更
ServerTokens Prod
これによってApacheのversionやOS情報を外に出さない

% sudo emacs /etc/apache2/mods-enabled/dir.conf

2行目:ディレクトリ名のみでアクセスできるファイル名を設定
DirectoryIndex index.html index.htm
■ 個人ページの設定
■ 参考 :[3.1] ファイルの置き場所
% mkdir ~/public_html
% sudo emacs /etc/apache2/mods-available/userdir.conf
UserDir public_html`になっていることを確認する
この設定ファイルの内容を反映させる
# a2enmod userdir
% sudo systemctl restart apache2
これでlocalhost/~hoge というページにあるindex.htmlが見れるようになったはず
sudo emacs /etc/apache2/sites-enabled/000-default.conf

13行目の
DocumentRoot /var/www/html
となっている
localhost とfirefoxとかで打って開くページは /var/www/html/index.html
なので /var/www/html 以下にファイルを置くと、webサーバーで公開することができる



さらに.htaccessの設定をしてアクセスにパスワードを要求するようにする

■ 過去記事 :【雑記】サーバーのあるディレクトリ以下にアクセスするときだけパスワードを要求するように設定したい

% sudo emacs /etc/apache2/apache2.conf

<directory var="" www="">
Options Indexes FollowSymLinks
# AllowOverride None
AllowOverride All
Require all granted
</directory>

% sudo systemctl restart apache2

のようにAllowOverride Allに変更する
最後にapacheを再起動する
これでhtaccessが機能するようになるはず





CentOS7では過去にやってみたけど、今回はDebian9

■ 参考 : 【CentOS7】MacのVirtualBoxにCentOS7をインストールして環境整備する>

Virtual Boxをインストールする
[https://www.virtualbox.org/wiki/Downloads](https://www.virtualbox.org/wiki/Downloads)からダウンロードしてくる

- Virtual Boxを起動する
- 左上の新規からスタート
名前は「CentOS7」
タイプ Linux、バージョン Red Hat(64-bit)
名前さえ入力すればあとは自動的に埋まるはず
- メモリサイズは8GBとした
- ファイルタイプは「仮想ハードドライブを作成する」=> さらに「VDI」を選択
- ストレージは「可変」
- ファイルの場所とサイズ設定は「30GB」とした







インストールOK


■ デフォルト解像度以外の大きさを追加する

■ 参考 : Debian 9: VirtualBox上のDebian 9にGuest Additionsをインストールする>

↑の手順3からで良かった
ただし、エラーメッセージの情報量が自分のところはもっとペラい

最初に
[Devices] > [Insert Guest Additions CD image...]
とクリックしてみたが↓のページと同じエラーが出た
原因は同じですでにマウントしているからだったっぽい
■ 参考 : VirtualBoxにあるCentOS7で[Insert Guest Additions CD image...]を押下したら Unable to insert the virtual optical disk となった時の確認方法>



cd /media/cdrom/
sudo apt-get install linux-headers-amd64 linux-headers-4.9.0-7-amd64
sudo sh ./VBoxLinuxAdditions.run
sudo reboot
そのまま sudo sh ./VBoxLinuxAdditions.run するだけだと以下のようなエラーが出た
↓パッと見エラーとかそういうことが書いてないので、見過ごしてた・・・(読まずに食べてた)
エラー画面


指示通りlinux-headers-amd64 linux-headers-4.9.0-7-amd64をインストールして再起動
追加の解像度設定を選べるようになった
解像度

■ コピー&ペーストをホストとVirtualBox内で共有する設定

■ 参考 : VirtualBoxでOS間のクリップボードを共有する方法






かなり前に書いた記事だけどとりあえず公開しときます
そのうち修正するかも(これはしないな)










■ 画面全体を撮る場合
gnome-screenshot
--delay 5とか後ろに付けると、5秒後の画像になる

■ アクティブな画面を撮る場合
gnome-screenshot --window --delay 5
これで5秒後にアクティブ画面の写真を撮る
--delayを付けないと、今アクティブなので、ターミナルの写真になる

■ 任意の範囲の写真を撮る場合
gnome-screenshot --area









一つ前の記事でchromeをインストールしました。
早速Twitter上で嬉しさを表現しようとするも・・・ッ!!


日本語が打てないッ!!


完全に参りました。

システム->システム管理、もしくは、システム->設定
あたりを色々見てみましたが、解決せず

以前使っていたときは右下あたりに言語入力に関するバーが出ていたような覚えがあるのですが・・・


今回はそれを出すまでをメモっときます



環境Debian 5.0.8(lenny)
Linux 2.6.26
GNOME 2.22.3


ちなみにそのバーの名前はSCIMというらしいです

まずはターミナルで確認

#apt-cache search scim


これはパッケージを検索するコマンドでscimに関して調べてます
自分の環境では以下のような出力が返ってきました

libscim8c2a - library for SCIM platform
kmflcomp - KMFL Compiler
libkmflcomp-dev - Development files for libkmflcomp
libkmflcomp0 - KMFL compiler library
libchewing3-data - intelligent phonetic input method library - data files
libchewing3-dev - intelligent phonetic input method library (developer version)
libchewing3 - intelligent phonetic input method library
libkmfl-dev - A Library for providing Keyman(C) services to Linux - development
libkmfl0 - A Library for providing Keyman(C) services to Linux - runtime
mlterm-im-scim - MultiLingual TERMinal, scim input method plugin
scim-anthy - SCIM IMEngine module for Anthy
scim-bridge-agent - IME server of scim-bridge communicate with SCIM
scim-bridge-client-gtk - IME server of scim-bridge communicate with SCIM
scim-bridge-client-qt4 - IME server of scim-bridge communicate with SCIM
scim-bridge-client-qt - IME server of scim-bridge communicate with SCIM
scim-canna - SCIM IMEngine module for Canna
scim-hangul - Hangul Input Method Engine for SCIM
scim-prime - SCIM IMEngine module for PRIME
scim-qtimm - SCIM context plugin for qt-immodule
scim-skk - SCIM IMEngine module like SKK input method
scim-tables-ja - Japanese input method data tables for SCIM platform
scim-tables-ko - Korean input method data tables for SCIM platform
scim-thai - Thai Input Method Engine for SCIM
scim-uim - UIM IM engine module for SCIM platform
libscim-dev - development library for SCIM platform
scim-dev-doc - development documentation for SCIM platform
scim-dev - development files for SCIM platform
scim-modules-socket - socket modules for SCIM platform
scim - スマートな共通入力メソッドプラットフォーム
scim-chewing - SCIM 用 Chewing IM エンジンモジュール
scim-m17n - SCIM 用 M17N 入力メソッドエンジン
scim-modules-table - SCIM プラットフォーム用汎用テーブル IM エンジンモジュール
skim - KDE 用のスマートな共通入力メソッドプラットフォーム
scim-chinese - SCIM 用の賢いピンイン IM エンジン (移行用パッケージ)
scim-tables-zh - SCIM プラットフォーム用の中国語入力メソッドデータテーブル
gcin - 中国語ユーザのための GTK+ ベースの入力メソッドプラットフォーム
scim-gtk2-immodule - バックエンドとして SCIM と併用する GTK+2 入力メソッドモジュール
im-switch - 入力メソッド切り替えフレームワーク
scim-tables-additional - SCIM プラットフォーム用の雑多な入力メソッドデータテーブル
scim-pinyin - SCIM プラットフォーム用のスマートなピンイン IM エンジン


赤くしてあるのが目的のパッケージです
今回はこの2つをインストールします

#apt-get install scim scim-anthy



これで左上の「システム->設定」に「SCIM入力メソッドの設定」というのが現れたはずです

早速、設定を変更します
・左のバーの「全体設定」で、キーボード配列を不明から日本語に変更する
・その下の2つにチェックを入れる
 (未確定文字列を〜と全てのアプリケーションで〜)
・ホットキーの項目で「開始/終了」を変更する


入力モードを変更するホットキーはデフォルトで「ctrl + space」になっていますが、自分はこれをキーボード左上の「半角/全角」に割り当てています


最後に変更を適用し終了しますが、このままではまだSCIMバーは現れません
ログアウトし直すことで、設定が反映されるはずです


これでDebianで日本語入力ができるようになるはずです

やっとTwitterで喜びを表現できますw
ノートPCにインストールしていたDebianを再インストールしました

また一から研究環境を整えなければいけません


まずは好みのブラウザであるgooglr chromeをインストールする

前回インストールしたときは今回のようなことをしなくてもよかったのですが、何か変わったのかもしれません


環境Debian 5.0.8(lenny)
Linux 2.6.26
GNOME 2.22.3



まずはここから

#aptitude update


  ↓

# aptitude install libgconf2-4
# aptitude install libnspr4-0d
# aptitude install libnss3-1d
# aptitude install lsb
# aptitude install xdg-utils



ただこのまま打っても自分の場合はうまくパッケージをインストールしてくれなかったため
パッケージを探しにいくリストをちょいちょいいじる

/etc/apt/sources.list


こちらが詳しいです


上にあるaptitude installがすべて完了したらgoogle chromeのdebパッケージを入手しにいく
普通に公式にありますので、ダウンロードしてください

そしてターミナルでダウンロードしたディレクトリに移動し次のように打てばおそらくインストール完了です

#dpkg -i [package name].deb




ターミナルでgoogle-chromeと打つか、左上のアプリケーション->インターネット->Google Chromeから起動できるはずです
Xplanet
http://xplanet.sourceforge.net/

というのがあるらしい

どうやら太陽系の星について簡単シミュレーションが行えるっぽいので
ぜひDebianで使えるようにしたい

そこで apt-get install xplanet と打ってインストールしてみた。


が、「いざ実行してみるとJPEGに対応してません」らしきエラーが出て動かない。

さらなる調査が必要か・・・


○追記

軽く調べてみた感じ、コマンドの入力の仕方が悪かったのかもしれない

xplanet -lon 135 -lat 10 -window

のように帰ったら打ってみよう。
新しいパッケージを落としてインストールしようとしたら以下のようなエラーが表示された。

dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem.


表示されたとおりに sudo dpkg〜 と入力したらいろいろと設定していますと表示され、なんか解決したっぽい

ググっても原因がよくわからない。
とりあえずメモ
http://get.adobe.com/jp/reader/otherversions/


コマンド
acroread hoge.pdf

debianのバージョン

acroreadのバージョンも明記する
自宅で使っているDebianにもGSLを導入してみました。

特に難しいことはなく本家サイトから tar ファイルを落としてきて解凍していつもの流れ

こちらに詳しくかかれています。


ただ、一つだけトラブったのがLD_LIBRARY_PATH

上のサイトにもかかれているようなエラーが、実際にコンパイルして実行してみると表示されました
解決方法も載っています

ターミナルで次のように打つ
LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH


ただこれだけだと、次にターミナルを開いたときに上の設定がなしになっちゃうのでこれを .bashrc に書いておきましょう


あとデフォルトの状態ではGSLは/usr/localにインストールされるようです。

これは次のように打つことで確認できます(というか見にいけばわかるけど)
gsl-config --prefix




それではよいGSLライフを!
前回の記事 で、なんとか機嫌よく動いてくれると思っていたLANカードちゃん
しばらくDebianに触れる機会がなく、放置していて今日見ると見事に機嫌を損ねてしまっていました
こりゃー参った…

そのときの機嫌取りの様子のまとめです。



使用しているLANカードは前回と同じNECのAtermWL54AG

こちら によるとNECのLANカードは「madwifiで動作確認」と書いてあるので、以前トライした方がいるようです
madwifiはドライバ代わりなるそうです


まずvi(エディター)で /etc/apt/source.listのcdromの行をコメントアウトする(先頭に#を付ける)
viでの編集はちょい変則的なので慣れないと厳しいです
さらに以下の行に赤字の文字を追記

deb http://ftp.jp.debian.org/debian/ etch main contrib non-free
deb-src http://ftp.jp.debian.org/debian/ etch main contrib non-free

次にターミナルでmadwifiをインストールする

$su
#aptitude update
#aptitude install madwifi-source
#aptitude install madwifi-tools
#m-a prepare
#m-a a-i madwifi



このあとLANカードを差してみるとLANカードを認識してくれていたのでひとまず安心
(ルート権限でiwconfigと打つと確認できる)


家で使っているDebianはいつも有線でネットに接続していたのですが、この際だから無線で繋いでやろうと思っていろいろ調べてやってみました。

使用した無線LANカードはNECのAtermWL54AGです →これ
家で余っていたのでこの際だから再利用

公式サイトではwindows用のドライバしか配布されていないので、Debianでは使えない…
(試していないので、もしかしたら可能かもしれませんが)

ネットで調べてみると madwifi というのをインストールすればLANカードを認識するようになるらしい
ググったら出てきたので落として次のようにターミナルで入力

dpkg -i [package name]


パッケージを展開中...
お、いけたかな? と思いきや、依存関係でエラーが出てインストールできない…

どうやら module-assitant というパッケージも必要らしい
しょうがないので手動で落としてきて展開

このあたりから iwconfig とターミナルで打つと無線LANカードが認識されているのがわかる
で、いつのまにか右上のネットワーク接続に無線ネットワークの欄が…

あとはネットワークにつなげるためのルーターのパスワード的なものを調べて入力すればおk

実際なんで繋がってるのかちゃんとは理解できていません…
それでも繋がってるんだからよし。


ただネットに繋げるとセキュリティの問題とかがあるからなー…
ちょっと厄介

そちらはおいおいやっていこう。




タイトルのとおり、詳細な色分けをしたいなーってことで色々調べたそのメモです
今回からコマンドの記号の視認性からこの文字サイズで行こうと思います

まずlsコマンドを打ったときに、ディレクトリの内容に色を付けるためには
ターミナルで次のように打つ

$ alias ls='ls --color=auto'


これをターミナルを起動するごとに打つのは面倒なので設定ファイル.bashrcに書いておく
.bashrcはホームディレクトリに置いておく
なければemacsなどのエディターで作成



ここからが本題

上の--colorを使えば色分けはできるが、自分で色を決めることはできない
デフォルトのディレクトリの色が青だったので背景が黒っぽい自分にはかなり視認性が悪く
自分好みの色に変更する方法を探した

次のように.bashrcに書いておけば拡張子や種類によって色分けができる


alias ls='ls --color=auto'
LS_COLORS='no=0:fi=00:di=01;33:ex=01;31:*.jpg=01;35:*.txt=01;34:'
export LS_COLORS

文字数の関係で本来の設定を少し省略

色と数字の対応は こちら を参考にさせていただきました
だいたい見ていただいたらわかると思いますが、LS_COLORSの数字をいじって色を変更しています

また後半の *.jpg *.txt のように拡張子を指定することも可能です。


最後に こちら のようにDIR_COLORSをいじる方法も発見したが
時すでにまさし
筆者は上の方法で色を変更したあとであった…



HOME |
プロフィール
HN:coffee
職業:物理屋(自称)
趣味:映画鑑賞、登山
出身:大阪府の南の田舎
自己紹介:
import MyProfile
import coffee_pote from TWITTER
import amazonのほしい物リスト from WISH_LIST

print "先月子供が産まれました!"

# 最終更新 2022/10/25
カウンター
カウンター カウンター
ブログ内検索
ツイートするボタン
リンク
相互リンク募集中です (Twitterにてお知らせください)

Demo scripts for gnuplot version 5
(gnuplotのさまざまなデモ画像と作り方がまとめられている、眺めているだけでできるようになった気分になれる)

gnuplotスクリプトの解説
(米澤進吾さんの個人ページ、gnuplotと言えばこのかた)

gnuplot のページ
(Takeno Lab、うちのブログがリンクされていたのでリンク返し)

Twitterから映画の評価が分かる & 映画の鑑賞記録が残せる coco
(映画の感想をまとめられるサイト、いつもお世話になっています)

Astronomy Picture of the Day Archive
(天文や宇宙関連の最新の話題について画像とともにNASAが説明しているページ)

今日のほしぞら
(任意の時刻の空で見える星を表示してくれる、国立天文台が管理している)

GNUPLOTとアニメーション
(応用の項目の「見せてあげよう!ラピュタの雷を!!」あたりからすごすぎる)

読書メーター
(読んだ本をリストできる便利なサイト)

flickr難民の写真置き場
(20XX年、flickrは有料化の炎に包まれた。あらゆるflickr無料ユーザーは絶滅したかに見えた。 しかし、tumblr移住民は死に絶えてはいなかった。)

教授でもできるMac OS X へのLaTeX, X11, gccのインストレーションと環境設定
(阪大の山中卓さんのwebページ、タイトルにセンスが溢れている、内容は超充実してる、特にTeX関連、学振DCとかPDの申請書類作成時にはお世話になっております)

英語論文執筆用の例文検索サービス
(とんでもないものを見つけてしまった・・・・ arXivに収録されている 811,761報の 英語論文から,例文を検索するための検索エンジン)


Template "simple02" by Emile*Emilie
忍者ブログ [PR]