]> pere.pagekite.me Git - homepage.git/blob - blog/archive/2014/04/index.html
Generated.
[homepage.git] / blog / archive / 2014 / 04 / index.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
4 <head>
5 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
6 <title>Petter Reinholdtsen: entries from April 2014</title>
7 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/style.css" />
8 <link rel="stylesheet" type="text/css" media="screen" href="http://people.skolelinux.org/pere/blog/vim.css" />
9 <link rel="alternate" title="RSS Feed" href="04.rss" type="application/rss+xml" />
10 </head>
11 <body>
12 <!-- XML FEED -->
13 <div class="title">
14 <h1>
15 <a href="http://people.skolelinux.org/pere/blog/">Petter Reinholdtsen</a>
16
17 </h1>
18
19 </div>
20
21
22 <h3>Entries from April 2014.</h3>
23
24 <div class="entry">
25 <div class="title">
26 <a href="http://people.skolelinux.org/pere/blog/Spr_kkoder_for_POSIX_locale_i_Norge.html">Språkkoder for POSIX locale i Norge</a>
27 </div>
28 <div class="date">
29 11th April 2014
30 </div>
31 <div class="body">
32 <p>For 12 år siden, skrev jeg et lite notat om
33 <a href="http://i18n.skolelinux.no/localekoder.txt">bruk av språkkoder
34 i Norge</a>. Jeg ble nettopp minnet på dette da jeg fikk spørsmål om
35 notatet fortsatt var aktuelt, og tenkte det var greit å repetere hva
36 som fortsatt gjelder. Det jeg skrev da er fortsatt like aktuelt.</p>
37
38 <p>Når en velger språk i programmer på unix, så velger en blant mange
39 språkkoder. For språk i Norge anbefales følgende språkkoder (anbefalt
40 locale i parantes):</p>
41
42 <p><dl>
43 <dt>nb (nb_NO)</dt><dd>Bokmål i Norge</dd>
44 <dt>nn (nn_NO)</dt><dd>Nynorsk i Norge</dd>
45 <dt>se (se_NO)</dt><dd>Nordsamisk i Norge</dd>
46 </dl></p>
47
48 <p>Alle programmer som bruker andre koder bør endres.</p>
49
50 <p>Språkkoden bør brukes når .po-filer navngis og installeres. Dette
51 er ikke det samme som locale-koden. For Norsk Bokmål, så bør filene
52 være navngitt nb.po, mens locale (LANG) bør være nb_NO.</p>
53
54 <p>Hvis vi ikke får standardisert de kodene i alle programmene med
55 norske oversettelser, så er det umulig å gi LANG-variablen ett innhold
56 som fungerer for alle programmer.</p>
57
58 <p>Språkkodene er de offisielle kodene fra ISO 639, og bruken av dem i
59 forbindelse med POSIX localer er standardisert i RFC 3066 og ISO
60 15897. Denne anbefalingen er i tråd med de angitte standardene.</p>
61
62 <p>Følgende koder er eller har vært i bruk som locale-verdier for
63 "norske" språk. Disse bør unngås, og erstattes når de oppdages:</p>
64
65 <p><table>
66 <tr><td>norwegian</td><td>-> nb_NO</td></tr>
67 <tr><td>bokmål </td><td>-> nb_NO</td></tr>
68 <tr><td>bokmal </td><td>-> nb_NO</td></tr>
69 <tr><td>nynorsk </td><td>-> nn_NO</td></tr>
70 <tr><td>no </td><td>-> nb_NO</td></tr>
71 <tr><td>no_NO </td><td>-> nb_NO</td></tr>
72 <tr><td>no_NY </td><td>-> nn_NO</td></tr>
73 <tr><td>sme_NO </td><td>-> se_NO</td></tr>
74 </table></p>
75
76 <p>Merk at når det gjelder de samiske språkene, at se_NO i praksis
77 henviser til nordsamisk i Norge, mens f.eks. smj_NO henviser til
78 lulesamisk. Dette notatet er dog ikke ment å gi råd rundt samiske
79 språkkoder, der gjør
80 <a href="http://www.divvun.no/">Divvun-prosjektet</a> en bedre
81 jobb.</p>
82
83 <p><strong>Referanser:</strong></p>
84
85 <ul>
86
87 <li><a href="http://www.rfc-base.org/rfc-3066.html">RFC 3066 - Tags
88 for the Identification of Languages</a> (Erstatter RFC 1766)</li>
89
90 <li><a href="http://www.loc.gov/standards/iso639-2/langcodes.html">ISO
91 639</a> - Codes for the Representation of Names of Languages</li>
92
93 <li><a href="http://std.dkuug.dk/jtc1/sc22/wg20/docs/n897-14652w25.pdf">ISO
94 DTR 14652</a> - locale-standard Specification method for cultural
95 conventions</li>
96
97 <li><a href="http://std.dkuug.dk/jtc1/sc22/wg20/docs/n610.pdf">ISO
98 15897: Registration procedures for cultural elements (cultural
99 registry)</a>,
100 <a href="http://std.dkuug.dk/jtc1/sc22/wg20/docs/n849-15897wd6.pdf">(nytt
101 draft)</a></li>
102
103 <li><a href="http://std.dkuug.dk/jtc1/sc22/wg20/">ISO/IEC
104 JTC1/SC22/WG20</a> - Gruppen for i18n-standardisering i ISO</li>
105
106 <ul>
107
108 </div>
109 <div class="tags">
110
111
112 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>.
113
114
115 </div>
116 </div>
117 <div class="padding"></div>
118
119 <div class="entry">
120 <div class="title">
121 <a href="http://people.skolelinux.org/pere/blog/S3QL__a_locally_mounted_cloud_file_system___nice_free_software.html">S3QL, a locally mounted cloud file system - nice free software</a>
122 </div>
123 <div class="date">
124 9th April 2014
125 </div>
126 <div class="body">
127 <p>For a while now, I have been looking for a sensible offsite backup
128 solution for use at home. My requirements are simple, it must be
129 cheap and locally encrypted (in other words, I keep the encryption
130 keys, the storage provider do not have access to my private files).
131 One idea me and my friends had many years ago, before the cloud
132 storage providers showed up, was to use Google mail as storage,
133 writing a Linux block device storing blocks as emails in the mail
134 service provided by Google, and thus get heaps of free space. On top
135 of this one can add encryption, RAID and volume management to have
136 lots of (fairly slow, I admit that) cheap and encrypted storage. But
137 I never found time to implement such system. But the last few weeks I
138 have looked at a system called
139 <a href="https://bitbucket.org/nikratio/s3ql/">S3QL</a>, a locally
140 mounted network backed file system with the features I need.</p>
141
142 <p>S3QL is a fuse file system with a local cache and cloud storage,
143 handling several different storage providers, any with Amazon S3,
144 Google Drive or OpenStack API. There are heaps of such storage
145 providers. S3QL can also use a local directory as storage, which
146 combined with sshfs allow for file storage on any ssh server. S3QL
147 include support for encryption, compression, de-duplication, snapshots
148 and immutable file systems, allowing me to mount the remote storage as
149 a local mount point, look at and use the files as if they were local,
150 while the content is stored in the cloud as well. This allow me to
151 have a backup that should survive fire. The file system can not be
152 shared between several machines at the same time, as only one can
153 mount it at the time, but any machine with the encryption key and
154 access to the storage service can mount it if it is unmounted.</p>
155
156 <p>It is simple to use. I'm using it on Debian Wheezy, where the
157 package is included already. So to get started, run <tt>apt-get
158 install s3ql</tt>. Next, pick a storage provider. I ended up picking
159 Greenqloud, after reading their nice recipe on
160 <a href="https://greenqloud.zendesk.com/entries/44611757-How-To-Use-S3QL-to-mount-a-StorageQloud-bucket-on-Debian-Wheezy">how
161 to use S3QL with their Amazon S3 service</a>, because I trust the laws
162 in Iceland more than those in USA when it come to keeping my personal
163 data safe and private, and thus would rather spend money on a company
164 in Iceland. Another nice recipe is available from the article
165 <a href="http://www.admin-magazine.com/HPC/Articles/HPC-Cloud-Storage">S3QL
166 Filesystem for HPC Storage</a> by Jeff Layton in the HPC section of
167 Admin magazine. When the provider is picked, figure out how to get
168 the API key needed to connect to the storage API. With Greencloud,
169 the key did not show up until I had added payment details to my
170 account.</p>
171
172 <p>Armed with the API access details, it is time to create the file
173 system. First, create a new bucket in the cloud. This bucket is the
174 file system storage area. I picked a bucket name reflecting the
175 machine that was going to store data there, but any name will do.
176 I'll refer to it as <tt>bucket-name</tt> below. In addition, one need
177 the API login and password, and a locally created password. Store it
178 all in ~root/.s3ql/authinfo2 like this:
179
180 <p><blockquote><pre>
181 [s3c]
182 storage-url: s3c://s.greenqloud.com:443/bucket-name
183 backend-login: API-login
184 backend-password: API-password
185 fs-passphrase: local-password
186 </pre></blockquote></p>
187
188 <p>I create my local passphrase using <tt>pwget 50</tt> or similar,
189 but any sensible way to create a fairly random password should do it.
190 Armed with these details, it is now time to run mkfs, entering the API
191 details and password to create it:</p>
192
193 <p><blockquote><pre>
194 # mkdir -m 700 /var/lib/s3ql-cache
195 # mkfs.s3ql --cachedir /var/lib/s3ql-cache --authfile /root/.s3ql/authinfo2 \
196 --ssl s3c://s.greenqloud.com:443/bucket-name
197 Enter backend login:
198 Enter backend password:
199 Before using S3QL, make sure to read the user's guide, especially
200 the 'Important Rules to Avoid Loosing Data' section.
201 Enter encryption password:
202 Confirm encryption password:
203 Generating random encryption key...
204 Creating metadata tables...
205 Dumping metadata...
206 ..objects..
207 ..blocks..
208 ..inodes..
209 ..inode_blocks..
210 ..symlink_targets..
211 ..names..
212 ..contents..
213 ..ext_attributes..
214 Compressing and uploading metadata...
215 Wrote 0.00 MB of compressed metadata.
216 # </pre></blockquote></p>
217
218 <p>The next step is mounting the file system to make the storage available.
219
220 <p><blockquote><pre>
221 # mount.s3ql --cachedir /var/lib/s3ql-cache --authfile /root/.s3ql/authinfo2 \
222 --ssl --allow-root s3c://s.greenqloud.com:443/bucket-name /s3ql
223 Using 4 upload threads.
224 Downloading and decompressing metadata...
225 Reading metadata...
226 ..objects..
227 ..blocks..
228 ..inodes..
229 ..inode_blocks..
230 ..symlink_targets..
231 ..names..
232 ..contents..
233 ..ext_attributes..
234 Mounting filesystem...
235 # df -h /s3ql
236 Filesystem Size Used Avail Use% Mounted on
237 s3c://s.greenqloud.com:443/bucket-name 1.0T 0 1.0T 0% /s3ql
238 #
239 </pre></blockquote></p>
240
241 <p>The file system is now ready for use. I use rsync to store my
242 backups in it, and as the metadata used by rsync is downloaded at
243 mount time, no network traffic (and storage cost) is triggered by
244 running rsync. To unmount, one should not use the normal umount
245 command, as this will not flush the cache to the cloud storage, but
246 instead running the umount.s3ql command like this:
247
248 <p><blockquote><pre>
249 # umount.s3ql /s3ql
250 #
251 </pre></blockquote></p>
252
253 <p>There is a fsck command available to check the file system and
254 correct any problems detected. This can be used if the local server
255 crashes while the file system is mounted, to reset the "already
256 mounted" flag. This is what it look like when processing a working
257 file system:</p>
258
259 <p><blockquote><pre>
260 # fsck.s3ql --force --ssl s3c://s.greenqloud.com:443/bucket-name
261 Using cached metadata.
262 File system seems clean, checking anyway.
263 Checking DB integrity...
264 Creating temporary extra indices...
265 Checking lost+found...
266 Checking cached objects...
267 Checking names (refcounts)...
268 Checking contents (names)...
269 Checking contents (inodes)...
270 Checking contents (parent inodes)...
271 Checking objects (reference counts)...
272 Checking objects (backend)...
273 ..processed 5000 objects so far..
274 ..processed 10000 objects so far..
275 ..processed 15000 objects so far..
276 Checking objects (sizes)...
277 Checking blocks (referenced objects)...
278 Checking blocks (refcounts)...
279 Checking inode-block mapping (blocks)...
280 Checking inode-block mapping (inodes)...
281 Checking inodes (refcounts)...
282 Checking inodes (sizes)...
283 Checking extended attributes (names)...
284 Checking extended attributes (inodes)...
285 Checking symlinks (inodes)...
286 Checking directory reachability...
287 Checking unix conventions...
288 Checking referential integrity...
289 Dropping temporary indices...
290 Backing up old metadata...
291 Dumping metadata...
292 ..objects..
293 ..blocks..
294 ..inodes..
295 ..inode_blocks..
296 ..symlink_targets..
297 ..names..
298 ..contents..
299 ..ext_attributes..
300 Compressing and uploading metadata...
301 Wrote 0.89 MB of compressed metadata.
302 #
303 </pre></blockquote></p>
304
305 <p>Thanks to the cache, working on files that fit in the cache is very
306 quick, about the same speed as local file access. Uploading large
307 amount of data is to me limited by the bandwidth out of and into my
308 house. Uploading 685 MiB with a 100 MiB cache gave me 305 kiB/s,
309 which is very close to my upload speed, and downloading the same
310 Debian installation ISO gave me 610 kiB/s, close to my download speed.
311 Both were measured using <tt>dd</tt>. So for me, the bottleneck is my
312 network, not the file system code. I do not know what a good cache
313 size would be, but suspect that the cache should e larger than your
314 working set.</p>
315
316 <p>I mentioned that only one machine can mount the file system at the
317 time. If another machine try, it is told that the file system is
318 busy:</p>
319
320 <p><blockquote><pre>
321 # mount.s3ql --cachedir /var/lib/s3ql-cache --authfile /root/.s3ql/authinfo2 \
322 --ssl --allow-root s3c://s.greenqloud.com:443/bucket-name /s3ql
323 Using 8 upload threads.
324 Backend reports that fs is still mounted elsewhere, aborting.
325 #
326 </pre></blockquote></p>
327
328 <p>The file content is uploaded when the cache is full, while the
329 metadata is uploaded once every 24 hour by default. To ensure the
330 file system content is flushed to the cloud, one can either umount the
331 file system, or ask S3QL to flush the cache and metadata using
332 s3qlctrl:
333
334 <p><blockquote><pre>
335 # s3qlctrl upload-meta /s3ql
336 # s3qlctrl flushcache /s3ql
337 #
338 </pre></blockquote></p>
339
340 <p>If you are curious about how much space your data uses in the
341 cloud, and how much compression and deduplication cut down on the
342 storage usage, you can use s3qlstat on the mounted file system to get
343 a report:</p>
344
345 <p><blockquote><pre>
346 # s3qlstat /s3ql
347 Directory entries: 9141
348 Inodes: 9143
349 Data blocks: 8851
350 Total data size: 22049.38 MB
351 After de-duplication: 21955.46 MB (99.57% of total)
352 After compression: 21877.28 MB (99.22% of total, 99.64% of de-duplicated)
353 Database size: 2.39 MB (uncompressed)
354 (some values do not take into account not-yet-uploaded dirty blocks in cache)
355 #
356 </pre></blockquote></p>
357
358 <p>I mentioned earlier that there are several possible suppliers of
359 storage. I did not try to locate them all, but am aware of at least
360 <a href="https://www.greenqloud.com/">Greenqloud</a>,
361 <a href="http://drive.google.com/">Google Drive</a>,
362 <a href="http://aws.amazon.com/s3/">Amazon S3 web serivces</a>,
363 <a href="http://www.rackspace.com/">Rackspace</a> and
364 <a href="http://crowncloud.net/">Crowncloud</A>. The latter even
365 accept payment in Bitcoin. Pick one that suit your need. Some of
366 them provide several GiB of free storage, but the prize models are
367 quite different and you will have to figure out what suits you
368 best.</p>
369
370 <p>While researching this blog post, I had a look at research papers
371 and posters discussing the S3QL file system. There are several, which
372 told me that the file system is getting a critical check by the
373 science community and increased my confidence in using it. One nice
374 poster is titled
375 "<a href="http://www.lanl.gov/orgs/adtsc/publications/science_highlights_2013/docs/pg68_69.pdf">An
376 Innovative Parallel Cloud Storage System using OpenStack’s SwiftObject
377 Store and Transformative Parallel I/O Approach</a>" by Hsing-Bung
378 Chen, Benjamin McClelland, David Sherrill, Alfred Torrez, Parks Fields
379 and Pamela Smith. Please have a look.</p>
380
381 <p>Given my problems with different file systems earlier, I decided to
382 check out the mounted S3QL file system to see if it would be usable as
383 a home directory (in other word, that it provided POSIX semantics when
384 it come to locking and umask handling etc). Running
385 <a href="http://people.skolelinux.org/pere/blog/Testing_if_a_file_system_can_be_used_for_home_directories___.html">my
386 test code to check file system semantics</a>, I was happy to discover that
387 no error was found. So the file system can be used for home
388 directories, if one chooses to do so.</p>
389
390 <p>If you do not want a locally file system, and want something that
391 work without the Linux fuse file system, I would like to mention the
392 <a href="http://www.tarsnap.com/">Tarsnap service</a>, which also
393 provide locally encrypted backup using a command line client. It have
394 a nicer access control system, where one can split out read and write
395 access, allowing some systems to write to the backup and others to
396 only read from it.</p>
397
398 <p>As usual, if you use Bitcoin and want to show your support of my
399 activities, please send Bitcoin donations to my address
400 <b><a href="bitcoin:15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b&label=PetterReinholdtsenBlog">15oWEoG9dUPovwmUL9KWAnYRtNJEkP1u1b</a></b>.</p>
401
402 </div>
403 <div class="tags">
404
405
406 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian">debian</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet</a>.
407
408
409 </div>
410 </div>
411 <div class="padding"></div>
412
413 <div class="entry">
414 <div class="title">
415 <a href="http://people.skolelinux.org/pere/blog/EU_domstolen_bekreftet_i_dag_at_datalagringsdirektivet_er_ulovlig.html">EU-domstolen bekreftet i dag at datalagringsdirektivet er ulovlig</a>
416 </div>
417 <div class="date">
418 8th April 2014
419 </div>
420 <div class="body">
421 <p>I dag kom endelig avgjørelsen fra EU-domstolen om
422 datalagringsdirektivet, som ikke overraskende ble dømt ulovlig og i
423 strid med borgernes grunnleggende rettigheter. Hvis du lurer på hva
424 datalagringsdirektivet er for noe, så er det
425 <a href="http://tv.nrk.no/program/koid75005313/tema-dine-digitale-spor-datalagringsdirektivet">en
426 flott dokumentar tilgjengelig hos NRK</a> som jeg tidligere
427 <a href="http://people.skolelinux.org/pere/blog/Dokumentaren_om_Datalagringsdirektivet_sendes_endelig_p__NRK.html">har
428 anbefalt</a> alle å se.</p>
429
430 <p>Her er et liten knippe nyhetsoppslag om saken, og jeg regner med at
431 det kommer flere ut over dagen. Flere kan finnes
432 <a href="http://www.mylder.no/?drill=datalagringsdirektivet&intern=1">via
433 mylder</a>.</p>
434
435 <p><ul>
436
437 <li><a href="http://e24.no/digital/eu-domstolen-datalagringsdirektivet-er-ugyldig/22879592">EU-domstolen:
438 Datalagringsdirektivet er ugyldig</a> - e24.no 2014-04-08
439
440 <li><a href="http://www.aftenposten.no/nyheter/iriks/EU-domstolen-Datalagringsdirektivet-er-ulovlig-7529032.html">EU-domstolen:
441 Datalagringsdirektivet er ulovlig</a> - aftenposten.no 2014-04-08
442
443 <li><a href="http://www.aftenposten.no/nyheter/iriks/politikk/Krever-DLD-stopp-i-Norge-7530086.html">Krever
444 DLD-stopp i Norge</a> - aftenposten.no 2014-04-08
445
446 <li><a href="http://www.p4.no/story.aspx?id=566431">Apenes: - En
447 gledens dag</a> - p4.no 2014-04-08
448
449 <li><a href="http://www.nrk.no/norge/_-datalagringsdirektivet-er-ugyldig-1.11655929">EU-domstolen:
450 – Datalagringsdirektivet er ugyldig</a> - nrk.no 2014-04-08</li>
451
452 <li><a href="http://www.vg.no/nyheter/utenriks/data-og-nett/eu-domstolen-datalagringsdirektivet-er-ugyldig/a/10130280/">EU-domstolen:
453 Datalagringsdirektivet er ugyldig</a> - vg.no 2014-04-08</li>
454
455 <li><a href="http://www.dagbladet.no/2014/04/08/nyheter/innenriks/datalagringsdirektivet/personvern/32711646/">-
456 Vi bør skrote hele datalagringsdirektivet</a> - dagbladet.no
457 2014-04-08</li>
458
459 <li><a href="http://www.digi.no/928137/eu-domstolen-dld-er-ugyldig">EU-domstolen:
460 DLD er ugyldig</a> - digi.no 2014-04-08</li>
461
462 <li><a href="http://www.irishtimes.com/business/sectors/technology/european-court-declares-data-retention-directive-invalid-1.1754150">European
463 court declares data retention directive invalid</a> - irishtimes.com
464 2014-04-08</li>
465
466 <li><a href="http://www.reuters.com/article/2014/04/08/us-eu-data-ruling-idUSBREA370F020140408?feedType=RSS">EU
467 court rules against requirement to keep data of telecom users</a> -
468 reuters.com 2014-04-08</li>
469
470 </ul>
471 </p>
472
473 <p>Jeg synes det er veldig fint at nok en stemme slår fast at
474 totalitær overvåkning av befolkningen er uakseptabelt, men det er
475 fortsatt like viktig å beskytte privatsfæren som før, da de
476 teknologiske mulighetene fortsatt finnes og utnyttes, og jeg tror
477 innsats i prosjekter som
478 <a href="https://wiki.debian.org/FreedomBox">Freedombox</a> og
479 <a href="http://www.dugnadsnett.no/">Dugnadsnett</a> er viktigere enn
480 noen gang.</p>
481
482 <p><strong>Update 2014-04-08 12:10</strong>: Kronerullingen for å
483 stoppe datalagringsdirektivet i Norge gjøres hos foreningen
484 <a href="http://www.digitaltpersonvern.no/">Digitalt Personvern</a>,
485 som har samlet inn 843 215,- så langt men trenger nok mye mer hvis
486
487 ikke Høyre og Arbeiderpartiet bytter mening i saken. Det var
488 <a href="http://www.holderdeord.no/parliament-issues/48650">kun
489 partinene Høyre og Arbeiderpartiet</a> som stemte for
490 Datalagringsdirektivet, og en av dem må bytte mening for at det skal
491 bli flertall mot i Stortinget. Se mer om saken
492 <a href="http://www.holderdeord.no/issues/69-innfore-datalagringsdirektivet">Holder
493 de ord</a>.</p>
494
495 </div>
496 <div class="tags">
497
498
499 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/dld">dld</a>, <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern</a>, <a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet</a>, <a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance</a>.
500
501
502 </div>
503 </div>
504 <div class="padding"></div>
505
506 <div class="entry">
507 <div class="title">
508 <a href="http://people.skolelinux.org/pere/blog/ReactOS_Windows_clone___nice_free_software.html">ReactOS Windows clone - nice free software</a>
509 </div>
510 <div class="date">
511 1st April 2014
512 </div>
513 <div class="body">
514 <p>Microsoft have announced that Windows XP reaches its end of life
515 2014-04-08, in 7 days. But there are heaps of machines still running
516 Windows XP, and depending on Windows XP to run their applications, and
517 upgrading will be expensive, both when it comes to money and when it
518 comes to the amount of effort needed to migrate from Windows XP to a
519 new operating system. Some obvious options (buy new a Windows
520 machine, buy a MacOSX machine, install Linux on the existing machine)
521 are already well known and covered elsewhere. Most of them involve
522 leaving the user applications installed on Windows XP behind and
523 trying out replacements or updated versions. In this blog post I want
524 to mention one strange bird that allow people to keep the hardware and
525 the existing Windows XP applications and run them on a free software
526 operating system that is Windows XP compatible.</p>
527
528 <p><a href="http://www.reactos.org/">ReactOS</a> is a free software
529 operating system (GNU GPL licensed) working on providing a operating
530 system that is binary compatible with Windows, able to run windows
531 programs directly and to use Windows drivers for hardware directly.
532 The project goal is for Windows user to keep their existing machines,
533 drivers and software, and gain the advantages from user a operating
534 system without usage limitations caused by non-free licensing. It is
535 a Windows clone running directly on the hardware, so quite different
536 from the approach taken by <a href="http://www.winehq.org/">the Wine
537 project</a>, which make it possible to run Windows binaries on
538 Linux.</p>
539
540 <p>The ReactOS project share code with the Wine project, so most
541 shared libraries available on Windows are already implemented already.
542 There is also a software manager like the one we are used to on Linux,
543 allowing the user to install free software applications with a simple
544 click directly from the Internet. Check out the
545 <a href="http://www.reactos.org/screenshots">screen shots on the
546 project web site</a> for an idea what it look like (it looks just like
547 Windows before metro).</p>
548
549 <p>I do not use ReactOS myself, preferring Linux and Unix like
550 operating systems. I've tested it, and it work fine in a virt-manager
551 virtual machine. The browser, minesweeper, notepad etc is working
552 fine as far as I can tell. Unfortunately, my main test application
553 is the software included on a CD with the Lego Mindstorms NXT, which
554 seem to install just fine from CD but fail to leave any binaries on
555 the disk after the installation. So no luck with that test software.
556 No idea why, but hope someone else figure out and fix the problem.
557 I've tried the ReactOS Live ISO on a physical machine, and it seemed
558 to work just fine. If you like Windows and want to keep running your
559 old Windows binaries, check it out by
560 <a href="http://www.reactos.org/download">downloading</a> the
561 installation CD, the live CD or the preinstalled virtual machine
562 image.</p>
563
564 </div>
565 <div class="tags">
566
567
568 Tags: <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/reactos">reactos</a>.
569
570
571 </div>
572 </div>
573 <div class="padding"></div>
574
575 <p style="text-align: right;"><a href="04.rss"><img src="http://people.skolelinux.org/pere/blog/xml.gif" alt="RSS Feed" width="36" height="14" /></a></p>
576 <div id="sidebar">
577
578
579
580 <h2>Archive</h2>
581 <ul>
582
583 <li>2014
584 <ul>
585
586 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/01/">January (2)</a></li>
587
588 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/02/">February (3)</a></li>
589
590 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/03/">March (8)</a></li>
591
592 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/04/">April (4)</a></li>
593
594 </ul></li>
595
596 <li>2013
597 <ul>
598
599 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (11)</a></li>
600
601 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/02/">February (9)</a></li>
602
603 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/03/">March (9)</a></li>
604
605 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/04/">April (6)</a></li>
606
607 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/05/">May (9)</a></li>
608
609 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/06/">June (10)</a></li>
610
611 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/07/">July (7)</a></li>
612
613 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/08/">August (3)</a></li>
614
615 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/09/">September (5)</a></li>
616
617 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/10/">October (7)</a></li>
618
619 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/11/">November (9)</a></li>
620
621 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/12/">December (3)</a></li>
622
623 </ul></li>
624
625 <li>2012
626 <ul>
627
628 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/01/">January (7)</a></li>
629
630 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
631
632 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
633
634 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
635
636 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
637
638 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
639
640 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
641
642 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
643
644 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
645
646 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/10/">October (17)</a></li>
647
648 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/11/">November (10)</a></li>
649
650 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/12/">December (7)</a></li>
651
652 </ul></li>
653
654 <li>2011
655 <ul>
656
657 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
658
659 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
660
661 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
662
663 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
664
665 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
666
667 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
668
669 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
670
671 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
672
673 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
674
675 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
676
677 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
678
679 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
680
681 </ul></li>
682
683 <li>2010
684 <ul>
685
686 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
687
688 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
689
690 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
691
692 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
693
694 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
695
696 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
697
698 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
699
700 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
701
702 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
703
704 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
705
706 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
707
708 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
709
710 </ul></li>
711
712 <li>2009
713 <ul>
714
715 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
716
717 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
718
719 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
720
721 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
722
723 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
724
725 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
726
727 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
728
729 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
730
731 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
732
733 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
734
735 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
736
737 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
738
739 </ul></li>
740
741 <li>2008
742 <ul>
743
744 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
745
746 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
747
748 </ul></li>
749
750 </ul>
751
752
753
754 <h2>Tags</h2>
755 <ul>
756
757 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (13)</a></li>
758
759 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
760
761 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
762
763 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid">bankid (4)</a></li>
764
765 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (8)</a></li>
766
767 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (14)</a></li>
768
769 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
770
771 <li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (2)</a></li>
772
773 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (96)</a></li>
774
775 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (146)</a></li>
776
777 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (10)</a></li>
778
779 <li><a href="http://people.skolelinux.org/pere/blog/tags/dld">dld (15)</a></li>
780
781 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook (10)</a></li>
782
783 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
784
785 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (243)</a></li>
786
787 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (21)</a></li>
788
789 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (12)</a></li>
790
791 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (12)</a></li>
792
793 <li><a href="http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (7)</a></li>
794
795 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (11)</a></li>
796
797 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (40)</a></li>
798
799 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (7)</a></li>
800
801 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (18)</a></li>
802
803 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (9)</a></li>
804
805 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (7)</a></li>
806
807 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
808
809 <li><a href="http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (8)</a></li>
810
811 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (26)</a></li>
812
813 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (245)</a></li>
814
815 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (162)</a></li>
816
817 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (11)</a></li>
818
819 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
820
821 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (46)</a></li>
822
823 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (72)</a></li>
824
825 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (1)</a></li>
826
827 <li><a href="http://people.skolelinux.org/pere/blog/tags/reactos">reactos (1)</a></li>
828
829 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
830
831 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (2)</a></li>
832
833 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (9)</a></li>
834
835 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
836
837 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter (4)</a></li>
838
839 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
840
841 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (39)</a></li>
842
843 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
844
845 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (4)</a></li>
846
847 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (44)</a></li>
848
849 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (3)</a></li>
850
851 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (9)</a></li>
852
853 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (24)</a></li>
854
855 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (1)</a></li>
856
857 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (8)</a></li>
858
859 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (40)</a></li>
860
861 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
862
863 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (29)</a></li>
864
865 </ul>
866
867
868 </div>
869 <p style="text-align: right">
870 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
871 </p>
872
873 </body>
874 </html>