Booyo LiveCD/Klik Linux
design ¶* web 을 통해 리눅스 설치
유형별 구분 ¶* zero-install
* MS windows
* scalability
고려할 사항 ¶
Debian has three separate places where software is installed, corresponding to the three different ways of installing software: /usr contains software managed by the APT system and installed by root; /usr/local contains non-APT software installed by root; and each user's home directory contains user-installed software. This is rather confusing for everyone, and leads to duplication if several users install the same software in their home directories.
서버 클라이언트 ¶
Automatically downloading and running programs across the Internet can sound like a virus-builder’s dream. ActiveX especially brings up the thorny issue of security in client-side programming. If you click on a Web site, you might automatically download any number of things along with the HTML page: GIF files, script code, compiled Java code, and ActiveX components. Some of these are benign; GIF files can’t do any harm, and scripting languages are generally limited in what they can do. Java was also designed to run its applets within a “sandbox” of safety, which prevents it from writing to disk or accessing memory outside the sandbox. ActiveX is at the opposite end of the spectrum. Programming with ActiveX is like programming Windows – you can do anything you want. So if you click on a page that downloads an ActiveX component, that component might cause damage to the files on your disk. Of course, programs that you load onto your computer that are not restricted to running inside a Web browser can do the same thing. Viruses downloaded from Bulletin-Board Systems (BBSs) have long been a problem, but the speed of the Internet amplifies the difficulty. The solution seems to be “digital signatures,” whereby code is verified to show who the author is. This is based on the idea that a virus works because its creator can be anonymous, so if you remove the anonymity individuals will be forced to be responsible for their actions. This seems like a good plan because it allows programs to be much more functional, and I suspect it will eliminate malicious mischief. If, however, a program has an unintentional bug that’s destructive it will still cause problems. 프로그램의 구분 ¶
패키지 구분 ¶
upgrade ¶
install ¶
/home/tcheun1/.mozilla/firefox/891y6mnx.default/user.js user_pref("network.protocol-handler.app.klik", "~/.klik");
If you were not expecting this request it may be an attempt to exploit a weakness in that other program. Cancel this request unless you are sure it is not malicious.
export RUN=
echo $1 | sed s@klik:\/\/@@ && (wget -q http://klik.atekon.de/apt/?package=$RUN -U "klik/0.1.3cli (uname -a @$VERSION@)" -O - | sh || derror "Error while trying to run $RUN" )
kbuildsycoca
3.4 에서 시험 ¶root 로 수행하면 문제 생김
knoppix 로 수행하면 수행됨.
mount 에서 문제 발생
knoppix@ttyp1[Desktop]$ wget -v http://klik.atekon.de/apt/?package=nvu -U "klik/0.1.3cli (Linux Knoppix 2.4.26 #1 SMP Sa Apr 17 19:33:42 CEST 2004 i686 GNU/Linux @3.4 2004-05-17@)" -O tst1 --14:38:48-- http://klik.atekon.de/apt/?package=nvu => `tst1' Resolving klik.atekon.de... 134.169.172.48 Connecting to klik.atekon.de[134.169.172.48]:80... connected. HTTP request sent, awaiting response... 200 OK Length: unspecified [text/html] [ <=> ] 325 --.--K/s 14:38:55 (3.10 MB/s) - `tst1' saved [325] # count this as a klik wget "http://klik.atekon.de/apt/countklik.php?package=nvu&client=1" -O - >/dev/null 2>&1 || echo "no klik counted" kfmclient copy 'http://klik.atekon.de/cmg/nvu.cmg' ~/Desktop/; ~/.zAppRun ~/Desktop/nvu.cmg && wget "http://klik.atekon.de/apt/countsuccess.php?package=nvu&client=1" -O - >/dev/null 2>&1 knoppix@ttyp0Desktop$ pwd
/home/knoppix/Desktop
-rw-r
바탕화면에 nvu.cmg 생성됨
/home/knoppix/.zAppRun: line 121: error: command not found
104 cd /mnt/app
108 mkdir 1
111 cd 1
113 ln -s /home/knoppix/Desktop/nvu.cmg image
124 mount /mnt/app/1
knoppix@ttyp11$ ls
LICENSE libgkgfx.so libssl3.so regchrome
TestGtkEmbed libgtkembedmoz.so libxlibrgb.so regxpcom
bloaturls.txt libgtkxtbin.so libxpcom.so res
chrome libmozjs.so libxpcom_compat.so run-mozilla.sh
components libnspr4.so libxpistub.so shlibsign
components.ini libnss3.so mangle wrapper
defaults libnssckbi.so mozilla-xremote-client xpcshell
defaults.ini libplc4.so nsinstall xpicleanup
elf-dynstr-gc libplds4.so nvu xpidl
extensions libsmime3.so nvu-bin xpt_dump
greprefs libsoftokn3.chk nvu-config xpt_link
icons libsoftokn3.so plugins
syscoca ¶Sycoca stands for System Configuration Cache and is nominated to be the succesor of kregistry. It is a light weight database optimized for looking up static system configuration information fast and with minimal memory usage.
The database will offer read-only access to many clients at once. The database is read-only which means that looking up can be very fast since no locking or transaction operations need to be performed. The database is created/updated by kbuildsycoca from human readable configuration files. kded monitors these configuration files and will call kbuildsycoca to update the database when a change in any of the configuration files is detected.
Updating the database will mean that the database is replaced as a whole by a more up to date version. This approach allows a very straight forward database implementation. With Sycoca it will not be necessary any more to parse multiple files when looking for static system information. Instead Sycoca can return the requested information with a performance near to O(1). Examples of static system information are mimetype bindings and .desktop information (servicetypes). Application specific configuration information will _NOT_ be stored in Sycoca since this information is usually subject to regular change.
KDE Daemon - triggers Sycoca database updates when needed.
일의 순서 ¶
20.How to check the RPM dependency When making custom-made CD etc.,which is necessary to investigate the dependency of the RPM files. It can investigate easily as follows: Premise:The directory with RPM files are /tmp/i386/RedHat/RPMS $cd /tmp/i386/RedHat/RPMS Make the directory for test $mkdir -p /tmp/testdb Initialize the RPMDB $rpm --initdb --dbpath /tmp/testdb Dependency check $rpm --test --dbpath /tmp/testdb -Uvh *.rpm The message will be outputted if caught in the check of the dependency, Please add the required RPM files. [root@localhost tmp]# rpm --initdb --dbpath /tmp/testdb [root@localhost tmp]# rpm --test --dbpath /tmp/testdb -Uvh /home/tcheun/acroread-5.0.10-1.1.fc3.rf.i386.rpm 경고: /home/tcheun/acroread-5.0.10-1.1.fc3.rf.i386.rpm: V3 DSA signature: NOKEY, key ID 6b8d79e6 오류: Failed dependencies: /bin/sh is needed by acroread-5.0.10-1.1.fc3.rf.i386 htmlview is needed by acroread-5.0.10-1.1.fc3.rf.i386 libX11.so.6 is needed by acroread-5.0.10-1.1.fc3.rf.i386 libXp.so.6 is needed by acroread-5.0.10-1.1.fc3.rf.i386 libXt.so.6 is needed by acroread-5.0.10-1.1.fc3.rf.i386 libc.so.6 is needed by acroread-5.0.10-1.1.fc3.rf.i386 libc.so.6(GLIBC_2.0) is needed by acroread-5.0.10-1.1.fc3.rf.i386 libc.so.6(GLIBC_2.1) is needed by acroread-5.0.10-1.1.fc3.rf.i386 libdl.so.2 is needed by acroread-5.0.10-1.1.fc3.rf.i386 libdl.so.2(GLIBC_2.0) is needed by acroread-5.0.10-1.1.fc3.rf.i386 libdl.so.2(GLIBC_2.1) is needed by acroread-5.0.10-1.1.fc3.rf.i386 libm.so.6 is needed by acroread-5.0.10-1.1.fc3.rf.i386 libm.so.6(GLIBC_2.0) is needed by acroread-5.0.10-1.1.fc3.rf.i386 libm.so.6(GLIBC_2.1) is needed by acroread-5.0.10-1.1.fc3.rf.i386 [root@localhost tmp]# rpm --test --dbpath /tmp/testdb -Uvh /home/tcheun/xdialog-2.1.1-1.1.fc3.rf.i386.rpm 경고: /home/tcheun/xdialog-2.1.1-1.1.fc3.rf.i386.rpm: V3 DSA signature: NOKEY, key ID 6b8d79e6 오류: Failed dependencies: /bin/sh is needed by xdialog-2.1.1-1.1.fc3.rf.i386 libX11.so.6 is needed by xdialog-2.1.1-1.1.fc3.rf.i386 libXext.so.6 is needed by xdialog-2.1.1-1.1.fc3.rf.i386 libXi.so.6 is needed by xdialog-2.1.1-1.1.fc3.rf.i386 libc.so.6 is needed by xdialog-2.1.1-1.1.fc3.rf.i386 libc.so.6(GLIBC_2.0) is needed by xdialog-2.1.1-1.1.fc3.rf.i386 libc.so.6(GLIBC_2.1) is needed by xdialog-2.1.1-1.1.fc3.rf.i386 libdl.so.2 is needed by xdialog-2.1.1-1.1.fc3.rf.i386 libgdk-1.2.so.0 is needed by xdialog-2.1.1-1.1.fc3.rf.i386 libglib-1.2.so.0 is needed by xdialog-2.1.1-1.1.fc3.rf.i386 libgmodule-1.2.so.0 is needed by xdialog-2.1.1-1.1.fc3.rf.i386 libgtk-1.2.so.0 is needed by xdialog-2.1.1-1.1.fc3.rf.i386 libm.so.6 is needed by xdialog-2.1.1-1.1.fc3.rf.i386 [root@localhost rpm]# pwd /var/lib/rpm [root@localhost rpm]# ls Basenames Group Providename Requireversion __db.001 Conflictname Installtid Provideversion Sha1header __db.002 Dirnames Name Pubkeys Sigmd5 __db.003 Filemd5s Packages Requirename Triggername [root@localhost tcheun]# rpm --test --dbpath /mnt/hdc7/var/lib/rpm -Uvh /home/tcheun/acroread-5.0.10-1.1.fc3.rf.i386.rpm 경고: /home/tcheun/acroread-5.0.10-1.1.fc3.rf.i386.rpm: V3 DSA signature: NOKEY, key ID 6b8d79e6 오류: Failed dependencies: libXp.so.6 is needed by acroread-5.0.10-1.1.fc3.rf.i386 [root@localhost tcheun]# rpm --test --dbpath /mnt/hdc7/var/lib/rpm -Uvh /home/tcheun/xdialog-2.1.1-1.1.fc3.rf.i386.rpm 경고: /home/tcheun/xdialog-2.1.1-1.1.fc3.rf.i386.rpm: V3 DSA signature: NOKEY, key ID 6b8d79e6 준비 중... ########################################### [100%] rpm 을 만들어 주는 툴
http://asic-linux.com.mx/~izto/checkinstall/faq.php
http://www.pycs.net/lateral/stories/30.html
unionfs ¶디자인 자체가 달라져야 할 것 같다.
부여의 경우 root 와 일반유저의 구분이 있으므로, klik 나 zero install 을 사용할 필요가 없을 것 같다.
오히려 java 를 이용하는 것이 낳지 않을까?
java 가 할 수 없는 일이 어떤 것들인가?
firefox ¶
klik test ko3.7 ¶knoppix@ttyp1knoppix$ wget klik.atekon.de/client/install -O -|sh
=> `-'
Resolving klik.atekon.de... 134.169.172.48
Connecting to klik.atekon.de134.169.172.48:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 11,572 text/plain
100%====================================> 11,572 18.29K/s
13:32:19 (18.27 KB/s) - `-' saved 11572/11572
konqueror: ERROR: Error in BrowserExtension::actionSlotMap(), unknown action : searchProvider
konqueror: ERROR: Error in BrowserExtension::actionSlotMap(), unknown action : searchProvider
konqueror 을 띄우고 klik 페이지로 이동함.
nvu klik
nvu.cmk 복사함.
INSTALL 되서 수행됨.
바탕화면에 nvu.cmg 되 생성됨.
# count this as a klik
wget "http://klik.atekon.de/apt/countklik.php?package=lphoto2&client=1" -O - >/dev/null 2>&1 || echo "no klik counted"
kfmclient copy 'http://klik.atekon.de/cmg/lphoto2.cmg' ~/Desktop/; ~/.zAppRun ~/Desktop/lphoto2.cmg && wget "http://klik.atekon.de/apt/countsuccess.php?package=lphoto2&client=1" -O - >/dev/null 2>&1
1 wget http://klik.atekon.de/cmg/lphoto2.cmg
2 ls
3 cp lphoto2.cmg Desktop/
4 .zAppRun Desktop/lphoto2.cmg
수행이 되지만 오류 메시지가 많이 나옴.
제대로 수행되는 것 같지 않음.
rm: cannot remove `/mnt/app/1//usr/share/doc/python2.3-qt3/changelog.gz': Read-only file system rm: cannot remove `/mnt/app/1//usr/share/doc/python2.3-qt3/copyright': Read-only file system knoppix@ttyp2klikscript$ sh skype.script
warning: gids truncated to 8 bits. (This may be a security concern.)
|
If it pours before seven, it has rained by eleven. |