EvilDaemon | So, uh, what did I do wrong? Made an x86_x64 cd? | 00:00 |
---|---|---|
EvilDaemon | And then what kind do I need for my kind of box? | 00:01 |
slangasek | you need the i386 one instead of the amd64 one. | 00:02 |
EvilDaemon | okay, thanks. | 00:02 |
EvilDaemon | This server isn't hooked up to the internet. Can I sneakernet Apache, php5, etc. Over to it? | 00:03 |
slangasek | those are included on the server CD; so for values of "sneakernet" that include "the install CD", yes | 00:04 |
philsf | how hard is it nowadays to setup a NIS+ on ubuntu? (I have used NIS in the past, and the docs made clear that NIS+ was pretty hard to do by then, some 8 years ago) | 01:09 |
slangasek | setting up a server, or a client? | 01:11 |
=== PrivateVoid_ is now known as PrivateVoid | ||
slangasek | AFAIK, there has never been support for setting up an NIS+ server with free software; by the time people got around to thinking about it, LDAP had taken over | 01:13 |
slangasek | I think Novell (SuSE) had a non-free NIS+ server implementation | 01:13 |
=== NCommander is now known as MAC | ||
=== MAC is now known as NCommander | ||
philsf | slangasek: I was thinking both client and server | 02:27 |
philsf | I'm in the very least, interested in the same thing NIS accomplishes, but securely. in a near future, I'd like to incorporate PIM features, as I understand it can do (LDAP). any pointers? | 02:29 |
philsf | by "what NIS accomplishes" I mean at least a remote login integrated with local file ownership | 02:30 |
uvirtbot` | New bug: #271942 in samba (main) "DBus Error samba " [Undecided,New] https://launchpad.net/bugs/271942 | 02:52 |
=== ScottK is now known as ScottK-vacation | ||
youbuntu2008 | I'm trying to 'insmod' my own driver to access parallel port, but parport0 has already got there earlier :-o Then I tried to 'rmmod parport', but its says it's in use by ppdev,lp,parport_pc :~o~~ But, checking on 'ps -e' it doesn't show these processes. How to remove the current driver having parport??? :-) | 05:02 |
youbuntu2008 | My `uname -r` = 2.6.24-19-server , and i installed it from downloaded ISO image from web. | 05:05 |
hads | In use by tells you the modules which are using it. | 05:06 |
hads | lsmod | grep par | 05:06 |
youbuntu2008 | 'lsmod | grep par' returns zpar, parport_pc, parport. Actually 'zpar' is my driver I tried to 'insmod' once just now but it gave some error message. | 05:11 |
youbuntu2008 | Tried to rmmod zpar but 'is in use'; tried to rmmod parport_pc but 'is in use'; finally rmmod parport_pc but 'is in use by ppdev,lp,parport_pc'. I think i'm gonna reboot the server. | 05:13 |
youbuntu2008 | rebooting.... (BTW this is not a production svr :) | 05:17 |
youbuntu2008 | OMG!!! During reboot, at 'Start up ...', the kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) -- u think i can recover or correct this? | 05:20 |
youbuntu2008 | already recovrin... foooohh!!!! (exhale) | 05:35 |
youbuntu2008 | hads - thanks!!! | 05:35 |
youbuntu2008 | bye bye | 05:35 |
lukehasnoname | mdz: /Off topic You have a wikipedia entry. Not only that, but it's listed as one of the main articles of the Linux portal in Wikipedia. | 07:38 |
kraut | moin | 08:21 |
* delcoyote hi | 09:15 | |
remote | hi | 09:17 |
=== mindframe_ is now known as mindframe | ||
uvirtbot` | New bug: #272060 in likewise-open (main) "Missing DDNS update when a domain is joined" [Medium,In progress] https://launchpad.net/bugs/272060 | 10:56 |
sommer | Koon: just committed the tomcat section, thanks again | 13:33 |
Koon | sommer: you're welcom ! | 13:34 |
Koon | e | 13:34 |
=== sourcode_ is now known as sourcode[0] | ||
uvirtbot` | New bug: #272132 in likewise-open (main) "Likewise Open starts at S20, then at S92 when a domain is joined" [Low,In progress] https://launchpad.net/bugs/272132 | 14:41 |
uvirtbot` | New bug: #272134 in likewise-open (main) "[FFe] Update to 4.1.2982 bugfix microrelease" [Undecided,New] https://launchpad.net/bugs/272134 | 14:46 |
raraujo | hi all | 15:10 |
raraujo | I got a dedicated server with ubuntu 8.04 on it and I only have root access, I created a user and I would like to have access to sudo commands, in 6.10 I could usermod -a -G admin user, but it seems group admin doesn't exist any more | 15:11 |
raraujo | can someone help me | 15:11 |
raraujo | please | 15:11 |
SchneeSchwarz | raraujo: if there really is no admin group (grep '^admin:' /etc/group) you could create it (addgroup --system admin) | 15:29 |
SchneeSchwarz | Or you could add your user account directly to sudoers (visudo) | 15:30 |
raraujo | thx I figured it out know | 15:33 |
raraujo | there was a group sudo | 15:33 |
raraujo | but in /etc/sudoers it was commented | 15:33 |
raraujo | but now I have another problem | 15:33 |
raraujo | bahs completion doesn't work properly as user | 15:33 |
raraujo | if I try to vi /et<TAB> it doesn't wokr | 15:33 |
raraujo | vi /et-sh: <( compgen -d -- '/et' ): No such file or directory | 15:33 |
raraujo | -sh: <( eval compgen -f -X '*.@(o|so|so.!(conf)|a|rpm|gif|GIF|jp?(e)g|JP?(E)G|mp3|MP3|mp?(e)g|MPG|avi|AVI|asf|ASF|ogg|OGG|class|CLASS)' -- $(quote_readline $cur) ): No such file or directory | 15:33 |
raraujo | but as root it works and also if I don't put anything like vi/cd or so in front of the path it works | 15:34 |
raraujo | any ideas why? | 15:34 |
raraujo | thanks a lot for your help and c u | 15:37 |
zul | mathiaz: for samba-3.2.4 changelog should we list all of our Debian changes again? | 16:16 |
mathiaz | zul: is it a merge ? | 16:16 |
zul | nope its new | 16:17 |
mathiaz | zul: so no - the changelog entry should list what has changed between the last upload/entry and the current one. | 16:17 |
zul | Im just trying to figure out what I should put in the changelog other than its a New upstream version | 16:17 |
mathiaz | zul: new upstream version with a list of LP bugs that it may fix. | 16:18 |
zul | k | 16:18 |
mathiaz | zul: you could also list the mini changelog entry from the annoucement | 16:18 |
zul | yep | 16:18 |
mathiaz | zul: http://paste.ubuntu.com/48329/ <- I'd include that part in the changelog entry | 16:20 |
zul | gotcha.. | 16:24 |
zul | mathiaz: test building.. | 16:25 |
=== mcasadevall is now known as NCommander | ||
espacious | can someone help wit this eroor | 16:47 |
espacious | PHP Warning: PHP Startup: Unable to load dynamic library | 16:47 |
espacious | http://pastebin.com/m29b19e19 | 16:48 |
espacious | Your PHP installation appears to be missing the MySQL extension which is required by WordPress. | 16:48 |
espacious | some modules for php are missin i presaude | 16:48 |
sommer | espacious: do sudo apt-get install php5-mysql | 17:00 |
espacious | sommer | 17:01 |
espacious | now i reinstalled php5 | 17:01 |
espacious | seem ok | 17:01 |
sommer | cool | 17:01 |
espacious | seems ok | 17:01 |
espacious | but | 17:01 |
espacious | pages load from outside but from inside only in IE lol not in Firefox | 17:02 |
espacious | strange | 17:02 |
espacious | firefox still ask to save a file | 17:02 |
espacious | also in IE crashes | 17:03 |
espacious | damn | 17:03 |
sommer | espacious: you might try restarting apache | 17:04 |
espacious | im reboting the whole pc | 17:04 |
espacious | also my workstation brb | 17:04 |
espacious | sth is causing problems | 17:04 |
espacious | still the same | 17:09 |
espacious | firefox wont open localy | 17:10 |
espacious | externaly no problem | 17:10 |
espacious | i think now its an apache thing | 17:10 |
lukehasnoname | Is anyone U-S for KVM-based virtualization (multiple VMs, production environment)? | 17:36 |
lukehasnoname | just curiou | 17:36 |
lukehasnoname | s | 17:36 |
mathiaz | lukehasnoname: I'm using it. | 17:38 |
lukehasnoname | hm | 17:39 |
mathiaz | zul: we should have a look at the latest upload of mysql in debian. | 17:46 |
mathiaz | zul: there may be important fixes that have been uploaded that are worth porting to 5.0.67 | 17:47 |
lukehasnoname | Idea: Dynamic web environment builder: Linux/Apache/(MySQL||PostgreSQL)/(PHP||Python||Perl||Ruby) auto configured at or immediately after tasksel | 17:56 |
trashguy | get rid of ruby and perl then maybe | 17:57 |
lukehasnoname | damnit | 17:57 |
trashguy | lulz | 18:04 |
Izinucs | lukehasnoname: check on #ubuntu-server | 18:06 |
trashguy | ? | 18:06 |
Izinucs | oops.. I am on "server.. " sorry just noticed that.. | 18:07 |
Izinucs | too many open channels. | 18:07 |
kiko | hey there | 18:41 |
mathiaz | hi kiko | 18:41 |
kiko | question for KVM people: is it possible for the host to access a guest's filesystem directly? | 18:43 |
mathiaz | kiko: while the guest is running ? | 18:43 |
kiko | yeah | 18:43 |
mathiaz | kiko: if so - you could use a network file system to do it. | 18:44 |
kiko | mathiaz, NFS being the most obvious? | 18:44 |
mathiaz | kiko: yes | 18:44 |
mathiaz | kiko: what do you want to do exactly ? | 18:44 |
kiko_ | mathiaz, considering running PQM jobs inside a KVM | 18:45 |
=== kiko_ is now known as kiko | ||
mathiaz | kiko: and you'd like to copy the job inside the guest ? | 18:46 |
kiko | mathiaz, well, I need to kick off the job, so there's that, but I also want to read the log and figure out if it succeeded or failed. | 18:46 |
kiko | I realize I could write a server to run on the client and allow manipulation that way | 18:47 |
mathiaz | kiko: right - I'd tend to try to pull things from the guest in that scenario | 18:47 |
kiko | was just musing | 18:47 |
kiko | right. | 18:47 |
mathiaz | kiko: I've been thinking about that use case too while doing automated iso testing. | 18:49 |
mathiaz | kiko: and I've experimented with the client pulling stuff from the server | 18:49 |
kiko | mathiaz, really! we should swap notes. I only just thought about doing it. | 18:49 |
mathiaz | kiko: I don't think that having a server runing on the guest and pushing things to the guest is the best way to do it. | 18:50 |
mathiaz | kiko: a pull architecture seems more appriorate in that use case IMO | 18:50 |
kiko | mathiaz, in part I agree because you'd want the guest to be as untainted as possible | 18:51 |
kiko | mathiaz, so exporting via NFS for instance is pretty transparent | 18:51 |
kiko | but running a service etc less so | 18:51 |
mathiaz | kiko: right - and it scales better also | 18:51 |
mathiaz | kiko: I've taken that use case as an excuse to play with couchdb | 18:51 |
mathiaz | kiko: http://incubator.apache.org/couchdb/ | 18:52 |
kiko | yeah, I know of that project | 18:52 |
mathiaz | kiko: for each test case (which is a guest) a document is created. inside there is the test script to run. | 18:53 |
mathiaz | kiko: and the guest just needs to know the document id/url and pull and the things from there. | 18:53 |
mathiaz | kiko: it can also push all the information it wants (such as log, debug info, etc...) | 18:53 |
kiko | interesting plan | 18:54 |
mathiaz | kiko: and then you can just look at the document to see where the test case is. | 18:54 |
mathiaz | kiko: couchdb has an integrated scripting/search engine to create views. | 18:54 |
mathiaz | kiko: so you can create your own views to see which test cases have failed, and then drilled down to the failure and look at the logs. | 18:55 |
kiko | I'm going to take a look at it | 18:56 |
kiko | it looks interesting | 18:56 |
mathiaz | kiko: awesome - let me know what you came up with. | 18:56 |
kiko | mathiaz, will do. thanks for the help! | 18:57 |
howdy1234567890 | hi... i installed/setup an ircd properly, it's running... though am unable to connect with a client, any ideas? | 19:12 |
howdy1234567890 | I'm not sure why I'm unable to connect to my fresh ircd install. . . it is set up and everything. | 19:13 |
howdy1234567890 | i followed these steps exactly: http://www.irchelp.org/irchelp/ircd/h7setup.html | 19:13 |
zul | which ip address is it bound to? | 19:15 |
howdy1234567890 | ah was i just disconnected... (sigh) well that could be one problem, though it's not my internet, it was working fine when i attempted to connect. | 19:17 |
howdy1234567890 | test123 | 19:17 |
howdy1234567890 | test 1 2 3 | 19:17 |
howdy1234567890 | am i on ? | 19:17 |
howdy1234567890 | ok i'm back on now... i was disconnected. | 19:17 |
howdy1234567890 | (sigh) well that could be one problem, though it's not my internet, it was working fine when i attempted to connect. | 19:17 |
howdy1234567890 | I just received the message "which ip address..." from zul, though if anyone said anything before that i missed it. :( | 19:17 |
howdy1234567890 | If the ip address question was going to me... it's an active ip, on a website i run, on another server... it's running. | 19:18 |
howdy1234567890 | just can't seem to connect. | 19:18 |
compengi | if i built window manager like nautilus and other applications from ubuntu server's edition. would it more memory as in ubuntu's gnome distro? | 19:18 |
howdy1234567890 | am i in the wrong channel? | 19:19 |
compengi | would it eat* | 19:19 |
bytor4232 | compengi: No | 19:19 |
compengi | bytor4232, but i would require to install Xorg right? | 19:20 |
howdy1234567890 | ah, where should i go to ask about irc server? | 19:20 |
compengi | howdy1234567890, you are building IRCD? | 19:20 |
howdy1234567890 | i built | 19:21 |
howdy1234567890 | i followed these steps exactly: http://www.irchelp.org/irchelp/ircd/h7setup.html | 19:21 |
compengi | i think if things related to that IRCD built, you should better ask them in their dev's channel | 19:22 |
howdy1234567890 | uh | 19:22 |
howdy1234567890 | ...well it's pretty generic. | 19:23 |
howdy1234567890 | And "hybrid" doesn't appear to have a chan in here | 19:23 |
compengi | in that site, it's stated where the support is | 19:23 |
howdy1234567890 | ah | 19:24 |
=== J-n_ is now known as J-n | ||
Fenix|work | Question on UFW ... | 22:17 |
Fenix|work | ... can I use iptables commands to set up routes with UFW? | 22:20 |
jdstrand | Fenix|work: routes? like your routing table? | 22:21 |
Fenix|work | I want to do a series of redirects for specific ports for squid | 22:21 |
jdstrand | Fenix|work: the ufw command does not have that functionality. hover, the ufw system lets you do anything that iptables can do. | 22:22 |
jdstrand | s/hover/however/ | 22:22 |
Fenix|work | nice | 22:23 |
Fenix|work | so I can disable UFW and just use iptables directly then | 22:23 |
jdstrand | Fenix|work: look in /etc/ufw/*rules for where to put them and see https://help.ubuntu.com/8.04/serverguide/C/firewall.html | 22:23 |
jdstrand | Fenix|work: you can always use straight iptables of course | 22:24 |
jdstrand | Fenix|work: however, if you want to still take advantage of the ufw command with some added advanced functionality of iptables, just use ufw like normal, and add appropriate iptables commands to /etc/ufw/*.rules | 22:25 |
jdstrand | Fenix|work: you'll get a lot for free that way (eg, dhcp, avahi, etc work, logging, boot script, etc) | 22:26 |
Fenix|work | jdstrand, what do you mean about a lot for free... could you elaborate on that just a tad? | 22:31 |
jdstrand | Fenix|work: I thought I did... | 22:31 |
jdstrand | Fenix|work: with straight iptables, it all up to you to make sure the rules survive on reboot | 22:31 |
Fenix|work | I have the propensity to be dense :) | 22:31 |
jdstrand | Fenix|work: you need to decide on logging | 22:31 |
jdstrand | Fenix|work: if it is a general purpose firewall, you'll also need to make sure other things work right | 22:32 |
jdstrand | like dhcp, or avahi, or other things | 22:32 |
Fenix|work | I actually want minumal firewall... I'm creating a new gateway. I have a firewall further up the connection that handles all rules and such. | 22:32 |
jdstrand | Fenix|work: if the only thing you want to do is redirect, maybe a few rules in a script is all you need | 22:32 |
Fenix|work | but because this gateway is also a squid proxy I need some redirects so that port 80 requests end up in squid | 22:33 |
jdstrand | Fenix|work: do you want a host-based firewall on this machine? | 22:34 |
Fenix|work | nope... this gateway is attached to a firewall. | 22:34 |
jdstrand | Fenix|work: then probably just adding a few iptables commands in /etc/rc.local would be enough | 22:35 |
Fenix|work | I just want it to pass everything through, except for the squid stuff which I'll handle with -A PREROUTING commands | 22:36 |
jdstrand | Fenix|work: but that gives you no management or anything else... | 22:36 |
jdstrand | see the above link I gave for how to do that with iptables | 22:36 |
jdstrand | s/that/that type of thing/ | 22:36 |
Fenix|work | the serverguide link? | 22:37 |
jdstrand | yes | 22:37 |
Fenix|work | ok | 22:37 |
jdstrand | though it talks about nat only, not redirects | 22:37 |
jdstrand | but you'll get the idea | 22:38 |
Fenix|work | yeah | 22:38 |
Fenix|work | thanks jdstrand much appreciated | 22:39 |
jdstrand | np | 22:39 |
Fenix|work | I may take advantage of ufw's logging functionality but using iptable rules | 22:39 |
jdstrand | Fenix|work: then add your rules to /etc/ufw/*.rules and set your default policy to ALLOW | 22:40 |
jdstrand | (in ufw) | 22:40 |
jdstrand | see man ufw for details | 22:40 |
Fenix|work | ufw default allow | 22:42 |
jdstrand | yep | 22:42 |
jdstrand | (then do 'sudo ufw disable ; sudo ufw enable' | 22:42 |
Fenix|work | prerouting rules go in before.rules ? | 22:42 |
jdstrand | Fenix|work: yes, but be sure to add them in the nat table | 22:43 |
jdstrand | Fenix|work: like in the server guide: | 22:43 |
jdstrand | *nat | 22:43 |
jdstrand | <your rules> | 22:43 |
jdstrand | COMMIT | 22:43 |
jdstrand | Fenix|work: put that at the top of before.rules | 22:44 |
Fenix|work | and the rules are written as if it were the iptables command without the iptables command itself | 22:44 |
jdstrand | (that's discussed in 'ufw Masquerading' in the guide) | 22:44 |
jdstrand | Fenix|work: basically. the specific syntax is 'iptables-restore' | 22:45 |
Fenix|work | so in nat... -A PREROUTING -i eth0 -p tco --dport 80 -j REDIRECT --to-port 3128 | 22:45 |
jdstrand | change tco to tcp and you should be in business | 22:45 |
Fenix|work | hehe... typo | 22:45 |
jdstrand | Fenix|work: you may also want to add ':PREROUTING ACCEPT [0:0]' right after the '*nat' line | 22:50 |
jdstrand | tha'll set the default policy to ACCEPT and reset the counters on reload | 22:51 |
bdmurray | kirkland: do you know much about cryptsetup? | 22:51 |
jdstrand | Fenix|work: also, if you haven't already, set net/ipv4/ip_forward=1 in /etc/ufw/sysctl.conf | 22:51 |
kirkland | bdmurray: i do not... i've used it to encrypt my swap, that's about it | 22:52 |
kirkland | bdmurray: something specific you're looking for? | 22:52 |
jdstrand | (then disable and enable) | 22:52 |
bdmurray | http://people.ubuntu.com/~brian/tmp/cryptmount-message.png | 22:52 |
bdmurray | whether or not I should report that about crypt-setup or ? | 22:52 |
kirkland | bdmurray: actually, yeah, i see the same thing on my laptop every day, and every day i mean to report it, but always forget once my browser and everythign is running | 22:53 |
kirkland | bdmurray: looks to me like some stuff might be missing from the initramfs | 22:54 |
kirkland | bdmurray: like /lib/lsb/init-functions (the log_*_msg) | 22:54 |
kirkland | bdmurray: and /sbin/udevsettle | 22:54 |
bdmurray | kirkland: great, I'd seen it in kvm and wasn't sure if it was related to it | 22:55 |
kirkland | bdmurray: file it, and subscribe me to it | 22:55 |
kirkland | bdmurray: i might be able to fix those, possible | 22:55 |
kirkland | bdmurray: i've been dorking around in initramfs more than i care to admit lately :-) | 22:55 |
bdmurray | heh | 22:55 |
kirkland | bdmurray: priority is probably "low", because I'm not seeing any ill-effects | 22:55 |
kirkland | bdmurray: and i've had those errors for months now | 22:56 |
zoredache | does anyone know of an http(s) reverse-proxy that can will to the http authentication on the proxy? We have a web server on our internal network that we can't change. We need to make it available to the world if someone can authenticate to the proxy... I have proposed ssl/ssh based VPNs but that was vetoed from on-high | 23:00 |
mathiaz | zoredache: have you looked at the apache proxy module ? It may fit your scenario. | 23:02 |
Fenix|work | jdstrand, thanks a lot | 23:02 |
Fenix|work | have a good one | 23:02 |
jdstrand | np-- you too | 23:03 |
zoredache | mathiaz: a little, you don't happen to know of a configuration sample somewhere that is close to what I am trying to do? | 23:04 |
mathiaz | zoredache: not from the top of my head - try to google for apache reverse-proxy | 23:05 |
bdmurray | kirkland: submitted | 23:09 |
kirkland | bdmurray: just in time... http://pastebin.ubuntu.com/48417/ | 23:09 |
kirkland | bdmurray: that will silence the log_*_msg errors in cryptsetup | 23:10 |
kirkland | bdmurray: but i'm looking at initramfs-tools, to see if we can just add /lib/lsb/init-functions and /sbin/udevsettle into the initramfs | 23:10 |
kirkland | bdmurray: actually, it's simpler than that.... | 23:14 |
bdmurray | kirkland: oh? | 23:18 |
frith | hi, i was looking at graphing systems | 23:34 |
frith | i was wondering if there is something more complete than cacti | 23:34 |
uvirtbot` | New bug: #272306 in openssh (main) "apt-get doesn't work properly on ssh-ed pc" [Undecided,New] https://launchpad.net/bugs/272306 | 23:35 |
zoredache | frith: graphing of what? Are you looking for a network monitoring applicationor? | 23:44 |
frith | zoredache, well i like collecting as much as i can io throughput, cpu, net, disk etc, my switch, etc | 23:46 |
frith | like cacti | 23:46 |
frith | just cacti takes ages to setup | 23:46 |
zoredache | I don't know of anything that is easier to setup. Zenoss, and Opennms are both tools that will monitor and collect data... | 23:47 |
mathiaz | frith: have you looked at munin ? | 23:48 |
frith | those two are a bit bloated for what i was after | 23:48 |
frith | mathiaz, isn't that purely plugin based? | 23:48 |
mathiaz | frith: what do you mean by purely plugin ? | 23:48 |
mathiaz | frith: there is a plugin system IIRC | 23:48 |
frith | to get info into it, you have to install the plugins on each box | 23:49 |
mathiaz | frith: IIRC yes. | 23:50 |
frith | i think i will try and find an snmp based system | 23:51 |
zoredache | how about just mrtg? | 23:51 |
mathiaz | frith: both munin and cacti support snmp. | 23:51 |
frith | cacti is better | 23:51 |
mathiaz | frith: they're mainly focusing on the graphing part | 23:51 |
frith | mathiaz, cacti is fine, apart from its not very complete | 23:51 |
=== erichammond1 is now known as erichammond | ||
mathiaz | frith: while snmp is geared towards collecting the data to graph. | 23:52 |
frith | zenoss is kinda funky, point it at a system and it does the rest pretty much | 23:53 |
garrettkajmowicz | I have an upgrade problem: My server is running 6.10 and I want to upgrade (I only recently discovered that there is a useful upgrade tool). Anyways, I run do-release-upgrade and it rewrites the sources list to include everything for feisty, but then complains that it can't pull the entries for edgy (because edgy is no in old-releases). Any idea how I can make this work sanely? | 23:56 |
NCommander | garrettkajmowicz, I assume you want to upgrade to hardy, right? | 23:58 |
Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!