パソコン工房VR開発向けパソコン
最新 追記

ここに日記はありません


Friday 08 May, 2020 [長年日記] この日を編集

_ RaspberryPiを再び (1) -install-

連休でいろいろ片付けをしていたところ、RaspberryPiが出てきた。もうずいぶんになるけどFreeBSDを入れようとしたところで放置してしまっていた。せっかく発掘したのでもう一度使って見ることにした。ただFreeBSDもかなり対応は進んでいるようだけど、いろいろとややこしいこともあるようなのでofiicialにsupportされているRaspbianを導入することにする。

  • Raspberry Pi B+
  • SD card 8GB
  • PL2303HX USB TTLケーブル

Raspberry Pi向けのLinuxであるRaspbianはここにある。現在はBuster (Debian 10)をbaseとしている。今回はここからRaspbian Buster with desktopを選んだ。 以前やったようにSDメモリに書き込んだ。

% sudo dd if=2020-02-13-raspbian-buster.img of=/dev/rdiskN bs=1m

イメージを書込み終わったらRaspberry Pi本体に差し込んで起動する。今回はシリアルケーブルを用いてMacと接続して起動してみた。userはpi、passwordはraspberryでloginできる。

[   10.519155] sysrq: SysRq : Resetting

Raspbian GNU/Linux 10 raspberrypi ttyAMA0
raspberrypi login: pi Password: Last login: Thu Feb 13 16:17:18 GMT 2020 on tty1 Linux raspberrypi 4.19.97+ #1294 Thu Jan 30 13:10:54 GMT 2020 armv6l
The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. pi@raspberrypi:~$
Twitter:

_ RaspberryPiを再び (2) -login user-

まずはdefaultで用意されているpiというuserは危険なので新しいUSERを登録して、piは無効化する。
pi@raspberrypi:~$ sudo useradd  USER
pi@raspberrypi:~$ sudo passwd USER
New password:
Retype new password:
passwd: password updated successfully
で新しいuserを作成し、passwordを設定する。
pi@raspberrypi:~$ sudo usermod newuser_name -a -G pi,adm,dialout,cdrom,sudo,audio,video,plugdev,games,users,input,netdev,spi,i2c,gpio
で新しいuserをpiと同じところに登録することで新しいuserがpiと同じように働くようになるはずである。 いったんlogoutした後、新しいuserでloginしてsuper userとして動作していることを確認した後に
pi@raspberrypi:~$ sudo vipw -s
でdefaultで登録されているuserであるpiを削除するか、passwordを*で潰す。
Twitter:

_ RaspberryPiを再び (3) -raspi-config-

Raspbianには対話形式の設定コマンドがある。
pi@raspberrypi:~$ sudo raspi-config
ここではWi-Fi、Locale、TimeZone、(keyboard)、SSHなどの設定をする。
Twitter:

_ RaspberryPiを再び (4) -package-

Buster Desktopを選択したのですでに多くのpackageがinstallされている。それを最新版にする。
user@raspberrypi:~ $ apt-get update
user@raspberrypi:~ $ apt-get upgrade
Twitter:

Saturday 09 May, 2020 [長年日記] この日を編集

_ RaspberryPiを再び (5) -package-

必要なパッケージをインストールする。
$ sudo apt install lynx
$ sudo apt install links
$ sudo apt install tmux
.tmux.confはとりあえず適当に。
##
## .tmux.conf
##
# base settings
## allow utf8
#set-window-option -g utf8 on
set -g default-terminal "screen-256color" # colors!
setw -g xterm-keys on
set -s escape-time 10
set -sg repeat-time 600                   # increase repeat timeout
set -s focus-events on
set -g history-limit 5000                 # boost history
#set -q -g status-utf8 on
setw -q -g utf8 on
# key mappings
## vi binding
set-window-option -g mode-keys vi
## set prefix (^T)
unbind C-b
set -g prefix ^T
bind a send-prefix
## last window (^t)
unbind ^A
bind ^t last-window
画像表示は入っていないが、いくつかあるので適当にインストール。
$ sudo apt install xloadimage
$ sudo apt install feh
$ sudo apt install imagemagick
$ sudo apt install fbi
soundに関してはすでにomxplayerが入っており、たいていの形式に対応しているようだ。
Twitter:

Sunday 10 May, 2020 [長年日記] この日を編集

_ RaspberryPiを再び (6) -update-alternatives-

Raspbian上でPythonを使った処理系を使おうと思ってinstallされているPythonのversionを確認したところ、

$ python --version
Python 2.7.16
$ python2 --version
Python 2.7.16
$ python3 --version
Python 3.7.3
となり、Python2とPython3が両方インストールされておりPython2がdefaultとなっていることが分かった。

Pythonに限らず複数のversionのものが経蔵されているコマンドのdefaultを変更するにはupdate-alternativesを使うようである。 まずはPythonがupdate-alternativesで管理されているかどうかを確認する。

$ update-alternatives --list python
update-alternatives: エラー: python の alternatives がありません
まだ管理対象となっていないのでpython2.7とpython3.7を管理対象とする。
$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.7 2
$ sudo update-alternatives --list python
/usr/bin/python2.7
/usr/bin/python3.7
$ python --version
Python 3.7.3
defaultを変更したい時には
$ sudo update-alternatives --config python
alternative python (/usr/bin/python を提供) には 2 個の選択肢があります。

選択肢 パス 優先度 状態 ------------------------------------------------------------ * 0 /usr/bin/python3.7 2 自動モード 1 /usr/bin/python2.7 1 手動モード 2 /usr/bin/python3.7 2 手動モード
現在の選択 [*] を保持するには 、さもなければ選択肢の番号のキーを押してください:

参考にしたのは

Twitter:

Monday 11 May, 2020 [長年日記] この日を編集

_ RaspberryPiを再び (7) -samba-

Raspberry Piとファイルのやりとりをするのにscpだけでは面倒なのでsambaでHomeを共有する。
$ sudo apt install samba
installされたdefaultの設定ファイルは/etc/samba/smb.confで
[global]
   workgroup = WORKGROUP
   log file = /var/log/samba/log.%m
   max log size = 1000
   logging = file
   panic action = /usr/share/samba/panic-action %d
   server role = standalone server
   obey pam restrictions = yes
   unix password sync = yes
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
   pam password change = yes
   map to guest = bad user
   usershare allow guests = yes
[homes]
   comment = Home Directories
   browseable = no
   read only = yes
   create mask = 0700
   directory mask = 0700
   valid users = %S
[printers]
   comment = All Printers
   browseable = no
   path = /var/spool/samba
   printable = yes
   guest ok = no
   read only = yes
   create mask = 0700
[print$]
   comment = Printer Drivers
   path = /var/lib/samba/printers
   browseable = yes
   read only = yes
   guest ok = no
となっている。とりあえず
[home]
   ;read only = yes
   read only = no
だけ修正して
$ sudo smbpasswd -a USER
$ sudo systemctl restart smbd
Twitter:

_ RaspberryPiを再び (8) -netatalk-

$ sudo apt install netatalk
/etc/netatalk/afp.confを以下のように変更する。
[Homes]
 basedir regex = /home
設定が終わったらnetatalkを再起動する。
$ sudo systemctl restart netatalk
Twitter:

Friday 15 May, 2020 [長年日記] この日を編集

_ RaspberryPiでFreeBSDを動かす。(6)

とりあえずRaspbianについては一通り動くようになったのでRPI-2で使うことにして、 RPI-Bでは以前挑戦してそのままになったFreeBSDを動かしてみることにした。 近いmirror siteであるhttp://ftp.jaist.ac.jp/pub/FreeBSD/snapshots/ISO-IMAGES/12.1/から FreeBSD-12.1-STABLE-arm-armv6-RPI-B-20200514-r361020.img.xzを落としてSDカードに書き込んだ。

起動時のdmesgは

Copyright (c) 1992-2020 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 12.1-STABLE r361020 RPI-B arm
FreeBSD clang version 10.0.0 (git@github.com:llvm/llvm-project.git llvmorg-10.0.0-0-gd32170dbd5b)
VT: init without driver.
CPU: ARM ARM1176 r0p7 (ECO: 0x00000000)
CPU Features:
  Thumb, Security, VMSAv7
Optional instructions:
  UMULL, SMULL, MLA, SIMD(ext)
  16KB/32B 4-way instruction cache
  16KB/32B 4-way WB data cache
real memory  = 469757952 (447 MB)
avail memory = 446189568 (425 MB)
arc4random: no preloaded entropy cache
random: entropy device external interface
kbd0 at kbdmux0
ofwbus0: 
simplebus0:  on ofwbus0
intc0:  mem 0x7e00b200-0x7e00b3ff on simplebus0
gpio0:  mem 0x7e200000-0x7e2000b3 irq 19,20 on simplebus0
gpiobus0:  on gpio0
bcm_dma0:  mem 0x7e007000-0x7e007eff irq 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 on simplebus0
bcmwd0:  mem 0x7e100000-0x7e100113,0x7e00a000-0x7e00a023 on simplebus0
bcmrng0:  mem 0x7e104000-0x7e10400f irq 17 on simplebus0
mbox0:  mem 0x7e00b880-0x7e00b8bf irq 18 on simplebus0
gpioc0:  on gpio0
uart0:  mem 0x7e201000-0x7e2011ff irq 21 on simplebus0
uart0: console (115200,n,8,1)
bcm283x_dwcotg0:  mem 0x7e980000-0x7e98ffff,0x7e006000-0x7e006fff irq 41,42 on simplebus0
usbus0 on bcm283x_dwcotg0
systimer0 mem 0x7e003000-0x7e003fff irq 43,44,45,46 on simplebus0
Event timer "BCM2835-3" frequency 1000000 Hz quality 1000
Timecounter "BCM2835-3" frequency 1000000 Hz quality 1000
sdhci_bcm0:  mem 0x7e300000-0x7e3000ff irq 48 on simplebus0
mmc0:  on sdhci_bcm0
vchiq0:  mem 0x7e00b840-0x7e00b87b irq 52 on simplebus0
vchiq: local ver 8 (min 3), remote ver 8.
pcm0:  on vchiq0
fb0:  on simplebus0
fbd0 on fb0
VT: initialize with new VT driver "fb".
fb0: 656x416(656x416@0,0) 24bpp
fb0: fbswap: 1, pitch 1968, base 0x1eb33000, screen_size 818688
gpioled0:  on ofwbus0
cryptosoft0: 
Timecounters tick every 1.000 msec
usbus0: 480Mbps High Speed USB v2.0
ugen0.1:  at usbus0
uhub0:  on usbus0
mmcsd0: 8GB  at mmc0 50.0MHz/4bit/65535-block
Trying to mount root from ufs:/dev/ufs/rootfs [rw]...
Warning: no time-of-day clock registered, system time will not be set accurately
uhub0: 1 port with 1 removable, self powered
Growing root partition to fill device
ugen0.2:  at usbus0
uhub1 on uhub0
uhub1:  on usbus0
uhub1: MTT enabled
random: read_random_uio unblock wait
random: unblocking device.
GEOM_PART: mmcsd0s2 was automatically resized.
  Use `gpart commit mmcsd0s2` to save changes or `gpart undo mmcsd0s2` to revert them.
mmcsd0s2 resized
uhub1: 5 ports with 4 removable, self powered
mmcsd0s2a resized
gpart: arg0 'ufs/rootfs': Invalid argument
super-block backups (for fsck_ffs -b #) at:
 6411392,ugen0.3:  at usbus0
smsc0 on uhub1
smsc0:  on usbus0
smsc0: chip 0xec00, rev. 0002
miibus0:  on smsc0
smscphy0:  PHY 1 on miibus0
smscphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
ue0:  on smsc0
ue0: Ethernet address: 2e:09:96:5f:76:a8
 7693632,ugen0.4:  at usbus0
 8975872, 10258112, 11540352, 12822592, 14104832, 15387072
/etc/rc: WARNING: hostid: unable to figure out a UUID from DMI data, generating a new one
Setting hostuuid: f7b5bbe7-9595-11ea-b9b5-39828d8b7e0e.
Setting hostid: 0xe8c47370.
Starting file system checks:
/dev/ufs/rootfs: FILE SYSTEM CLEAN; SKIPPING CHECKS
/dev/ufs/rootfs: clean, 1367631 free (159 frags, 170934 blocks, 0.0% fragmentation)
Mounting local filesystems:.
ELF ldconfig path: /lib /usr/lib /usr/lib/compat
Soft Float compatibility ldconfig path:
Building /boot/kernel/linker.hints
Setting hostname: rpi-b.
Setting up harvesting: [UMA],[FS_ATIME],SWI,INTERRUPT,NET_NG,NET_ETHER,NET_TUN,MOUSE,KEYBOARD,ATTACH,CACHED
Feeding entropy: .
lo0: link state changed to UP
smsc0: chip 0xec00, rev. 0002
ue0: link state changed to DOWN
Starting Network: lo0 ue0.
lo0: flags=8049 metric 0 mtu 16384
        options=680003
        inet6 ::1 prefixlen 128
        inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
        inet 127.0.0.1 netmask 0xff000000
        groups: lo
        nd6 options=21
ue0: flags=8843 metric 0 mtu 1500
        options=80009
        ether 2e:09:96:5f:76:a8
        media: Ethernet autoselect (none)
        status: no carrier
        nd6 options=29
Starting devd.
Autoloading module: if_rtwn_usb.ko
rtwn0 on uhub1
rtwn0:  on usbus0
rtwn0: MAC/BB RTL8188EU, RF 6052 1T1R
add host 127.0.0.1: gateway lo0 fib 0: route already in table
add host ::1: gateway lo0 fib 0: route already in table
add net fe80::: gateway ::1
add net ff02::: gateway ::1
add net ::ffff:0.0.0.0: gateway ::1
add net ::0.0.0.0: gateway ::1
Waiting 30s for the default route interface: .....(no carrier)
Generating host.conf.
Creating and/or trimming log files.
Starting syslogd.
Clearing /tmp (X related).
Updating motd:.
Mounting late filesystems:.
Updating /var/run/os-release done.
Configuring vt: blanktime.
Generating RSA host key.
2048 SHA256:EXG7OoMBD2VUNn1FCXl3UQdD9kJtv2Juj6vvvA58OQA root@rpi-b (RSA)
Generating ECDSA host key.
256 SHA256:/roarxBv9GOzuIMHt2cryrA1/Puz6xqLLLdzrFArfIA root@rpi-b (ECDSA)
Generating ED25519 host key.
256 SHA256:1PmU3kcglUWlFAd+ke6gEA2hOO/w96wf4+hWpQqAzrs root@rpi-b (ED25519)
Performing sanity check on sshd configuration.
Starting sshd.
Starting cron.
Starting background file system checks in 60 seconds.

Thu May 14 03:51:02 UTC 2020
FreeBSD/arm (rpi-b) (ttyu0)
login:
となった。id root / pass rootでlogin できる。

install時の/etc/rc.confは

hostname="rpi-b"
ifconfig_DEFAULT="DHCP"
sshd_enable="YES"
sendmail_enable="NONE"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"
growfs_enable="YES"
となっている。
Twitter:

Thursday 28 May, 2020 [長年日記] この日を編集

_ RaspberryPiを再び (9) -apache-

せっかくなので今まで避けてきたhttp serverにも挑戦してみる。

packageはapache2となっている。

$ sudo apt install apache2
serviceの起動は
$ sudo service apache2 start
もしくは
$ sudo systemctl restart apache2
設定ファイルは/etc/apache2にある。
$ cd /etc/apache2
$ cat apache2.conf
# This is the main Apache server configuration file.  It contains the
# configuration directives that give the server its instructions.
# See http://httpd.apache.org/docs/2.4/ for detailed information about
# the directives and /usr/share/doc/apache2/README.Debian about Debian specific
# hints.
#
#
# Summary of how the Apache 2 configuration works in Debian:
# The Apache 2 web server configuration in Debian is quite different to
# upstream's suggested way to configure the web server. This is because Debian's
# default Apache2 installation attempts to make adding and removing modules,
# virtual hosts, and extra configuration directives as flexible as possible, in
# order to make automating the changes and administering the server as easy as
# possible.

# It is split into several files forming the configuration hierarchy outlined # below, all located in the /etc/apache2/ directory: # # /etc/apache2/ # |-- apache2.conf # | `-- ports.conf # |-- mods-enabled # | |-- *.load # | `-- *.conf # |-- conf-enabled # | `-- *.conf # `-- sites-enabled # `-- *.conf # # # * apache2.conf is the main configuration file (this file). It puts the pieces # together by including all remaining configuration files when starting up the # web server. # # * ports.conf is always included from the main configuration file. It is # supposed to determine listening ports for incoming connections which can be # customized anytime. # # * Configuration files in the mods-enabled/, conf-enabled/ and sites-enabled/ # directories contain particular configuration snippets which manage modules, # global configuration fragments, or virtual host configurations, # respectively. # # They are activated by symlinking available configuration files from their # respective *-available/ counterparts. These should be managed by using our # helpers a2enmod/a2dismod, a2ensite/a2dissite and a2enconf/a2disconf. See # their respective man pages for detailed information. # # * The binary is called apache2. Due to the use of environment variables, in # the default configuration, apache2 needs to be started/stopped with # /etc/init.d/apache2 or apache2ctl. Calling /usr/bin/apache2 directly will not # work with the default configuration. . . .
xtermから
$ links http://localhost
で接続すると Sreenshot

Twitter:

ENOTECA Online(ワイン通販 エノテカ・オンライン) 29980円パソコン工房
リンクシェア アフィリエイト紹介プログラム