Sida 1 av 1
Rättighets script
Postat: 25 jun 2008, 11:26
av Tompalaz
Hej. Jag tänkte göra ett script för joomla. Det går ut på att jag bara ska kunna köra det så fixar det till rättigheterna på mapparna så jag slipper göra det själv. Blir jobbigt, även om det inte tar så lång tid.
Jag vet inte riktigt hur jag ska göra. Jag har aldrig gjort ett script förrut, så skratta inte

.
Jag började med
Kod: Markera allt
#!/bin/bash
chmod 757 ~/Publikt/joomla/administrator/backups/
chmod 757 ~/Publikt/joomla/administrator/components/
chmod 757 ~/Publikt/joomla/administrator/language/
chmod 757 ~/Publikt/joomla/administrator/language/en-GB/
chmod 757 ~/Publikt/joomla/administrator/modules/
chmod 757 ~/Publikt/joomla/administrator/templates/
chmod 757 ~/Publikt/joomla/components/
osv
men det bästa vore ju givetvis om man själv fick mappa scriptet till joomla installationen. Hur gör man det?
Antar att det finns miljoner andra och bättre sätt att göra på.
Nu funkar det ju bara om man använder Publikt mappen och har döpt om joomla mappen.
Re: Rättighets script
Postat: 25 jun 2008, 12:03
av Konservburk
Jag förstår inte riktigt vad du är ute efter. Vill du verkligen ge
others skrivrättigheter till de där katalogerna?
Men för att svara på den egentliga frågan... du kan t.ex. göra så här:
Kod: Markera allt
#!/bin/bash
chmod 757 "${1-.}"/administrator/backups/
#osv
Då ersätts "${1-.}" med första argumentet till skriptet (eller med "." om skriptet saknar argument). Om du vill ha samma resultat som innan så startar du helt enkelt skriptet så här:
Re: Rättighets script
Postat: 25 jun 2008, 12:14
av Tompalaz
Others ska ha skrivrättigheter. Det är för att kunna installera moduler osv i joomla.
Jo, tänkte så här.
1)Jag kör scriptet,
2) Scriptet frågar var min joomla katalog ligger. Jag skriver in tex /home/tomas/publikt eller /var/ww. Man väljer själv.
3) scriptet kollar om det hittar en joomla katalogen
4) den ändrar alla rättigheter
menar du att jag ska skriva:
Kod: Markera allt
#!/bin/bash
cd ~/publikt/
chmod 757 "${1-.}"/administrator/backups/
chmod 757 "${1-.}"/administrator/dir1/
chmod 757 "${1-.}"/administrator/dir2/
Re: Rättighets script
Postat: 25 jun 2008, 12:38
av Konservburk
Tompalaz skrev:Others ska ha skrivrättigheter. Det är för att kunna installera moduler osv i joomla.
Jag vet inte ens vad joomla är. Jag tyckter bara att det verkar konstigt att
others någonsin ska behöva skrivrättigheter.
Tompalaz skrev:Jo, tänkte så här.
1)Jag kör scriptet,
2) Scriptet frågar var min joomla katalog ligger. Jag skriver in tex /home/tomas/publikt eller /var/ww. Man väljer själv.
Du kan såklart låta skriptet fråga efter den katalogen, men jag föredrar att ange sådant som parametrar till skriptet.
Tompalaz skrev:3) scriptet kollar om det hittar en joomla katalogen
Då måste man ju först veta vad som är unikt för en joomla-katalog. Vet man väl det så är det inga problem att göra ett sådant test. Man skulle nog till och med kunna få skriptet att hitta joomla-katalogen på egen hand utan att behöva ange den själv.
Tompalaz skrev:4) den ändrar alla rättigheter
Om det enda du vill göra är att ge
others skrivrättigheter, varför inte bara göra så här?
Tompalaz skrev:menar du att jag ska skriva:
Kod: Markera allt
#!/bin/bash
cd ~/publikt/
chmod 757 "${1-.}"/administrator/backups/
chmod 757 "${1-.}"/administrator/dir1/
chmod 757 "${1-.}"/administrator/dir2/
Typ så, men du kan skippa
cd ~/publikt/.
Re: Rättighets script
Postat: 25 jun 2008, 12:52
av Tompalaz
joomla är en "färdig" hemsida som du bygger. Som Drupal (ubuntu-se använder som portal).
Others måste ha åtkomst för att installera saker i hemsidan. Det ä ruppbyggt för att "others" ska ha rättighet till vissa kataloger, inte alla.
Hur gör man för att ett script ska hitta vissa mappar?
Re: Rättighets script
Postat: 25 jun 2008, 13:05
av Konservburk
Tompalaz skrev:Others måste ha åtkomst för att installera saker i hemsidan. Det ä ruppbyggt för att "others" ska ha rättighet till vissa kataloger, inte alla.
Det låter väldigt konstigt i mina öron. Finns det någon dokumentation någonstans om vilka kataloger som finns och vilka rättigheter dessa måste ha?
Tompalaz skrev:Hur gör man för att ett script ska hitta vissa mappar?
Du måste till att börja med veta vad som gör den katalogen som ska hittas unik. Är den listad i någon config-fil? Heter den något speciellt? Har den alltid en viss struktur av underkataloger? Ska det alltid finnas någon speciell fil i katalogen? osv?
Re: Rättighets script
Postat: 25 jun 2008, 13:23
av Tompalaz
Det låter inte alls konstigt i mina öron.
Lyckades inte får med en bild. iaf.
I joomla finns det en mappstruktur.
Information - Mapprättigheter
Kod: Markera allt
administrator/backups/ [color=#00FF00]Skrivbar[/color]
administrator/components/ [color=#00FF00]Skrivbar[/color]
administrator/language/ [color=#00FF00]Skrivbar[/color]
administrator/language/de-DE/ Skrivbar
administrator/language/en-GB/ Skrivbar
administrator/language/sv-SE/ Skrivbar
administrator/modules/ Skrivbar
administrator/templates/ Skrivbar
components/ Skrivbar
images/ Skrivbar
images/banners/ Skrivbar
images/stories/ Skrivbar
language/ Skrivbar
language/en-GB/ Skrivbar
language/pdf_fonts/ Skrivbar
language/sv-SE/ Skrivbar
modules/ Skrivbar
plugins/ Skrivbar
plugins/content/ Skrivbar
plugins/editors/ Skrivbar
plugins/editors-xtd/ Skrivbar
plugins/search/ Skrivbar
plugins/system/ Skrivbar
plugins/user/ Skrivbar
plugins/xmlrpc/ Skrivbar
tmp/ Skrivbar
templates/ Skrivbar
Cache-mapp /home/web28301/domains/ubuntuforeningen.se/public_html/joomla/cache/ Skrivbar
Cache-mapp /home/web28301/domains/ubuntuforeningen.se/public_html/joomla/administrator/cache/ Skrivbar
är något inte skrivbart är det röd markerat.
Dessa kataloger som listas måste vara skrivbara, annars kan man i stort sett inte göra något.
Testa att hämta joomla själv och kolla
joomla.org
mappstrukturen ser ut på det här sättet i joomla rooten
Kod: Markera allt
/home/tomas/Publikt/joomla/administrator
/home/tomas/Publikt/joomla/cache
/home/tomas/Publikt/joomla/components
/home/tomas/Publikt/joomla/images
/home/tomas/Publikt/joomla/includes
/home/tomas/Publikt/joomla/installation
/home/tomas/Publikt/joomla/language
/home/tomas/Publikt/joomla/libraries
/home/tomas/Publikt/joomla/logs
/home/tomas/Publikt/joomla/media
/home/tomas/Publikt/joomla/modules
/home/tomas/Publikt/joomla/plugins
/home/tomas/Publikt/joomla/templates
/home/tomas/Publikt/joomla/tmp
/home/tomas/Publikt/joomla/xmlrpc
/home/tomas/Publikt/joomla/CHANGELOG.php
/home/tomas/Publikt/joomla/configuration.php-dist
/home/tomas/Publikt/joomla/COPYRIGHT.php
/home/tomas/Publikt/joomla/CREDITS.php
/home/tomas/Publikt/joomla/htaccess.txt
/home/tomas/Publikt/joomla/index.php
/home/tomas/Publikt/joomla/index2.php
/home/tomas/Publikt/joomla/INSTALL.php
/home/tomas/Publikt/joomla/LICENSE.php
/home/tomas/Publikt/joomla/LICENSES.php
/home/tomas/Publikt/joomla/robots.txt
Re: Rättighets script
Postat: 25 jun 2008, 14:12
av Konservburk
Tompalaz skrev:Dessa kataloger som listas måste vara skrivbara, annars kan man i stort sett inte göra något.
Jo, men är det verkligen just
others som måste kunna skriva där? Räcker det inte med att apache-servern har skrivrättigheter?
Tompalaz skrev:Testa att hämta joomla själv och kolla
Jag provade att ladda ner
Joomla_1.5.3-Stable-Full_Package.tar.bz2, men hittade ingenting om vilka rättigheter olika kataloger måste ha. Såg däremot att det fanns en underkatalog
libraries/joomla/. Du skulle t.ex. kunna låta skriptet leta efter den för att hitta alla joomla-root-kataloger:
Kod: Markera allt
#!/bin/bash
find ~ -type d -path '*/libraries/joomla' -print0 |
while read -d '' i
do cd "$i"/../..
chmod 757 ./administrator/backups
chmod 757 ./administrator/components
#osv
done
Men om du ändå vet var din joomla-katalog är så kan du lika gärna göra som jag föreslog tidigare.