忍者ブログ
日々の研究生活のメモ書きなど


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

■ 参考 : 【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


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







PR
■ 参考 : 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スクリプトを利用する








イントラサーバーを立てたくなったのでやってみた
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間のクリップボードを共有する方法






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









CentOS6とCentOS7でコマンドが大きく変わっているので注意
↓にわかりやすくまとめられている

■ 参考 : CentOS7 systemctlコマンドの使い方 自分用メモ


今動いているサービスは
systemctl
で確認できる
# hogeサービスを起動する
systemctl start hoge.service

# hogeサービスを止める
systemctl stop hoge.service

# hogeサービスを再起動する
# reloadとの違いがわからん
systemctl restart hoge.service

# hogeサービスの状況を見れる
systemctl status hoge.service

# hogeサービスを自動起動するようにする
systemctl enable hoge.service

# hogeサービスを自動起動を止める
systemctl disable hoge.service

systemctl emergency
とかでレスキューモードに入ったりもできるらしい(まぁ使わんか・・・・)




■ reload と restart の違いは何か?

ここ↓に書いてあった

■ 参考 : 【systemctl】コマンドの使い方 〜オプション一覧、起動や自動起動、ステータスの見方、serviceとの違い、reloadとrestartの違い〜

restart(再起動)とreload(再読み込み)の大きな違いは、失敗したときの挙動が異なる点です。
再起動で失敗する場合はたいてい、停止は成功して起動が失敗するので、1秒程度以上のサービス停止が発生します。
一方、再読み込みで失敗した場合は、停止をしていないので、設定変更前の状態で起動し続けられます
reloadのが安全だな・・・






(2018/10/23)

Debianでもこのsystemd (systemctl)のお世話になることになった

いろんなOSがあれど、サービスを止めたり再起動するコマンドは大きくわけて2種類あるらしい↓
わかりすかったのでメモ

■ 参考 : 【新旧対応】Linuxでの自動起動の設定方法を解説


・SysVinit系 : chkconfigコマンド
・systemd系 : systemctl

chkconfigはまだ使うことはなさそう







yumでこのパッケージいらないから
sudo yum remove hoge
ってしたら、GUIからCUIになってしまった・・・・
まさか、こんなことになるとは・・・

ただ、GUIじゃないと嫌〜〜〜〜ってわけでもないことに気づいたのでCUIでいいや・・・

しかも結局、そのパッケージは必要だからもう一度インストールしたというね・・・ なにやってんだかw






ちなみに電源を切るコマンドは
shutdown -h now
Macの電源の切れる速度に慣れているせいで、1~2分待つのがすっごいイライラしてしまうw

High Sierraはそこまで早くないけど、MarvericksかそのあたりのOSのときはとんでもなく早くてまじでびびった覚えがあるw

reboot, poweroff, halt, shutdownについてまとめられてる↓
■ 参考 : Linuxのシャットダウンや再起動のコマンドは色々ある

CentOS7でも完全に同じかどうかはわからぬ
ただ、reboot(再起動)は使えた









これはCentOS7に限った話ではないですが、手元の環境がCentOS7だったのでタイトルに付けておきました



とあるライブラリを ./configure しているときにfftw3fがないよとエラーが出ました
エラーメッセージはこんな感じ↓
checking for FFTW3... no
checking for fftwf_execute_dft in -lfftw3f... no
configure: error: could not find the fftw3f library
configure: error: ./configure failed for hoge
ググるとfftw3fは、fftw3にfloatオプションを付けてコンパイルするとインストールできるらしい
% ./configure --help
 (略)
--enable-single compile fftw in single precision
--enable-float synonym for --enable-single
--enable-long-double compile fftw in long-double precision
--enable-quad-precision compile fftw in quadruple precision if available
--enable-sse enable SSE optimizations
--enable-sse2 enable SSE/SSE2 optimizations
--enable-avx enable AVX optimizations
--enable-altivec enable Altivec optimizations
--enable-neon enable ARM NEON optimizations
--enable-mips-zbus-timer
 (略)
赤色のオプションを付ければいい
↓ fftw3をインストール
% ./configure --enable-shared
% make
% sudo make install

↓ fftw3fをインストール
% ./configure --enable-float --enable-shared
% make
% sudo make install
最初は --enable-sharedというオプションなしでやっていた
そうすると
/usr/bin/ld: /usr/local/lib/libfftw3.a(mapflags.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/libfftw3.a: error adding symbols: Bad value
という別のエラーが出た
よくわからなかったので
CC=gcc -fPIC
とconfigureにつければいいのかと思ったけど、ぐぐると--enable-shared をつければいいらしい


■ 参考 : relocation R_X86_64_32 against;recompile with -fPIC

これで合ってるのかわからないけど、最初にインストールしたかったライブラリのコンパイルは無事に通った
無理なら yum でインストールしようと思ってたところですわ・・・




この記事には全然関係ないけど、分かりやすかったのでメモしとく

■ 参考 : Linux共有ライブラリの簡単なまとめ










■ 左のsuper key(左のcommand)を押すと、「switch between overview and desktop」というのが立ち上がってうざい

左上のApplications -> Utilities -> Tweak Tool -> Keyboard and Mouse
にその設定があった
ずっと立ち上がってる機能の名前がわからなくて、検索できなかったけどやった見つけた・・・・
これを右super keyあたりに割りてて封じてやればOK
switch between overview and desktop
一番下の線はなんか書こうと思ったけど、気のせいだったのだ気にしないでくだされ








■ ワークスペースの数を減らす
左上のApplications -> Utilities -> Tweak Tool -> Workspace

基本的にterminalでも字を打つだけなので、ワークスペースがいくつも必要ってわけでもないし1でOK
そもそもワークスペースを移動する方法がわからんwww
右下の1/4ってところをクリックすれば移動できるけど、それじゃあ不便すぎるでしょw

たぶんショートカットキーがあるはずだけど、今回は使わぬ
もしいるならそのうち元に戻す











またJISキーボードを使ってる人はUSキーボードの記号配置になってしまうとすごくやりづらい
使っていないキーボードの記号の位置を覚えておくのはかなりきついと思うので・・・
JISキーボードの人は Japanese(PC-98xx Series) を選べばOK
みたいなことを以前の記事で書きましたが、よくよくキーボードレイアウトを見てみると、



|キーがないあるべき場所にキーがないやん・・・
(なんかエセ関西人みたい)


別にdeleteの左にあるキーを押して \ とか | が表示されればそれでいいんですが表示されない・・・
なのでこのキーの名前を調べて、\とか | が表示されるようする


|記号はバーチカルバーとかパイプとか呼ばれてる


そもそもなんでこのキーがないのかはwikiの「物理配列」という画像を見たらわかった
JIS一番上段にある1から0の数字キーの右にはANSIもISOも2つしかキーがないけど
JISという日本の規格は3つキーがある
その一番右が | キー
ただ、一番上に貼り付けた画像はjpのキーボードだと言ってるのに、JISじゃないじゃん・・・!
\キーの位置的にISOって規格だと思われる
zの左に \ キーがあるキーボードって見たことないわ・・・

■ 参考 : キー配列




「CentOs7 JISキーボード」とかで調べてればなんとかなりそう?
-> 調べたけど直接的な解決方法はないっぽい




面白い記事を見つけた↓

■ 参考 : Pipe character key not recognised!

ここのやり取りを簡単に書くと、
「pipe keyが見つからん!!」
「簡単な解決方法は全部のキーを叩いて、 | が表示されるキーを見つけることですな
より良い解決方法は正しいキーをセットすることですな」
「うちのキーボードのことわかってないなぁ
けど、\キーはあったわ、ありがとさん
近いうちにキーマッピングで割り当てるわ

キーマッピングのやり方は
1. $ xev
2. \キーだと思ってるキーを叩く、xevコマンドの結果をキャプっておく
3. xmodmap -e 'keycode = backslash bar'
コマンドを走らせる」
これ、質問者が自己解決してるっていう


この人の方法に沿ってやってみる
xevコマンドを走らせてから
a
Enter
\
の順番に叩いてみた結果↓
% xev
KeyPress event, serial 36, synthetic NO, window 0x2000001,
root 0x281, subw 0x0, time 6906456, (647,525), root:(685,628),
state 0x0, keycode 38 (keysym 0x61, a), same_screen YES,
XLookupString gives 1 bytes: (61) "a"
XmbLookupString gives 1 bytes: (61) "a"
XFilterEvent returns: False

KeyRelease event, serial 36, synthetic NO, window 0x2000001,
root 0x281, subw 0x0, time 6906570, (647,525), root:(685,628),
state 0x0, keycode 38 (keysym 0x61, a), same_screen YES,
XLookupString gives 1 bytes: (61) "a"
XFilterEvent returns: False

KeyPress event, serial 36, synthetic NO, window 0x2000001,
root 0x281, subw 0x0, time 6909242, (647,525), root:(685,628),
state 0x0, keycode 36 (keysym 0xff0d, Return), same_screen YES,
" XLookupString gives 1 bytes: (0d) "
" XmbLookupString gives 1 bytes: (0d) "
XFilterEvent returns: False

KeyRelease event, serial 36, synthetic NO, window 0x2000001,
root 0x281, subw 0x0, time 6909370, (647,525), root:(685,628),
state 0x0, keycode 36 (keysym 0xff0d, Return), same_screen YES,
" XLookupString gives 1 bytes: (0d) "
XFilterEvent returns: False

KeyPress event, serial 36, synthetic NO, window 0x2000001,
root 0x281, subw 0x0, time 8477299, (165,-16), root:(203,87),
state 0x0, keycode 132 (keysym 0x0, NoSymbol), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

KeyRelease event, serial 36, synthetic NO, window 0x2000001,
root 0x281, subw 0x0, time 8477405, (165,-16), root:(203,87),
state 0x0, keycode 132 (keysym 0x0, NoSymbol), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
なんでかはわからんけど、同じキーを2回認識してる?

KeyRelease event, serial 36, synthetic NO, window 0x2000001,
root 0x281, subw 0x0, time 6909370, (647,525), root:(685,628),
の部分は全部共通なので関係ない

state 0x0, keycode 132 (keysym 0x0, NoSymbol), same_screen YES,
でkeycodeがそれぞれのキーで違う結果になってるので、この部分が大事なkeycodeっぽい
赤で色を付けた部分をコピーしておく


xmodmap -pke で今のキー一覧と各文字の対応関係が見れる
% xmodmap -pke
 (略)
keycode 41 = f F f F f F
keycode 42 = g G g G g G
keycode 43 = h H h H h H
keycode 44 = j J j J j J
keycode 45 = k K k K k K
keycode 46 = l L l L l L
keycode 47 = semicolon plus semicolon colon semicolon colon
keycode 48 = colon asterisk apostrophe quotedbl apostrophe quotedbl
keycode 49 = NoSymbol NoSymbol grave asciitilde grave asciitilde
keycode 50 = Shift_L NoSymbol Shift_L NoSymbol Shift_L
keycode 51 = bracketright braceright backslash bar backslash bar
keycode 52 = z Z z Z z Z
(略)
ここでbackslashとかを探す、その右に書いてある部分(赤色)もコピーしておく

もしかして
xmodmap -e 'keycode 132 = bracketright braceright backslash bar backslash bar'
って全部入力しといたほうがいいのか?
=の右に何個も選択肢があるのは、おそらくshiftとかoptionとかと同時押ししたときに何を表示するかに対応している
1つのキーで複数の機能があるキーをmodifier keyと呼ぶ
このまま入力すると \キー を押したときにbrachektrightが表示されて思ってる挙動と違うので一部消す


以下のコマンドを走らせれば、key code 132のキーが一時的にbackslashになる
xmodmap -e 'keycode 132 = backslash bar backslash bar'
これで\キーだけを押すと \
shift + \キーを押すと |
が入力されるはず


ログイン後はずっとその設定を反映させたい場合は(たぶんほとんどの人がそうだと思うけど)
-verboseオプションを付けて実行する
xmodmap -verbose -e 'keycode 132 = backslash bar backslash bar'
(まじで半日かかった。飲みに行ってきます)







(2018/02/10 追記)

さっき、CentOSを立ち上げたら\キーの設定がなくなっていることに気づきました・・・
-verbose オプションを付ければどこかに設定が残ると持っていましたが勘違いでした



ここにめちゃくちゃ詳しく書いてあった↓

■ 参考 : キーバインドの変更 Xmodmapの基本的な設定方法

% touch ~/.Xmodmap
してからその中に
keycode 132 = backslash bar backslash bar
と書いておけばOK


設定を反映する前に、現在の設定のバックアップをとっておく
% xmodmap -pke > ~/.Xmodmap_default
作成した~/.Xmodmapの設定を反映させるには
% xmodmap ~/.Xmodmap
何かトラブルがあって元に戻したいときは
% xmodmap ~/.Xmodmap_default



自分の環境では再起動したら設定がリセットされるので、.cshrcに
xmodmap ~/.Xmodmap
と追記することで対応しますわ・・・





さらに追記

自分の環境ではなぜかshift + @キーで~が表示されて、shift + ^キーで`が表示される
本当は逆になっててほしい

なので ~/.Xmodmap に追記して、
keycode 132 = backslash bar backslash bar
keycode 21 = asciicircum asciitilde equal plus equal plus
keycode 34 = at grave bracketleft braceleft bracketleft braceleft
と書いておく

ちなみに asciicircum というのは ^ のことらしい















CentOSを起動したままずっと放置しとくと画面が青色になってロックされる
ロックされると言っても、パスワードがかかるわけではなくて、なんかキーを押すと復旧する

ただ、その時間が鬱陶しいのでその設定を止める方法を調べた




左上の Application -> System Tools -> Settings -> Background

右の画面の色とロック画面の色が一致しているので、これを止めればいいっぽい
とりあえず「ロックスクリーン」というキーワードはわかった
ロックスクローン






よくある話だけどCentOS6の記事がヒットして、それに惑わされた・・・・
CentOS7で検索するとあった↓

■ 参考 : 【Linux】【CentOS7】GUI環境カスタマイズ(日本語入力可能など)

この記事では「画面ロック」「スクリーンセーバー」って言葉を使ってる
スクリーンセーバーの設定を止めればよかっただけっぽい


左上の Application -> System Tools -> Settings -> Power
デフォルトでは5分になってたので、Neverとか好きな数字にすればOK
power saving












現状
ホストOS : Mac 10.13
ゲストOS : CentOS7.3
Macの上でVirtualBoxを使ってCentOSを動かしてる

ネット接続する目的はyumでリポジトリからパッケージをダウンロードしてきてインストールすること
firefoxがデフォルトで入ってるけど、これで何かを調べたりすることはなさそう・・・
時にはどこかに ssh接続する可能性もあるけど、それはそのときになってから調べよう・・・





CentOS6からCentOS7になって、設定方法が大きく変わったらしいので検索する際は注意が必要
CentOS6では、設定ファイルを直接書き換えたりしていたらしい
CentOS7では、nmtuiという対話的なコマンドを使って設定するとのこと


ひとまず次の記事にしたがってやっていく

■ 参考 : CentOS7.2 64bit インストール時にVirtualBoxでNAT、ホストオンリーアダプターを使用する場合のネットワークの設定
% ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
・・・・
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
・・・・
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN qlen 1000
・・・・
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN qlen 1000
・・・・
と4つのネットワークインターフェイスが出てきた

記事にあるとおり、Virtual BoxのCentOSの環境設定で
ネットワーク -> アダプター -> 高度な設定
として、MACアドレスを表示させてみるとどれとどれが対応しているのかがわかる

自分の場合は
enp0s3 -> アダプター1
だった
アダプター2はCentOS起動中はいじれない
ただ、CentOSを終了しているときも、アダプター2で新しい設定を追加することができなかったんだがなぁ・・・


デフォルトの設定ファイルの中身は
% cat /etc/sysconfig/network-scripts/ifcfg-enp0s3
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s3
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
DEVICE=enp0s3
ONBOOT=no

% cat /etc/sysconfig/network-scripts/ifcfg-lo
DEVICE=lo
IPADDR=127.0.0.1
NETMASK=255.0.0.0
NETWORK=127.0.0.0
# If you're having problems with gated making 127.0.0.0/8 a martian,
# you can change this to something else (255.255.255.255, for example)
BROADCAST=127.255.255.255
ONBOOT=yes
NAME=loopback


% nmcli -p connection show enp0s3
% nmcli -p connection show virbr0
でも設定ファイルを確認できる


OSの起動時にネットワークの接続が自動で行われるようにするには、
% nmcli connection modify enp0s3 connection.autoconnect yes
% nmcli connection modify virbr0 connection.autoconnect yes
これで
ONBOOT=yes
になったはず(片方はもともとyesだったけど)







このあとなんやかんやしてたら、ネットに接続できるようになってしまった・・・・
どの行動が効いたのか全然わからん・・・・・
これは次やるときにまた困るぞ〜〜〜


> 未来の自分へ
「virtual box ホストオンリーアダプタ 未選択」でググってあれこれやってみてください

メモ↓
■ 参考 : CentOS 7 で ネットワーク(IPアドレス、ホスト名、ドメイン名など)の設定を行う

ちなみに nmtui は一度も起動してません・・・






(2018/02/15 追記)

これでネットに接続できるようになったっぽい↓
% nmcli connection modify enp0s3 connection.autoconnect yes
% nmcli connection modify virbr0 connection.autoconnect yes










をとこもすなるyumというパッケージ管理を coffeeもしてみんとてするなり




yumはYellowdog Updater Modifiedの略

yumはRPMパッケージを統合管理する
RPM単体ではパッケージ情報、依存関係などの情報を持っているが、それを統合的に管理運用するシステムがない

yumはRPMの情報を管理し統合、依存関係を自動的に解決してくれる
yumを使用することでディストリビューションのパッケージアップデートやパッケージの検索、パッケージ削除、パッケージの情報表示などができるようになる
とのこと

■ 参考 : 【初心者でもわかる】yumコマンドの使い方とリポジトリの追加方法

■ 参考 : 初心者の頃に知っておきたかった rpm と yum の違いと使い分け


■ 参考 : 【 yum 】コマンド(応用編その4)――パッケージファイル(RPMファイル)を使ってインストールする



# リポジトリにアップデートがないかチェックをする
% yum check-update

# リポジトリにアップデートがないかチェックした上で、インストールまで行う
% yum update

# リポジトリからあるパッケージをインストールする、依存関係にあるパッケージも同時にインストールしてくれる
% yum install [パッケージ名]

# リポジトリからパッケージを検索する
% yum search [パッケージ名]

# インストールされているパッケージを削除する
% yum remove [パッケージ名]

# パッケージの情報を表示
% yum info [パッケージ名]

# インストールされているパッケージ一覧を表示
% yum list installed
基本的にmac portとそんなに変わらなさそう
リポジトリというのはどこからソースを落としてくるのかみたいなもの?
-> 「リポジトリとはパッケージの提供元」らしい


yumの設定ファイルは /etc/yum.conf
一番最後に
# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d
とあった
リポジトリを自分で追加する場合は /etc/yum.conf または /etc/yum.repos.d に追記するっぽい


別の記事でyumリポジトリが一覧されているページがあった
とりあえずメモ
■ 参考 : yumリポジトリ一追加リスト 完全版




ひとまず先程の記事に従って、1つリポジトリを追加してみる
安易にいろんなリポジトリを追加するのはセキュリティ上良くないらしい(そらあそうか・・・)
yum install epel-release
その前に、ネットに繋ぐ設定をしないとだめだわ・・・・
-> 別の記事で書いたとおりネットに接続できた






念のため、まずはパッケージのアップデートをする
yum update


yumでインストールしたパッケージのインストール先は↓で確認できる
rpm -ql [パッケージ名]



一応、この日ほぼ1日かけて自分がインストールしないといけないライブラリのコンパイル環境は整った・・・
sudo yum install hoge
としたときにエラーがコケることが一度もなかったのが救いだわ
mac portの場合はこれで何度かコケてしまったことがあったし・・・







(2018/02/10 追記)

yumでrpmの中身を見る方法
yumdownloaderというパッケージをインストールする
% sudo yum install yum-utils

例えばhogeというパッケージの中身を知りたいときは
% yumdownloader hoge
これで、hoge.rpmがダウンロードされる
このrpmに対して、
rpm -qlp hoge.rpm
でこの中に何が入っているのか確認できる

見た後はおそらくhoge.rpmは不要だと思うので、削除する





(2018/04/18 追記)

有用なページがあったのでリンク追加

■ 外部リンク : 特定のパッケージをyumのアップデート対象から外す

■ 外部リンク : yumコマンドで覚えておきたい使い方19個(+1個)

■ 外部リンク : 今さらですがyum(^^;)


この中で便利だなぁと思ったコマンドメモ
yumで実行したコマンドの履歴を見れる
yum history list

各履歴の詳細を見る
[ID] には↑の出力のIDを入れる
yum history info [ID]


update可能なパッケージを一覧するコマンド
yum check-update

パッケージをアップデートするコマンド
yum updateはアップデート可能なパッケージをすべてアップデートする
yum update [特定のパッケージ名] で一部だけアップデートすることができる
yum upgradeは古いパッケージを削除して、適切なパッケージに置き換えてくれる
yum update
yum update [特定のパッケージ名]
yum upgrade


特定のパッケージ以外をアップデートしたいときは
yum update --exclude=[特定のパッケージ名]


パッケージをアンインストールするときは
yum erase [特定のパッケージ名]










やりながらのメモです

(2018/02/05)

■ VirtualBoxのインストール
Virtual boxを公式からダウンロードしてインストールする
OS X hostsを選択する
今の最新版はVirtualBox-5.2.6
あとはクリックしてれば /Applications にインストールされる

■ 参考 : Download VirtualBox



いろんなlinuxの最新版は以下にまとめられてる

■ 参考 : 各OSのリリース日とサポート終了日を表にまとめてみた

CentOSはversion7が最新版か・・・
とりあえず最新をインストールする
version名称はyymm



■ CentOSについて

簡単な説明は以下にあった
■ 参考 : CentOSの概要

CentOS(セントオーエス)とは、Red Hat Enterprise Linuxとの完全互換を目指した無償のLinuxディストリビューションです。
CentOSは、「Community Enterprise Operating System」(コミュニティベースで開発された、エンタープライズレベルのOS」)の略語と言われています。

CentOSは、Red Hat Enterprise Linuxの中の、無償で提供する上で制約となるライセンス(商標やパッケージ等の意匠、他の OSS とは異なる許諾条件など)を含まない形でリビルドされています。
したがって、CentOSは、無償でありながらRed Hat Enterprise Linuxとほぼ同等のアーキテクチャをサポートし、動作が非常に安定しているため、個人・企業を問わずさまざまなシステムのサーバOSとして幅広く使用されています。

近年では、ホスティングサービスなどの大規模な企業システムでもCentOSが採用される事例が増加し、CentOSの保守サポートを行うサービスベンダーも増えてきています。
CentOSをベースにしたLinux ディストリビューションも数多くあります。
■ CentOSのディスクデータ(ISOというやつ)をダウンロードする

■ 参考 : Download CentOS

↑からダウンロードする
「via Torrent.」とか書かれてるとなんも悪いことしていないのにやたら恐怖を覚える・・・

DVD ISO
Everything ISO
Minimal ISO
の3種類がある

CentOS



今回はEverything を落とす
mirror siteから
=> Index of /Linux/centos/7.4.1708/isos/x86_64
=> CentOS-7-x86_64-Everything-1708.iso をダウンロードする
8.1GBあるので注意








■ Virtual Boxの初期設定

左上の新規からスタート
名前は「CentOS7」
タイプ Linux、バージョン Red Hat(64-bit)
名前さえ入力すればあとは自動的に埋まるはず


ちょっと解析をするのでデフォルトの1GBだと厳しそう・・・
とりあえず8GBにしておく


ファイルタイプは「仮想ハードドライブを作成する」
=> さらに「VDI」を選択


ストレージは「可変」で


ファイルの場所とサイズ 設定はひとまず「30GB」くらいにしておく


かなりざっくりと設定したので、これで不味かったら適時修正する予定







■ Virtual Boxにisoイメージファイルを食わせる

Virtual Boxで表示されている電源オフのCentOSをダブルクリックして起動する

画面が立ち上がって、ISOを選択する

背景が黒い画面になったら
「Install CentOS Linux 7」
を十字キーとエンター or マウス操作で選択する

そしたら色々とインストールが始まる
言語を聞かれるので日本語を選択する
jと打つと一覧が制限されるので楽

個人的には日本語を選択するのは辞めたほうがいいと思う
というのも、起動したらディレクトリの名前が全部日本語になってるから・・・

なのでEnglishを選択しておこう
英国か米国かの違いはよくわからんので、米国にしといた


rootパスワードとアカウントを設定する(自分を管理者に設定するのチェックボックスを入れる)
「以下のようにパスワードが複雑でないと警告が出ますが、「完了」ボタンを2回押下で登録できます。」という情報を見てうぉーーーーーーーーいいってなったわw
めっちゃ複雑なのをわざわざ考えたっちゅーねんw



またJISキーボードを使ってる人はUSキーボードの記号配置になってしまうとすごくやりづらい
使っていないキーボードの記号の位置を覚えておくのはかなりきついと思うので・・・
JISキーボードの人は Japanese(PC-98xx Series) を選べばOK

こんな感じ↓
keyboard



ただし、このキーボードの配置は「`」と「~」が逆なので注意
~は特によく使うので$HOMEと毎回打つことになりそう・・・・




(2018/02/07 追記)
ここで、ソフトウェアって欄があるのでクリックする
ここからGUIを選んでおかないとインストール後に、CUI(terinal画面のみ)になるので注意・・・

今回は「GNOME Desktop」というのを選択する
右のオプションが色々とあるけど、ひとまず↓のように選んでおいた
どのオプションで何がインストールされるのかは全然わかっていないけど、「開発ツール」だけは必須な気がする
GNOME Desktop


インストールが終わったら再起動するよう促されるので、ボタンを押して再起動する


このあとログイン画面が出るので
localhost login : (自分のアカウント名)
password: (自分のパスワード)
を入力してログインする


少し説明などが出て最後にwelcomeとなるはず↓
welcome


あとVirtual Boxを小さい窓にして使っていると
MacとVirtual Boxの窓を行き来することがある
その際に↓のような警告が出るはず
host keyこれは左のcommandキーを押すと、MacとVirtual Boxのどちらをアクティブにするか切り替えられますよ
という案内
なので、Virtual Boxを使っていて、Macで調べ物をしたいときは左commandキーを押せばいい
Virtual Boxに戻るときは同じように左commandキーを押せばOK


(追記)
すぐ下の方に書いてある「Guest Addtions(VBOXADDTIONS)」のインストールをやると
マウス統合ってのが自動でONになるっぽい
つまり、この左commandとかをわざわざ押さなくても
窓外にカーソルを持っていくと自動的にMacがアクティブになる

すんばらしぃ〜







やりたいこと
・.cshrcの設定をする
・画面の解像度をもっと大きくしたい
・左の「英数」キーを押すとhelpが立ち上がってうざい





■ 画面の解像度をもっと大きくしたい

ぐぐったらいっぱい出てきた

■ 参考 : VirtualBoxで画面の解像度が変更できない

「Guest Addtions(VBOXADDTIONS)」というのをインストールしないと、デフォルトのままでは無理らしい

Virtual Boxを起動した状態で左上のメニューバーからDevice -> Insert Guest Additions CD imageをクリック↓
Guest Addtions(VBOXADDTIONS)1



自分の場合は Everything のISOを選んだせいかすでに入っているらしかった
Guest Addtions(VBOXADDTIONS)2このままRunを選ぶと、管理者パスワード入力が求められる
入力すると terminal が起動してインストールが始まる

インストールが終わるとEnterで画面を閉じられる

このあと手動で再起動をする
右上のアイコンをクリック -> 電源を切るっぽいマークを選択 -> restart

再起動後に、左上の Applications -> System Tools -> Settings -> Display で画面の解像度を変更できるようになってるはず
Setting豊富な選択肢が出るようになった
Display









■ .cshrcの設定をする

要するに手元のファイルをVirtual Boxの中に送りたい

↓のようにVirtual Boxの設定でいじる方法が一つ
■ 参考 : VirtualBoxでOS間のクリップボードを共有する方法


もう一つはメニューバーでDevices -> Drag & Drop で「host OSからguest OS」または「Bidirectional」を選択すればいい
その後でもう一度右上のアイコンからOSを再起動すれば選択が反映されるはず

一応、これでドラッグすると + みたいにしてCentOSにコピーはされているようだけど、反映されない・・・
デスクトップじゃないところにコピーされてるとか?



とりあえず、ドラッグアンドドロップではだめだったので、共有フォルダの方でなんとかする・・・・

Virtual Boxの設定画面からディレクトリを登録する
右の丸で囲んだところから追加する

このとき、読み込み専用はチェックせず
自動マウント、永続化はチェックした

共有ディレクトリ1


ただ、その場所を見ようとするとエラーが出た・・・
共有ディレクトリ2





どうやらユーザーをvboxsfというグループに入れないといけないらしい

■ 参考 :VirtualBoxにおいて、ホストOSとゲストOS (CentOS) 間の共有フォルダを作成する方法

■ 参考 :VirtualBox + CentOS7で共有フォルダの設定を行う
# su
# gpasswd --add [ユーザ名] vboxsf

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

# reboot
見れた〜
だが断る



これがうまくいったら
% ln -s /media/sf_share_dir/ .
というシンボリックを貼っておくと色々と便利になる






■ 左の「英数」キーを押すとhelpが立ち上がってうざい

調べたらこんな記事が出てきた

■ 参考 : CentOSで、Macの「英数」「かな」のように入力切り替えする方法


ひとまず、英数キーを絶対に触らないようにするという意味のない解決方法でごりおす・・・
優先度は低いので



個人作成のwikiみたいなのもあった
が、自分にはわからんちん

■ 参考 :CentOS/コンソール上の英語キーボード・日本語キーボードの切替方法



他のことを調べてたらわかった
アプリケーション関連は /usr/share/applications に入ってる
その中に keyboard ってアプリがあったので起動してみうと、ショートカットって項目がある
そのうち、launch help browser ってのを使わなさそうなキーに割り当てればOK
helpを消す方法





(2018/02/08 追記)

左上のApplications -> Utilities -> Tweak Tool -> Typing
って項目にJapanese kanaがどうのこうの書いてた
この辺の設定をいじれば↑のトラブルをもっと簡単に解消できるかも
kanaキー








■ デスクトップにショートカットを作成する方法

まず terminal のショートカットが欲しい
それ以外は特にいらんだろう・・・

上にも書いてある /usr/share/applications をFinderみたいなので開く
Terminal ってアプリをドラッグアンドドロップでDesktopに落とす
なんか聞かれたら、make as trust みたいなのを選べばOK







■ terminalでコピペをしたい

上の方に書いたコピーアンドペーストの設定だけではterminal上でコピペができなかった
terminalの環境設定を見てみると、コピーとペーストのショートカットキーが少し複雑だったので
これをcommand + cとcommand + vでできるように上書きしておく

ちなみにvirtual Boxのホストキーは右commandにしといた
コピペのショートカットキーを設定

そろそろ長くなってきたんで、このあとは個別の記事に書く予定・・・













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

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

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









lpr : 印刷
lpq : キュー一覧の確認
lprm : キュー内のジョブを削除する
■ 参考
【 lpr 】 プリンタで印刷する



emacsから印刷するときは
M-x print-buffer
でおk


■ 参考
Emacs::印刷

いつもcommand + pで印刷してたけど、これはCarboneEmacsだからできることで普通のemacsではちょっと手間のようだ。
















scientfic linuxにgnuplotとfftwをインストールしました。

ソースからコンパイルしただけー

ソースの置き場所は

gnuplot download

Downloading FFTW


解凍して
./configure --prefix=$HOGE
make
make install


$HOGEを変えれば、そこにインストールされる。
一つ前の記事で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

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


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

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

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

print "株式売買を始めてだいたい1ヶ月くらい立ちますた"

# 最終更新 2019/07/20
カウンター
ブログ内検索
ツイートするボタン
リンク
相互リンク募集中です (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の申請書類作成時にはお世話になっております)


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