2024/05/02(木)Ubuntu 24.04 インストール (7)
sudo apt install samba14.04の頃はできたunixへのログインパスワードとsambaのパスワードの共有は出来なくなっているので、次のようにsamba用のパスワードを設定します。
sudo pdbedit -a kashihome directoryの共有をするため、/etc/samba/smb.conf で、
;[homes] ; comment = Home Directories ; browseable = noの3行のコメント(先頭の「;」)を外し、
# By default, the home directories are exported read-only. Change the # next parameter to 'no' if you want to be able to write to them. ; read only = yesを
read only = noに変更します。
sudo systemctl restart smbdこれで、homeがwindowsから見えるようになりました。
更に追加で、
sudo apt install wsdd2 sudo systemctl enable --now wsdd2.serviceとしました。これをやると、最近のwindowsマシンがちゃんとsambaサーバを見つけてくれるようになります。
また、sambaとは逆の、UbuntuからWindowsの共有ドライブをマウントは、次のようにします。
GUIで
「ファイル」を開き、「+他の場所」から、下部の「サーバへの接続」欄にsmb://マシン名/共有名で接続できます。
CUIで
sudo apt install cifs-utilsのインストールが必要で、
sudo mount -t cifs //マシン名/共有名 /mnt -o "username=ユーザ名"のようにするとマウントできます。
2024/05/02(木)Ubuntu 24.04 インストール (6)
sudo apt install apache2いくつかのモジュールを有効化します。
sudo a2enmod userdir sudo a2enmod include sudo a2enmod cgid sudo systemctl restart apache2これらは、実際には/etc/apache2/mods-availableにあるファイルから/etc/apache2/mods-enabledへリンクを張っていて、mods-enabled以下のファイルが設定に読み込まれるという仕組みです。
次に、自分のよく使う設定をしていきます。public_htmlの有効化とcgiの有効化です。デフォルトで使われている設定ファイルは/etc/apache2/sites-available/000-default.confですが、これをを適当な名前 (custom.confとした) でコピーして設定することにします。
<IfModule mod_userdir.c> UserDir public_html UserDir disabled root <Directory /home/*/public_html> (ここは各自違うと思う) </Directory> </IfModule> <IfModule mod_mime.c> AddHandler cgi-script .cgi </IfModule>を(<VirtualHost *:80> </VirtualHost>の中に)加えます。
public_html以下の設定は、ユーザを最大限信用するなら、例えば、
AllowOverride All Options All Order allow,deny Allow from allのような感じでしょうか。
sudo a2dissite 000-default sudo a2ensite custom sudo systemctl restart apache2で、000-defaultを無効化し、customを有効化します。
22.04以降ではこれだけではpublic_htmlが見えません。どうやら22.04から、各userのhome directoryのpermissionのdefaultが755から750に変わったようです。
sudo chmod 755 /home/kashiとしたら見えるようになりました。
さらに、自分の好みで、public_html以下に置いたcgiはそのディレクトリのユーザの権限で動くようにする、suexecを設定します。
sudo apt install apache2-suexec-custom /etc/apache2/suexec/www-data の2行目を、public_html/cgi-bin → public_html に。 sudo a2enmod suexec sudo systemctl restart apache2次にphpの設定。8.3になりました。
sudo apt install php sudo apt install libapache2-mod-php /etc/apache2/mods-available/php8.3.conf で、php_admin_value engine Off をコメントアウト (ユーザのpublic_html以下でphpを使えるようにする。) sudo systemctl restart apache2動作確認は、ホームに public_html/phpinfo.php を
<?php phpinfo(); ?>の内容で作成してブラウザでアクセスしてみると分かるでしょう。
最後に、logrotateの設定を。/var/log/apache2 以下のlogが、デフォルトだと14日しか保存されないので直します。/etc/logrotate.d/apache2 の中の、
daily rotate 14という行を、
monthly rotate 120とし、10年間はもつようにしました。
2024/05/02(木)Ubuntu 24.04 インストール (5)
C++
sudo apt install build-essentialこれで、gccなど通常のbuild作業に必要なものが入ります。gccは13.2.0でした。
sudo apt install clangclangは18.1.3が入りました。
sudo apt install libboost-all-devboostはやっぱり要る。1.83が入りました。
Java
sudo apt install default-jdk sudo apt install icedtea-netxopenjdkの21が入りました。icedtea-netxはJava Web Start用ですが、(少なくとも自分の用途では)壊れてて、修復に手間取りました。(気が向けば)後で書きます。
lua
sudo apt install lua5.4 sudo apt install liblua5.4-dev sudo apt install luajit
fortran
sudo apt install gfortran
python
この時点でpython2は入っておらず、python3は既に入ってしました。単にpythonと打つとcommand not foundでした。2はサポート終了ということで、python3のみ環境を整えます。sudo apt install python3 sudo apt install python3-dev sudo apt install python3-numpy sudo apt install python3-scipy sudo apt install python3-matplotlib sudo apt install python3-sympy sudo apt install python3-mpmath sudo apt install python3-numba sudo apt install ipython3これらのうち、python3-numbaだけは入りませんでした。pythonが3.12になって、numbaの追従が間に合っていない? また、
sudo apt install python-is-python3とすると、単にpythonと打ってpython3が起動できるようになります。
octave
sudo apt install octave sudo apt install octave-dev8.4.0が入りました。普通に起動するとCUIで、--guiを付けるとGUI版が起動します。開発用packageは以前まではliboctave-devという名前でしたが、octave-devに変わったようです。intlabを使うときに必要になります (動作確認はまだ) 。
gmp,mpfr
sudo apt install libgmp-dev sudo apt install libmpfr-devそれぞれ6.3.0と4.2.1が入りました。
-m32で32bit binaryを作れるように
sudo apt install gcc-multilib sudo apt install g++-multilib
nim
sudo apt install nim1.6.14が入りました。
Julia
sudo apt install juliaaptでは入らず、snapで古いバージョンを入れることはできますが勧められないと言われ、本家サイトのbinary packageを落として入れることにします。https://julialang.org/downloads/の、Generic Linux on x86の64bit(glibc)を使います。
wget https://julialang-s3.julialang.org/bin/linux/x64/1.10/julia-1.10.2-linux-x86_64.tar.gz cd /usr/local sudo tar xfz (ダウンロードした場所)/julia-1.10.2-linux-x86_64.tar.gz cd /usr/local/bin sudo ln -s /usr/local/julia-1.10.2/bin/julia .のように、/usr/local/binにリンクを張りました。
2024/05/02(木)Ubuntu 24.04 インストール (4)
sudo apt install vimまた、~/.vimrcを、
set encoding=utf-8 set fileencodings=iso-2022-jp,euc-jp,sjis,utf-8 filetype indent offという内容で作成しました。これにより、
- 日本語のファイルを認識させる。デフォルトのコードがUTF8になり、JIS、EUC、SJISコードのファイルも自動認識して編集できるようになる。
- 18.04からvimが賢くなってファイルの拡張子に応じて自動でインデントしてくれるようになったが、自分はエディタが勝手に何かするのが嫌いなのでそれを止める。
2024/05/02(木)Ubuntu 24.04 インストール (3)
sudo apt install texlive-full最近はplatexを捨ててlualatexを使うようになりました。めんどくさいのでTeX関連はtexlive-fullで全部入れることにしました。
その他文書作成関連のソフトウェアをついでに入れました。
sudo apt install gv sudo apt install nkf sudo apt install gnuplot sudo apt install tgif sudo apt install gimp sudo apt install inkscape sudo apt install mimetex sudo apt install latexdiff sudo apt install diffpdf sudo apt install pdfarranger sudo apt install krop sudo apt install pdftk-java sudo snap install pintapdfarranger, kropm pdftk-javaはいずれもpdfの編集ツール、pintaはペイントツールです。pintaはaptから消えて、snapで入れるようになったようです。