Visar inlägg med etikett labmiljö. Visa alla inlägg
Visar inlägg med etikett labmiljö. Visa alla inlägg

fredag 18 februari 2011

Underlätta felsökning med testprogram

Har du ett problem du vill ha hjälp med? Gör det enkelt för dina kollegor med ett testprogram som påvisar felet.

Ibland stöter man på problem, eller beteenden, som man inte förstår. Oavsett om det är HTML, CSS, PHP eller SQL, så underlättar det att skriva ett enkelt testprogram, ett testprogram som påvisar beteendet.

Genom att skriva detta lilla testprogram, uppnår du två saker:

1) Lär dig själv.  Du lär dig om beteendet genom att skriva kodexemplet, ofta kan svaren, på dina funderingar, uppenbara sig genom att du skriver testprogrammet. Det är, helt enkelt, ett bra sätt att lära sig.

2) Få hjälp med svaren. Du underlättar för kollegor, med-studenter och lärare, när de försöker hjälpa dig att finna svaren. Genom att presentera ett litet exempel så gör du det enkelt för en annan person att kommentera beteendet, eller föreslå varianter på lösningar. 

Kolla några befintliga testprogram
dbwebb.se/examples hittar du ett par exempel på just såna här små testprogram. Det bästa är om du kompletterar ditt testprogram med att visa dess källkod. Det kan du göra antingen via filändelsen .phps (visa php källkod om konfigurerat i webbservern) eller genom att använda skriptet source.php (senaste versionen finns via dbwebb.se/source eller https://github.com/mosbth/Utility/blob/master/source.php). 

Mallen till testprogrammen
Tjuvkika gärna på exempelprogrammen på dbwebb.se/examples. Vill du göra ett eget så kan du använda mallen, http://dbwebb.se/examples/mall.php, och ladda sedan upp det på driftsservern.

Lycka till!

onsdag 9 februari 2011

Unix, rättigheter på kataloger och filer

Här följer en text som förklarar filrättigheter i Unix (eller Linux). Om du undrar vad skillnaden är mellan 644 och 755 så har du hamnat rätt.

Filrättigheter
När det gäller filrättigheter talar vi ofta i termer av 755 eller 644. En fil, eller katalog, har alltid en ägare och en grupp. Den första siffran anger vad objektets ägare får göra, den andra siffran anger vad medlemmar av gruppen får göra och den tredje siffran anger vad alla andra får göra med objektet.

Siffrorna som används för att representera filrättigheterna, 755, 644 osv, är addition av r (4), w (2) och x (1). r står för read (läsbar), w för write (skrivbar) och x för executable (körbar).

755 (rwxr-xr-x) betyder att användaren får läsa, skriva och exekvera medans gruppen och alla andra får läsa och exekvera. Detta används ofta på kataloger eller körbara filer. Det är viktigt att en katalog är "körbar", annars kan användaren inte ställa sig i den med "cd".

644 (rw-r--r--) betyder att användaren får läsa och skriva medans gruppen och alla andra endast får läsa. Detta används på vanliga filer, kod eller dokument.

Detta är de två vanligaste sätten att definera rättigheter på en fil eller katalog i Unix. Vill du ha en mer utförlig förklaring, och få koll på specialfall, då rekommenderas att läsa manualsidan för kommandot chmod (change mod), det är kommandot som ändrar fil-rättigheter i ett Unix-system.
http://www.freebsd.org/cgi/man.cgi?chmod
Default-rättigheter

När du skapar en ny fil eller katalog så ges den default-rättigheter. Dina default-rättigheter styrs av din startupfil och kommandot umask. Läs följande artikel om du vill ändra dina default-rättigheter.
http://db-o-webb.blogspot.com/2009/09/sshstudentbthse-editera-initfilen-vid.html
Rättigheter och webbplatser

När vi jobbar med webbplatser så är det viktigt att webbservern kan läsa våra filer och kataloger. Därför använder vi 755 på kataloger och 644 på filer. Det skadar inte om du använder 755 på dina filer, det fungerar, men är inte "semantiskt" korrekt.

Om du har fel rättigheter, kan det betyda att webbservern ej kan läsa dina filer eller kataloger, då kan du få följande fel.
Fel rättigheter på fil (se skillnaden mellan php- och html-filer):
http://dbwebb.se/examples/forbidden.php
http://dbwebb.se/examples/forbidden.html

Fel rättigheter på katalog:
http://dbwebb.se/examples/forbidden

onsdag 8 september 2010

Installera WampServer på Windows

Detta är en kort beskrivning av hur du installerar WampServer för att sätta upp en egen webbserver lokalt på din maskin.

WampServer innehåller bland annat programvarorna webbservern Apache, skriptspråket PHP och databaserna MySQL och SQLite.
 
Gör så här:

1) Ladda ned senaste versionen av WampServer från:
http://www.wampserver.com/en/download.php

2) Installera och starta WampServer. Peka därefter din webbläsare till:
http://127.0.0.1/ eller http://localhost/

Så här kan det se ut.
Bild: WampServer installerad och visar sin välkomstsida.
 3) Titta runt vad som installerades. Du hittar menyn för WampServer nere i högra hörnet. Pröva att både högerklicka och vänsterklicka. Ikonen är antingen som på bilden eller ett W med ring runt, grönt eller rött beroende på WampServer's status. Testa att stoppa och starta WampServer. Studera vilka konfigureringsmöjligheter som finns.

Menyn till WampServer låter dig hantera och konfigurera de programvarorna som installerats.
4) Testa att PHP fungerar. WampServer installerades i katalogen c:\wamp. I katalogen c:\wamp\www ligger webbsidorna. I den katalogen skapar du en tom fil (test.php) och lägger dit följande kod:
<?php echo "I am MegaMic"; ?>
Öppna filen i din webbläsare via följande länk:
http://127.0.0.1/test.php eller http://localhost/test.php

Så här ser det ut när du lyckas.

PHP fungerar med filen test.php.
5) Bra. Nu är du klar och har en egen utvecklingsmiljö på din lokala maskin. Då är det bara att börja koda.

Lycka till!

Problem och felsökning
Klicka på "Put Online" i menyn (nedre högra hörnet) för WAMPServer.
Stäng av Skype som "stjäl" port 80. 
Kör du redan en webbserver på maskinen (tex IIS)?
Har du installerat MySQL sedan tidigare?

Vad säger loggfilerna för Apache, MySQL och PHP?

måndag 6 september 2010

Byte av ditt studentlösenord

Nytt för ht2010 är att det går att byta sitt studentlösenord via studentportalen.

Ändringen av lösenordet slår dock inte igenom på de MySQL-relaterade tjänsterna såsom blu-ray eller PHPMyAdmin. Där gäller fortfarande det gamla lösenordet.

IT-avdelningen jobbar på att ändra detta men tills vidare gäller detta. Får du problem så testa både ditt nya och ditt ursprungliga lösenord. Annars maila IT-helpdesken.

fredag 3 september 2010

Kom åt MySQL-servern med MySQL Workbench

Skolans MySQL-server går inte att komma åt direkt utanför skolans nät eftersom port 3306 är spärrad i brandväggarna. Men det finns ju sätt att gå förbi detta. SSH port forwarding har tidigare beskrivits i följande inlägg:
http://db-o-webb.blogspot.com/2009/09/ssh-port-forwarding-med-putty.html
http://db-o-webb.blogspot.com/2009/09/ssh-port-forwarding-med-xterm.html

Men, utvecklingen går framåt och den nya versionen av MySQL Workbench har ssh port forwarding som en inbyggd möjlighet att koppla upp sig mot en databasserver.

Så här gör du.

1) Ladda ned senaste versionen av programvaran och installera den.
http://wb.mysql.com/

2) Skapa en "New Connection" och välj anslutningssätt "Standard TCP/IP over SSH".
Gör inställningar enligt följande bild, byt ut "mos" mot ditt studentinloggningsid.
Inställningar för att koppla sig till blu-ray.student via ssh till ssh.student.
Klart! Klicka på "Test Connection" för att verifiera att du angivit rätt info.

3) Logga in och använd din databas.
KLicka på din nya Connection. Kan inte bli enklare.

Min egen mos-databas, uppkopplad hemifrån, visa ssh in i skolans nät.
Dagens fråga: hur många tabeller har mos i sin databas?
Många blir det...

tisdag 10 augusti 2010

Ändra teckenkodning i jEdit

Detta är för dig som vill byta teckenkodning för texteditorn jEdit.

Du kan ändra teckenkodning dels i nuvarande fil och dels som globala default inställning för alla nya filer.

Så här ser det ut när du byter till UTF-8 för nuvarande fil (Utilities - Buffer Options).
Ändra till UTF-8 för nuvarande öppna fil.
Så här ser det ut när du ändrar till UTF-8 i de globala default inställningarna (Utilities - Global Options).
Ändra till UTF-8 för alla nya filer.
Dubbelkolla vilken teckenkodning som gäller för nuvarande fil, antingen genom att öppna (Utilities - Buffer Options) eller genom att titta längst ned i statusraden på sidan.

Ett bra tips är att starta om applikationen när du gjort ändringarna. De filer som redan är öppna har kvar sina "buffer options".

Visar UTF-8 som nuvarande teckenkodning.

torsdag 15 april 2010

Teckensätt, varför blir mina åäö konstiga (character set, charset, collation)

Detta är en minnesanteckning till mig själv att bättre förklara hur man som utvecklare kan och bör hantera teckenkodning i databaser, webb och php.

Följande har jag hittills.

iso8859-1 och utf8, så här ser filerna ut i webbläsaren vid mixtrade teckensätt.
http://www.student.bth.se/~mos/charset/

Det är utf8 i databasen men inte i min webbapplikation?
Sätt teckensätt på klient/server-kopplingen med php-mysqli-funtionen:
http://se.php.net/manual/en/mysqli.set-charset.php

Läs om bakgrunden i MySQL's manual (flera sidor, pekar till ett bra ställe att börja läsa):
http://dev.mysql.com/doc/refman/5.1/en/charset.html

Mer?
Var konsekvent, använd samma teckensätt i alla delar av applikationen, då funkar det.

måndag 15 mars 2010

Byta ut MySQL mot alternativ opensource databas?

Dessa kurser (db-o-webb) använder MySQL som databas. Det är den mest populära opensource-databasen. Hittills. Som ett orosmoln vid horisonten så finns det en växande oro om vad som kommer hända när Oracle köper Sun som nu äger MySQL.

För min del som kursansvarig så vill jag använda den databas som är den ledande opensource-databasen. Så, jag får helt enkelt hålla ögonen öppna på vad som händer framöver.

Alternativa opensource databaser äro flera, tex:

http://www.postgresql.org/
http://www.ingres.com/

Kanske dyker det upp någon ny databas på arenan? Inte helt omöjligt. Kanske är detta tillfället för ett mindre paradigm-skifte inom databas-världen? Relationsdatabasen har varit ledande och kommer vara det under lång tid framöver. Men, andra databastekniker kan komma att bli ledande framöver (kanske NOSQL?). Se databasen Cassandra (apache-projekt) som ett exempel på en icke-relationsdatabas som används av flera webbapplikationer.

http://en.wikipedia.org/wiki/Cassandra_%28database%29
http://cassandra.apache.org/
http://en.wikipedia.org/wiki/NoSQL

Eller kommer vi få se ett ökat användande av en filbaserad databas som SQLite?

http://www.sqlite.org/

Vi (*jag*) får helt enkelt hålla ögonen öppna. Det enda säkra är att jag måste hålla kurserna uppdaterade...

onsdag 3 mars 2010

Problem att skapa MySQL tabeller med ENGINE=InnoDB

"PHP och MySQL.
Jag försöker skapa två tabeller med ett FOREIGN KEY constraint och jag använder ENGINE=InnoDB. Jag använder multi_query(). Jag får följande felmeddelande:

Error code: 1005 (Can't create table 'test.test_professor' (errno: 150))"
Problemet uppkommer ofta i kursen dbwebb:kmom05. Vi har haft detta problem ett tag tillbaka. Det är rimligt att det är relaterat till följande MySQL-bugg:

http://bugs.mysql.com/bug.php?id=40877 (precis som någon antyder i flashback-forumet)

Ett möjligt problem i sammanhanget är att installationsprogrammet på Windows Essentials installerar InnoDB som default storage engine. Normalt är det MyISAM som är default. Av denna anledningen så är det klart rekommenderat att explicit ange vilken storage engine som avses vid CREATE TABLE.
Dokumenterar att InnoDB är default i MySQL Essentials på Windows.
http://dev.mysql.com/doc/refman/5.1/en/innodb.html
"The Windows Essentials installer makes InnoDB the MySQL default storage engine on Windows, if the server being installed supports InnoDB."
Visa (SHOW ENGINE) vilken storage engine som för tillfället är default i din databas.
http://dev.mysql.com/doc/refman/5.0/en/show-engines.html

Jag gjorde ett testfall och testade på två olika maskiner.
Koden till testfallet på GitHub.
http://github.com/mosbth/Utility/blob/master/multiquery_foreignkey_fails_errorcode_150.php

Fails on MySQL 5.1.38 using Engine=InnoDB and multi_query().
http://dev.phpersia.org/utility/multiquery_foreignkey_fails_errorcode_150.php

Works on MySQL 5.0.51.
http://www.student.bth.se/~mos/utility/multiquery_foreignkey_fails_errorcode_150.php

För att undvika problemet så byt ut ENGINE=InnoDB till ENGINE=MyISAM.
Eller ange ENGINE=MyISAM explicit (om InnoDB är default).
Eller exekvera SQL-kommandona ett och ett med query() (istället för multi_query()).
Eller välj en MySQL version där problemet är löst (se buggrapporten för detaljer).

Enligt buggrapporten skall problemet vara löst from release 5.1.42. Se changeloggen.
"Multiple-statement execution could fail. (Bug#40877)"
http://dev.mysql.com/doc/refman/5.1/en/news-5-1-42.html
2010-04-28: Jag kan med testprogrammet återupprepa samma problem med Engine=InnoDB och multi_query() på  5.1.45 (Windows 7). Problemet kvarstår sålunda. Jag gjorde en ny sökning i MySQL bugdatabas och möjligen är följande buggrapport (en spinoff på bug#40877) en lösning på problemet.
http://bugs.mysql.com/bug.php?id=48024

tisdag 9 februari 2010

Warning: Cannot modify header information - headers already sent by (output started at...)

Artikeln är flyttad till det nya dbwebb-forumet: http://dbwebb.se/forum/viewtopic.php?f=12&t=3557

---

Ett vanligt felmeddelande, och ibland svårt att finna orsaken till, är följande:
Warning: Cannot modify header information - headers already sent by (output started at /home/saxon/teachers/tek/mos/www/test/1.php:2) in /home/saxon/teachers/tek/mos/www/test/2.php on line 4
Eller som i bilden nedan.


Felmeddelandet innebär att output (till webbläsaren)  har startat och därmed har HTTP headern skickats. Troligen försöker du göra någon funktion som påverkar header-informationen, tex genom att anropa funktionen header() eller påverka sessionen. Därav felmeddelandet, på ren svenska:
"Jag har redan skickat header-informationen, du kan inte påverka den."
Felmeddelandet kan innebära att man skrivit ut data till webbläsaren, innan man anropat funktionen header(). Den direkta orsaken är ofta tomma rader/mellanslag/tab före starttag (<?php) eller efter slut-tag (?>). 

Problemet kan också inträffa när man börjar använda sessioner. Även där är ofta den direkta orsaken att man skrivit ut något (echo) eller har tomma tecken/rader (mellanslag, tab, ny rad) innan man startat sessionen (session_start()). En bra förklaring på detta finns på följande inlägg:
http://stackoverflow.com/questions/2173826/warning-can-not-modify-header-information-header-already-sent-by-output-starte
Felet kan också bero på att man inkluderar filer som är sparade som UTF BOM. Spara dem som UTF8 no-BOM. UTF8 BOM innehåller ett par tecken i början av filen. Det gör inte UTF8 no-BOM
http://en.wikipedia.org/wiki/Byte_order_mark
Se till att ha filen source.php i katalogen så brukar det vara enklare att felsöka och leta. Senaste versionen av source.php finns på github:
http://github.com/mosbth/Utility eller http://dbwebb.se/source
Ett vanligt sätt att undvika dessa problem är att utelämna php-sluttag. Vi rekommenderar att du utelämnar sluttaggen när du kan. Läs om detta på Zends guidelines för kodning (Zend, ett PHP-ramverk).
http://framework.zend.com/manual/en/coding-standard.php-file-formatting.html
Ett annat sätt att påverka dessa felmeddelanden är att använda output buffering. Då lagras all output och skickas i en klump när den är klar. Läs om output buffering i följande artikel.
http://db-o-webb.blogspot.com/2011/02/satt-pa-output-buffering-i-php.html

tisdag 2 februari 2010

Versionshantering med git, github och subversion (svn)

På BTH labbserver, ssh.student.bth.se, finns en subversion klient (svn) och en git-klient (git) installerad. Dessa verktyg, och liknande, används ofta för versionshantering av källkod.

Om du redan vet vad detta handlar om så vet du nu också att du kan checka ut din källkod till ssh.student.bth.se. Ett mycket smidigt och produktivt arbetssätt.

Om du är nybörjare på versionshantering, och vill lära dig, läs då följande på webben.

Git och GitHub
http://git-scm.com/
http://github.com/

Logga in på ssh.student.bth.se och skriv:
seekers~: git


Subversion


Logga in på ssh.student.bth.se och skriv:
seekers~: svn help

MOS on GitHub

I fortsättningskursen (dbwebb2) bekantar  vi oss med Git och GitHub. Är du nyfiken så kan du kika på mos' repository på GitHub.

http://github.com/mosbth

fredag 22 januari 2010

PHP och MySQL, skydda din config.php

config.php
Det är vanligt att lägga information om de specifika databaskopplingarna i en egen fil, tex filen config.php. Följande är ett exempel på en sådan fil.

// -------------------------------------------------
//
// config.php

//
// Setting for the database connection
//
define('DB_HOST',     'localhost'); // database host
define('DB_USER',     'Mikael');    // username
define('DB_PASSWORD', 'hemligt');   // password
define('DB_DATABASE', 'Skolan1');   // Database name


Här kan du studera ett exempel där config.php används.
http://www.student.bth.se/~mos/php-to-db/mysql1.php

Innehållet i exemplets config.php ser du här.
http://www.student.bth.se/~mos/php-to-db/source.php?dir=&file=config.php

Följande sätt bör du använda för att skydda ditt lösenord.

1) Skydda din config.php med filrättigheter
Problemet på en miljö som skolans, är att ditt lösenord måste skrivas in i klartext i filen. Därmed ligger det oskyddat för alla som har ett konto på ssh.student.bth.se. Det är olyckligt och onödigt. IT-gänget har löst detta på följande sätt.
mos@sweet: sudo chgrp_www-data
Scriptet ändrar rättigheter (chmod och chgrp) på filen config.php i det biblioteket där du står. Se bilden nedan för ett exempel.

Bild: Exempel som visar hur filen config.php skyddas.

På detta sättet hindras alla som har ett studentkonto att komma åt filen (och ditt lösenord). Använd detta och kontrollera att rättigheterna ändras på din fil. Nu är du skyddad.

2) Skydda din config.php när du visar källkoden
I kursmomenten använder vi ofta ett PHP-skript, source.php (eller liknande), för att visa källkoden. Senaste versionen av denna fil hittar du på GitHub, kopiera gärna ned den och använd den i dina projekt.

Studera och kopiera filen från GitHub.
http://github.com/mosbth/Utility/blob/master/source.php#L1

Testa source.php live.
http://dbwebb.se/utility/source.php?dir=&file=config.php
I source.php finns det med ett par rader kod som skyddar utskriften av vissa parametrar från filen config.php, bland annat lösenordet till databasen. Normalt skall detta visas på följande sätt:

// Database
define('/* DB_USER,  is removed and hidden for security reasons */ );
define('/* DB_PASSWORD,  is removed and hidden for security reasons */ );
define('DB_DATABASE',   'xxxxxx');                 // <-- mysql db name
define('DB_HOST',       'blu-ray.student.bth.se');  // <-- mysql server host


Kontrollera alltid att din source.php skyddar ditt lösenord.

tisdag 27 oktober 2009

BTH's labmiljö för HTML, PHP och SQL

Det finns en webbaserad labbmiljö där alla studenter kan skapa egna webbsidor med HTML, PHP och SQL. Detta inlägg beskriver översiktligt hur du som student kommer igång med denna labbmiljö. Inlägget avslutas med lite mer avancerade tips för dig som kommit igång och vet hur det här funkar.

Webbserver
http://www.student.bth.se/~mos/index.html
äro webbadressen till din egen sida. Byt ut ~mos mot ditt eget användar-id och testa länken i en webbläsare. Du bör få upp en sida som säger något i stil med "Ändra mig!".
Här är länken till min egen sida:
http://www.student.bth.se/~mos/index.html

Filserver
ssh.student.bth.se
sftp.student.bth.se
Via dessa maskiner (linux) kommer du åt ditt studentkonto och alla dina filer. Logga in på någon av maskinerna enligt följande:
  • Teminalprogram PuTTy/xterm (via ssh)
  • Editor som stödjer ssh/sftp
  • sftp-klient för att föra över filer
Om du inte vet vad ssh är så läser du enklast följande tutorial.
http://bit.ly/bthlabmiljo_sshochsftp
    Alla filer som ligger under din katalog www är tillgängliga via webbservern., se dock till att filer och bibliotek är läsbara för alla (chmod 644 för filer och chmod 755 för bibliotek).
    Pröva att uppdatera innehållet i filen www/index.html och gör reload i din webbläsare. Funkar det?

    Databasserver MySQL
    blu-ray.student.bth.se
    Denna maskin huserar en MySQL-server. Din kursansvarige ber IT-avdelningen om ett konto på denna maskinen. Du loggar in med ditt studentkonto och du har en databas som heter samma sak som ditt studentkonto.
    Om du är osäker på databaser och vill veta mer om hur du kommer igång med MySQL och dess olika klienter (och var de finns installerade) så läser du följande guide.
    bit.ly/bthlabmiljo_mysql

    HTML, PHP och MySQL
    Följande inlägg visar exempel på hur du använder HTML, PHP och SQL  i labbmiljön.
    http://db-o-webb.blogspot.com/2009/10/att-koppla-php-mot-databas.html

    När du kopplar dig mellan PHP och MySQL använder du en config.php-fil. Där anger du lösenord och kopplingsdetaljer. Läs hur du skyddar ditt lösenord.
    http://db-o-webb.blogspot.com/2010/01/php-och-mysql-skydda-din-configphp.html

    Installera en egen utvecklingsmiljö på din hemmaskin.
    WampServer på Windows (paket med Apache, PHP, MySQL och SQLite).
    http://db-o-webb.blogspot.com/2010/09/installera-wampserver-pa-windows.html

    MAMP på Mac (paket med Apache, PHP, MySQL och SQLite).
    http://db-o-webb.blogspot.com/2010/09/installera-mamp-pa-os-x.html

    Apache, PHP och MySQL på Windows Vista och Windows 7.
    http://db-o-webb.blogspot.com/2009/09/installera-apache-php-och-mysql-pa.html

    Avancerat: Bra att ha tips
    Editera inloggningsfilerna på ssh.student.bth.se för att ta bort autologout och strul med umask så du slipper göra chmod hela tiden.
    http://db-o-webb.blogspot.com/2009/09/sshstudentbthse-editera-initfilen-vid.html

    Sitt hemma med MySQL Workbench och jobba mot MySQL-servern.
    http://db-o-webb.blogspot.com/2010/09/kom-at-mysql-servern-med-mysql.html

    SSH och port forwarding med xterm (Linux/Unix/Mac) och putty (Windows)
    http://db-o-webb.blogspot.com/2009/09/ssh-port-forwarding-med-xterm.html
    http://db-o-webb.blogspot.com/2009/09/ssh-port-forwarding-med-putty.html

    Kommandot screen finns installerat på ssh.student.bth.se.
    http://db-o-webb.blogspot.com/2009/10/kommandot-screen-finns-pa.html

    Versionshantering med git, github och subversion (svn)
    http://db-o-webb.blogspot.com/2010/02/versionshantering-med-git-github-och.html

    Visste du att...
    Du som student kan få tillgång till Microsofts programvaror?
    http://db-o-webb.blogspot.com/2009/09/msdnaa-studenter-far-fria-microsoft.html

    IT-supportens helpdesk
    når du enklast via mail, kolla deras hemsida. Fråga dem om du har strul med ditt konto.
    http://www.bth.se/it/

    Lycka till 
    och fråga på kursens forum eller irc om du stöter på problem.

    torsdag 3 september 2009

    ssh.student.bth.se, editera initfilen vid inloggning

    Är du en av de som tröttnat på att ändra rättigheterna på filerna i din webbkatalog från 600 till 644 och katalogerna från 700 till 755?

    Har du även tröttnat på att bli utkastad via autologout titt som tätt?

    Då har du kommit rätt. Genom att ta kontroll över ditt shells init-fil så kan du själv välja vilka inställningar du vill ha.

    Min egen init-fil innehåller bla följande två rader (~/.tcshrc):

    unset autologout
    umask 022

    Raden med umask sätter defaulträttigheter på filer och kataloger som du skapar. Raden med autologout gör så att du inte blir utloggad med automatik.

    Ändra din egen init-fil genom att göra på något av följande sätt.

    0) Det snabba sättet
    "Jag orkar inte läsa all text, jag vill bara att problemet försvinner."

    Logga in och kopiera min init-fil med följande kommandon.
    cp ~mos/.tcshrc ~
    Du kan även  lägga till raderna om umask och autologout med följande kommandosekvens.
    echo "umask 022" >> ~/.tcshrc
    echo "unset autologout" >> ~/.tcshrc
    source ~/.tcshrc
    Skapa en fil och se vilka rättigheter den fick, det bör vara 644.

    0.0) Vadå logga in?
    "Jag har inte lärt mig använda xterm eller putty, ännu..."

    Använd FileZilla eller jEdit (eller motsvarande), logga in på ssh.student.bth.se (port 22).

    Leta reda på filen .tcshrc i din hemmakatalog.

    Högerklicka på filen för att editera den.

    Varning: Använd inte Notepad eller DreamWeaver för att editera filen. De lägger till radbrytningar  (^M) alá Windows och det gillas inte av Linux. Om det händer så får du kontakta IThelpdesk så hjälper de dig att återställa filen.

    Lägg nu till följande två rader i slutet av din init-fil.

    unset autologout
    umask 022

    Logga ut och logga in igen (starta om applikationen) och skapa en ny fil. Om den får rättigheterna 644 så gjorde du rätt.


    Vill du ha mer koll på vad ovanstående innebär så läser du vidare.

    1) Låt oss kolla default-inställningarna

    Logga in och testa följande kommandon.
    mos@seekers: echo $shell
    mos@seekers: echo $autologout
    mos@seekers: umask
    Så här ser det ut för mig.


    Ok, då vet vi att vi använder ett shell som heter tcsh. Med man-kommandot får vi veta allt vi vill om det shellet. Bla om dess autologout-mekanism.
    mos@seekers: man tcsh

    2) Ta bort autologout

    Utför följande kommando.
    mos@seekers: unset autologout
    Kontrollera värdet på variablen som du gjorde i steget ovan. Så här ser det ut hos mig.


    Perfekt, ingen mer autologout där.

    3) Ändra defaulträttigheter med umask

    Utför följande kommando.
    mos@seekers: umask 022
    Kontrollera inställningen för umask så som du gjorde steget ovan. Testa dessutom att skapa en ny fil och ett nytt bibliotek så att du ser hur det fungerar. Så här ser det ut hos mig.


    Såja, nu blir det behändigare när jag jobbar med mina webb-filer. Problemet är bara att nu kan alla på datorn läsa mina filer. Vissa filer vill jag nog ändå skydda. Det fanns ju säkert någon anledning varför default inställningen är som den är.

    4) Editera initfilen .tcshrc

    För egen del så väljer jag att lägga in dessa ändringar i shellets init-fil så att de gäller varje gång jag loggar in. Följande två kommandon skall alltså in. Välj din favoriteditor och editera filen ~/.tcshrc.
    mos@seekers: unset autologout
    mos@seekers: umask 022
    Jag väljer editorn vi (man vi) och så här ser det nu ut hos mig.


    Sådär, nu blir det enklare att jobba i framtiden. Logga ut och logga in igen för att kolla att allt funkade som det skulle.

    Det finns bara ett ord för detta. Makt över ssh.student.bth.se. Nåja, tre ord då. Lycka till!

    Men, se till att du vet vad du gör och vilka konsekvenser det får. Läs manualsidorna för kommandona innan du genomför dem. Alla ändringar är alltid på egen risk och ansvar.