]> pere.pagekite.me Git - homepage.git/blob - blog/Broken_umask_handling_with_sshfs.html
Generated.
[homepage.git] / blog / Broken_umask_handling_with_sshfs.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: Broken umask handling with sshfs</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
10
11 </head>
12 <body>
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 <div class="entry">
23 <div class="title">Broken umask handling with sshfs</div>
24 <div class="date">26th August 2010</div>
25 <div class="body"><p>My file system sematics program
26 <a href="http://people.skolelinux.org/pere/blog/Testing_if_a_file_system_can_be_used_for_home_directories___.html">presented
27 a few days ago</a> is very useful to verify that a file system can
28 work as a unix home directory,and today I had to extend it a bit. I'm
29 looking into alternatives for home directory access here at the
30 University of Oslo, and one of the options is sshfs. My friend
31 Finn-Arne mentioned a while back that they had used sshfs with Debian
32 Edu, but stopped because of problems. I asked today what the problems
33 where, and he mentioned that sshfs failed to handle umask properly.
34 Trying to detect the problem I wrote this addition to my fs testing
35 script:</p>
36
37 <pre>
38 mode_t touch_get_mode(const char *name, mode_t mode) {
39 mode_t retval = 0;
40 int fd = open(name, O_RDWR|O_CREAT|O_LARGEFILE, mode);
41 if (-1 != fd) {
42 unlink(name);
43 struct stat statbuf;
44 if (-1 != fstat(fd, &statbuf)) {
45 retval = statbuf.st_mode & 0x1ff;
46 }
47 close(fd);
48 }
49 return retval;
50 }
51
52 /* Try to detect problem discovered using sshfs */
53 int test_umask(void) {
54 printf("info: testing umask effect on file creation\n");
55
56 mode_t orig_umask = umask(000);
57 mode_t newmode;
58 if (0666 != (newmode = touch_get_mode("foobar", 0666))) {
59 printf(" error: Wrong file mode %o when creating using mode 666 and umask 000\n",
60 newmode);
61 }
62 umask(007);
63 if (0660 != (newmode = touch_get_mode("foobar", 0666))) {
64 printf(" error: Wrong file mode %o when creating using mode 666 and umask 007\n",
65 newmode);
66 }
67
68 umask (orig_umask);
69 return 0;
70 }
71
72 int main(int argc, char **argv) {
73 [...]
74 test_umask();
75 return 0;
76 }
77 </pre>
78
79 <p>Sure enough. On NFS to a netapp, I get this result:</p>
80
81 <pre>
82 Testing POSIX/Unix sematics on file system
83 info: testing symlink creation
84 info: testing subdirectory creation
85 info: testing fcntl locking
86 Read-locking 1 byte from 1073741824
87 Read-locking 510 byte from 1073741826
88 Unlocking 1 byte from 1073741824
89 Write-locking 1 byte from 1073741824
90 Write-locking 510 byte from 1073741826
91 Unlocking 2 byte from 1073741824
92 info: testing umask effect on file creation
93 </pre>
94
95 <p>When mounting the same directory using sshfs, I get this
96 result:</p>
97
98 <pre>
99 Testing POSIX/Unix sematics on file system
100 info: testing symlink creation
101 info: testing subdirectory creation
102 info: testing fcntl locking
103 Read-locking 1 byte from 1073741824
104 Read-locking 510 byte from 1073741826
105 Unlocking 1 byte from 1073741824
106 Write-locking 1 byte from 1073741824
107 Write-locking 510 byte from 1073741826
108 Unlocking 2 byte from 1073741824
109 info: testing umask effect on file creation
110 error: Wrong file mode 644 when creating using mode 666 and umask 000
111 error: Wrong file mode 640 when creating using mode 666 and umask 007
112 </pre>
113
114 <p>So, I can conclude that sshfs is better than smb to a Netapp or a
115 Windows server, but not good enough to be used as a home
116 directory.</p>
117
118 <p>Update 2010-08-26: Reported the issue in
119 <a href="http://bugs.debian.org/594498">BTS report #594498</a></p>
120
121 <p>Update 2010-08-27: Michael Gebetsroither report that he found the
122 script so useful that he created a GIT repository and stored it in
123 <a href="http://github.com/gebi/fs-test">http://github.com/gebi/fs-test</a>.</p>
124 </div>
125
126 <div class="tags">Tags: <a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu</a>, <a href="http://people.skolelinux.org/pere/blog/tags/english">english</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>.</div>
127
128
129 </div>
130
131
132
133
134 <div id="sidebar">
135
136
137
138 <h2>Archive</h2>
139 <ul>
140
141 <li>2021
142 <ul>
143
144 <li><a href="http://people.skolelinux.org/pere/blog/archive/2021/01/">January (2)</a></li>
145
146 <li><a href="http://people.skolelinux.org/pere/blog/archive/2021/02/">February (1)</a></li>
147
148 <li><a href="http://people.skolelinux.org/pere/blog/archive/2021/05/">May (1)</a></li>
149
150 <li><a href="http://people.skolelinux.org/pere/blog/archive/2021/06/">June (1)</a></li>
151
152 <li><a href="http://people.skolelinux.org/pere/blog/archive/2021/07/">July (2)</a></li>
153
154 </ul></li>
155
156 <li>2020
157 <ul>
158
159 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/02/">February (2)</a></li>
160
161 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/03/">March (2)</a></li>
162
163 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/04/">April (2)</a></li>
164
165 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/05/">May (3)</a></li>
166
167 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/06/">June (2)</a></li>
168
169 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/07/">July (1)</a></li>
170
171 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/09/">September (1)</a></li>
172
173 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/10/">October (1)</a></li>
174
175 <li><a href="http://people.skolelinux.org/pere/blog/archive/2020/11/">November (1)</a></li>
176
177 </ul></li>
178
179 <li>2019
180 <ul>
181
182 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/01/">January (4)</a></li>
183
184 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/02/">February (3)</a></li>
185
186 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/03/">March (3)</a></li>
187
188 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/05/">May (2)</a></li>
189
190 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/06/">June (5)</a></li>
191
192 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/07/">July (2)</a></li>
193
194 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/08/">August (1)</a></li>
195
196 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/09/">September (1)</a></li>
197
198 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/11/">November (1)</a></li>
199
200 <li><a href="http://people.skolelinux.org/pere/blog/archive/2019/12/">December (4)</a></li>
201
202 </ul></li>
203
204 <li>2018
205 <ul>
206
207 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/01/">January (1)</a></li>
208
209 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/02/">February (5)</a></li>
210
211 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/03/">March (5)</a></li>
212
213 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/04/">April (3)</a></li>
214
215 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/06/">June (2)</a></li>
216
217 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/07/">July (5)</a></li>
218
219 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/08/">August (3)</a></li>
220
221 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/09/">September (3)</a></li>
222
223 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/10/">October (5)</a></li>
224
225 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/11/">November (2)</a></li>
226
227 <li><a href="http://people.skolelinux.org/pere/blog/archive/2018/12/">December (4)</a></li>
228
229 </ul></li>
230
231 <li>2017
232 <ul>
233
234 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/01/">January (4)</a></li>
235
236 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/02/">February (3)</a></li>
237
238 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/03/">March (5)</a></li>
239
240 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/04/">April (2)</a></li>
241
242 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/06/">June (5)</a></li>
243
244 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/07/">July (1)</a></li>
245
246 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/08/">August (1)</a></li>
247
248 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/09/">September (3)</a></li>
249
250 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/10/">October (5)</a></li>
251
252 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/11/">November (3)</a></li>
253
254 <li><a href="http://people.skolelinux.org/pere/blog/archive/2017/12/">December (4)</a></li>
255
256 </ul></li>
257
258 <li>2016
259 <ul>
260
261 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/01/">January (3)</a></li>
262
263 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/02/">February (2)</a></li>
264
265 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/03/">March (3)</a></li>
266
267 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/04/">April (8)</a></li>
268
269 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/05/">May (8)</a></li>
270
271 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/06/">June (2)</a></li>
272
273 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/07/">July (2)</a></li>
274
275 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/08/">August (5)</a></li>
276
277 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/09/">September (2)</a></li>
278
279 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/10/">October (3)</a></li>
280
281 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/11/">November (8)</a></li>
282
283 <li><a href="http://people.skolelinux.org/pere/blog/archive/2016/12/">December (5)</a></li>
284
285 </ul></li>
286
287 <li>2015
288 <ul>
289
290 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/01/">January (7)</a></li>
291
292 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/02/">February (6)</a></li>
293
294 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/03/">March (1)</a></li>
295
296 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/04/">April (4)</a></li>
297
298 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/05/">May (3)</a></li>
299
300 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/06/">June (4)</a></li>
301
302 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/07/">July (6)</a></li>
303
304 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/08/">August (2)</a></li>
305
306 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/09/">September (2)</a></li>
307
308 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/10/">October (9)</a></li>
309
310 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/11/">November (6)</a></li>
311
312 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/12/">December (3)</a></li>
313
314 </ul></li>
315
316 <li>2014
317 <ul>
318
319 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/01/">January (2)</a></li>
320
321 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/02/">February (3)</a></li>
322
323 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/03/">March (8)</a></li>
324
325 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/04/">April (7)</a></li>
326
327 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/05/">May (1)</a></li>
328
329 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/06/">June (2)</a></li>
330
331 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/07/">July (2)</a></li>
332
333 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/08/">August (2)</a></li>
334
335 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/09/">September (5)</a></li>
336
337 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/10/">October (6)</a></li>
338
339 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/11/">November (3)</a></li>
340
341 <li><a href="http://people.skolelinux.org/pere/blog/archive/2014/12/">December (5)</a></li>
342
343 </ul></li>
344
345 <li>2013
346 <ul>
347
348 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/01/">January (11)</a></li>
349
350 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/02/">February (9)</a></li>
351
352 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/03/">March (9)</a></li>
353
354 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/04/">April (6)</a></li>
355
356 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/05/">May (9)</a></li>
357
358 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/06/">June (10)</a></li>
359
360 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/07/">July (7)</a></li>
361
362 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/08/">August (3)</a></li>
363
364 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/09/">September (5)</a></li>
365
366 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/10/">October (7)</a></li>
367
368 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/11/">November (9)</a></li>
369
370 <li><a href="http://people.skolelinux.org/pere/blog/archive/2013/12/">December (3)</a></li>
371
372 </ul></li>
373
374 <li>2012
375 <ul>
376
377 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/01/">January (7)</a></li>
378
379 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/02/">February (10)</a></li>
380
381 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/03/">March (17)</a></li>
382
383 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/04/">April (12)</a></li>
384
385 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/05/">May (12)</a></li>
386
387 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/06/">June (20)</a></li>
388
389 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/07/">July (17)</a></li>
390
391 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/08/">August (6)</a></li>
392
393 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/09/">September (9)</a></li>
394
395 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/10/">October (17)</a></li>
396
397 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/11/">November (10)</a></li>
398
399 <li><a href="http://people.skolelinux.org/pere/blog/archive/2012/12/">December (7)</a></li>
400
401 </ul></li>
402
403 <li>2011
404 <ul>
405
406 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/01/">January (16)</a></li>
407
408 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/02/">February (6)</a></li>
409
410 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/03/">March (6)</a></li>
411
412 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/04/">April (7)</a></li>
413
414 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/05/">May (3)</a></li>
415
416 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/06/">June (2)</a></li>
417
418 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/07/">July (7)</a></li>
419
420 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/08/">August (6)</a></li>
421
422 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/09/">September (4)</a></li>
423
424 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/10/">October (2)</a></li>
425
426 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/11/">November (3)</a></li>
427
428 <li><a href="http://people.skolelinux.org/pere/blog/archive/2011/12/">December (1)</a></li>
429
430 </ul></li>
431
432 <li>2010
433 <ul>
434
435 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/01/">January (2)</a></li>
436
437 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/02/">February (1)</a></li>
438
439 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/03/">March (3)</a></li>
440
441 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/04/">April (3)</a></li>
442
443 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/05/">May (9)</a></li>
444
445 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/06/">June (14)</a></li>
446
447 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/07/">July (12)</a></li>
448
449 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/08/">August (13)</a></li>
450
451 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/09/">September (7)</a></li>
452
453 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/10/">October (9)</a></li>
454
455 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/11/">November (13)</a></li>
456
457 <li><a href="http://people.skolelinux.org/pere/blog/archive/2010/12/">December (12)</a></li>
458
459 </ul></li>
460
461 <li>2009
462 <ul>
463
464 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/01/">January (8)</a></li>
465
466 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/02/">February (8)</a></li>
467
468 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/03/">March (12)</a></li>
469
470 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/04/">April (10)</a></li>
471
472 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/05/">May (9)</a></li>
473
474 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/06/">June (3)</a></li>
475
476 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/07/">July (4)</a></li>
477
478 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/08/">August (3)</a></li>
479
480 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/09/">September (1)</a></li>
481
482 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/10/">October (2)</a></li>
483
484 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/11/">November (3)</a></li>
485
486 <li><a href="http://people.skolelinux.org/pere/blog/archive/2009/12/">December (3)</a></li>
487
488 </ul></li>
489
490 <li>2008
491 <ul>
492
493 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/11/">November (5)</a></li>
494
495 <li><a href="http://people.skolelinux.org/pere/blog/archive/2008/12/">December (7)</a></li>
496
497 </ul></li>
498
499 </ul>
500
501
502
503 <h2>Tags</h2>
504 <ul>
505
506 <li><a href="http://people.skolelinux.org/pere/blog/tags/3d-printer">3d-printer (16)</a></li>
507
508 <li><a href="http://people.skolelinux.org/pere/blog/tags/amiga">amiga (1)</a></li>
509
510 <li><a href="http://people.skolelinux.org/pere/blog/tags/aros">aros (1)</a></li>
511
512 <li><a href="http://people.skolelinux.org/pere/blog/tags/bankid">bankid (4)</a></li>
513
514 <li><a href="http://people.skolelinux.org/pere/blog/tags/betalkontant">betalkontant (9)</a></li>
515
516 <li><a href="http://people.skolelinux.org/pere/blog/tags/bitcoin">bitcoin (12)</a></li>
517
518 <li><a href="http://people.skolelinux.org/pere/blog/tags/bootsystem">bootsystem (17)</a></li>
519
520 <li><a href="http://people.skolelinux.org/pere/blog/tags/bsa">bsa (2)</a></li>
521
522 <li><a href="http://people.skolelinux.org/pere/blog/tags/chrpath">chrpath (2)</a></li>
523
524 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian">debian (176)</a></li>
525
526 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian edu">debian edu (159)</a></li>
527
528 <li><a href="http://people.skolelinux.org/pere/blog/tags/debian-handbook">debian-handbook (8)</a></li>
529
530 <li><a href="http://people.skolelinux.org/pere/blog/tags/digistan">digistan (11)</a></li>
531
532 <li><a href="http://people.skolelinux.org/pere/blog/tags/dld">dld (17)</a></li>
533
534 <li><a href="http://people.skolelinux.org/pere/blog/tags/docbook">docbook (28)</a></li>
535
536 <li><a href="http://people.skolelinux.org/pere/blog/tags/drivstoffpriser">drivstoffpriser (4)</a></li>
537
538 <li><a href="http://people.skolelinux.org/pere/blog/tags/english">english (426)</a></li>
539
540 <li><a href="http://people.skolelinux.org/pere/blog/tags/fiksgatami">fiksgatami (23)</a></li>
541
542 <li><a href="http://people.skolelinux.org/pere/blog/tags/fildeling">fildeling (14)</a></li>
543
544 <li><a href="http://people.skolelinux.org/pere/blog/tags/freeculture">freeculture (34)</a></li>
545
546 <li><a href="http://people.skolelinux.org/pere/blog/tags/freedombox">freedombox (9)</a></li>
547
548 <li><a href="http://people.skolelinux.org/pere/blog/tags/frikanalen">frikanalen (20)</a></li>
549
550 <li><a href="http://people.skolelinux.org/pere/blog/tags/h264">h264 (20)</a></li>
551
552 <li><a href="http://people.skolelinux.org/pere/blog/tags/intervju">intervju (43)</a></li>
553
554 <li><a href="http://people.skolelinux.org/pere/blog/tags/isenkram">isenkram (16)</a></li>
555
556 <li><a href="http://people.skolelinux.org/pere/blog/tags/kart">kart (23)</a></li>
557
558 <li><a href="http://people.skolelinux.org/pere/blog/tags/kodi">kodi (4)</a></li>
559
560 <li><a href="http://people.skolelinux.org/pere/blog/tags/ldap">ldap (9)</a></li>
561
562 <li><a href="http://people.skolelinux.org/pere/blog/tags/lego">lego (4)</a></li>
563
564 <li><a href="http://people.skolelinux.org/pere/blog/tags/lenker">lenker (8)</a></li>
565
566 <li><a href="http://people.skolelinux.org/pere/blog/tags/lsdvd">lsdvd (2)</a></li>
567
568 <li><a href="http://people.skolelinux.org/pere/blog/tags/ltsp">ltsp (1)</a></li>
569
570 <li><a href="http://people.skolelinux.org/pere/blog/tags/mesh network">mesh network (8)</a></li>
571
572 <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (42)</a></li>
573
574 <li><a href="http://people.skolelinux.org/pere/blog/tags/nice free software">nice free software (13)</a></li>
575
576 <li><a href="http://people.skolelinux.org/pere/blog/tags/noark5">noark5 (23)</a></li>
577
578 <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (317)</a></li>
579
580 <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (198)</a></li>
581
582 <li><a href="http://people.skolelinux.org/pere/blog/tags/offentlig innsyn">offentlig innsyn (40)</a></li>
583
584 <li><a href="http://people.skolelinux.org/pere/blog/tags/open311">open311 (2)</a></li>
585
586 <li><a href="http://people.skolelinux.org/pere/blog/tags/opphavsrett">opphavsrett (75)</a></li>
587
588 <li><a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern (111)</a></li>
589
590 <li><a href="http://people.skolelinux.org/pere/blog/tags/raid">raid (2)</a></li>
591
592 <li><a href="http://people.skolelinux.org/pere/blog/tags/reactos">reactos (1)</a></li>
593
594 <li><a href="http://people.skolelinux.org/pere/blog/tags/reprap">reprap (11)</a></li>
595
596 <li><a href="http://people.skolelinux.org/pere/blog/tags/rfid">rfid (3)</a></li>
597
598 <li><a href="http://people.skolelinux.org/pere/blog/tags/robot">robot (12)</a></li>
599
600 <li><a href="http://people.skolelinux.org/pere/blog/tags/rss">rss (1)</a></li>
601
602 <li><a href="http://people.skolelinux.org/pere/blog/tags/ruter">ruter (7)</a></li>
603
604 <li><a href="http://people.skolelinux.org/pere/blog/tags/scraperwiki">scraperwiki (2)</a></li>
605
606 <li><a href="http://people.skolelinux.org/pere/blog/tags/sikkerhet">sikkerhet (59)</a></li>
607
608 <li><a href="http://people.skolelinux.org/pere/blog/tags/sitesummary">sitesummary (4)</a></li>
609
610 <li><a href="http://people.skolelinux.org/pere/blog/tags/skepsis">skepsis (5)</a></li>
611
612 <li><a href="http://people.skolelinux.org/pere/blog/tags/standard">standard (71)</a></li>
613
614 <li><a href="http://people.skolelinux.org/pere/blog/tags/stavekontroll">stavekontroll (7)</a></li>
615
616 <li><a href="http://people.skolelinux.org/pere/blog/tags/stortinget">stortinget (12)</a></li>
617
618 <li><a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance (61)</a></li>
619
620 <li><a href="http://people.skolelinux.org/pere/blog/tags/sysadmin">sysadmin (5)</a></li>
621
622 <li><a href="http://people.skolelinux.org/pere/blog/tags/usenix">usenix (2)</a></li>
623
624 <li><a href="http://people.skolelinux.org/pere/blog/tags/valg">valg (9)</a></li>
625
626 <li><a href="http://people.skolelinux.org/pere/blog/tags/verkidetfri">verkidetfri (19)</a></li>
627
628 <li><a href="http://people.skolelinux.org/pere/blog/tags/video">video (75)</a></li>
629
630 <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
631
632 <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (42)</a></li>
633
634 </ul>
635
636
637 </div>
638 <p style="text-align: right">
639 Created by <a href="http://steve.org.uk/Software/chronicle">Chronicle v4.6</a>
640 </p>
641
642 </body>
643 </html>