/l3/users/eb/2009/linux9/root :1 :2 :3 :4 :5 :6 :7 :8 :9 :10 :11 :12 :13 :14 :15 :16 :17 :18 :19 :20 :21 :22 :23 :24 :25 :26 :27 :28 :29 :30 :31 :32 :33 :34 :35 :36 :37 :38 :39 |
|
#ssh 192.168.105.2
The authenticity of host '192.168.105.2 (192.168.105.2)' can't be established. RSA key fingerprint is 34:6c:c2:da:38:7c:d7:17:e9:cd:17:8d:e7:cf:f1:a6. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.105.2' (RSA) to the list of known hosts. root@192.168.105.2's password: Linux linux10 2.6.29-2-686 #1 SMP Sun May 17 17:56:29 UTC 2009 i686 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. You have new mail. Last login: Mon Jun 1 14:10:04 2009 from linux11.unix.nt |
#ssh -P 322 192.168.105.2
ssh: connect to host 322 port 22: Invalid argument |
#exit
exit Connection to 192.168.105.2 closed. |
#ssh -P322 192.168.105.2
ssh: illegal option -- 3 usage: ssh [-1246AaCfgKkMNnqsTtVvXxY] [-b bind_address] [-c cipher_spec] [-D [bind_address:]port] [-e escape_char] [-F configfile] [-i identity_file] [-L [bind_address:]port:host:hostport] [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port] [-R [bind_address:]port:host:hostport] [-S ctl_path] [-w local_tun[:remote_tun]] [user@]hostname [command] |
#ssh 192.168.105.2:322
ssh: Could not resolve hostname 192.168.105.2:322: Name or service not known |
#telnet 192.168.105.2 322
bash: telnet: команда не найдена |
#apt-get install telnet
Чтение списков пакетов... Готово Построение дерева зависимостей Чтение информации о состоянии... Готово Следующие пакеты устанавливались автоматически и больше не требуются: portmap Для их удаления используйте 'apt-get autoremove'. НОВЫЕ пакеты, которые будут установлены: telnet обновлено 0, установлено 1 новых пакетов, для удаления отмечено 0 пакетов, и 55 пакетов не обновлено. Необходимо скачать 65,8kБ архивов. После данной операции, объём занятого дискового пространства возрастёт на 147kB. Получено:1 http://192.168.105.2 sid/main telnet 0.17-36 [65,8kB] Получено 65,8kБ за 8s (7848Б/c) Выбор ранее не выбранного пакета telnet. (Чтение базы данных ... на данный момент установлено 54192 файлов и каталогов.) Распаковывается пакет telnet (из файла .../telnet_0.17-36_i386.deb)... Обрабатываются триггеры для man-db ... Обрабатываются триггеры для menu ... Настраивается пакет telnet (0.17-36) ... update-alternatives: используется `/usr/bin/telnet.netkit' для предоставления `/usr/bin/telnet' (telnet) в автоматический режим. Обрабатываются триггеры для menu ... |
#telnet 192.168.105.1 322
Trying 192.168.105.1... telnet: Unable to connect to remote host: Connection refused |
#telnet 192.168.105.1 22
Trying 192.168.105.1... ^C |
#telnet 192.168.105.2 22
Trying 192.168.105.2... ^C |
#ssh 192.168.105.2
^C |
#ping 192.168.105.2
PING 192.168.105.2 (192.168.105.2) 56(84) bytes of data. 64 bytes from 192.168.105.2: icmp_seq=1 ttl=64 time=1.01 ms 64 bytes from 192.168.105.2: icmp_seq=2 ttl=64 time=1.13 ms ^C --- 192.168.105.2 ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1001ms rtt min/avg/max/mdev = 1.010/1.074/1.138/0.064 ms |
#ping 192.168.105.2
|
#ssh 192.168.105.2
root@192.168.105.2's password: |
#ssh 192.168.105.2
ssh: connect to host 192.168.105.2 port 22: Connection refused |
#ssh 192.168.105.2
ssh: connect to host 192.168.105.2 port 22: Connection refused |
#ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:1e:8c:64:2c:4a inet addr:192.168.15.9 Bcast:192.168.15.255 Mask:255.255.255.0 inet6 addr: fe80::21e:8cff:fe64:2c4a/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:303822 errors:3701 dropped:0 overruns:0 frame:3003 TX packets:299689 errors:0 dropped:0 overruns:0 carrier:3 collisions:0 txqueuelen:1000 RX bytes:105594044 (100.7 MiB) TX bytes:89288087 (85.1 MiB) eth0.105 Link encap:Ethernet HWaddr 00:1e:8c:64:2c:4a inet addr:192.168.105.1 Bcast:192.168.105.255 Mask:255.255.255.0 ... collisions:0 txqueuelen:0 RX bytes:29543545 (28.1 MiB) TX bytes:58150553 (55.4 MiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:30050 errors:0 dropped:0 overruns:0 frame:0 TX packets:30050 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:1743940 (1.6 MiB) TX bytes:1743940 (1.6 MiB) |
#ssh 192.168.105.2
root@192.168.105.2's password: Linux linux10 2.6.29-2-686 #1 SMP Sun May 17 17:56:29 UTC 2009 i686 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. You have new mail. Last login: Tue Jun 2 14:51:45 2009 from linux11.unix.nt l3-agent is already running: pid=12576; pidfile=/root/.lilalo/l3-agent.pid |
#w
16:29:26 up 6:45, 5 users, load average: 0,35, 0,47, 0,51 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT user tty7 :0 09:45 6:45m 9:54 1.27s x-session-manag user pts/0 :0.0 09:46 3:48 0.84s 0.43s script -f -c ba user pts/5 :0.0 10:08 1:29 0.92s 0.50s script -f -c ba user pts/3 :0.0 11:44 46:36 0.40s 0.39s script -f -c ba root pts/9 192.168.105.1 16:29 0.00s 0.01s 0.01s script -f -c ba |
#w
16:33:58 up 6:50, 5 users, load average: 0,61, 0,47, 0,48 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT user tty7 :0 09:45 6:50m 9:57 1.27s x-session-manag user pts/0 :0.0 09:46 8:20 0.84s 0.43s script -f -c ba user pts/5 :0.0 10:08 1:07 0.92s 0.50s script -f -c ba user pts/3 :0.0 11:44 51:08 0.40s 0.39s script -f -c ba root pts/9 192.168.105.1 16:29 0.00s 0.01s 0.01s script -f -c ba |
#exit
exit Connection to 192.168.105.2 closed. |
#ssh 192.168.105.2
root@192.168.105.2's password: Linux linux10 2.6.29-2-686 #1 SMP Sun May 17 17:56:29 UTC 2009 i686 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. You have new mail. Last login: Tue Jun 2 16:29:23 2009 from 192.168.105.1 l3-agent is already running: pid=12576; pidfile=/root/.lilalo/l3-agent.pid |
#w
16:34:15 up 6:50, 5 users, load average: 0,86, 0,53, 0,49 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT user tty7 :0 09:45 6:50m 9:57 1.27s x-session-manag user pts/0 :0.0 09:46 8:37 0.84s 0.43s script -f -c ba user pts/5 :0.0 10:08 1:24 0.92s 0.50s script -f -c ba user pts/3 :0.0 11:44 51:25 0.40s 0.39s script -f -c ba root pts/9 192.168.105.1 16:34 0.00s 0.01s 0.01s script -f -c ba |
#exit
exit Connection to 192.168.105.2 closed. |
#ssh 192.168.105.2
root@192.168.105.2's password: Linux linux10 2.6.29-2-686 #1 SMP Sun May 17 17:56:29 UTC 2009 i686 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. You have new mail. Last login: Tue Jun 2 16:34:12 2009 from 192.168.105.1 l3-agent is already running: pid=12576; pidfile=/root/.lilalo/l3-agent.pid |
#w
16:34:51 up 6:51, 5 users, load average: 0,60, 0,50, 0,48 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT user tty7 :0 09:45 6:51m 9:57 1.27s x-session-manag user pts/0 :0.0 09:46 9:13 0.84s 0.43s script -f -c ba user pts/5 :0.0 10:08 2:00 0.92s 0.50s script -f -c ba user pts/3 :0.0 11:44 52:01 0.40s 0.39s script -f -c ba root pts/9 192.168.105.1 16:34 0.00s 0.01s 0.01s script -f -c ba |
#exit
exit Connection to 192.168.105.2 closed. |
#ssh 192.168.105.2
root@192.168.105.2's password: Linux linux10 2.6.29-2-686 #1 SMP Sun May 17 17:56:29 UTC 2009 i686 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. You have new mail. Last login: Tue Jun 2 16:34:49 2009 from 192.168.105.1 l3-agent is already running: pid=12576; pidfile=/root/.lilalo/l3-agent.pid |
#w
16:37:42 up 6:54, 5 users, load average: 1,53, 0,77, 0,57 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT user tty7 :0 09:45 6:54m 9:59 1.27s x-session-manag user pts/0 :0.0 09:46 12:04 0.85s 0.43s script -f -c ba user pts/5 :0.0 10:08 1:11 0.92s 0.50s script -f -c ba user pts/3 :0.0 11:44 54:52 0.40s 0.39s script -f -c ba root pts/9 192.168.105.1 16:37 0.00s 0.00s 0.00s script -f -c ba |
#exit
exit Connection to 192.168.105.2 closed. |
#ssh 192.168.105.2
root@192.168.105.2's password: Linux linux10 2.6.29-2-686 #1 SMP Sun May 17 17:56:29 UTC 2009 i686 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. You have new mail. Last login: Tue Jun 2 16:37:37 2009 from 192.168.105.1 l3-agent is already running: pid=12576; pidfile=/root/.lilalo/l3-agent.pid |
#w
16:39:43 up 6:56, 5 users, load average: 0,60, 0,65, 0,54 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT user tty7 :0 09:45 6:56m 10:01 1.27s x-session-manag user pts/0 :0.0 09:46 14:05 0.85s 0.43s script -f -c ba user pts/5 :0.0 10:08 1:31 0.92s 0.50s script -f -c ba user pts/3 :0.0 11:44 56:53 0.40s 0.39s script -f -c ba root pts/9 192.168.105.1 16:39 0.00s 0.01s 0.01s script -f -c ba |
#exit
exit Connection to 192.168.105.2 closed. |
#ssh 192.168.107.2
The authenticity of host '192.168.107.2 (192.168.107.2)' can't be established. RSA key fingerprint is 34:6c:c2:da:38:7c:d7:17:e9:cd:17:8d:e7:cf:f1:a6. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.107.2' (RSA) to the list of known hosts. root@192.168.107.2's password: Linux linux14 2.6.29-2-686 #1 SMP Sun May 17 17:56:29 UTC 2009 i686 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Tue Jun 2 16:11:26 2009 from 192.168.107.1 l3-agent is already running: pid=22520; pidfile=/root/.lilalo/l3-agent.pid |
#w
16:40:02 up 6:12, 12 users, load average: 1,71, 1,64, 1,62 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root tty1 - 14:54 1:45m 0.00s 0.00s script -f -c ba user tty7 :0 10:45 6:12m 5:32 0.44s x-session-manag root pts/1 :0.0 16:07 32:38 0.16s 0.16s script -f -c ba root pts/4 :0.0 10:46 1:23m 0.38s 0.15s script -f -c ba root pts/7 :0.0 16:01 4:07 0.19s 0.15s script -f -c ba root pts/10 :0.0 16:07 32:25 0.15s 0.15s script -f -c ba root pts/19 :0.0 13:50 2:08 0.24s 0.16s script -f -c ba root pts/13 :0.0 16:07 32:21 0.18s 0.18s script -f -c ba root pts/15 :0.0 16:07 19:09 0.16s 0.15s script -f -c ba root pts/22 192.168.107.1 16:11 28:25 0.00s 0.00s script -f -c ba root pts/24 linux9.unix.nt 16:40 0.00s 0.00s 0.00s script -f -c ba |
#exit
exit Connection to 192.168.107.2 closed. |
#ssh 192.168.107.2
root@192.168.107.2's password: Linux linux14 2.6.29-2-686 #1 SMP Sun May 17 17:56:29 UTC 2009 i686 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Tue Jun 2 16:40:00 2009 from linux9.unix.nt l3-agent is already running: pid=22520; pidfile=/root/.lilalo/l3-agent.pid |
#ssh 192.168.107.2
root@192.168.107.2's password: Linux linux14 2.6.29-2-686 #1 SMP Sun May 17 17:56:29 UTC 2009 i686 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Tue Jun 2 16:42:03 2009 from linux9.unix.nt l3-agent is already running: pid=22520; pidfile=/root/.lilalo/l3-agent.pid |
#exit
exit Connection to 192.168.107.2 closed. |
#w
16:42:14 up 6:14, 12 users, load average: 1,88, 1,74, 1,65 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root tty1 - 14:54 1:48m 0.00s 0.00s script -f -c ba user tty7 :0 10:45 6:14m 5:35 0.44s x-session-manag root pts/1 :0.0 16:07 34:50 0.16s 0.16s script -f -c ba root pts/4 :0.0 10:46 1:25m 0.38s 0.15s script -f -c ba root pts/7 :0.0 16:01 6:19 0.19s 0.15s script -f -c ba root pts/10 :0.0 16:07 34:37 0.15s 0.15s script -f -c ba root pts/19 :0.0 13:50 4:20 0.24s 0.16s script -f -c ba root pts/13 :0.0 16:07 34:33 0.18s 0.18s script -f -c ba root pts/15 :0.0 16:07 21:21 0.16s 0.15s script -f -c ba root pts/22 192.168.107.1 16:11 30:37 0.00s 0.00s script -f -c ba root pts/24 linux9.unix.nt 16:42 0.00s 0.01s 0.01s script -f -c ba |
#exit
exit Connection to 192.168.107.2 closed. |
#ssh 192.168.105.2
root@192.168.105.2's password: Linux linux10 2.6.29-2-686 #1 SMP Sun May 17 17:56:29 UTC 2009 i686 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. You have new mail. Last login: Tue Jun 2 16:39:41 2009 from 192.168.105.1 l3-agent is already running: pid=12576; pidfile=/root/.lilalo/l3-agent.pid |
#w
16:42:30 up 6:59, 5 users, load average: 0,74, 0,63, 0,55 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT user tty7 :0 09:45 6:59m 10:04 1.27s x-session-manag user pts/0 :0.0 09:46 16:52 0.85s 0.43s script -f -c ba user pts/5 :0.0 10:08 4:18 0.92s 0.50s script -f -c ba user pts/3 :0.0 11:44 59:40 0.40s 0.39s script -f -c ba root pts/9 192.168.105.1 16:42 0.00s 0.00s 0.00s script -f -c ba |
#exit
exit Connection to 192.168.105.2 closed. |
#netstat -a
unix 3 [ ] STREAM CONNECTED 24596 unix 3 [ ] STREAM CONNECTED 24595 @/tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTED 24594 unix 3 [ ] STREAM CONNECTED 13910 @/tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTED 13909 unix 3 [ ] STREAM CONNECTED 13908 @/tmp/dbus-OPDmbkucF0 unix 3 [ ] STREAM CONNECTED 13907 unix 3 [ ] STREAM CONNECTED 13905 /var/run/dbus/system_bus_socket unix 3 [ ] STREAM CONNECTED 13904 unix 3 [ ] STREAM CONNECTED 13903 @/tmp/.X11-unix/X0 ... unix 3 [ ] STREAM CONNECTED 7293 @/var/run/hald/dbus-l4Rs3eHb7K unix 3 [ ] STREAM CONNECTED 7292 unix 3 [ ] STREAM CONNECTED 7271 /var/run/dbus/system_bus_socket unix 3 [ ] STREAM CONNECTED 7270 unix 3 [ ] STREAM CONNECTED 7257 /var/run/dbus/system_bus_socket unix 3 [ ] STREAM CONNECTED 7256 unix 3 [ ] STREAM CONNECTED 7205 /dev/log unix 3 [ ] STREAM CONNECTED 7203 unix 3 [ ] STREAM CONNECTED 6933 unix 3 [ ] STREAM CONNECTED 6932 |
Время первой команды журнала | 14:28:56 2009- 6- 2 | ||||||||||||||||||||||||
Время последней команды журнала | 16:42:44 2009- 6- 2 | ||||||||||||||||||||||||
Количество командных строк в журнале | 45 | ||||||||||||||||||||||||
Процент команд с ненулевым кодом завершения, % | 15.56 | ||||||||||||||||||||||||
Процент синтаксически неверно набранных команд, % | 2.22 | ||||||||||||||||||||||||
Суммарное время работы с терминалом *, час | 1.20 | ||||||||||||||||||||||||
Количество командных строк в единицу времени, команда/мин | 0.63 | ||||||||||||||||||||||||
Частота использования команд |
|
В журнал автоматически попадают все команды, данные в любом терминале системы.
Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду w. В поле WHAT, соответствующем текущему терминалу, должна быть указана программа script.
Команды, при наборе которых были допущены синтаксические ошибки, выводятся перечёркнутым текстом:
$ l s-l bash: l: command not found |
Если код завершения команды равен нулю, команда была выполнена без ошибок. Команды, код завершения которых отличен от нуля, выделяются цветом.
$ test 5 -lt 4 |
Команды, ход выполнения которых был прерван пользователем, выделяются цветом.
$ find / -name abc find: /home/devi-orig/.gnome2: Keine Berechtigung find: /home/devi-orig/.gnome2_private: Keine Berechtigung find: /home/devi-orig/.nautilus/metafiles: Keine Berechtigung find: /home/devi-orig/.metacity: Keine Berechtigung find: /home/devi-orig/.inkscape: Keine Berechtigung ^C |
Команды, выполненные с привилегиями суперпользователя, выделяются слева красной чертой.
# id uid=0(root) gid=0(root) Gruppen=0(root) |
Изменения, внесённые в текстовый файл с помощью редактора, запоминаются и показываются в журнале в формате ed. Строки, начинающиеся символом "<", удалены, а строки, начинающиеся символом ">" -- добавлены.
$ vi ~/.bashrc
|
Для того чтобы изменить файл в соответствии с показанными в диффшоте изменениями, можно воспользоваться командой patch. Нужно скопировать изменения, запустить программу patch, указав в качестве её аргумента файл, к которому применяются изменения, и всавить скопированный текст:
$ patch ~/.bashrc |
Для того чтобы получить краткую справочную информацию о команде, нужно подвести к ней мышь. Во всплывающей подсказке появится краткое описание команды.
Если справочная информация о команде есть, команда выделяется голубым фоном, например: vi. Если справочная информация отсутствует, команда выделяется розовым фоном, например: notepad.exe. Справочная информация может отсутствовать в том случае, если (1) команда введена неверно; (2) если распознавание команды LiLaLo выполнено неверно; (3) если информация о команде неизвестна LiLaLo. Последнее возможно для редких команд.
Большие, в особенности многострочные, всплывающие подсказки лучше всего показываются браузерами KDE Konqueror, Apple Safari и Microsoft Internet Explorer. В браузерах Mozilla и Firefox они отображаются не полностью, а вместо перевода строки выводится специальный символ.
Время ввода команды, показанное в журнале, соответствует времени начала ввода командной строки, которое равно тому моменту, когда на терминале появилось приглашение интерпретатора
Имя терминала, на котором была введена команда, показано в специальном блоке. Этот блок показывается только в том случае, если терминал текущей команды отличается от терминала предыдущей.
Вывод не интересующих вас в настоящий момент элементов журнала, таких как время, имя терминала и других, можно отключить. Для этого нужно воспользоваться формой управления журналом вверху страницы.
Небольшие комментарии к командам можно вставлять прямо из командной строки. Комментарий вводится прямо в командную строку, после символов #^ или #v. Символы ^ и v показывают направление выбора команды, к которой относится комментарий: ^ - к предыдущей, v - к следующей. Например, если в командной строке было введено:
$ whoami
user
$ #^ Интересно, кто я?в журнале это будет выглядеть так:
$ whoami
user
Интересно, кто я? |
Если комментарий содержит несколько строк, его можно вставить в журнал следующим образом:
$ whoami
user
$ cat > /dev/null #^ Интересно, кто я?
Программа whoami выводит имя пользователя, под которым мы зарегистрировались в системе. - Она не может ответить на вопрос о нашем назначении в этом мире.В журнале это будет выглядеть так:
$ whoami user
|
Комментарии, не относящиеся непосредственно ни к какой из команд, добавляются точно таким же способом, только вместо симолов #^ или #v нужно использовать символы #=
1 2 3 4Группы команд, выполненных на разных терминалах, разделяются специальной линией. Под этой линией в правом углу показано имя терминала, на котором выполнялись команды. Для того чтобы посмотреть команды только одного сенса, нужно щёкнуть по этому названию.
LiLaLo (L3) расшифровывается как Live Lab Log.
Программа разработана для повышения эффективности обучения Unix/Linux-системам.
(c) Игорь Чубин, 2004-2008