Arch Linux install ja seadistus: erinevus redaktsioonide vahel

Allikas: Kuutõrvaja
Mine navigeerimisribaleMine otsikasti
Jj (arutelu | kaastöö)
Resümee puudub
Jj (arutelu | kaastöö)
Resümee puudub
 
(ei näidata sama kasutaja 15 vahepealset redaktsiooni)
1. rida: 1. rida:
[[Pilt:Arch.png]]
[[Pilt:Arch.png]]
====Arch linuxi plussid====
* Kergekaaluline
* Võimaldab õppida lähemalt tundma linuxi ehitust
====Arch linuxi miinused====
* Pakette on ametlikus pakihalduses vähe, palju olulisi pakette (nagios nt) asub auris. Mõningaid pole leida kummastki.
* Aurile pole ametlikus pakihalduse repos installerit
* Ei ole leidnud siiani vahendit, mis suudaks genereerida teateid installitud pakettides leiduvatest turvavigadest
===Paigaldamine===


Installiiso saab tõmmata aadressilt http://ftp.eenet.ee/pub/archlinux/iso/2015.06.01/archlinux-2015.06.01-dual.iso
Installiiso saab tõmmata aadressilt http://ftp.eenet.ee/pub/archlinux/iso/2015.06.01/archlinux-2015.06.01-dual.iso
21. rida: 34. rida:
Võrgu manuaalne seadistus (olemas ka dhcp klient)
Võrgu manuaalne seadistus (olemas ka dhcp klient)


# Võrk
  ip ad add 193.40.0.120/24 dev eth1
  ip ad add 193.40.0.120/24 dev eth1
  ip ro add default via 193.40.0.1
  ip ro add default via 193.40.0.1
32. rida: 44. rida:
  grep eenet mirrorlist.orig > mirrorlist
  grep eenet mirrorlist.orig > mirrorlist


Baaspakid
Baas süsteemi pakettide paigaldamiseks


  pacstrap /mnt base
  pacstrap /mnt base
Muuhulgas paigaldatakse ka kernel, täpsem nimekiri paigaldatud tarkvarast https://www.archlinux.org/groups/x86_64/base/


Fstab paika
Fstab paika
45. rida: 59. rida:
  echo htm-vips > /etc/hostname
  echo htm-vips > /etc/hostname
  ln -sf /usr/share/zoneinfo/Europe/Tallinn /etc/localtime
  ln -sf /usr/share/zoneinfo/Europe/Tallinn /etc/localtime
Kella sünkroniseerimine
systemctl enable systemd-timesyncd


Root parool
Root parool
57. rida: 75. rida:


  syslinux-install_update -i -a -m
  syslinux-install_update -i -a -m
Kuna meil on tegemist virtio seadmega KVM all siis sda asemel on meil vda nimeline seade
  sed -i 's/sda3/vda1/' /boot/syslinux/syslinux.cfg
  sed -i 's/sda3/vda1/' /boot/syslinux/syslinux.cfg


84. rida: 105. rida:
  [Install]
  [Install]
  WantedBy=multi-user.target
  WantedBy=multi-user.target
  sc enable eth1.service
 
Ja lubame loodud teenuse
 
  # systemctl enable eth1.service
 
Kui ei taha eno1 jne seadmeid vaid eth0 jne näha siis kerneli laadimisel APPEND reale net.ifnames=0


Teenuste juhtimiseks vajalikele utiliitidele võib teha abialiased
Teenuste juhtimiseks vajalikele utiliitidele võib teha abialiased
102. rida: 128. rida:
  journalctl --since "20 min ago"
  journalctl --since "20 min ago"


Pakettide andmebaasi uuendamine
pacman -Sy
Pakkide andmebaasi värskendamine ja kõigi vananenud pakettide uuendamiseks sobib anda käsk
pacman -Syu
Palju pakette asub AUR nimelises süsteemis, mis mitteametlik "user" repo https://aur4.archlinux.org/ nende paigaldamine käib käsitsi
Paneme kõigepealt peale ehitamiseks vajalikud vahendid
# pacman -S --needed base-devel
Seejärel tuleks tekitada kaust kuhu panna aurist tõmmatud PKGBUILD fail. Mõne suurema
paki puhul on otstarbekas kloonida alla kogu giti haru aurist
# git clone https://aur.archlinux.org/php55.git
Cloning into 'php55'...
remote: Counting objects: 24, done.
remote: Compressing objects: 100% (20/20), done.
remote: Total 24 (delta 7), reused 15 (delta 3)
Unpacking objects: 100% (24/24), done.
Checking connectivity... done.
Seejärel tuleb käivitada nt aurbuild kasutajana ja kaustas, kuhu failid said paigaldatud käsk '''makepkg -sri'''. See käsk
tõmbab alla ülejäänud vajaliku koodi, lahendab sõltuvused packmani abil, kompileerib ja installib koodi. Käsk on piisavalt
nutikas, et suudab isegi eemaldada ehitamise ajaks paigaldatud mittevajalikud sõltuvused
Võimalus on paigaldada ka mõni packmani imisteeriv automatiseerimise abivahend auriga tegelemiseks. Üks selliseid on yaourt nimeline. Selle enda paigaldamiseks ava pacman.conf fail
# nano /etc/pacman.conf
Lisa sinna mitteametlik repo
[archlinuxfr]
SigLevel = Never
Server = http://repo.archlinux.fr/$arch
Salvesta ja paigalda pacman käsuga yaourt
$ yaourt <name of the package>
Croni kasutamiseks tuleb paigaldada pakk cronie
Croni asemel on võimalik Archis kasutada systemd timerit. Dokud:
https://wiki.archlinux.org/index.php/Systemd/Timers
http://www.freedesktop.org/software/systemd/man/systemd.timer.html
Näiteks backupi jaoks tuleks teha kaks unitit sellise sisuga
== upback.timer ==
[Unit]
Description=Backup Timer
[Timer]
# Igal öösel kell 2:13
OnCalendar=2:13
== /upback.timer ==
Teine fail
== upback.service ==
[Unit]
Description=Backup Service
[Service]
Type=oneshot
ExecStart=/root/bin/rsync -av /srv varundus@varundaja.zoo.tartu.ee:mail
== /upback.service ==
Mõlemad panna /etc/systemd/system/ kataloogi ja siis "systemctl enable upback.timer".
Võrreldes crontabi ühe reaga on see ebamugavalt tüütu tõesti, see-eest pole vaja arcile eraldi croni pakki.
===Levinud programmide kasutamine===
Ping käsk tuleb iputils pakist
# pacman -S iputils
===Apache logid journalisse===
CustomLog "| /usr/bin/logger -t harid_access -p user.info" "%V %h %l %u %t \"%r\" %s %b \"%{Referer}i\" \"%{User-agent}i\""
ErrorLog "| /usr/bin/logger -t harid_error -p user.err"
ErrorLogi saab muidu otse syslogi kah suunata, kuid tollele ei saanud kaasa anda tagi seega read tekkisid httpd nime all. loggeriga saab erinevaid tage
kasutana, nagu üldise errori jaoks error_log ja vhosti errori jaoks harid_error


https://viki.pingviin.org/Arch_Linux
https://viki.pingviin.org/Arch_Linux

Viimane redaktsioon: 10. veebruar 2017, kell 10:36

Arch linuxi plussid

  • Kergekaaluline
  • Võimaldab õppida lähemalt tundma linuxi ehitust

Arch linuxi miinused

  • Pakette on ametlikus pakihalduses vähe, palju olulisi pakette (nagios nt) asub auris. Mõningaid pole leida kummastki.
  • Aurile pole ametlikus pakihalduse repos installerit
  • Ei ole leidnud siiani vahendit, mis suudaks genereerida teateid installitud pakettides leiduvatest turvavigadest

Paigaldamine

Installiiso saab tõmmata aadressilt http://ftp.eenet.ee/pub/archlinux/iso/2015.06.01/archlinux-2015.06.01-dual.iso

Detailse ametliku juhendi leiab urlilt https://wiki.archlinux.org/index.php/Installation_guide

Kirjeldus wikis http://et.wikipedia.org/wiki/Arch_Linux

Peale archi installi bootimist ilmub ette käsurida,

Eesti klaver

# loadkeys et

Ketta partitsioneerimine (kettaks virtuaalmasinas virtio seade vda)

echo ',,L,*' | sfdisk /dev/vda
mkfs.ext4 /dev/vda1
mount /dev/vda1 /mnt -o noatime

Võrgu manuaalne seadistus (olemas ka dhcp klient)

ip ad add 193.40.0.120/24 dev eth1
ip ro add default via 193.40.0.1
echo nameserver 193.40.0.12 >> /etc/resolv.conf

Kasutame Eesti mirrorit

cd /etc/pacman.d
mv mirrorlist mirrorlist.orig
grep eenet mirrorlist.orig > mirrorlist

Baas süsteemi pakettide paigaldamiseks

pacstrap /mnt base

Muuhulgas paigaldatakse ka kernel, täpsem nimekiri paigaldatud tarkvarast https://www.archlinux.org/groups/x86_64/base/

Fstab paika

genfstab -p /mnt >> /mnt/etc/fstab

Seejärel siseneme chroot alla ja seadistame hostname ja ajatsooni

arch-chroot /mnt
echo htm-vips > /etc/hostname
ln -sf /usr/share/zoneinfo/Europe/Tallinn /etc/localtime

Kella sünkroniseerimine

systemctl enable systemd-timesyncd

Root parool

passwd root

Mõned vajalikud pakid

pacman -S syslinux openssh

Võtame kasutusele syslinux bootloaderi

syslinux-install_update -i -a -m

Kuna meil on tegemist virtio seadmega KVM all siis sda asemel on meil vda nimeline seade

sed -i 's/sda3/vda1/' /boot/syslinux/syslinux.cfg
exit
reboot

IP aadress tuleb ülalkirjutatud juhendi järgi uuesti seadistada

systemctl enable sshd
systemctl start sshd

Nüüd saab juba ssh-ga sisse

Selleks, et IP tuleks automaatselt külge tuleb tekitada /etc/systemd/system/eth1.service järgneva sisuga

[Unit]
Description=Network connectivity
Wants=network.target
Before=network.target
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/bin/ip li set dev eth1 up
ExecStart=/usr/bin/ip ad add 193.40.0.160/24 dev eth1
ExecStart=/usr/bin/ip ro add default via 193.40.0.1
ExecStop=/usr/bin/ip li set dev eth1 down
[Install]
WantedBy=multi-user.target

Ja lubame loodud teenuse

# systemctl enable eth1.service

Kui ei taha eno1 jne seadmeid vaid eth0 jne näha siis kerneli laadimisel APPEND reale net.ifnames=0

Teenuste juhtimiseks vajalikele utiliitidele võib teha abialiased

alias sc=systemctl

Ja logivaatamiseks

alias jc=journalctl

Logide jooksva jälgimise puhul on tail -f analoogiaks

journalctl -f

Aga küsida saab ka näiteks vabas vormis

journalctl --since "20 min ago"

Pakettide andmebaasi uuendamine

pacman -Sy

Pakkide andmebaasi värskendamine ja kõigi vananenud pakettide uuendamiseks sobib anda käsk

pacman -Syu

Palju pakette asub AUR nimelises süsteemis, mis mitteametlik "user" repo https://aur4.archlinux.org/ nende paigaldamine käib käsitsi

Paneme kõigepealt peale ehitamiseks vajalikud vahendid

# pacman -S --needed base-devel

Seejärel tuleks tekitada kaust kuhu panna aurist tõmmatud PKGBUILD fail. Mõne suurema paki puhul on otstarbekas kloonida alla kogu giti haru aurist

# git clone https://aur.archlinux.org/php55.git
Cloning into 'php55'...
remote: Counting objects: 24, done.
remote: Compressing objects: 100% (20/20), done.
remote: Total 24 (delta 7), reused 15 (delta 3)
Unpacking objects: 100% (24/24), done.
Checking connectivity... done.

Seejärel tuleb käivitada nt aurbuild kasutajana ja kaustas, kuhu failid said paigaldatud käsk makepkg -sri. See käsk tõmbab alla ülejäänud vajaliku koodi, lahendab sõltuvused packmani abil, kompileerib ja installib koodi. Käsk on piisavalt nutikas, et suudab isegi eemaldada ehitamise ajaks paigaldatud mittevajalikud sõltuvused

Võimalus on paigaldada ka mõni packmani imisteeriv automatiseerimise abivahend auriga tegelemiseks. Üks selliseid on yaourt nimeline. Selle enda paigaldamiseks ava pacman.conf fail

# nano /etc/pacman.conf

Lisa sinna mitteametlik repo

[archlinuxfr]
SigLevel = Never
Server = http://repo.archlinux.fr/$arch

Salvesta ja paigalda pacman käsuga yaourt

$ yaourt <name of the package>

Croni kasutamiseks tuleb paigaldada pakk cronie

Croni asemel on võimalik Archis kasutada systemd timerit. Dokud: https://wiki.archlinux.org/index.php/Systemd/Timers http://www.freedesktop.org/software/systemd/man/systemd.timer.html

Näiteks backupi jaoks tuleks teha kaks unitit sellise sisuga

== upback.timer ==
[Unit]
Description=Backup Timer

[Timer]
# Igal öösel kell 2:13
OnCalendar=2:13
== /upback.timer == 

Teine fail

== upback.service ==
[Unit]
Description=Backup Service

[Service]
Type=oneshot
ExecStart=/root/bin/rsync -av /srv varundus@varundaja.zoo.tartu.ee:mail
== /upback.service ==

Mõlemad panna /etc/systemd/system/ kataloogi ja siis "systemctl enable upback.timer".

Võrreldes crontabi ühe reaga on see ebamugavalt tüütu tõesti, see-eest pole vaja arcile eraldi croni pakki.

Levinud programmide kasutamine

Ping käsk tuleb iputils pakist

# pacman -S iputils

Apache logid journalisse

CustomLog "| /usr/bin/logger -t harid_access -p user.info" "%V %h %l %u %t \"%r\" %s %b \"%{Referer}i\" \"%{User-agent}i\""
ErrorLog "| /usr/bin/logger -t harid_error -p user.err"

ErrorLogi saab muidu otse syslogi kah suunata, kuid tollele ei saanud kaasa anda tagi seega read tekkisid httpd nime all. loggeriga saab erinevaid tage kasutana, nagu üldise errori jaoks error_log ja vhosti errori jaoks harid_error

https://viki.pingviin.org/Arch_Linux