Category Archives: Projects

A general project category. Bigger projects can have their own category

Now owner of a Synology DS413j NAS

I have just received my NAS, which is a Synology DS413j, together with 3 HDS724040ALE640 4 TB hard drives. After unpacking everything, the first task was to mount the disk. This was very easy, without any guide. Next I connected the Synology to my router and powered it up. Synology suggested too locate it with find.synology.com. Though it was not able to find it on my network, so I used nmap, and few seconds later I new the IP address. 2 seconds later I was connected, and running the introductive guide. I choose to select a Synology Hybrid RAID, with 1 disk protection, giving me in all 7,15 TB. And the possibility to extend it later by a disk more if needed. While it creating the filesystem, and doing the parity consistency check, I started with this post, for planning the setup. I am thinking I will do the following task.

  • Run badblocks on the disks. Even though the disks are new, I prefer to test them before trusting them with data. As DSM is using a Linux, it should be possible to run badblocks on all the disks. So figure out how to do this.
  • Create personal user accounts. Right know I only need two.
  • Create minimum two shares, named Backup and Archive. Share them by CIFS (Windows) internal only.
  • Setup time machine from my mac. I will use the NAS for backup from my mac, so it means to set it up as a time machine. Destination would be be the backup share.
  • Setup SSH server to only allow keys, and connect to my router so I can access SSH from work. I will use sshfs off cause for accessing data.

Please do comments, if you have any Ideas for what I need to do with the NAS for getting the most out of it.

Lever endnu

Det er ved at være længe siden jeg sidst har opdateret hjemmesiden, bl.a. på grund af nogle server problemer, samt travlhed op til specialet.

Ny server
I foråret blev den daværende server som min hjemmeside lå på hacket. Ved den efterfølgende reetablering blev der ikke givet adgang til noget mysql interface. Samtidig var der også sket et fuckup i rettighederne til mine filer, da den tidligere server var en gentoo linux, og den nye en ubuntu server. Apache brugeren køre under to forskellige uid. Alt i alt ikke optimalt.

I forbindelse med mit arbejde hos epidemiologi på SDU fik jeg om sommeren mulighed for at låne en gammel 1u server og en diskhylde. Serveren er en Compaq DL 360, der har en 900 Mhz pentium 3, så ikke specielt kraftig. Samtidig fik jeg lov til at låne lidt plads i et rack hos FKO. Alt sammen med henblik mit speciale. Jeg fik flyttet min hjemmeside over på min egen server, og det er nu rart at have fuld kontrol over alt 🙂

Speciale
Så kan jeg jo ikke løbe fra at det er ved at være speciale tid. Jeg er startet på et 15 ECTS FORK projekt der gerne skal ende med et speciale. Mit projekt hedder Ethernet POWERLINK – Made Easy, og som navnet antyder skal der arbejdes med Ethernet kommunikation. Ethernet POWERLINK er navnet på en realtid kommunikation form, der giver en deterministisk kommunikation i form af svartid. Som de fleste ved, er det Ethernet der indgår i et normalt netværk, se evt. på Enternettet ikke deterministisk med hensyn til svar tider. Dette vil ikke fungere i kommunikationen mellem motorkontrollen og forhindrings sensor i en robot. Det er for sent at stoppe motoren, når robotten har kørt forhindringen ned. Et spændende projekt der kan læses mere om på dets hjemmeside. http://www.epl-me.org

Kodestandard for PHP

I forbindelse med at jeg skal lave en stak projekter i PHP, har jeg ledt efter en kodestandard sammen med et værktøj til at håndtere denne, da det gør projekterne lettere at vedligeholde senere.

Som beskrevet hos TIOBE kan det at lave og benytte en kodestandard ses som følgende 7 trins proces.

  1. Define Coding Standard
  2. Select Code Checking Tool
  3. Customize Code Checking Tool
  4. Integrate in SW Environment
  5. Set up Quality Database
  6. Define Quality Targets
  7. Enforce Compliancy

Da projekterne ikke er specielt store, og der ikke er mange udviklere på, har jeg valgt at springe quality databasen over, og kun benytte punkt 1, 2, 3, 4 og 7.

Som udgangspunkt kan man jo lave sin egen standard. Dette tager dog lang tid, og kræver stadig vedligeholdelse, samt udvikling af værktøj til at kontrollere overholdelse af denne. Derfor kan der være mange fordele i at adoptere en anerkendt standard.

Her er valgt at adoptere PHP PEAR standarden, da dette er en anerkendt standard i PHP miljøet, og der er meget PHP kode der bygger på denne. Samtidig er den meget gennemarbejdet.

Den væsentlige fordel ved at benytte PEAR standarden, er at PHP teamet også har udviklet et værktøj til at kontrollere kodestandarden i form af PHP_CodeSniffer, så punkt 1,2 og 3 kan klares af en gang.

Installering af værktøj

Først skal php pear installeres.
sudo apt-get install php-pear

Opdater pear databasen.
sudo pear channel_update pear.php.net

Installer kodestandarden.
sudo pear install PHP_CodeSniffer

Med dette kommer kommandoen phpcs som kan benyttes til at kontrollere php kode for om den overholder standarden.

Hvad punkt 4 angår, så benytter jeg bluefish som web editor, da denne er ekstrem hurtig (letvægts editor) på min gamle 1 GHz pentium 3, samtidig har den nogen pænt advanceret muligheder der gør den genial til web udvikling. Her integrere jeg phpcs, ved at gå ind i Rediger -> Præferencer og vælger uddata parsere, og tilføjer phpcs på samme måde som de andre muligheder.

Med dette haves en kodestandard for PHP, samt værktøj der integrere med ens IDE i form af phpcs integreret med bluefish. Alt i alt en stor hjælp når man ønsker at skrive PHP kode til lidt større projekter end single hygge projekter.

Claus, nu med egen blog

Jeg har længe gået og arbejdet med idéen omkring min egen webside. Som det kan ses hos dk-hostmaster har jeg haft domænet i lang tid, dog uden at benytte det. Samtidig har jeg gået og arbejdet med mange projekter, så hvorfor ikke kombinere dem.

Idéen med denne side er et sted hvor jeg beskriver mine projekter, har et CV, en ønskeliste, samt et billedgalleri. Dette mener jeg er en god kombination til et personligt site. Den er hostet lokalt hos kollegienet, og benytter en kombination af wordpress.org, Gallery2 og wpg2 (plugin) til at binde det sammen.

Der er stadig meget arbejde inden det er færdig, og før jeg lærer de forskellige muligheder af wordpress at kende. Men nu er projektet søsat, så håber det bliver godt.