• 1
  • 2
2014-01-10, 01:20
  #1
Medlem
gavlips avatar
Jag är nybörjare i Linux min fråga är denna: Hur det kommer sig att man kan installera program direkt i linux med sudo apt-get. Var hämtas programmen ifrån? Vilka program finns i denna programsamling?

Säg att att man har installerat x antal program på sin Linux distribution borde man inte kunna spara koden för installationerna i någon fil och sen kunna köra exakt filen på en annan dator så att datorn exakta tillstånd kan dupliceras/återskapas utan att man behöver klicka en massa?
Citera
2014-01-10, 01:43
  #2
Medlem
Polyklorfenols avatar
Citat:
Ursprungligen postat av gavlip
Jag är nybörjare i Linux min fråga är denna: Hur det kommer sig att man kan installera program direkt i linux med sudo apt-get. Var hämtas programmen ifrån? Vilka program finns i denna programsamling?

Säg att att man har installerat x antal program på sin Linux distribution borde man inte kunna spara koden för installationerna i någon fil och sen kunna köra exakt filen på en annan dator så att datorn exakta tillstånd kan dupliceras/återskapas utan att man behöver klicka en massa?
Om du vill ha en likadan installation på en annan hårddisk, så används program för att göra en "image" av hela disken, typ Macrium Reflect.
Citera
2014-01-10, 01:49
  #3
Medlem
kinesarsles avatar
Titta i filen /etc/apt/sources.list så ser du varifrån programmen hämtas.
Citera
2014-01-10, 02:23
  #4
Medlem
gavlips avatar
Citat:
Ursprungligen postat av kinesarsle
Titta i filen /etc/apt/sources.list så ser du varifrån programmen hämtas.

Ok man har alltså fördefinierat vilka program som går att installera på detta viset och var de hämtas ifrån. Jag förstår det som att om man har skrivit/ är tillverkare av ett program och vill att det ska kunna gå att installera från command line i linux så måste man anmäla sig någonstans så att man kan delta i listan på command-line-installerbara program.
Citera
2014-01-10, 03:44
  #5
Medlem
Du kan göra backup på hela hårddisken och återinstallera tillbaka när du behöver, men det funkar inte att dela mellan datorer om de har olika hårdvara. Det gör det inte på Windows heller, du behöver rätt drivare för datorns hårdvarusituation.

IDE eller SCSI-hårddisk, ett 10Gbit taiwanesiskt nätverkskort i en PCMICIA-plats eller två 3Com 100Gbit nätverkskort på PCI-plats, en 800x600 skärm med max 60Hz uppdateringsfrekvens eller en med 1280x1024, en seriell mus med två knappar eller en USB Logitech med scrollhjul och 4 knappar, 10x DVD-brännare internt eller 2x på en USB-plats, internet via DHCP eller fast IP-adress, osv?

Allt ligger tyvärr inbäddat i diverse konfigurationsfiler spridda över hela jäkla filsystemet. Det vore suveränt med ett Linux som separerade mjukvaran från hårdvaran i en enda fil, som man bara kunde redigera när man flyttade systemet till en ny dator / ny hårdvara.
Citera
2014-01-10, 04:07
  #6
Medlem
gavlips avatar
Kan man exekvera command line kod från en fil? Vore väldigt praktiskt att om man har något komplicerat att ha det sparat så man slipper skriva det igen.
Citera
2014-01-10, 04:45
  #7
Medlem
Citat:
Ursprungligen postat av gavlip
Kan man exekvera command line kod från en fil? Vore väldigt praktiskt att om man har något komplicerat att ha det sparat så man slipper skriva det igen.

Absolut, men se till att hålla koll på om något går fel, som det alltid kan göra. Om scriptet misslyckas att byta mapp från / (eller vilken annan mapp som helst) till /home/gavlip/oldstuff, kanske du inte vill radera allt i mappen längre. Hoppsan, Kerstin.

Kod:
cd /home/gavlip/oldstuff
rm -rf *

---

Enklast är att sätta shellflaggan -e, som gör att scriptet avslutas när ett kommando inte lyckas (returnerar icke 0). Skriv `#!/bin/sh -e` längst upp i filen och gör den körbar med `chmod +x scriptet`.

Kod:
#!/bin/sh -e

kommando
fler kommandon
Citera
2014-01-10, 06:17
  #8
Medlem
VeeJays avatar
Citat:
Ursprungligen postat av alef-noll
Absolut, men se till att hålla koll på om något går fel, som det alltid kan göra. Om scriptet misslyckas att byta mapp från / (eller vilken annan mapp som helst) till /home/gavlip/oldstuff, kanske du inte vill radera allt i mappen längre. Hoppsan, Kerstin.

Kod:
cd /home/gavlip/oldstuff
rm -rf *

---

Enklast är att sätta shellflaggan -e, som gör att scriptet avslutas när ett kommando inte lyckas (returnerar icke 0). Skriv `#!/bin/sh -e` längst upp i filen och gör den körbar med `chmod +x scriptet`.

Kod:
#!/bin/sh -e

kommando
fler kommandon
Och för att köra ett shell script i terminalen så skriver man:
Kod:
sh filnamn
Citera
2014-01-10, 06:21
  #9
Medlem
Citat:
Ursprungligen postat av VeeJay
Och för att köra ett shell script i terminalen så skriver man:
Kod:
sh filnamn

Nej, man gör det körbart med `chmod +x filnamn` så behöver man inte veta om det är ett bash-, python-, sh- eller tcl-script. Eller ett kompilerat program.

Kod:
./namnet
Citera
2014-01-10, 09:14
  #10
Moderator
vhes avatar
Får att få en kopia på paketuppsättningen behöver man inte trixa med images och egenhackade shellscript.

På källdatorn:
Kod:
dpkg --get-selections > paketlista

Flytta filen paketlista till måldatorn.
På måldatorn:
Kod:
dpkg --set-selections < paketlista
apt-get install

(otestat nu, men jag har för mig det är processen).
Citera
2014-01-16, 14:05
  #11
Medlem
dankoreliuss avatar
Citat:
Ursprungligen postat av vhe
Får att få en kopia på paketuppsättningen behöver man inte trixa med images och egenhackade shellscript.

På källdatorn:
Kod:
dpkg --get-selections > paketlista

Flytta filen paketlista till måldatorn.
På måldatorn:
Kod:
dpkg --set-selections < paketlista
apt-get install

(otestat nu, men jag har för mig det är processen).

Har för mig att man måste köra
Kod:
apt-get update
apt-get upgrade
tror bara dpkg --set-selections definerar vilka paket som ska hämtas
Citera
2014-01-16, 15:27
  #12
Moderator
vhes avatar
Citat:
Ursprungligen postat av dankorelius
tror bara dpkg --set-selections definerar vilka paket som ska hämtas

Därav den avslutande raden:
Kod:
apt-get install
Citera
  • 1
  • 2

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in