rm -fr /rpool/opensolaris
install gentoo linux
emerge -avt zfs-fuse
Ich haette es gleich von Anfang an so machen sollen...
rm -fr /rpool/opensolaris
install gentoo linux
emerge -avt zfs-fuse
Heute spielte ich auf meiner Playstation 3 das Spiel "Band Hero" und bei dem Song "American Pie" von Don McLean dachte ich, jetzt muß ich scheinbar echt mal dringend zum Ohrenarzt gehen.
An der Songstelle "good old boys were drinking whiskey and rye" hörte ich immer nur "good old boys were drinking w and rye".
Zuerst dachte ich an einen Bug im Spiel, dann hatte ich die Theorie, dass der alte Don McLean bei der Aufnahme eventuell ein bisserl zu viel vom Whiskey intus hatte und ihn dann einfach nicht mehr singen konnte.
Schlußendlich blickte ich dann auf das Cover des Spiels und dort stand: "USK ab 0 freigegeben".
Und da schoss es mir durch den Kopf und ich begab mich gleich einmal auf Recherche im Internet und tatsächlich findet man dort öfters den Hinweis, daß das Wort Whiskey rausgeschnitten wurde, damit man in den USA das "ESRB 10+"-Rating bekommt und das Spiel auch an Teenager verkaufen darf. Teenager dürften bei der Band Hero Songlist wohl die primäre Zielgruppe sein.
Na bravo, Jugendliche dürfen also Whiskey nicht trinken und zusätzlich nicht aussprechen und auch nicht hören.
Ich hoffe nur, dass ich mich heute nicht strafbar gemacht habe, da ich das Wort Whiskey ca. 5 mal in der Gegenwart meiner 3-jährigen Tochter gesagt habe.
Interessant ist in dem Zusammenhang aber, daß man über "Rye" singen darf und über "Whiskey" nicht.
Weiters dürften jedoch folgende Zeilen des Songs "Gasoline" der Zensur durch die Finger gerutscht sein: "... we were only seventeen ... at your mother's house and your father would find my hand inside your blouse ...". Was damit wohl gemeint ist ;-)
package com.blackcap.android;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
public class TestApp extends Activity {
private final static String LOG_TAG = "TestApp";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
String text = "Hallo Android";
int quersumme = 0;
for (int i = 0; i < text.length(); i++) {
char c = text.charAt(i);
quersumme += (c);
}
Log.i(LOG_TAG, "quersumme = " + quersumme);
if (quersumme == 1233) {
Log.i(LOG_TAG, "Quersumme ist korrekt!");
} else {
Log.i(LOG_TAG, "Quersumme fehlerhaft!");
}
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
10-22 19:04:04.375: INFO/TestApp(862): quersumme = 1233
10-22 19:04:04.375: INFO/TestApp(862): Quersumme ist korrekt!
Archive: /home/hschwarz/workspace/TestApp/bin/TestApp.apk
extracting: res/drawable/icon.png
inflating: res/layout/main.xml
inflating: AndroidManifest.xml
extracting: resources.arsc
inflating: classes.dex
inflating: META-INF/MANIFEST.MF
inflating: META-INF/CERT.SF
inflating: META-INF/CERT.RSA
java -jar ddx1.7.jar -d . classes.dex
Processing com/blackcap/android/R$attr
Processing com/blackcap/android/R$drawable
Processing com/blackcap/android/R$layout
Processing com/blackcap/android/R$string
Processing com/blackcap/android/R
Processing com/blackcap/android/TestApp
.class public com/blackcap/android/TestApp
.super android/app/Activity
.source TestApp.java
.field private static final LOG_TAG Ljava/lang/String; = "TestApp"
.method public()V
.limit registers 1
; this: v0 (Lcom/blackcap/android/TestApp;)
.line 7
invoke-direct {v0},android/app/Activity/; ()V
return-void
.end method
.method public onCreate(Landroid/os/Bundle;)V
.limit registers 9
; this: v7 (Lcom/blackcap/android/TestApp;)
; parameter[0] : v8 (Landroid/os/Bundle;)
.var 0 is c C from l4bc to l4c4
const-string v6,"TestApp"
.line 13
const-string v3,"Hallo Android"
.line 15
const/4 v2,0
.line 16
const/4 v1,0
l458:
invoke-virtual {v3},java/lang/String/length ; length()I
move-result v4
if-lt v1,v4,l4b4
.line 21
const-string v4,"TestApp"
new-instance v4,java/lang/StringBuilder
const-string v5,"quersumme = "
invoke-direct {v4,v5},java/lang/StringBuilder/; (Ljava/lang/String;)V
invoke-virtual {v4,v2},java/lang/StringBuilder/append ; append(I)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4},java/lang/StringBuilder/toString ; toString()Ljava/lang/String;
move-result-object v4
invoke-static {v6,v4},android/util/Log/i ; i(Ljava/lang/String;Ljava/lang/String;)I
.line 23
const/16 v4,1233
if-ne v2,v4,l4c4
.line 24
const-string v4,"TestApp"
const-string v4,"Quersumme ist korrekt!"
invoke-static {v6,v4},android/util/Log/i ; i(Ljava/lang/String;Ljava/lang/String;)I
l4a2:
.line 29
invoke-super {v7,v8},android/app/Activity/onCreate ; onCreate(Landroid/os/Bundle;)V
.line 30
const/high16 v4,32515
invoke-virtual {v7,v4},com/blackcap/android/TestApp/setContentView ; setContentView(I)V
.line 31
return-void
l4b4:
.line 17
invoke-virtual {v3,v1},java/lang/String/charAt ; charAt(I)C
move-result v0
l4bc:
.line 18
add-int/2addr v2,v0
.line 16
add-int/lit8 v1,v1,1
goto l458
l4c4:
.line 26
const-string v4,"TestApp"
const-string v4,"Quersumme fehlerhaft!"
invoke-static {v6,v4},android/util/Log/i ; i(Ljava/lang/String;Ljava/lang/String;)I
goto l4a2
.end method
sd 10:0:0:0: [sdb] ASC=0x0 ASCQ=0x0Meine Google-Recherchen brachten mich dann zu folgendem ganz neuen Patch für den 2.6.31'er Kernel vom 16.Oktober 2009:
sd 10:0:0:0: [sdb] Sense Key : 0x0 [current]
Info fld=0x0
sd 10:0:0:0: [sdb] Unhandled sense codePerfekt, jetzt kann ich endlich die Platte komplett löschen und dann umtauschen.
sd 10:0:0:0: [sdb] Result: hostbyte=0x07 driverbyte=0x08
sd 10:0:0:0: [sdb] Sense Key : 0x4 [current]
Info fld=0x0
sd 10:0:0:0: [sdb] ASC=0x0 ASCQ=0x0
end_request: I/O error, dev sdb, sector 558218191
NX_BACKEND_VERSION=$(strings $PATH_BIN/nxagent 2>/dev/null | egrep 'NXAGENT - Version' | sed 's/.*Version //g')
NX_BACKEND_VERSION=$(strings $PATH_BIN/nxagent 2>/dev/null | egrep 'NXAGENT - Version' | sed 's/.*Version //g' | head -n 1)
uniqueid=`echo "$uniqueid" | /usr/gnu/bin/tr -d '\357\274' | /usr/gnu/bin/tr '\242\243\244\245\246' 'BCDEF'`Achtung auf die Backticks am Anfang und am Ende!!!
NX_LOG_LEVEL=0
SESSION_LOG_CLEAN=1
NX_LOG_LEVEL=6
SESSION_LOG_CLEAN=0
The program 'gui-install' received an X Window System error.Die weitere Installation verläuft dann ganz einfach:
This probably reflects a bug in the program.
The error was 'BadAtom (invalid Atom parameter)'.
(Details: serial 630 error_code 5 request_code 20 minor_code 0)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the --sync command line
option to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)







console:\In der Datei "/rpool/boot/grub/menu.lst" folgende Zeilen löschen oder auskommentieren (mit einem # am Anfang):
:dv=/dev/term/a:br#9600:el=^C^S^Q^U^D:ie=%$:oe=^D:
splashimage /boot/grub/splash.xpm.gzWeiter unten ist dann auch noch die Kernel-Zeile:
background 215ECA
splashimage /boot/solaris.xpm
foreground d25f00
background 115d93
kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS,console=graphicsdurch
kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS,console=ttyazu ersetzen. Bei der Gelegenheit kann man das Grub-Timeout (timeout 30) auch gleich von 30 Sekunden auf eine kürzere Zeit runtersetzen.
root@homeserver:~# zfs list -t snapshot
NAME USED AVAIL REFER MOUNTPOINT
rpool/ROOT/opensolaris@install 146M - 2.82G -
ro.build.fingerprint=Samsung/GT-I7500/GT-I7500/GT-I7500:1.5/CUPCAKE/83:user/ota-rel-keys,release-keys7) Die Zahl 83 ist nun gegen die Zahl für eine ältere Firmware-Version zu ersetzen (zB. 12). Achtung, bei mir hat das Navigieren mit den Cursor-Tasten im vi nicht richtig funktioniert, aber mit den Tasten h,j,k,l (für Links, Runter, Rauf und Rechts) hat's problemlos geklappt. Also mit der l-Taste bis zum 8'er von 83 navigieren, danach ESCxxESCi12ESCZZ und schon hat man den neuen Wert gespeichert (Bei Problemen im vi einfach mit ESC:q! aussteigen und nochmals von vorne beginnen).
ro.build.fingerprint=Samsung/GT-I7500/GT-I7500/GT-I7500:1.5/CUPCAKE/12:user/ota-rel-keys,release-keys9) Danach muss noch der Cache für den Market gelöscht werden. Dazu muss man mit mount /dev/block/mmcblk0p1 /data das data-Filesystem mounten und mit cd /data/data/com.android.vending/cache/ in das Cache-Verzeichnis wechseln und mit rm -f * dann den Cache löschen.