Kako očuvati sistem?

Potrebna vam je pomoć pri instalaciji? U ovom forumu možete postavljati pitanja.

Moderator: Urednik

Post Reply

Stalni član
Stalni član
offline
User avatar

Posts: 32
Joined: 06 Nov 2012, 10:55

Post Napisano: 07 Nov 2012, 19:01


Nakon dužeg odlaganja, odlučio sam da se konačno upustim u avanturu sa linuxom i krenuo sa slackware-om (:D možda ne tako pametno za početak). Ranije sam isprobavao samo na kratko sa Ubuntu, openSUSE,Knoppix live i možda još koji. Pre par meseci sam instalirao slack 13.37 i do sad sam mu instalirao pun k**** drajvera biblioteka i svakakvih meni totalno vanzemaljskih "dependency" stvari bez kojih razni programi ne mogu da rade.

Ono što mene sada prvenstveno interesuje i zbog čega otvaram ovu temu, je vezano za manipulaciju instaliranih programa, biblioteka itd. Da li postoji neki način da se vodi evidencija šta je sve novo nakon sveže instalacije sistema. Npr. kada skinem neki source, odradim ritual, ./configure, make, make install. To uvek odleti negde u neke sistemske foldere ko zna gde, i ako hocu da obrišem ne znam da li smem i da li je su overwrite-ovani neki sistemski podaci. Da li postoji neki način da to instaliram u neki poseban folder koji je samo za dodate stvari, kako bih odvojio sve dodato od sistema. Tim bih mogao uvek da obrišem ono što sam ubacio, bez nekih ostataka koji vise se nepotrebno gomilaju na sve strane.

Uskoro ću potpuno da obrišem sistem i da instaliram svež Slack 14, jer sam ovaj napumpao svim i svačim i dosta toga mi se pokvarilo. Pa kad krenem sve ispočetka hteo bih da budem malo pedantniji.

Takođe me interesuje zašto ljudi rekompajliraju svoj kernel i kakve pogodnosti im to pruža i da li je moguće da upgraduješ kernel ako si ga menjao :question:



Administrator
Administrator
offline
User avatar

Posts: 4591
Joined: 04 Feb 2011, 20:32
Location: Beograd
Contact:

Post Napisano: 07 Nov 2012, 19:59


Paketi koje instaliraš direktno iz izvornog koda nisu ni u kakvoj evidenciji. Zato je i preporuka kreiranje paketa. Mnogo je lakše na taj način da pratiš dodatni softver.

Komandom:

Code: Select all

slackpkg clean-system
ćeš dobiti spisak svih paketa koji se ne nalaze u zvaničnom Slackware repou.
slackpkg.png
Najlakši način za kreiranje paketa je pomoću SlackBuilds.org (SBo) skripti:
http://slackbuilds.org/" onclick="window.open(this.href);return false;

Ono što se ne nalazi na SBo je često dostupno na drugim mestima (na nekima od linkova su često dostupni i gotovi paketi):
http://www.slackware.com/~alien/slackbuilds/" onclick="window.open(this.href);return false;
http://rlworkman.net/pkgs/" onclick="window.open(this.href);return false;
http://www.nielshorn.net/slackware/slack_pkg.php" onclick="window.open(this.href);return false;
http://www.slacky.eu/" onclick="window.open(this.href);return false;

Skriptovi se jako jednostavno koriste:

Ručno korišćenje SlackBuild skriptova:
1. Odeš na http://slackbuilds.org/" onclick="window.open(this.href);return false; i u polje search upišeš ime ili deo imena paketa koji te interesuje:
screen1.png
2. Kad pritisneš search, pokazaće se rezultati pretrage. Napr, ako je paket nađen:
screen2.png
3. Klikneš na ime paketa i dobijaš stranicu sa SlackBuild skriptom:
screen3.png
Ovde skineš arhivu označenu pod "Source Downloads" (u ovom primeru: spacefm-0.8.0.tar.xz) i arhivu (ime-paketa.tar.gz) označenu pod "Download SlackBuild" (u ovom primeru: spacefm.tar.gz).

4. Otpakuješ arhivu sa SlackBuild-om:

Code: Select all

tar xvf spacefm.tar.gz
Ubaciš source arhivu u direktorijum u kome je otpakovana arhiva i pokreneš SlackBuild skriptu kao root:

Code: Select all

su
./spacefm.SlackBuild
5. Paket će biti kreiran u /tmp, odakle ga zatim instaliraš sa installpkg (ako je izgradnja prošla bez greške)

Code: Select all

su
installpkg /tmp/spacefm-0.8.0-i486-1_SBo.t?z

Pravljenje paketa uz pomoć SBopkg

SBopkg takođe koristi SlackBuilds.org, ali automatizuje i olakšava ceo proces. Takođe ima i mogućnost upravljanja zavisnostima pri izgradnji (ne i pri instalaciji ili deinstalaciji). Ovo se postiže korišćenjem queue datoteka. Jedna generička kolekcija se nalazi i ovde (Slack 14): http://gitorious.org/sbopkg-slackware-queues" onclick="window.open(this.href);return false;. Instalacija i podešavanje sbopkg je materijal za drugu temu, ali u principu: que datoteke imaju nastavak sqf i idu u /var/lib/sbopkg/queues.

Kada si instalirao i podesio sbopkg, pakete možeš instalirati iz interaktivnih ncurses menija pozivanjem sbopkg bez parametara ili direktno iz komandne linije:

Code: Select all

sbopkg -i spacefm
Ovo će preuzeti, izgraditi i instalirati paket. Ako nemaš queue datoteku za paket, a on ima neke zavisnosti koje nisu uključene u Slack ili nisu naknadno instalirane iz drugog izvora, ovaj proces će se prekinuti zbog greške u kompajliranju. U suprotnom, ako si skinuo ili napisao svoju que datoteku, onda će se prvo izgraditi zavisnosti, a zatim i sam paket.

Neke stvari koje bih dodao:
Ako želiš da izmeniš paket koji već dolazi uz Slack, zvanične SlackBuild skripte se nalaze na source DVD-u ili u /source direktorijumu na http/ftp mirrorima glavnog Slack repoa. Obično se nove verzije kompajliraju bez problema, s obzirom da će SlackBuildovi u većini slučajeva pokupiti novu arhivu. Elem, ako su problematične opcije paketa, promeniš ih u samom SlackBuild skriptu (jedan primer je rekompilacija caira za instalaciju Awesome WM ili lcd filter peča). Paketi se izgrađuju u /tmp.



Administrator
Administrator
offline
User avatar

Posts: 4591
Joined: 04 Feb 2011, 20:32
Location: Beograd
Contact:

Post Napisano: 07 Nov 2012, 20:04


keeper wrote:Takođe me interesuje zašto ljudi rekompajliraju svoj kernel i kakve pogodnosti im to pruža i da li je moguće da upgraduješ kernel ako si ga menjao :question:
Iz različitih razloga. Recimo meni padaju na pamet sledeći:
  • optimizacija kernela za mašinu na kojoj se pokreće
  • postojeći kernel nema podršku za neke drajvere, a noviji ima
  • testiranje
  • uključivanje podrške za neku od opcija koje nisu uključene u kernelu koji je došao uz distribuciju
  • primena pečeva koji nisu prihvaćeni ili prijavljeni u mainstream kernel



Stalni član
Stalni član
offline
User avatar

Posts: 32
Joined: 06 Nov 2012, 10:55

Post Napisano: 07 Nov 2012, 20:12


Hvala na obimnom odgovoru Bocke!

Ovo za slackbuilds.org sam znao i koristio. SBopkg ću definitivno istražiti.
Znači kada skinem neki source code, za koji moram da odradim ./configure, make, make install, mogu na neki način da ih pretvorim u slackware package i onda da ga instaliram pomoću installpkg komande?

Video sam negde da je, kada odradim ./configure, moguće prosleđivanje parametara tako kompajlirane fajlove mogu da smestim tipa u /opt/ime_programa. Da li onda moram da menjam neku globalnu PATH promenljivu(kao na windowsu) kako bi program mogao da promađe zavisne komponente?



Administrator
Administrator
offline
User avatar

Posts: 4591
Joined: 04 Feb 2011, 20:32
Location: Beograd
Contact:

Post Napisano: 07 Nov 2012, 20:33


keeper wrote:Znači kada skinem neki source code, za koji moram da odradim ./configure, make, make install, mogu na neki način da ih pretvorim u slackware package i onda da ga instaliram pomoću installpkg komande?
Teorijski da. Ali u praksi tu i tamo.

Code: Select all

./configure
make
su
mkdir /tmp/pkg/install
make install DESTDIR=/tmp/pkg/install
cd /tmp/pkg/install
makepkg ../imepaketa-x.y.z-x86.tgz
cd ..
rm -fr install
  • Ali ovde postoji nekoliko problema:
  • Mogućnost da je program instaliran sa neispravnim ili nesigurnim dozvolama
  • Mogućnost da je program instaliran sa pogrešnim vlasnikom ili grupom
  • Mogućnost da se dokumentacija instalira na pogrešno mesto (slack neke stvari stavlja na drugo mesto)
  • Mogućnost da su autoconf/automake skriptovi loše napisani i da novo kreirani paket ne sadrži sve potrebne fajlove
  • Mogućnost da ./configure ne koristi GNU autoconf/automake i ne podržava DESTDIR
  • Još jedan problem je da ovo važi samo za softver koji koristi GNU autocon/automake, ne i za one koji koriste cmake, imake, jam i dr.
SlackBuild skripte ovo automatski rešavaju.
keeper wrote:Video sam negde da je, kada odradim ./configure, moguće prosleđivanje parametara tako kompajlirane fajlove mogu da smestim tipa u /opt/ime_programa. Da li onda moram da menjam neku globalnu PATH promenljivu(kao na windowsu) kako bi program mogao da promađe zavisne komponente?

Code: Select all

./configure --prefix=/opt/ime_programa
Postoji i ta opcija. U principu može i tako da se odradi. Ne moraš da menjaš PATH, samo napravi simbolički link na program u /usr/local/bin ili napiši skript koji privremeno dodaje /opt/ime_programa u PATH.



Administrator
Administrator
offline
User avatar

Posts: 4591
Joined: 04 Feb 2011, 20:32
Location: Beograd
Contact:

Post Napisano: 07 Nov 2012, 20:37


Zaboravio sam da napišem da i ovo sa instalacijom u /opt/ime_programa ima svoje probleme
  • Mogućnost da skript ne istalira baš sve datoteke u /opt/ime_programa, već nešto i u sistemske direktorijume
  • Mogućnost da nije definisan uninstall target za make (make uninstall)
  • I opet ovo važi samo za programe koji koriste GNU autoconf/automake
  • Dozvole u /opt nisu baš toliki problem, ali mogu predstavljati siguronosni rizik na server/ruteru/firewallu/firminoj mašini.



Stalni član
Stalni član
offline
User avatar

Posts: 32
Joined: 06 Nov 2012, 10:55

Post Napisano: 08 Nov 2012, 11:47


Jel je moguće da instaliram slack bez onih nepotrebnih window manager-a, tako da mi ostane samo KDE i Xfce? Izbacio bih možda još neke pakete iz instalacije koje ne koristim, ima gomila nekih igrica i programa koji mi ne trebaju.



Prijatelj foruma
Prijatelj foruma
offline
User avatar

Posts: 1053
Joined: 18 Feb 2012, 15:14
Location: Despotovac
Contact:

Post Napisano: 08 Nov 2012, 12:26


Да, баци поглед на Вики - http://slackware-srbija.org/wiki/doku.p ... nstalaciju



Stalni član
Stalni član
offline
User avatar

Posts: 32
Joined: 06 Nov 2012, 10:55

Post Napisano: 08 Nov 2012, 14:47


U suštini, ja mogu da instaliram minimaln sistem da se uopšte pokrene slack i onda sa DVD-a da instaliram pakete po potrebi?



Prijatelj foruma
Prijatelj foruma
offline
User avatar

Posts: 1053
Joined: 18 Feb 2012, 15:14
Location: Despotovac
Contact:

Post Napisano: 08 Nov 2012, 14:57


Да, ево упутства за минимални систем, па комбинуј :)

http://slackwiki.com/Minimal_System


Post Reply

Who is online

Users browsing this forum: No registered users and 8 guests