Erinevus lehekülje "Arch Linux install ja seadistus" redaktsioonide vahel

Allikas: Kuutõrvaja
 
(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 13:36

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

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