安卓系统流畅体验Linux桌面[自制镜像和脚本已发布]

笔记本/便携移动设备,手机平板等软硬件
回复
zdxforhaha
帖子: 2
注册时间: 2014-05-25 22:34
系统: windows7 x64

Re: 安卓系统流畅体验Linux桌面[自制镜像和脚本已发布]

#106

帖子 zdxforhaha » 2014-05-25 22:38

大触你好 我是小白 弱弱的问下。。。我指令打完 加载就黑屏了。。。。 daemonize这指令我没打在前面 有关系吗?
zdxforhaha
帖子: 2
注册时间: 2014-05-25 22:34
系统: windows7 x64

Re: 安卓系统流畅体验Linux桌面[自制镜像和脚本已发布]

#107

帖子 zdxforhaha » 2014-05-26 2:00

root@LinuxPad:/# cat x.log
cat x.log

C:\Users\zdx\Desktop\ADB工具包>adb shell
shell@android:/ $ su
su
shell@android:/ # cat x.err
cat x.err

root@LinuxPad:/# cat x.err
cat x.err
nohup: ignoring input

X.Org X Server 1.13.3
Release Date: 2013-03-07
X Protocol Version 11, Revision 0
Build Operating System: Linux 3.2.0-1426-omap4 armv7l Ubuntu
Current Operating System: Linux LinuxPad 3.4.0+ #23 SMP PREEMPT Fri Apr 19 17:57
:09 CST 2013 armv7l
Kernel command line: console=ttyS5,115200 earlyprintk lowfreq=0
Build Date: 17 April 2013 10:48:48PM
xorg-server 2:1.13.3-0ubuntu6 (For technical support please see http://www.ubunt
u.com/support)
Current version of pixman: 0.28.2
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Sun May 25 17:50:07 2014
(==) Using config file: "/etc/X11/xorg.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
Initializing built-in extension Generic Event Extension
Initializing built-in extension SHAPE
Initializing built-in extension MIT-SHM
Initializing built-in extension XInputExtension
Initializing built-in extension XTEST
Initializing built-in extension BIG-REQUESTS
Initializing built-in extension SYNC
Initializing built-in extension XKEYBOARD
Initializing built-in extension XC-MISC
Initializing built-in extension SECURITY
Initializing built-in extension XINERAMA
Initializing built-in extension XFIXES
Initializing built-in extension RENDER
Initializing built-in extension RANDR
Initializing built-in extension COMPOSITE
Initializing built-in extension DAMAGE
Initializing built-in extension MIT-SCREEN-SAVER
Initializing built-in extension DOUBLE-BUFFER
Initializing built-in extension RECORD
Initializing built-in extension DPMS
Initializing built-in extension X-Resource
Initializing built-in extension XVideo
Initializing built-in extension XVideo-MotionCompensation
Initializing built-in extension SELinux
Initializing built-in extension XFree86-VidModeExtension
Initializing built-in extension XFree86-DGA
Initializing built-in extension XFree86-DRI
Initializing built-in extension DRI2
Loading extension GLX
(EE)
(EE) Backtrace:
(EE)
(EE) Segmentation fault at address 0x0
(EE) BUG: triggered 'if (inSignalContext)'
(EE) BUG: ../../os/log.c:484 in LogVMessageVerb()
(EE) Warning: attempting to log data in a signal unsafe manner while in signal c
ontext.
Please update to check inSignalContext and/or use LogMessageVerbSigSafe() or Err
orFSigSafe().
The offending log format message is:

Fatal server error:

(EE)
(EE) Backtrace:
(EE)

Fatal server error:
(EE) BUG: triggered 'if (inSignalContext)'
(EE) BUG: ../../os/log.c:484 in LogVMessageVerb()
(EE) Warning: attempting to log data in a signal unsafe manner while in signal c
ontext.
Please update to check inSignalContext and/or use LogMessageVerbSigSafe() or Err
orFSigSafe().
The offending log format message is:
Caught signal %d (%s). Server aborting

(EE)
(EE) Backtrace:
(EE)
Caught signal 11 (Segmentation fault). Server aborting
(EE) BUG: triggered 'if (inSignalContext)'
(EE) BUG: ../../os/log.c:484 in LogVMessageVerb()
(EE) Warning: attempting to log data in a signal unsafe manner while in signal c
ontext.
Please update to check inSignalContext and/or use LogMessageVerbSigSafe() or Err
orFSigSafe().
The offending log format message is:


(EE)
(EE) Backtrace:
(EE)
(WW) Warned 3 times about sigsafe logging. Will be quiet now.

(EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
(EE) Please also check the log file at "/var/log/Xorg.0.log" for additional info
rmation.
(EE)
(EE) BUG: triggered 'if (inSignalContext)'
(EE) BUG: ../../os/log.c:588 in LogVHdrMessageVerb()
(EE) Warning: attempting to log data in a signal unsafe manner while in signal c
ontext.
Please update to check inSignalContext and/or use LogMessageVerbSigSafe().
The offending header and log message formats are:
%s: %s: Close

(EE)
(EE) Backtrace:
(EE)
Server terminated with error (1). Closing log file.


root@LinuxPad:/# cat /var/log/Xorg.0.log
cat /var/log/Xorg.0.log
[ 2264.911]
X.Org X Server 1.13.3
Release Date: 2013-03-07
[ 2264.911] X Protocol Version 11, Revision 0
[ 2264.911] Build Operating System: Linux 3.2.0-1426-omap4 armv7l Ubuntu
[ 2264.911] Current Operating System: Linux LinuxPad 3.4.0+ #23 SMP PREEMPT Fri
Apr 19 17:57:09 CST 2013 armv7l
[ 2264.911] Kernel command line: console=ttyS5,115200 earlyprintk lowfreq=0
[ 2264.912] Build Date: 17 April 2013 10:48:48PM
[ 2264.912] xorg-server 2:1.13.3-0ubuntu6 (For technical support please see htt
p://www.ubuntu.com/support)
[ 2264.912] Current version of pixman: 0.28.2
[ 2264.912] Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
[ 2264.912] Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 2264.913] (==) Log file: "/var/log/Xorg.0.log", Time: Sun May 25 17:50:07 201
4
[ 2264.916] (==) Using config file: "/etc/X11/xorg.conf"
[ 2264.916] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[ 2264.919] (==) ServerLayout "Layout0"
[ 2264.919] (**) |-->Screen "Screen0" (0)
[ 2264.919] (**) | |-->Monitor "<default monitor>"
[ 2264.921] (**) | |-->Device "Card0"
[ 2264.921] (==) No monitor specified for screen "Screen0".
Using a default monitor configuration.
[ 2264.921] (**) |-->Input Device "touchscreen"
[ 2264.921] (==) Automatically adding devices
[ 2264.921] (==) Automatically enabling devices
[ 2264.921] (==) Automatically adding GPU devices
[ 2264.926] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[ 2264.926] Entry deleted from font path.
[ 2264.926] (WW) The directory "/usr/share/fonts/X11/100dpi/" does not exist.
[ 2264.926] Entry deleted from font path.
[ 2264.926] (WW) The directory "/usr/share/fonts/X11/75dpi/" does not exist.
[ 2264.926] Entry deleted from font path.
[ 2264.926] (WW) The directory "/usr/share/fonts/X11/Type1" does not exist.
[ 2264.926] Entry deleted from font path.
[ 2264.927] (WW) The directory "/usr/share/fonts/X11/100dpi" does not exist.
[ 2264.927] Entry deleted from font path.
[ 2264.927] (WW) The directory "/usr/share/fonts/X11/75dpi" does not exist.
[ 2264.927] Entry deleted from font path.
[ 2264.927] (WW) The directory "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueTyp
e" does not exist.
[ 2264.927] Entry deleted from font path.
[ 2264.927] (==) FontPath set to:
/usr/share/fonts/X11/misc,
built-ins
[ 2264.927] (==) ModulePath set to "/usr/lib/arm-linux-gnueabihf/xorg/extra-mod
ules,/usr/lib/xorg/extra-modules,/usr/lib/xorg/modules"
[ 2264.927] (II) The server relies on udev to provide the list of input devices
.
If no devices become available, reconfigure udev or disable AutoAddDevic
es.
[ 2264.927] (II) Loader magic: 0x401f3ed8
[ 2264.927] (II) Module ABI versions:
[ 2264.927] X.Org ANSI C Emulation: 0.4
[ 2264.927] X.Org Video Driver: 13.1
[ 2264.928] X.Org XInput driver : 18.0
[ 2264.928] X.Org Server Extension : 7.0
[ 2264.928] Initializing built-in extension Generic Event Extension
[ 2264.928] Initializing built-in extension SHAPE
[ 2264.928] Initializing built-in extension MIT-SHM
[ 2264.928] Initializing built-in extension XInputExtension
[ 2264.929] Initializing built-in extension XTEST
[ 2264.929] Initializing built-in extension BIG-REQUESTS
[ 2264.929] Initializing built-in extension SYNC
[ 2264.929] Initializing built-in extension XKEYBOARD
[ 2264.929] Initializing built-in extension XC-MISC
[ 2264.929] Initializing built-in extension SECURITY
[ 2264.929] Initializing built-in extension XINERAMA
[ 2264.929] Initializing built-in extension XFIXES
[ 2264.929] Initializing built-in extension RENDER
[ 2264.929] Initializing built-in extension RANDR
[ 2264.929] Initializing built-in extension COMPOSITE
[ 2264.929] Initializing built-in extension DAMAGE
[ 2264.929] Initializing built-in extension MIT-SCREEN-SAVER
[ 2264.930] Initializing built-in extension DOUBLE-BUFFER
[ 2264.930] Initializing built-in extension RECORD
[ 2264.930] Initializing built-in extension DPMS
[ 2264.930] Initializing built-in extension X-Resource
[ 2264.930] Initializing built-in extension XVideo
[ 2264.930] Initializing built-in extension XVideo-MotionCompensation
[ 2264.930] Initializing built-in extension SELinux
[ 2264.930] Initializing built-in extension XFree86-VidModeExtension
[ 2264.930] Initializing built-in extension XFree86-DGA
[ 2264.930] Initializing built-in extension XFree86-DRI
[ 2264.930] Initializing built-in extension DRI2
[ 2264.930] (II) LoadModule: "glx"
[ 2264.934] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[ 2264.937] (II) Module glx: vendor="X.Org Foundation"
[ 2264.937] compiled for 1.13.3, module version = 1.0.0
[ 2264.937] ABI class: X.Org Server Extension, version 7.0
[ 2264.937] (==) AIGLX enabled
[ 2264.937] Loading extension GLX
[ 2264.938] (II) LoadModule: "fbdev"
[ 2264.939] (II) Loading /usr/lib/xorg/modules/drivers/fbdev_drv.so
[ 2264.939] (II) Module fbdev: vendor="X.Org Foundation"
[ 2264.939] compiled for 1.12.99.902, module version = 0.4.3
[ 2264.939] Module class: X.Org Video Driver
[ 2264.939] ABI class: X.Org Video Driver, version 13.0
[ 2264.940] (II) LoadModule: "evdev"
[ 2264.941] (II) Loading /usr/lib/xorg/modules/input/evdev_drv.so
[ 2264.943] (II) Module evdev: vendor="X.Org Foundation"
[ 2264.943] compiled for 1.13.3, module version = 2.7.3
[ 2264.943] Module class: X.Org XInput Driver
[ 2264.943] ABI class: X.Org XInput driver, version 18.0
[ 2264.943] (II) FBDEV: driver for framebuffer: fbdev
[ 2264.944] (++) using VT number 1

[ 2264.944] (WW) Falling back to old probe method for fbdev
[ 2264.944] (II) Loading sub module "fbdevhw"
[ 2264.944] (II) LoadModule: "fbdevhw"
[ 2264.945] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[ 2264.946] (II) Module fbdevhw: vendor="X.Org Foundation"
[ 2264.946] compiled for 1.13.3, module version = 0.0.2
[ 2264.946] ABI class: X.Org Video Driver, version 13.1
[ 2264.947] (II) FBDEV(0): using /dev/graphics/fb0
[ 2264.947] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support

[ 2264.947] (**) FBDEV(0): Depth 24, (--) framebuffer bpp 32
[ 2264.947] (==) FBDEV(0): RGB weight 888
[ 2264.947] (==) FBDEV(0): Default visual is TrueColor
[ 2264.947] (==) FBDEV(0): Using gamma correction (1.0, 1.0, 1.0)
[ 2264.947] (II) FBDEV(0): hardware: act_fb (video memory: 16000kB)
[ 2264.947] (**) FBDEV(0): Option "fbdev" "/dev/graphics/fb0"
[ 2264.947] (II) FBDEV(0): checking modes against framebuffer device...
[ 2264.947] (II) FBDEV(0): checking modes against monitor...
[ 2264.948] (--) FBDEV(0): Virtual size is 1280x800 (pitch 1280)
[ 2264.948] (**) FBDEV(0): Built-in mode "current"
[ 2264.948] (==) FBDEV(0): DPI set to (96, 96)
[ 2264.948] (II) Loading sub module "fb"
[ 2264.948] (II) LoadModule: "fb"
[ 2264.949] (II) Loading /usr/lib/xorg/modules/libfb.so
[ 2264.950] (II) Module fb: vendor="X.Org Foundation"
[ 2264.951] compiled for 1.13.3, module version = 1.0.0
[ 2264.951] ABI class: X.Org ANSI C Emulation, version 0.4
[ 2264.951] (**) FBDEV(0): using shadow framebuffer
[ 2264.951] (II) Loading sub module "shadow"
[ 2264.951] (II) LoadModule: "shadow"
[ 2264.952] (II) Loading /usr/lib/xorg/modules/libshadow.so
[ 2264.953] (II) Module shadow: vendor="X.Org Foundation"
[ 2264.953] compiled for 1.13.3, module version = 1.1.0
[ 2264.953] ABI class: X.Org ANSI C Emulation, version 0.4
[ 2264.953] (==) Depth 24 pixmap format is 32 bpp
[ 2265.022] (==) FBDEV(0): Backing store disabled
[ 2265.023] (==) FBDEV(0): DPMS enabled
[ 2265.024] (==) RandR enabled
[ 2265.070] (II) SELinux: Disabled on system
[ 2265.077] (II) AIGLX: Screen 0 is not DRI2 capable
[ 2265.077] (II) AIGLX: Screen 0 is not DRI capable
[ 2265.124] (II) AIGLX: Loaded and initialized swrast
[ 2265.124] (II) GLX: Initialized DRISWRAST GL provider for screen 0
[ 2265.204] (II) XKB: reuse xkmfile /var/lib/xkb/server-B20D7FC79C7F597315E3E50
1AEF10E0D866E8E92.xkm
[ 2265.210] (II) Using input driver 'evdev' for 'touchscreen'
[ 2265.211] (**) Option "CorePointer"
[ 2265.211] (**) touchscreen: always reports core events
[ 2265.211] (**) evdev: touchscreen: Device: "/dev/input/event2"
[ 2265.211] (--) evdev: touchscreen: Vendor 0x8 Product 0x3
[ 2265.212] (--) evdev: touchscreen: Found absolute axes
[ 2265.212] (--) evdev: touchscreen: Found absolute multitouch axes
[ 2265.212] (II) evdev: touchscreen: Forcing relative x/y axes to exist.
[ 2265.212] (II) evdev: touchscreen: Configuring as mouse
[ 2265.212] (II) XINPUT: Adding extended input device "touchscreen" (type: MOUS
E, id 6)
[ 2265.212] (II) evdev: touchscreen: initialized for absolute axes.
[ 2265.213] (**) touchscreen: (accel) keeping acceleration scheme 1
[ 2265.213] (**) touchscreen: (accel) acceleration profile 0
[ 2265.213] (**) touchscreen: (accel) acceleration factor: 2.000
[ 2265.213] (**) touchscreen: (accel) acceleration threshold: 4
(EE)
(EE) Backtrace:
(EE)
(EE) Segmentation fault at address 0x0
(EE) BUG: triggered 'if (inSignalContext)'
(EE) BUG: ../../os/log.c:484 in LogVMessageVerb()
(EE) Warning: attempting to log data in a signal unsafe manner while in signal c
ontext.
Please update to check inSignalContext and/or use LogMessageVerbSigSafe() or Err
orFSigSafe().
The offending log format message is:

Fatal server error:

(EE)
(EE) Backtrace:
(EE)

Fatal server error:
(EE) BUG: triggered 'if (inSignalContext)'
(EE) BUG: ../../os/log.c:484 in LogVMessageVerb()
(EE) Warning: attempting to log data in a signal unsafe manner while in signal c
ontext.
Please update to check inSignalContext and/or use LogMessageVerbSigSafe() or Err
orFSigSafe().
The offending log format message is:
Caught signal %d (%s). Server aborting

(EE)
(EE) Backtrace:
(EE)
Caught signal 11 (Segmentation fault). Server aborting
(EE) BUG: triggered 'if (inSignalContext)'
(EE) BUG: ../../os/log.c:484 in LogVMessageVerb()
(EE) Warning: attempting to log data in a signal unsafe manner while in signal c
ontext.
Please update to check inSignalContext and/or use LogMessageVerbSigSafe() or Err
orFSigSafe().
The offending log format message is:


(EE)
(EE) Backtrace:
(EE)
(WW) Warned 3 times about sigsafe logging. Will be quiet now.

(EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
(EE) Please also check the log file at "/var/log/Xorg.0.log" for additional info
rmation.
(EE)
(EE) BUG: triggered 'if (inSignalContext)'
(EE) BUG: ../../os/log.c:588 in LogVHdrMessageVerb()
(EE) Warning: attempting to log data in a signal unsafe manner while in signal c
ontext.
Please update to check inSignalContext and/or use LogMessageVerbSigSafe().
The offending header and log message formats are:
%s: %s: Close

(EE)
(EE) Backtrace:
(EE)
(II) evdev: touchscreen: Close
(II) UnloadModule: "evdev"
Server terminated with error (1). Closing log file.


折腾一晚上的ADB 求大触帮忙看看 多谢了
felonwan
帖子: 262
注册时间: 2008-09-12 12:32

Re: 安卓系统流畅体验Linux桌面[自制镜像和脚本已发布]

#108

帖子 felonwan » 2014-05-27 21:25

zdxforhaha 写了:大触你好 我是小白 弱弱的问下。。。我指令打完 加载就黑屏了。。。。 daemonize这指令我没打在前面 有关系吗?
没daemonize肯定会重启的。
felonwan
帖子: 262
注册时间: 2008-09-12 12:32

Re: 安卓系统流畅体验Linux桌面[自制镜像和脚本已发布]

#109

帖子 felonwan » 2014-05-27 21:34

zdxforhaha 写了: root@LinuxPad:/# cat x.log
……
Loading extension GLX
(EE)
(EE) Backtrace:
(EE)
(EE) Segmentation fault at address 0x0
(EE) BUG: triggered 'if (inSignalContext)'
(EE) BUG: ../../os/log.c:484 in LogVMessageVerb()
(EE) Warning: attempting to log data in a signal unsafe manner while in signal c
ontext.
Please update to check inSignalContext and/or use LogMessageVerbSigSafe() or Err
orFSigSafe().
The offending log format message is:

Fatal server error:

(EE)
(EE) Backtrace:
(EE)

Fatal server error:
(EE) BUG: triggered 'if (inSignalContext)'
(EE) BUG: ../../os/log.c:484 in LogVMessageVerb()
(EE) Warning: attempting to log data in a signal unsafe manner while in signal c
ontext.
Please update to check inSignalContext and/or use LogMessageVerbSigSafe() or Err
orFSigSafe().
The offending log format message is:
Caught signal %d (%s). Server aborting

(EE)
(EE) Backtrace:
(EE)
Caught signal 11 (Segmentation fault). Server aborting
(EE) BUG: triggered 'if (inSignalContext)'
(EE) BUG: ../../os/log.c:484 in LogVMessageVerb()
(EE) Warning: attempting to log data in a signal unsafe manner while in signal c
ontext.
Please update to check inSignalContext and/or use LogMessageVerbSigSafe() or Err
orFSigSafe().
The offending log format message is:


(EE)
(EE) Backtrace:
(EE)
(WW) Warned 3 times about sigsafe logging. Will be quiet now.

(EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
(EE) Please also check the log file at "/var/log/Xorg.0.log" for additional info
rmation.
(EE)
(EE) BUG: triggered 'if (inSignalContext)'
(EE) BUG: ../../os/log.c:588 in LogVHdrMessageVerb()
(EE) Warning: attempting to log data in a signal unsafe manner while in signal c
ontext.
Please update to check inSignalContext and/or use LogMessageVerbSigSafe().
The offending header and log message formats are:
%s: %s: Close

(EE)
(EE) Backtrace:
(EE)
Server terminated with error (1). Closing log file.


root@LinuxPad:/# cat /var/log/Xorg.0.log
……
[ 2265.210] (II) Using input driver 'evdev' for 'touchscreen'
[ 2265.211] (**) Option "CorePointer"
[ 2265.211] (**) touchscreen: always reports core events
[ 2265.211] (**) evdev: touchscreen: Device: "/dev/input/event2"
[ 2265.211] (--) evdev: touchscreen: Vendor 0x8 Product 0x3
[ 2265.212] (--) evdev: touchscreen: Found absolute axes
[ 2265.212] (--) evdev: touchscreen: Found absolute multitouch axes
[ 2265.212] (II) evdev: touchscreen: Forcing relative x/y axes to exist.
[ 2265.212] (II) evdev: touchscreen: Configuring as mouse
[ 2265.212] (II) XINPUT: Adding extended input device "touchscreen" (type: MOUS
E, id 6)
[ 2265.212] (II) evdev: touchscreen: initialized for absolute axes.
[ 2265.213] (**) touchscreen: (accel) keeping acceleration scheme 1
[ 2265.213] (**) touchscreen: (accel) acceleration profile 0
[ 2265.213] (**) touchscreen: (accel) acceleration factor: 2.000
[ 2265.213] (**) touchscreen: (accel) acceleration threshold: 4
(EE)
(EE) Backtrace:
(EE)
(EE) Segmentation fault at address 0x0
(EE) BUG: triggered 'if (inSignalContext)'
(EE) BUG: ../../os/log.c:484 in LogVMessageVerb()
(EE) Warning: attempting to log data in a signal unsafe manner while in signal c
ontext.
Please update to check inSignalContext and/or use LogMessageVerbSigSafe() or Err
orFSigSafe().
The offending log format message is:

Fatal server error:

(EE)
(EE) Backtrace:
(EE)

Fatal server error:
(EE) BUG: triggered 'if (inSignalContext)'
(EE) BUG: ../../os/log.c:484 in LogVMessageVerb()
(EE) Warning: attempting to log data in a signal unsafe manner while in signal c
ontext.
Please update to check inSignalContext and/or use LogMessageVerbSigSafe() or Err
orFSigSafe().
The offending log format message is:
Caught signal %d (%s). Server aborting

(EE)
(EE) Backtrace:
(EE)
Caught signal 11 (Segmentation fault). Server aborting
(EE) BUG: triggered 'if (inSignalContext)'
(EE) BUG: ../../os/log.c:484 in LogVMessageVerb()
(EE) Warning: attempting to log data in a signal unsafe manner while in signal c
ontext.
Please update to check inSignalContext and/or use LogMessageVerbSigSafe() or Err
orFSigSafe().
The offending log format message is:


(EE)
(EE) Backtrace:
(EE)
(WW) Warned 3 times about sigsafe logging. Will be quiet now.

(EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
(EE) Please also check the log file at "/var/log/Xorg.0.log" for additional info
rmation.
(EE)
(EE) BUG: triggered 'if (inSignalContext)'
(EE) BUG: ../../os/log.c:588 in LogVHdrMessageVerb()
(EE) Warning: attempting to log data in a signal unsafe manner while in signal c
ontext.
Please update to check inSignalContext and/or use LogMessageVerbSigSafe().
The offending header and log message formats are:
%s: %s: Close

(EE)
(EE) Backtrace:
(EE)
(II) evdev: touchscreen: Close
(II) UnloadModule: "evdev"
Server terminated with error (1). Closing log file.


折腾一晚上的ADB 求大触帮忙看看 多谢了

信息显示你触发了几个Bug。。。Xorg老了,大概没啥人维护了,提交bug也只是标记一下?俺不搞开发,没有线索。。。

不过GLX模块是可以不用的吧,试试在Xorg.conf里加入这个:
Section "Module"
Disable "glx"
EndSection

evdev是输入屏输入驱动,不行的话,也可以改用其它的,帖子里有。
cjajax
帖子: 2
注册时间: 2014-06-18 7:04
系统: ubuntu

Re: 安卓系统流畅体验Linux桌面[自制镜像和脚本已发布]

#110

帖子 cjajax » 2014-06-19 9:07

启动失败
VAR/LOG/Xorg.0.log 日志如下

root@localhost:/var/log# cat Xorg.0.log
[ 1446.424]
X.Org X Server 1.13.3
Release Date: 2013-03-07
[ 1446.425] X Protocol Version 11, Revision 0
[ 1446.425] Build Operating System: Linux 3.2.0-1426-omap4 armv7l Ubuntu
[ 1446.425] Current Operating System: Linux localhost 3.0.13 #1 SMP PREEMPT Thu Dec 6 20:55:22 HKT 2012 armv7l
[ 1446.425] Kernel command line: console=ttyMT3,921600n1 vmalloc=280M slub_max_order=0 uboot_ver=2010.06 uboot_build_ver=MAIN2.2.ubt.3083 lcm=1-tm_nt35516 fps=5764
[ 1446.425] Build Date: 17 April 2013 10:48:48PM
[ 1446.425] xorg-server 2:1.13.3-0ubuntu6 (For technical support please see http://www.ubuntu.com/support)
[ 1446.425] Current version of pixman: 0.28.2
[ 1446.425] Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
[ 1446.426] Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 1446.427] (==) Log file: "/var/log/Xorg.0.log", Time: Wed Jun 18 23:33:15 2014
[ 1446.440] (==) Using config file: "/etc/X11/xorg.conf"
[ 1446.440] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[ 1446.479] (==) ServerLayout "Layout0"
[ 1446.479] (**) |-->Screen "Screen0" (0)
[ 1446.480] (**) | |-->Monitor "<default monitor>"
[ 1446.482] (**) | |-->Device "Card0"
[ 1446.482] (==) No monitor specified for screen "Screen0". Using a default monitor configuration.
[ 1446.482] (**) |-->Input Device "touchscreen"
[ 1446.482] (==) Automatically adding devices
[ 1446.482] (==) Automatically enabling devices
[ 1446.482] (==) Automatically adding GPU devices
[ 1446.529] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[ 1446.529] Entry deleted from font path.
[ 1446.529] (WW) The directory "/usr/share/fonts/X11/100dpi/" does not exist.
[ 1446.530] Entry deleted from font path.
[ 1446.530] (WW) The directory "/usr/share/fonts/X11/75dpi/" does not exist.
[ 1446.530] Entry deleted from font path.
[ 1446.530] (WW) The directory "/usr/share/fonts/X11/Type1" does not exist.
[ 1446.530] Entry deleted from font path.
[ 1446.530] (WW) The directory "/usr/share/fonts/X11/100dpi" does not exist.
[ 1446.530] Entry deleted from font path.
[ 1446.530] (WW) The directory "/usr/share/fonts/X11/75dpi" does not exist.
[ 1446.530] Entry deleted from font path.
[ 1446.534] (WW) The directory "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType" does not exist.
[ 1446.534] Entry deleted from font path.
[ 1446.534] (==) FontPath set to:
/usr/share/fonts/X11/misc,
built-ins
[ 1446.534] (==) ModulePath set to "/usr/lib/arm-linux-gnueabihf/xorg/extra-modules,/usr/lib/xorg/extra-modules,/usr/lib/xorg/modules"
[ 1446.534] (II) The server relies on udev to provide the list of input devices.
If no devices become available, reconfigure udev or disable AutoAddDevices.
[ 1446.535] (II) Loader magic: 0x401c4ed8
[ 1446.535] (II) Module ABI versions:
[ 1446.535] X.Org ANSI C Emulation: 0.4
[ 1446.535] X.Org Video Driver: 13.1
[ 1446.535] X.Org XInput driver : 18.0
[ 1446.535] X.Org Server Extension : 7.0
[ 1446.535] Initializing built-in extension Generic Event Extension
[ 1446.535] Initializing built-in extension SHAPE
[ 1446.535] Initializing built-in extension MIT-SHM
[ 1446.535] Initializing built-in extension XInputExtension[ 1446.536] Initializing built-in extension XTEST
[ 1446.536] Initializing built-in extension BIG-REQUESTS
[ 1446.536] Initializing built-in extension SYNC
[ 1446.536] Initializing built-in extension XKEYBOARD
[ 1446.536] Initializing built-in extension XC-MISC
[ 1446.536] Initializing built-in extension SECURITY
[ 1446.536] Initializing built-in extension XINERAMA
[ 1446.536] Initializing built-in extension XFIXES
[ 1446.536] Initializing built-in extension RENDER
[ 1446.536] Initializing built-in extension RANDR
[ 1446.536] Initializing built-in extension COMPOSITE
[ 1446.536] Initializing built-in extension DAMAGE
[ 1446.536] Initializing built-in extension MIT-SCREEN-SAVER
[ 1446.536] Initializing built-in extension DOUBLE-BUFFER
[ 1446.536] Initializing built-in extension RECORD
[ 1446.536] Initializing built-in extension DPMS
[ 1446.537] Initializing built-in extension X-Resource
[ 1446.537] Initializing built-in extension XVideo
[ 1446.537] Initializing built-in extension XVideo-MotionCompensation
[ 1446.537] Initializing built-in extension SELinux
[ 1446.537] Initializing built-in extension XFree86-VidModeExtension
[ 1446.537] Initializing built-in extension XFree86-DGA
[ 1446.537] Initializing built-in extension XFree86-DRI
[ 1446.537] Initializing built-in extension DRI2
[ 1446.537] (II) LoadModule: "glx"
[ 1446.546] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[ 1446.579] (II) Module glx: vendor="X.Org Foundation"
[ 1446.579] compiled for 1.13.3, module version = 1.0.0
[ 1446.579] ABI class: X.Org Server Extension, version 7.0
[ 1446.579] (==) AIGLX enabled
[ 1446.580] Loading extension GLX
[ 1446.580] (II) LoadModule: "fbdev"
[ 1446.580] (II) Loading /usr/lib/xorg/modules/drivers/fbdev_drv.so
[ 1446.584] (II) Module fbdev: vendor="X.Org Foundation"
[ 1446.584] compiled for 1.12.99.902, module version = 0.4.3
[ 1446.584] Module class: X.Org Video Driver
[ 1446.584] ABI class: X.Org Video Driver, version 13.0
[ 1446.584] (II) LoadModule: "evdev"
[ 1446.585] (II) Loading /usr/lib/xorg/modules/input/evdev_drv.so
[ 1446.598] (II) Module evdev: vendor="X.Org Foundation"
[ 1446.598] compiled for 1.13.3, module version = 2.7.3
[ 1446.598] Module class: X.Org XInput Driver
[ 1446.598] ABI class: X.Org XInput driver, version 18.0[ 1446.598] (II) FBDEV: driver for framebuffer: fbdev
[ 1446.598] (++) using VT number 1

[ 1446.599] (WW) Falling back to old probe method for fbdev[ 1446.599] (II) Loading sub module "fbdevhw"
[ 1446.599] (II) LoadModule: "fbdevhw"
[ 1446.600] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[ 1446.600] (II) Module fbdevhw: vendor="X.Org Foundation"
[ 1446.600] compiled for 1.13.3, module version = 0.0.2
[ 1446.600] ABI class: X.Org Video Driver, version 13.1
[ 1446.601] (II) FBDEV(0): using /dev/graphics/fb0
[ 1446.601] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support
[ 1446.601] (**) FBDEV(0): Depth 24, (--) framebuffer bpp 32
[ 1446.601] (==) FBDEV(0): RGB weight 888
[ 1446.601] (==) FBDEV(0): Default visual is TrueColor
[ 1446.601] (==) FBDEV(0): Using gamma correction (1.0, 1.0, 1.0)
[ 1446.601] (II) FBDEV(0): hardware: mtkfb (video memory: 4080kB)
[ 1446.601] (**) FBDEV(0): Option "fbdev" "/dev/graphics/fb0"
[ 1446.601] (II) FBDEV(0): checking modes against framebuffer device...
[ 1446.601] (II) FBDEV(0): checking modes against monitor...
[ 1446.601] (--) FBDEV(0): Virtual size is 540x960 (pitch 540)
[ 1446.601] (**) FBDEV(0): Built-in mode "current"
[ 1446.601] (==) FBDEV(0): DPI set to (96, 96)
[ 1446.602] (II) Loading sub module "fb"
[ 1446.602] (II) LoadModule: "fb"
[ 1446.602] (II) Loading /usr/lib/xorg/modules/libfb.so
[ 1446.605] (II) Module fb: vendor="X.Org Foundation"
[ 1446.605] compiled for 1.13.3, module version = 1.0.0
[ 1446.605] ABI class: X.Org ANSI C Emulation, version 0.4
[ 1446.605] (**) FBDEV(0): using shadow framebuffer
[ 1446.606] (II) Loading sub module "shadow"
[ 1446.606] (II) LoadModule: "shadow"
[ 1446.607] (II) Loading /usr/lib/xorg/modules/libshadow.so[ 1446.609] (II) Module shadow: vendor="X.Org Foundation"
[ 1446.610] compiled for 1.13.3, module version = 1.1.0
[ 1446.610] ABI class: X.Org ANSI C Emulation, version 0.4
[ 1446.610] (==) Depth 24 pixmap format is 32 bpp
[ 1446.610] (EE) FBDEV(0): FBIOBLANK: Invalid argument
[ 1446.643] (==) FBDEV(0): Backing store disabled
[ 1446.644] (==) FBDEV(0): DPMS enabled
[ 1446.644] (==) RandR enabled
[ 1446.673] (II) SELinux: Disabled on system
[ 1446.677] (II) AIGLX: Screen 0 is not DRI2 capable
[ 1446.677] (II) AIGLX: Screen 0 is not DRI capable
[ 1446.906] (II) AIGLX: Loaded and initialized swrast
[ 1446.906] (II) GLX: Initialized DRISWRAST GL provider forroot@localhost:/var/log# cat Xorg.0.log
[ 1446.424] X.Org X Server 1.13.3
Release Date: 2013-03-07 [ 1446.425] X Protocol Version 11, Revision 0
[ 1446.425] Build Operating System: Linux 3.2.0-1426-omap4 armv7l Ubuntu
[ 1446.425] Current Operating System: Linux localhost 3.0.13 #1 SMP PREEMPT Thu Dec 6 20:55:22 HKT 2012 armv7l
[ 1446.425] Kernel command line: console=ttyMT3,921600n1 vmalloc=280M slub_max_order=0 uboot_ver=2010.06 uboot_build_ver=MAIN2.2.ubt.3083 lcm=1-tm_nt35516 fps=5764
[ 1446.425] Build Date: 17 April 2013 10:48:48PM [ 1446.425] xorg-server 2:1.13.3-0ubuntu6 (For technical support please see http://www.ubuntu.com/support) [ 1446.425] Current version of pixman: 0.28.2
[ 1446.425] Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
[ 1446.426] Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 1446.427] (==) Log file: "/var/log/Xorg.0.log", Time: Wed Jun 18 23:33:15 2014
[ 1446.440] (==) Using config file: "/etc/X11/xorg.conf"
[ 1446.440] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[ 1446.479] (==) ServerLayout "Layout0"
[ 1446.479] (**) |-->Screen "Screen0" (0)
[ 1446.480] (**) | |-->Monitor "<default monitor>"
[ 1446.482] (**) | |-->Device "Card0"
[ 1446.482] (==) No monitor specified for screen "Screen0". Using a default monitor configuration.
[ 1446.482] (**) |-->Input Device "touchscreen"
[ 1446.482] (==) Automatically adding devices
[ 1446.482] (==) Automatically enabling devices
[ 1446.482] (==) Automatically adding GPU devices
[ 1446.529] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[ 1446.529] Entry deleted from font path.
[ 1446.529] (WW) The directory "/usr/share/fonts/X11/100dpi/" does not exist.
[ 1446.530] Entry deleted from font path.
[ 1446.530] (WW) The directory "/usr/share/fonts/X11/75dpi/" does not exist.
[ 1446.530] Entry deleted from font path.
[ 1446.530] (WW) The directory "/usr/share/fonts/X11/Type1" does not exist.
[ 1446.530] Entry deleted from font path.
[ 1446.530] (WW) The directory "/usr/share/fonts/X11/100dpi" does not exist.
[ 1446.530] Entry deleted from font path.
[ 1446.530] (WW) The directory "/usr/share/fonts/X11/75dpi" does not exist.
[ 1446.530] Entry deleted from font path.
[ 1446.534] (WW) The directory "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType" does not exist.
[ 1446.534] Entry deleted from font path.
[ 1446.534] (==) FontPath set to:
/usr/share/fonts/X11/misc,
built-ins
[ 1446.534] (==) ModulePath set to "/usr/lib/arm-linux-gnueabihf/xorg/extra-modules,/usr/lib/xorg/extra-modules,/usr/lib/xorg/modules"
[ 1446.534] (II) The server relies on udev to provide the list of input devices.
If no devices become available, reconfigure udev or disable AutoAddDevices.
[ 1446.535] (II) Loader magic: 0x401c4ed8
[ 1446.535] (II) Module ABI versions:
[ 1446.535] X.Org ANSI C Emulation: 0.4
[ 1446.535] X.Org Video Driver: 13.1
[ 1446.535] X.Org XInput driver : 18.0
[ 1446.535] X.Org Server Extension : 7.0
[ 1446.535] Initializing built-in extension Generic Event Extension
[ 1446.535] Initializing built-in extension SHAPE
[ 1446.535] Initializing built-in extension MIT-SHM
[ 1446.535] Initializing built-in extension XInputExtension[ 1446.536] Initializing built-in extension XTEST
[ 1446.536] Initializing built-in extension BIG-REQUESTS
[ 1446.536] Initializing built-in extension SYNC
[ 1446.536] Initializing built-in extension XKEYBOARD
[ 1446.536] Initializing built-in extension XC-MISC
[ 1446.536] Initializing built-in extension SECURITY
[ 1446.536] Initializing built-in extension XINERAMA
[ 1446.536] Initializing built-in extension XFIXES
[ 1446.536] Initializing built-in extension RENDER
[ 1446.536] Initializing built-in extension RANDR
[ 1446.536] Initializing built-in extension COMPOSITE
[ 1446.536] Initializing built-in extension DAMAGE
[ 1446.536] Initializing built-in extension MIT-SCREEN-SAVER
[ 1446.536] Initializing built-in extension DOUBLE-BUFFER
[ 1446.536] Initializing built-in extension RECORD
[ 1446.536] Initializing built-in extension DPMS
[ 1446.537] Initializing built-in extension X-Resource
[ 1446.537] Initializing built-in extension XVideo
[ 1446.537] Initializing built-in extension XVideo-MotionCompensation
[ 1446.537] Initializing built-in extension SELinux
[ 1446.537] Initializing built-in extension XFree86-VidModeExtension
[ 1446.537] Initializing built-in extension XFree86-DGA
[ 1446.537] Initializing built-in extension XFree86-DRI
[ 1446.537] Initializing built-in extension DRI2
[ 1446.537] (II) LoadModule: "glx"
[ 1446.546] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[ 1446.579] (II) Module glx: vendor="X.Org Foundation"
[ 1446.579] compiled for 1.13.3, module version = 1.0.0
[ 1446.579] ABI class: X.Org Server Extension, version 7.0
[ 1446.579] (==) AIGLX enabled
[ 1446.580] Loading extension GLX
[ 1446.580] (II) LoadModule: "fbdev"
[ 1446.580] (II) Loading /usr/lib/xorg/modules/drivers/fbdev_drv.so
[ 1446.584] (II) Module fbdev: vendor="X.Org Foundation"
[ 1446.584] compiled for 1.12.99.902, module version = 0.4.3
[ 1446.584] Module class: X.Org Video Driver
[ 1446.584] ABI class: X.Org Video Driver, version 13.0
[ 1446.584] (II) LoadModule: "evdev"
[ 1446.585] (II) Loading /usr/lib/xorg/modules/input/evdev_drv.so
[ 1446.598] (II) Module evdev: vendor="X.Org Foundation"
[ 1446.598] compiled for 1.13.3, module version = 2.7.3
[ 1446.598] Module class: X.Org XInput Driver
[ 1446.598] ABI class: X.Org XInput driver, version 18.0[ 1446.598] (II) FBDEV: driver for framebuffer: fbdev
[ 1446.598] (++) using VT number 1

[ 1446.599] (WW) Falling back to old probe method for fbdev[ 1446.599] (II) Loading sub module "fbdevhw"
[ 1446.599] (II) LoadModule: "fbdevhw"
[ 1446.600] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[ 1446.600] (II) Module fbdevhw: vendor="X.Org Foundation"
[ 1446.600] compiled for 1.13.3, module version = 0.0.2
[ 1446.600] ABI class: X.Org Video Driver, version 13.1
[ 1446.601] (II) FBDEV(0): using /dev/graphics/fb0
[ 1446.601] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support
[ 1446.601] (**) FBDEV(0): Depth 24, (--) framebuffer bpp 32
[ 1446.601] (==) FBDEV(0): RGB weight 888
[ 1446.601] (==) FBDEV(0): Default visual is TrueColor
[ 1446.601] (==) FBDEV(0): Using gamma correction (1.0, 1.0, 1.0)
[ 1446.601] (II) FBDEV(0): hardware: mtkfb (video memory: 4080kB)
[ 1446.601] (**) FBDEV(0): Option "fbdev" "/dev/graphics/fb0"
[ 1446.601] (II) FBDEV(0): checking modes against framebuffer device...
[ 1446.601] (II) FBDEV(0): checking modes against monitor...
[ 1446.601] (--) FBDEV(0): Virtual size is 540x960 (pitch 540)
[ 1446.601] (**) FBDEV(0): Built-in mode "current"
[ 1446.601] (==) FBDEV(0): DPI set to (96, 96)
[ 1446.602] (II) Loading sub module "fb"
[ 1446.602] (II) LoadModule: "fb"
[ 1446.602] (II) Loading /usr/lib/xorg/modules/libfb.so
[ 1446.605] (II) Module fb: vendor="X.Org Foundation"
[ 1446.605] compiled for 1.13.3, module version = 1.0.0
[ 1446.605] ABI class: X.Org ANSI C Emulation, version 0.4
[ 1446.605] (**) FBDEV(0): using shadow framebuffer
[ 1446.606] (II) Loading sub module "shadow"
[ 1446.606] (II) LoadModule: "shadow"
[ 1446.607] (II) Loading /usr/lib/xorg/modules/libshadow.so[ 1446.609] (II) Module shadow: vendor="X.Org Foundation"
[ 1446.610] compiled for 1.13.3, module version = 1.1.0
[ 1446.610] ABI class: X.Org ANSI C Emulation, version 0.4
[ 1446.610] (==) Depth 24 pixmap format is 32 bpp
[ 1446.610] (EE) FBDEV(0): FBIOBLANK: Invalid argument
[ 1446.643] (==) FBDEV(0): Backing store disabled
[ 1446.644] (==) FBDEV(0): DPMS enabled
[ 1446.644] (==) RandR enabled
[ 1446.673] (II) SELinux: Disabled on system
[ 1446.677] (II) AIGLX: Screen 0 is not DRI2 capable
[ 1446.677] (II) AIGLX: Screen 0 is not DRI capable
[ 1446.906] (II) AIGLX: Loaded and initialized swrast
[ 1446.906] (II) GLX: Initialized DRISWRAST GL provider for screen 0
[ 1446.988] (II) XKB: reuse xkmfile /var/lib/xkb/server-B20D7FC79C7F597315E3E501AEF10E0D866E8E92.xkm
[ 1446.996] (II) Using input driver 'evdev' for 'touchscreen'
[ 1446.996] (**) Option "CorePointer"
[ 1446.996] (**) touchscreen: always reports core events
[ 1446.996] (**) evdev: touchscreen: Device: "/dev/input/event2"
[ 1446.998] (--) evdev: touchscreen: Vendor 0x2454 Product 0x6575
[ 1446.998] (--) evdev: touchscreen: Found keys
[ 1446.998] (II) evdev: touchscreen: Configuring as keyboard
[ 1446.998] (II) XINPUT: Adding extended input device "touchscreen" (type: KEYBOARD, id 6)
[ 1446.998] (**) Option "xkb_rules" "evdev"
[ 1446.998] (**) Option "xkb_model" "evdev"
[ 1446.999] (**) Option "xkb_layout" "us"
[ 1447.010] (II) XKB: reuse xkmfile /var/lib/xkb/server-D378AD8F86E560F712A83EE36E4E5E92C595B9BD.xkm
[ 1447.049] (EE) FBDEV(0): FBIOBLANK: Invalid argument
[ 2047.155] (EE) FBDEV(0): FBIOBLANK: Invalid argument
[ 2047.155] (EE) FBDEV(0): FBIOBLANK: Invalid argument
[ 2047.159] (EE) FBDEV(0): FBIOBLANK: Invalid argument
[ 2707.724] (EE) FBDEV(0): FBIOBLANK: Invalid argument
[ 3309.753] (EE) FBDEV(0): FBIOBLANK: Invalid argument
[ 3309.753] (EE) FBDEV(0): FBIOBLANK: Invalid argument
[ 3309.754] (EE) FBDEV(0): FBIOBLANK: Invalid argument
root@localhost:/var/log#
myufu
帖子: 1
注册时间: 2014-07-17 11:13
系统: mac osx

Re: 安卓系统流畅体验Linux桌面[自制镜像和脚本已发布]

#111

帖子 myufu » 2014-07-21 9:18

felonwan 写了:本文主要内容:介绍如何使用作者在linaro镜像的基础上自行订制的镜像和脚本,在安卓系统之上chroot进入Linux系统,直接运行原生Xorg和桌面,在退出桌面后又自动回到安卓系统。在笔者自己的机器上能一步进入linux系统,完了注销就回到安卓。

笔者把整个过程尽量简单化,这是为了激发大家的兴趣。想深入了解和配置镜像、或出现问题,请参考第三章并认真看看所下载的脚本。脚本文件的开头写了用法,脚本里每一部分都有注释,都是中文的!大家尝试之后,能给个反馈意见最好。

不能保证所有的机器都能运行成功,似乎目前能运行起来的大部分是平板,手机基本没戏(一直觉得小小的手机屏幕上玩桌面系统是很蛋疼的一件事)。不过如果你就是感兴趣、就是爱折腾,那就试试吧!不要指望我能帮你解决一切问题,我不开发软件,我只是开源软件的装配工。 :em09

水平有限,错误和疏漏在所难免,不当之处还望大家不吝指正。


笔者自行配置的镜像和脚本下载地址:http://pan.baidu.com/s/1jGJtrBw
http://pan.baidu.com/s/13mJSv( :em20 暂时被封,申诉中)。
拍了个简单的视频:http://v.youku.com/v_show/id_XNjM4NzU4NDMy.html

p.s. 此方法使用“Xorg”作为图形服务器,其驱动是“Framebuffer”。Framebuffer驱动目前并不能在所有安卓设备上运行!!!比如红米手机,用“Xorg :0”这样的命令不能运行X服务器,后面不加vtx时提示找不到/dev/tty(确实没有这个),加了vtx就告诉你不能创建virtual console x。有人能提供一些信息不?个人猜测可能和双帧缓冲(double framebuffer)有关。
最近有一大波童鞋放了一大堆信息在帖子里,让我考虑到有必要说明一下:错误信息查看, 用“cat 文件名.err |grep EE”命令,然后你可以把查到的信息放到百度或者谷歌里面去搜哈。俺真不是大神开发者,时间精力有限,各位还要多多发挥自己的主观能动性啊。

  要在安装有安卓的手机或平板上体验或使用Linux桌面,可以在TF卡上安装Linux完整的桌面系统,或者直接在安卓系统的基础上运行Linux桌面。我们这里要介绍的是后一种。
  设备的驱动一般会加载到Linux内核里,所以相比TF卡上体验系统,这种方法省了编译安装驱动的麻烦,何况很多厂商并不提供各种驱动的源码。另外这种方式体验Linux桌面不用整个重启系统。
  安卓系统其实是在Linux的内核之上运行了一个Java虚拟机,有Linux内核在,我们需要做的其实很简单:把一个Linux发行版本(arm)的根目录下的文件复制过来,然后运行一个脚本就可以了

  原理很简单,步骤也不多,所需要的只是你多一点点耐心、多一点点尝试和思考,在这个过程中你能学到很多东西。



第一部分:原理
  一句话总结:chroot到Linux根文件系统,运行VNC服务或X窗口服务,然后运行桌面。
  
  分开来说也就三步:
  1. 复制任意Linux发行版(arm架构)的根文件系统,也就是“/”目录下的所有文件,复制的文件系统可以放在一个镜像文件,也可以直接放在兼容Linux的分区上,比如:ext2、ext3、ext4等;
  2. 在安卓下把上面复制的文件系统挂载到一定目录,利用程序chroot,让Linux内核把这个目录当作根目录“/”;
  3. 先运行图形服务器,比如VNC服务或X服务,在图形服务器的基础上运行Linux桌面系统。使用VNC服务的话,需要用安卓下的VNC客户端连接这个桌面;运行X服务器,桌面就直接运行在X服务器上。
  
  VNC服务器方案比较容易实现,通用性最好,最重要的是不影响安卓系统使用!但是VNC也有一个缺点,效率不高,配置差的设备就很不流畅。所以VNC适合性能比较好的机器用。
  和VNC方案相比 ,笔者现在给出的X服务器方案使用前需要先关闭安卓的图形界面,就是暂时你不能用安卓了。但是,X服务器效率要高很多!机器性能不佳的话,比如说我的平板CPU是Cortex-A8单核1.0GHz的CPU,使用X服务器要流畅很多。而且有需要的时候,我们只要关闭图形界面,就可以重新回到安卓界面,不像TF卡上的系统,还要重启机器外加按各种按键。





第二部分:步骤

零、前提
  前提是你的安卓手机或平板已经root!

一、准备工作
  1. 下载脚本和镜像
  下载地址再贴一遍:http://pan.baidu.com/s/13mJSv
  这一步我们下载镜像文件和脚本:XF_Desktop.zip中放的脚本,linaro_felonwan_20131123.zip里有镜像文件(不支持ext4的老机器,请下载linaro_felonwan_20131123_ext2.zip文件)。下载后都解压,镜像文件夹里面有md5和sha256校验码,如果不放心就做个校验。没有问题的话,就把解压后的linaro.img这个镜像文件和所有脚本文件直接放到手机或平板里,比如说/sdcard目录下。

  2. 安装必要的软件
  我们只需要在安卓上安装Busybox和终端应用就可以了,安卓下的终端应用很多,我们这里使用简单一点的“终端模拟器”。
  

二、正式过程
   一步搞定
  我们先来个一步搞定,使用上面我已经配置好的镜像和相应的脚本。(别人做好了的菜,我们只需要吃就行了。)
  我们在安卓下打开“终端模拟器”,接下来输入:  

代码: 全选

su
mkdir /data/linaro
daemonize sh /sdcard/xfdesktop /sdcard/linaro.img /data/linaro startlubuntu

  如果不出问题,我们就应该能够进入到LUbuntu桌面了。出问题的话,先参考下面第三章第一节。

这个桌面已经具有基本的功能:可以用midori或chrome浏览器上网浏览网页、看个pdf文件、用abiword写个简单的文档、用mplayer看个本地的电影、听个本地音乐什么的都有了,/sdcard目录下是sd卡的内容,如果有TF卡需要挂载,把xfdesktop里关于tf卡部分的注释去掉就可以了。要退出Lubuntu桌面,只需要注销掉Logout就会自动重启回到安卓图形界面了。
  

  以后如果想不输命令自动进入ubuntu桌面,可以在“终端模拟器”的设置里面把“初始命令”改成:
  

代码: 全选

su -c 'daemonize sh /sdcard/xfdesktop /sdcard/linaro.img /data/linaro startlubuntu'
  不过这时候我推荐你用“ConnectBot”应用,它可以建多个不同的终端,分别用不同的初始命令。而对于“终端模拟器”,这样做了以后,你一打开它就只能进ubuntu而不能进安卓的命令行了。


  上面的过程出现问题,或者想要深入了解原理,或者你想配置其它linux镜像,就请仔细看看下面的第三章吧。




第三部分:配置镜像、深入了解原理和一些问题

一、使用过程中遇到的问题
  针对大家遇到的问题,笔者把原来分散的内容放到第三章第一节。

  1. 没看到linux桌面就直接重启安卓了。
  解决办法:用adb或ssh连接,然后使用先进入linux shell再启动图形界面。具体参考本章第二节第2小节。机器性能好点的,可以考虑使用XServer XSDL,这是一个安卓上的功能完整的X窗口服务器,和VNC一样不用关闭安卓图形界面,流畅度能比VNC强一点:viewtopic.php?f=177&t=452977

  直接重启安卓的原因:
  启动桌面的命令有一个比较强的要求:要能“hold住”!如果“hold不住”,就会重启安卓了!
  具体来说,就是xfdesktop脚本中的chroot命令要能停住,chroot后执行的是xfinit脚本,所以xfinit脚本启动桌面后不能退出,否则就把xfinit执行完了,然后整个chroot命令完成,就会回到安卓命令行,然后接着就会做chroot命令完成后的一系列动作:杀死chroot目录相关的进程,卸载目录绑定和镜像,然后重启安卓图形界面。

  笔者自己配置的镜像里面startlubuntu似乎能在终端里停住,但是用adb shell反而停不住。

  Linux on Android项目的脚本中使用了“bash -i”,这个原理可以参考鸟哥私房菜

  由于笔者的脚本已经可以使用不同的命令来启动桌面,所以笔者没有做其它处理。自行尝试不同的启动桌面的命令吧,笔者目前也没有完美的解决办法。

  2. 执行命令后黑屏,系统再没反应
  可能是没有daemonize命令,也可能是基于Framebuffer运行Xorg出错,或者执行启动命令等出错。
  没有daemonize命令,参考本贴18楼:viewtopic.php?f=177&t=451917&start=15
  Xorg出错的话,请参考笔者在本贴16楼的回复。viewtopic.php?f=177&t=451917&start=15
  启动桌面命令出错,参考上面的第1小节,以及下面第三节第3小节。

  3. 如果触摸屏用不了,可以参考本章第三节的“触摸屏输入驱动”。笔者已经安装了虚拟键盘xvkbd,但是一般用wifi上网的话,可以考虑使用synergy软件来使用PC的键盘和鼠标,操作更方便,具体请参考本章第三节的“虚拟键盘和物理键鼠”。

  其它错误请多多反馈,重要的都将放在这个部分。



二、配置镜像,手动启动linux桌面
  1. 配置镜像
  如果不使用笔者已经配置好的系统镜像,对于一般的系统镜像(当然得是arm架构的),我们还需要两步才能使它能运行Linux桌面。(别人做的菜口味不好,我们需要加点佐料什么的,比如味淡了,要加盐。)
我们接下来就把笔者配置镜像的过程走一遍,除了安装软件的命令可能不一样,对于其它Linux系统镜像是类似的。

先下载镜像,笔者使用的是Linaro alip镜像13.08(基于ubuntu 13.04):http://releases.linaro.org/13.08/ubuntu ... mages/alip,下载linaro-raring-alip-20130826-474.tar.gz压缩包,包里面只有一个binary目录下面,下面放的就是系统文件,把这个目录做成img镜像就可以用了。当然,你也可以尝试把文件系统直接放在TF卡的非fat分区。 

  除了上面用到的xfdesktop,这里就要用到其它脚本了,所以先解释一下其它四个文件的作用:xfinit脚本用于启动X服务器Xorg,xorg.conf是Xorg的配置文件,这两个文件已经放在笔者的镜像中了。chimg可以挂载镜像并chroot到相应目录,也就是进入Linux系统的命令行;而chdir则用于chroot直接进入已经挂载好的目录。我们需要先用chimg脚本进入Linux系统的命令行,把myxinit和xorg.conf放到镜像文件里的相应目录下。

在终端中,依次输入:

代码: 全选

su
mkdir /data/linaro
cd sdcard
sh chimg linaro.img /data/linaro
  这时,如果看到下面的提示就说明你chroot成功了:

代码: 全选

net.ipv4.ip_forward = 1 
Your Linux pad can be accessed from the IP: 
wlan0: ip xxx.xxx.xxx.xx mask 255.255.255.0 flags [up broadcast running multicast]
root@LinuxPad:~ $
  
  这时,我们已经可以使用很多ubuntu的命令行工具了,比如说:用apt-get install安装各种软件、用gcc编译程序、如果安装了latex,还可以编译Latex文档。
  
  我们先干完复制脚本和配置文件的工作:

代码: 全选

cp /sdcard/xfinit /usr/bin/
cp /sdcard/xorg.conf /etc/X11/
chmod +x /usr/bin/xfinit
  
  然后就开始安装一些必要的软件:

代码: 全选

apt-get update
apt-get install xserver-xorg-video-fbdev xserver-xorg-input-evdev xvkbd 
sync
exit
  
  这时我们就可以像第一章那样启动桌面。

  当然,笔者在linaro的镜像里面还装了一些软件,这在那个镜像的压缩包里都有说明,但是使用FrameBuffer的Xorg的话,安装上面三个软件就够了(linaro的这个rootfs已经安装了Xorg,我们就不用装了)。

  
  2. 手动启动Linux桌面
  上面我们已经配置好了镜像,事实上就能启动Linux桌面了。但是要一步步手动启动桌面,我们必须要用adb或ssh连接安卓命令行,网上教程很多,大家自行搜索解决吧。
  用adb或ssh连接好后,在使用chimg脚本前,先输入

代码: 全选

stop
关掉安卓图形界面。然后和第1小节一样,使用chimg命令chroot到linux的命令行,确定进入了linux命令行后,执行下面的命令:

代码: 全选

xfinit startlubuntu
  实际上xfinit脚本很简单,如果出问题,我们可以一步步输入里面的关键内容,检查问题出在哪儿:

代码: 全选

nohup Xorg :0 vt1 1>x.log 2>x.err &
nohup xvkbd 1>xk.log 2>xk.err&
nohup startlubuntu 1>sl.log 2>sl.err &
  你可以使用”cat 文件名“查看log和err文件的内容,或者使用命令”cp *.log *.err /sdcard/“把所有信息保存到sd卡再在论坛里上传或贴出来,让大家帮忙诊断问题。

三、一些问题的说明
1. 对于脚本的解释
  这部分供有兴趣的人看,大家可以查看脚本内容,基本每一部分的功能笔者都加了简单的中文注释,应该不难看懂。有什么不懂的尽管问,笔者有空就会回答,也希望大家能互助,读者能自己多尝试、思考和上网搜索答案。折腾重在过程,出了点问题就想完全由别人解决,自己完全不想动脑动手的心态不可取。
  
  1.1. 安卓的图形界面使用FrameBuffer(FB),也就是帧缓冲。我们运行原生的X服务器就是利用了它的这个设备。安卓默认FB设备是/dev/graphics/fb0,在xorg.conf里的devices那段中可以看到。
  
  1.2. xfdesktop脚本和chimg脚本内容相似,区别在于:
  第一、chimg脚本在chroot的时候执行的命令是/bin/bash,就只是进入命令行,而ubdesktop直接使用xfinit脚本进入桌面;
  第二、xfdesktop在chroot命令后面的行中有启动安卓界面、停止Linux相关服务并卸载目录和镜像的命令,而chimg只有最后一项;
  第三、需要用安卓daemonize命令使xfdesktop成为后台服务,这样在chroot后才能在退出桌面后重新启动安卓界面。chimg脚本只是在终端里面运行,不关闭安卓的界面,所以不需要这些。

  1.3 chimg和xfdesktop脚本文件中,在卸载目录的命令前有一行sleep 15s,这15秒用来等待关闭Chroot的系统中运行的程序。机器性能差的时间需要设置得长一些,性能好的可以改短一些。
  
  1.4 xfdesktop脚本名后面可以带三个或四参数;参数linaro.img是镜像名,你有不止一个镜像时,改成你想用的那个镜像的名字就行;参数/data/linaro是镜像的挂载目录;参数startlubuntu是启动Lubuntu桌面的命令,可以换成其它桌面环境命令,比如用openbox就会启动一个只有黑乎乎的屏幕和右键菜单的界面。

2. 安装其它桌面和使用其它的镜像
  在chroot的Linux系统里,你完全可以安装其它的桌面,比如xfce,gnome, kde等。只需要在xfdesktop后面带的参数中的startlubuntu换掉就可以了。不过这里使用的命令有一个很强的要求,就是它要能“hold住”,如果它执行一下就完了,没有在当前这条命令上停住的话,就会把xfinit整个脚本执行完,然后就退出了chroot环境回到xfdesktop重启安卓了。另外,Linaro的这个镜像可以使用startlubuntu-nexus7,startlubuntu-netbook,有惊喜哦。
  镜像资源嘛,Linux on Android项目有一大波可用的Linux桌面系统(也就是上文中提到的“Complete Linux Installer”应用所用到的镜像),http://sourceforge.net/projects/linuxonandroid/files/(我之前用过Ubuntu 13.10的Large镜像,用的KDE桌面,界面漂亮,关掉大部分特效后在我的单核1G内存的平板上使用也还算流畅,不过13.10出来还不久,还不稳定,有各种小问题,比如说“开始”菜单中的“应用程序”不见了。
  Linux on Android项目的镜像都使用VNC,所以如果要使用原生Xorg的话,都得按照我第二部分的方法自行配置。可以在它的基础之上,直接修改它的项目镜像里的/root/init.sh文件来选择使用VNC还是Xorg,这个功能有兴趣的网友可以自己去做下,我目前只有一个半成品,还没时间测试。
  
3. stop、start和daemonize命令
  似乎是比较新的安卓系统才有,我的是4.0.3。不知道哪些版本的安卓有这个命令,有知道的网友请反馈一下。

4. 亮度调节
  看有没有Linux的驱动接口,我的平板上没有,但是红米手机有,在/sys/class/backlight/里面(再下去的具体路径不同设备不一样)。

5. 权限导致的一些问题:声音、网络
  我的直接可以使用。如果有问题,可能是权限的问题,请参考:http://archlinuxarm.org/forum/viewtopic.php?f=9&t=4611
  ping命令不能使用,和上面的声音问题一样的处理方式。
  另外,我的机器用start命令重启安卓界面后必须关一次屏幕再开关一次wifi,Wifi才能用。

6. 虚拟键盘和物理键鼠
  默认的xfkbd操作方式不是很好,需要设置:“xvkbd”-->“Property...”-->“Automatic Click”改大或者改成“OFF”,大概就符合一般的使用习惯了。
  Linux有一些虚拟键盘程序,都不怎么完美,看你用什么桌面。gnome用onboard很好、kde下有kvkbd,轻量级桌面machbox有machbox-keyboard、xvkbd所有的桌面类型都能用。
  桌面环境比较适合使用物理键盘和鼠标,如果没有无线键鼠,可以用pc的键盘鼠标。用软件synergy就可以实现,在pc上安装quicksynergy,确保二者在一个局域网或者服务器有公网IP,设置某个方向的客户端名为pad(笔者的脚本里用的是pad,所以这里也要叫pad);然后在平板或手机的Linux系统里安装synergy,然后在启动桌面的命令“/system/bin/sh /sdcard/xfdesktop /sdcar/linaro.img /data/linaro startlubuntu”后面加上synergy服务器的IP就可以了。另外,在平板或手机里安装quicksynergy的话,可以在图形界面用平板做客户端。当然也可以做为synergy服务器,这样有一个好玩的用途就是可以用平板作为PC的画图板。

7. 推荐使用软件Linux Deploy。
  上文中介绍的步骤其实都可以使用图形界面来操作,使用Linux DeployComplete Linux Installer这一类的应用就行。只需设置一些参数就可以了,操作比较简单。
  不过参数还是有点多,如果对安卓下chroot运行Linux桌面的原理不怎么熟的话,看看我写的原理、过程的主要步骤,大概能帮你理解怎么改这些参数。如果能再一步步按教程操作一下就更好了,最终当你在安卓上运行起来Linux桌面,会很有成就感。这就是所谓的Linux的自己动手的精神吧,跟自己炒菜做饭一个道理。
  Linux Deploy配置界面中直接可以设置很多选项:桌面环境可以选LXDE,Xfce、Gnome和KDE等,运行桌面的方式可以选以VNC、X Window System和FrameBuffer(笔者介绍的相当用的后一种),而图形界面设置(GUI setting)对安卓界面的处理(Freeze Android UI)可以选暂停和停止(笔者介绍的用的又是最后一种),功能相当强大。不用写任何命令,全是图形界面,点一点改改参数,就能配置一个自己的Linux版本。不过除VNC外,笔者一直没有成功运行过X Window System和FrameBuffer,都是运行后黑屏。

8. 触摸屏输入驱动
  触摸屏的驱动其实已经在内核里了,触摸屏驱动会向内核报告触摸信息,问题就是需要一个“中间人”,它要告诉XServer怎么使用这些信息。

  8.1. 安装X服务器的input驱动
  先装通用的evdev驱动,这是真正的以触摸屏的方式来操作设备的驱动;
  如果不行可以装一下mtrack或mulltitouch(这两个有冲突,只能装其中一个),这是多点触控板的驱动;
  再不行或者你的平板本来就是单点触控的话,就装tslib,这是单点的触摸驱动。
  包的名字格式都一样的:“xserver-xorg-input-*”,后面的“*”换成这上面说的四个驱动中的任意一个就行了。

  8.2. 在xorg.conf里面使用告诉Xorg使用哪个驱动
  注意安装相应的驱动后,要使用那个驱动,就把/etc/X11/xorg.conf里面的相应行取消注释,把其它的都注释掉:

代码: 全选

 
#Driver "multitouch"
Driver "evdev"
#Driver "mtrack"
#Driver "tslib"

虽然脚本在上面的共享地址里已经有了,这里还是把所有的脚本放上来,方便坛子里的朋友直接下载:
XF_Desktop.zip
警告:此文中所列软件没有任何担保,笔者也不对使用它的任何后果承担责任。这是自由软件,你可以基于GPLv3协议规则自由下载、修改、分发。
麻烦问下,文章中的启动linux系统的img文件是如何做的?这个img文件都包含什么?是我把一个装好的系统的根目录下的所有文件都cp到这个img中就可以了吗? 谢谢
felonwan
帖子: 262
注册时间: 2008-09-12 12:32

Re: 安卓系统流畅体验Linux桌面[自制镜像和脚本已发布]

#112

帖子 felonwan » 2014-07-26 0:50

myufu 写了: 麻烦问下,文章中的启动linux系统的img文件是如何做的?这个img文件都包含什么?是我把一个装好的系统的根目录下的所有文件都cp到这个img中就可以了吗? 谢谢
你自己已经说到点子上了哦,没错,就是一个linux根目录下的所有文件,不过要是arm版的哦。
用QEMU和dd命令就可以自己制作。
头像
1006426581
帖子: 1
注册时间: 2014-07-28 22:26
系统: win7

Re: 安卓系统流畅体验Linux桌面[自制镜像和脚本已发布]

#113

帖子 1006426581 » 2014-07-28 22:30

:em03 感谢分享。。。。。。。。。。。。。。。。
头像
bokuno
帖子: 177
注册时间: 2009-05-10 22:18
系统: Slax Linux

Re: 安卓系统流畅体验Linux桌面[自制镜像和脚本已发布]

#114

帖子 bokuno » 2014-08-05 16:09

首先十分感谢分享。
我的平板是台电的A10t,能正常进入桌面,但是,鼠标没反应。
感觉它还是有反应的,鼠标就在屏幕中间晃啊晃,系统进入屏幕保护程序后,点一下平板的屏幕还是能回到系统桌面的,但就是移不动鼠标光标,插上USB鼠标,加上AC电源也不行。键盘没测试。
:em20
Using Slax Linux.
With KDE Desktop, Konqueror browser.
felonwan
帖子: 262
注册时间: 2008-09-12 12:32

Re: 安卓系统流畅体验Linux桌面[自制镜像和脚本已发布]

#115

帖子 felonwan » 2014-08-08 23:39

按我的教程试试换触屏驱动?(插鼠标不能用的话,似乎和这个也没多大关系哈。)
bokuno 写了:首先十分感谢分享。
我的平板是台电的A10t,能正常进入桌面,但是,鼠标没反应。
感觉它还是有反应的,鼠标就在屏幕中间晃啊晃,系统进入屏幕保护程序后,点一下平板的屏幕还是能回到系统桌面的,但就是移不动鼠标光标,插上USB鼠标,加上AC电源也不行。键盘没测试。
:em20
iloveola
帖子: 3
注册时间: 2014-08-22 12:57
系统: win7

Re: 安卓系统流畅体验Linux桌面[自制镜像和脚本已发布]

#116

帖子 iloveola » 2014-08-22 12:59

楼主你好,我刚开始研究这个系统,
按照你说的程序做了下,结果出现下面提示。
tmp-mksh:daemonize:cant execute:permission denied
felonwan
帖子: 262
注册时间: 2008-09-12 12:32

Re: 安卓系统流畅体验Linux桌面[自制镜像和脚本已发布]

#117

帖子 felonwan » 2014-08-24 13:42

iloveola 写了:楼主你好,我刚开始研究这个系统,
按照你说的程序做了下,结果出现下面提示。
tmp-mksh:daemonize:cant execute:permission denied

没有权限,一不是root用户,二daemonize没有可执行权限。
iloveola
帖子: 3
注册时间: 2014-08-22 12:57
系统: win7

Re: 安卓系统流畅体验Linux桌面[自制镜像和脚本已发布]

#118

帖子 iloveola » 2014-08-25 14:21

felonwan 写了:
iloveola 写了:楼主你好,我刚开始研究这个系统,
按照你说的程序做了下,结果出现下面提示。
tmp-mksh:daemonize:cant execute:permission denied

没有权限,一不是root用户,二daemonize没有可执行权限。
你好,我的平板是root过的。装的是su。所以这个daemonize可执行权限怎么给予?我的机子本身没有daemonize这个文件,是从你的文件包里复制的,复制进的system/bin。非常感谢!
FrankCo
帖子: 3
注册时间: 2014-08-25 13:27
系统: Mac OS X,Ubuntu14.04

Re: 安卓系统流畅体验Linux桌面[自制镜像和脚本已发布]

#119

帖子 FrankCo » 2014-08-25 14:56

运行后出现
p /sdcard/linaro.img /data/li
naro startlubuntu<
sh: daemonize: can't execute: Permission denied
然后就没了。。。
iloveola
帖子: 3
注册时间: 2014-08-22 12:57
系统: win7

Re: 安卓系统流畅体验Linux桌面[自制镜像和脚本已发布]

#120

帖子 iloveola » 2014-08-25 15:08

自己改了下daemonize文件的权限,全部执行打了√,然后回车没有任何反应。也没黑屏也没重启。好奇怪,我就是把xfdesktop.zip里面的全部文件跟Linaro.img(用的ext4)一共六个文件用RE复制进了根目录下的sdcard里,daemonize复制到了system/bin同时所有执行权限打√。
求指导o_o
回复