Kirjoittaja Aihe: Scripti, joka lisää tekstiä fstab:iin [ratkaistu]  (Luettu 3902 kertaa)

AION

  • Käyttäjä
  • Viestejä: 150
    • Profiili
Hei kaikille!

Linux coodaaminen on minulle hiaman uutta, mutta nyt kun olen saanut tehtyä AD domain kirjautumisen toimimaan hyvin, niin yritin tehdä siitä scriptiä, joka helpottaisi työpaikkamme muissa Linux asennuksissa, ihmisiä, jotka eivöt ole Linuxin kanssa vielä kovin edistyneitä.

Tässä onkin scriptin alku:
Koodia: [Valitse]
#/bin/bash
/usr/bin/aptitude install libnss-ldap -y
/usr/bin/aptitude install nfs-common -y
cp /etc/nsswitch.conf /etc/nsswitch.conf.backup
cp /etc/ldap.conf /etc/ldap.conf.backup
cp /etc/samba/smb.conf /etc/samba/smb.conf.backup
cp /etc/pam.d/common-session /etc/pam.d/common-session.backup
cp /etc/pam.d/common-auth /etc/pam.d/common-auth.backup
cp /etc/pam.d/common-account /etc/pam.d/common-account.backup
cp /etc/pam.d/common-password /etc/pam.d/common-password.backup
cp common-password /etc/pam.d/common-password
cp common-session /etc/pam.d/common-session
cp common-auth /etc/pam.d/common-auth
cp common-account /etc/pam.d/common-account
cp ldap.conf /etc/ldap.conf
cp ldap.secret /etc/ldap.secret
cp nsswitch.conf /etc/nsswitch.conf
cp smb.conf /etc/samba/smb.conf
chmod 600 /etc/ldap.secret
echo Syötä komento: "sudo net ads join -U domainadmin"
echo Syötä sudo salasana sitä kysyttäessä
echo Syötä domain admin salasana
exit

Tuohon sitten tarvisi pätkän, joka heittää tiedostoon /etc/fstab pätkän:
palvelin.meidän.domain:/home   /home   nfs    asetus,toinen,kolmas     0    0

Onko tällainen mahdollista bashilla, mielestäni olen nähnyt tällaista jossain, mutta en vain löydä enkä saa mieleeni, että missä?

T:
Sampo Saarela
« Viimeksi muokattu: 21.08.08 - klo:00.51 kirjoittanut Petri Järvisalo »

qwertyy

  • Käyttäjä
  • Viestejä: 5777
    • Profiili
Vs: Scripti, joka lisää tekstiä fstab:iin
« Vastaus #1 : 19.08.08 - klo:13.38 »
sed (stream editor) komennolla pitäisi onnistua. En osaa kyllä heti heittää miten tuon rivin saa lisättyä, lähinnä mietityttää miten tuolla sai heitettyä tiedoston loppuun uuden rivin.

http://linux.fi/index.php/Sed

Asmo Koskinen

  • Käyttäjä
  • Viestejä: 4443
    • Profiili
Vs: Scripti, joka lisää tekstiä fstab:iin
« Vastaus #2 : 19.08.08 - klo:13.53 »
Tuohon sitten tarvisi pätkän, joka heittää tiedostoon /etc/fstab pätkän:
palvelin.meidän.domain:/home   /home   nfs    asetus,toinen,kolmas     0    0

">" voisi lähteä myös liikkeelle.

asmok@ubuntu:~$ cat /etc/passwd | grep asmok > passwd_asmok.txt
asmok@ubuntu:~$ cat passwd_asmok.txt
asmok:x:1002:1002:Asmo Koskinen,,,,:/home/asmok:/bin/bash
asmok@ubuntu:~$

Valmiista tiedostosta luetaan sisään "<".  

Bash/sed-skriptaus on se, mitä toden teolla pitää ryhtyä opettelemaan, hyödyllisintä ylläpidon näkökulmasta eli kaiken maailman tekstitiedostojen manipulointi. Ja niitä /etc, /opt ja /var/lib/tftpboot -hakemistoissa riittää  ;D

Ystävällisin terveisin Asmo Koskinen.

anttimr

  • Käyttäjä
  • Viestejä: 1625
    • Profiili
Vs: Scripti, joka lisää tekstiä fstab:iin
« Vastaus #3 : 19.08.08 - klo:13.56 »
> kirjoittaa koko tiedoston uudelleen
>> lisää tulosteen tiedoston loppuun
Ubuntu 12.10 Quantal Quetzal

Kari Argillander

  • Käyttäjä
  • Viestejä: 437
  • Kubuntu - Hardy
    • Profiili
Vs: Scripti, joka lisää tekstiä fstab:iin
« Vastaus #4 : 19.08.08 - klo:14.14 »
miksi tämä kohta on näin

Koodia: [Valitse]
echo Syötä komento: "sudo net ads join -U domainadmin"
miksei se ole vain näin
Koodia: [Valitse]
net ads join -U domainadmin
Tuon skriptin joutuu kumminkin ajamaan pääkäyttäjän oikeuksin, koska koskee kansioon /etc niin miksei samantie automatisoi myös tuota jolloin käyttäjälle tulee vähemmän työtä.

Tämä kohta
Koodia: [Valitse]
/usr/bin/aptitude install libnss-ldap -y
voisi olla haluttaessa myös näin
Koodia: [Valitse]
aptitude install libnss-ldap -y
Kaikkea täällä sanomaani saa käyttää public domain lisenssillä. Lainauksia ei saa käyttää ellei lainauksen lähde sitä salli. Tiedostoja ei saa käyttää ellei sitä erikseen sallita.

Melmacian

  • Käyttäjä
  • Viestejä: 868
  • Ubuntu Hardy
    • Profiili
Vs: Scripti, joka lisää tekstiä fstab:iin
« Vastaus #5 : 19.08.08 - klo:14.52 »
Lainaus
Tuohon sitten tarvisi pätkän, joka heittää tiedostoon /etc/fstab pätkän:
palvelin.meidän.domain:/home   /home   nfs    asetus,toinen,kolmas     0    0

Eli käytännössä
Koodia: [Valitse]
echo "/home   /home   nfs    asetus,toinen,kolmas     0    0" >> /etc/fstab
tai jos jostain syystä käytät sudoa:
Koodia: [Valitse]
echo "/home   /home   nfs    asetus,toinen,kolmas     0    0"  | sudo tee -a /etc/fstab

AION

  • Käyttäjä
  • Viestejä: 150
    • Profiili
Vs: Scripti, joka lisää tekstiä fstab:iin
« Vastaus #6 : 19.08.08 - klo:15.24 »
miksi tämä kohta on näin

Koodia: [Valitse]
echo Syötä komento: "sudo net ads join -U domainadmin"
miksei se ole vain näin
Koodia: [Valitse]
net ads join -U domainadmin
Tuon skriptin joutuu kumminkin ajamaan pääkäyttäjän oikeuksin, koska koskee kansioon /etc niin miksei samantie automatisoi myös tuota jolloin käyttäjälle tulee vähemmän työtä.



Kiitoksia kaikille vastauksista, tuon fstab kohdan sainkin toimivaan yhteisön hyvällä ohjeistuksella.

Se miksi tuo "net ads join" on tuolla tavalla, johtuu siitä, että Domain Admin oikeuksia ei ole yhdelläkään pysyvällä tunnuksella, vaan kaikilla Mikrotuki henkilöillä on omat tunnukset ja niitä käytetään tällaisissa tarkoituksissa. Domain Admin oikeudet kun ovat aika arka asia.
Tietenkin jos tuon saisi vetämään tuon komennon tyyliin:
Koodia: [Valitse]
net ads join -U echo Syötä käyttäjänimi Domain Admin oikeuksilla
echo Syötä salasana

Ja tästä menisi salasana ja käyttäjä tunnus tuonne komennolle.