備忘録(Ubuntu18.04でよく使う設定 samba)
Ubuntu18.04LTSには,sambaが入っていないので,インストールする
$apt install samba
で,/etc に,libuser.conf という読み書き実行可能なファイルがないと動かないらしい(検索してもどういう性質のファイルかよく分からないし,覗いてみても空である。)。なので作る。
$sudo touch /etc/libuser.conf
$sudo chmod 777 /etc/libuser.conf
で,system-config-sambaを起動。
$sudo system-config-samba
起動するにはしたが,端末でエラー表示。
"failed to load module canberra-gtk-module"
"IBUS-WARNING (時刻等) The owner of /home/[ユーザー名]/.confg/ibus/bus is not root!"
"IBUS-WARNING (時刻等) Unable to connect to ibus: 行を読みこもうとしましたが内容が意図せず欠落しています"
1つめのエラーはパッケージを入れれば解決するので,
$sudo apt install canberra-gtk*
とする。
2つめと3つめは,正直よく分からないので,無視することに。
$sudo system-config-samba
でGUI画面が起動する。
「+」ボタンをクリックして共有するディレクトリを指定,共有名・記述を記入して,書き込み・可視の双方にチェック。
「アクセス」タブをクリックして,誰でもアクセスを許可するにチェック。
system-config-sambaを終了させ,
$sudo samba restart
Windows機では,「ネットワークドライブの割り当て」から,
\\マシン名\共有ディレクトリ名
を指定する。
ネットワーク画面でマシン名が表示されない問題があるが,ネットワークドライブを割り当てる(あるいは,マシン名を直打ちする)ことで対応できるので,そこは放置する。
備忘録(Ubuntu18.04の初期設定・ディスプレイドライバなど)
インストール直後の解像度は,ちゃんと2560x1080とモニタに合っていたのに,nvidiaディスプレイドライバに変更したら解像度が選択できなくなり,nouveauドライバに戻してもそのまんま。
戻す方法を探すのも面倒なので,再インストール。
ゲームやるわけでないし,別にディスプレイドライバにこだわる必要もないし,とりあえずディスプレイドライバはいじらない方向で。
あと,アクティビティの[ソフトウェアのアップデート]から,アップデートのチェックを外すと,$sudo apt update しても更新されなくなるのね。GUIベースの更新通知が出なくなるだけかと思ってた。
[ソフトウェアのアップデート]の[アップデートタブ]の,「セキュリティアップデートがあるとき」を,「ダウンロードとインストールを自動的に行う」を「すぐに表示」に変更すると,まあだいたい期待していたことになる。
あと,古いマシンから新しいマシンにthunderbird設定を移動させるために,.thunderbirdを tar で丸めてコピーしたのだが,細かいエラーが出たので念のため記録。
1) 古いマシンにUSBメモリを刺して.thunderbirdを丸めたファイルを移動させようとしたところ,USBメモリを認識はするが,マウントが途中でストップするっぽい。
アクティビティの[ディスク]でデバイス名を調べて,$sudo mount /dev/sdc1 /mnt/USBmemory で別途マウントして対処。
$lsblkを使えたら格好いいんだけど,すぐ忘れるんだよなこのコマンド。
2) .thunderbirdを丸めたtar.gzファイルを解凍したところエラーが出た。USBメモリにコピーする過程(あるいはそこからコピーした過程)のどこかでファイルが壊れたらしい。案の定,thunderbirdを起動させてもユーザ名入力画面になり,環境設定が引き継がれていないことが分かる。
もう一回tar.gzで丸めて,GUIではなくmvコマンドで移動させたら,今度はうまくいった。コピー途中でUSBメモリを抜いちゃったのかな。
汝の敵を愛せ
心の中なんて分からないわけだから,要は行動である。
ということは,「汝の敵を愛せ」とは,
「汝の敵に対し接せざるを得ないときは,愛するが如く接せよ」ということである。
言い換えると,「もし自分が対象者を好ましく思っていたらどのような行動をとるだろうかテスト」を行い,そのテスト結果に従って動け,ということ。
Windowsのバッチファイル,定期実行,画面表示させない
(確認)
メモ帳でコマンドを書き,拡張子を「.bat」にするとバッチファイルになる。
バッチファイルで「C:\Program Files」下のプログラムを動かそうとすると,スペースが入ってしまう関係で,そのままではうまくいかない。
パスを「"~"」で囲うと,この問題は解決できる。
例)
"C:\Program Files\Folder\program" -xx
バッチファイルを定期的に実行するには,タスクスケジューラを用いる。
タスクスケジューラの右の「操作」ペインの中の,「基本タスクの作成」をクリックし,後はウィザードに沿って作っていく。
1時間毎に実行したい場合は,ウィザード中は「1回限り」を選択した後,そのタスクの[プロパティ]-[トリガー]タブの,「編集」をクリックし,詳細設定の「繰り返し間隔」と「継続時間」で細かい設定を行う。
バッチファイルの画面を表示させないためには,VBScriptを用いる。VBScriptファイルの作り方は,テキストファイルの拡張子を「.vbs」にすれば良い。
Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c [xxx.bat]", vbhide
一行目はオブジェクトの作成(というらしい),
二行目がオブジェクトの利用?(run関数を使ってバッチファイル[xxx.bat]を実行させ,かつ,画面を隠す(vhide)),と言えばいいのだろうか。
タスクスケジューラで定期実行させるファイルを,バッチファイルから,この.vbsファイルに変更すればよいのである。
バッチファイル名はフルパスで指定しているが,「同一フォルダの」を指定する環境変数とか,いろいろあるらしい。
そして,ここで書き込むフルパスに空白がある場合,動作しないっぽいのである。
結局,「Program Files」フォルダ内のプログラムを動かすバッチファイルは,スペースのないパスのフォルダに置いて,そのバッチファイルと同じフォルダに前記.vbsファイルを作成するという方法で解決している。
本当は,プログラムと同じフォルダにバッチファイルと.vbsファイルを置きたかったのだが。
きちんと勉強した方がよいのだろうが,せずとも他の方法で解決できるなら,とりあえず姑息的対処でなんとかするのである。ただ,姑息的対処なので応用が利かないから,きちんと書いておかないと後で困ってしまうのである。
備忘録(自宅のルータたちについて)
ELECOM WRC-1167GHBK2-S
・LAN内部のDNSサーバとして動いてくれるので,名前解決に便利。他でもできるかもしれないが,やり方が分からない。
・自宅はPPPoE回線なのだが,最近不安定になり,突然接続できなくなったり,その後何もしなくても(どの機器を再起動させなくても)つながったりする。こいつは,つながらなくなった場合に,勝手に接続試行を止めたりしないので安心できる。
・子機モードにするには,設定画面から選択した後,親機を選択する。親機を選択し再起動した後は,機器にブラウザ経由で接続できない。
・子機モード状態から,ブラウザ経由で接続できるようにするためには,いったん親機の電波を止めた上で,電源再投入による再起動をさせる必要がある。
・子機モード状態で,親機Aから親機Bに接続先を変更したい場合,いったん親機Aの電波を止めてから,再起動させた後,ブラウザ操作で親機Bに接続先を変更することになる。
・親機モードでも,子機モードにした後ブラウザ経由で操作する状態下でも,振られているIPアドレスは,「192.168.2.1」
子機
Buffalo WHR-1166DHP
・PPPoE回線が切れたときに接続試行を止めてしまう,ように感じられる。ので,親機にはしない。LAN内部DNSサーバとしても機能させることができないし。
・子機モードは,背面スイッチを「BRIDGE」にしたあと(これでIPアドレスが「192.168.11.100」になる),ブラウザで接続して,[無線設定]-[WDS]とクリックし,「リピータ機能(WDS)」の「使用する」をチェックする。その後子機として使えるまで(=192.168.11.100では接続できなくなるまで),ちょっと時間がかかるイメージがある。
・接続先親機を変更する手順はまだやってない。
備忘録(Ubuntu18.04でよく使う設定 remmina)
初期設定でリモートデスクトップ接続ソフトであるremminaがインストールされている。されていなければ,
$sudo apt install remmina
端末から
$remmina
でremminaが立ち上がるので,接続方法を設定する。
ElecomのWRC-1167GHBK2-Sは,LAN内部のPCに対しDNSサーバとして働いてくれる。
そのため,「接続先」は,Windows PCに付けた名前でよい。
VNC経由の場合,色数を24bit設定(-depth 24)にしているので,色数32bitでは接続できないので,なんとなく16bit設定にしている。別に全部32bitでも良いのだろうが,特に理由はない。
「user name」と「password」は,一ひねり必要だった。user nameを漢字にしているせいだろうか。
・メインマシンは,以前 user name をローマ字で設定していた履歴を(どこかに)保存しているのか,以前使用していたローマ字user nameとMicrosoftアカウントのpasswordでログインできた。
・サブマシンは,上記ではログインできなかった。漢字 user nameでもうまくいかない。結局,Microsoftアカウントに登録しているメールアドレスをuser nameにし,Microsoftアカウントのpasswordを入力することでログインできた。
・メインマシンについても,サブマシンと同様の user name,passwordでログインできた。
Windows PCのアカウントって今いち良く分からないな。
<追記>
新たにUbuntuをインストールしたマシン(5.3.0-46-generic)でremminaを起動させると,以下のエラーを吐く(が,タイムアウト後起動するので,使えはする)。remminaをいったんアンインストールして,再インストールしても同じ。
[glibsecret] unable to get secret service: org.freedesktop.secrets を StartServiceByName で呼び出そうとしてエラー:タイムアウトしました
Plugin entry returned false: /usr/lib/x86_64-linux-gnu/remmina/plugins/remmina-plugin-secret.so.
StatusNotifier/Appindicator support: not supported by desktop. libappindicator will try to fallback to GtkStatusIcon/xembed
Running under Gnome Shell version 3.28.4
WARNING: Remmina is running with a secret plugin, but it cannot connect to a secret service.
原因は判然としないが,似た症状を呈すると思われる質問を見つけた。
そこから誘導される解決済みの質問スレッドによると,freerdpのバグらしい。
ただ,誘導先と症状が違うような気がするので,ホントに「already answered here」で良いのかいな,とは思う。
freerdpのバグ云々とあったので,バージョンを確認してみる。
(バージョン)
remmina:amd64/bionic 1.2.0-rcgit.29+dfsg-1ubuntu1 uptodate
freerdp:インストールされていない
あれ,と思って,$sudo apt install freerdp2-X11* してみる。
と,$remmina したときのエラーは変わらず,今度はWindowsマシンに接続できなくなってしまう。
まずいと思って$sudo apt remove freerdp2-X11* してもやはり接続できない。
$sudo apt remove remmina して $sudo apt autoremove して,$sudo apt install remmina してもやはりダメ。
詰まったか,と思ったところで,ふと接続プロファイルを新規に作って試してみたらうまくいった。プロファイル自体は何にも変わってないのにどういうことだ。
ただ,ともかくも使えはするので,これ以上原因追及はしない・触らないことにする。
</追記>
備忘録(Ubuntu18.04でよく使う設定 VNCサーバ)
Ubuntuの初期設定のまま,なるべく手間をかけずにVNCを使うことが目的。
1)以下のパッケージをインストールする。
tigervnc-standalone-server
tigervnc-common
tigervnc-xorg-extension
自分の時は,tigervnc-xorg-extensionのインストールが壊れた依存関係とやらでうまく行かなかった。
$sudo aptitude install tigervnc-xorg-extension
すると,解決策を提案されたので"y"する。途中,カーネルを削除すると言われたときはさすがに"n"したがカーネルの削除を中止しますかと聞かれたときに,「削除しますか」と聞かれたんだと思ってつい"n"したが,それでもうまくインストールはできた。
<追記>
カーネルのバージョンが対応してなかったのかな?
新しいマシンにUbuntu 18.04LTSをインストールして,$uname -r したところ,5.3.0-46-genericになっていた(2020.4.13)。(自動で最新カーネルがインストールされるとは思わなかった)
で,今回は,tigervnc-xorg-extensionをインストールするときに依存関係がおかしいと文句言われたけど,文句をいわれたパッケージを指定してapt install したらすんなりインストールできて,その後tigervnc-xorg-extensionもすんなりインストールできた。
</追記>
2)設定ファイルを作る?
$vncserver
で起動して
$vncserver -kill :*
で殺す。(と,参考にしたサイトに書いてある)
いったん起動して設定ファイルを作るのだろうか?
3)設定ファイルの編集
~/.vnc/xstartup を編集する。
<追記>
新マシンではxstartupファイルが.vnc下に作られなかったので,ファイル作って以下をコピペしたらちゃんと動いた。
</追記>
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
vncconfig -iconic &
dbus-launch --exit-with-session gnome-session &
正直よく分からない。
・vncconfig -iconic & は,多分,「いじったことのないあのウィンドウ」を出すための記述ではないだろうか。vncconfigをアイコン的に出すものっぽい記述であるからして。
・dbus-launch --exit-with-session gnome-session& は,
標準Xセッションの一部としてdbus-launchを実行しているディストリビューションは、Xサーバーが起動して使用可能になった後、「メイン」Xクライアントのラッパーとしてdbus-launch --exit-with- sessionを実行する必要があります(通常はセッションマネージャーまたはウィンドウマネージャー)、これらの例のように:
dbus-launch --exit-with-session gnome-session
dbus-launch --exit-with-session openbox
dbus-launch --exit-with-session〜/ .xsession
なんだそうな。とりあえず,最後の行の記載の仕方から,VNCを設定するためには,どういうデスクトップ環境なのかを書く必要があることは何となく分かった。
4)起動させる
$vncserver -localhost no -geometry 1600x900 -depth 32
何も指定していないが,画面1(:1)にアクセスできるようになる。
-localhost no セキュアトンネルを作らずにアクセス
-geometry 1600x900 画面解像度1600の900
-depth 32 色数32bit
ということらしい。
<追記>
Windows環境に合わせて32bitカラーにすることにした。
</追記>
5)VNCクライアントのインストール
とりあえずTight VNC Viewerを使っている。
インストールして起動し,[Ubuntuマシン:1]でアクセスできるようになる。