Background: #fff
Foreground: #000
PrimaryPale: #8cf
PrimaryLight: #18f
PrimaryMid: #04b
PrimaryDark: #014
SecondaryPale: #ffc
SecondaryLight: #fe8
SecondaryMid: #db4
SecondaryDark: #841
TertiaryPale: #eee
TertiaryLight: #ccc
TertiaryMid: #999
TertiaryDark: #666
Error: #f88
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::EditToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='editor' macro='edit title'></div>
<div macro='annotations'></div>
<div class='editor' macro='edit text'></div>
<div class='editor' macro='edit tags'></div><div class='editorFooter'><span macro='message views.editor.tagPrompt'></span><span macro='tagChooser excludeLists'></span></div>
<!--}}}-->
To get started with this blank [[TiddlyWiki]], you'll need to modify the following tiddlers:
* [[SiteTitle]] & [[SiteSubtitle]]: The title and subtitle of the site, as shown above (after saving, they will also appear in the browser title bar)
* [[MainMenu]]: The menu (usually on the left)
* [[DefaultTiddlers]]: Contains the names of the tiddlers that you want to appear when the TiddlyWiki is opened
You'll also need to enter your username for signing your edits: <<option txtUserName>>
<<importTiddlers>>
<!--{{{-->
<link rel='alternate' type='application/rss+xml' title='RSS' href='index.xml' />
<!--}}}-->
These [[InterfaceOptions]] for customising [[TiddlyWiki]] are saved in your browser

Your username for signing your edits. Write it as a [[WikiWord]] (eg [[JoeBloggs]])

<<option txtUserName>>
<<option chkSaveBackups>> [[SaveBackups]]
<<option chkAutoSave>> [[AutoSave]]
<<option chkRegExpSearch>> [[RegExpSearch]]
<<option chkCaseSensitiveSearch>> [[CaseSensitiveSearch]]
<<option chkAnimate>> [[EnableAnimations]]

----
Also see [[AdvancedOptions]]
<!--{{{-->
<div class='header' role='banner' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>
<div id='mainMenu' role='navigation' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' role='navigation' refresh='content' tiddler='SideBarOptions'></div>
<div id='sidebarTabs' role='complementary' refresh='content' force='true' tiddler='SideBarTabs'></div>
</div>
<div id='displayArea' role='main'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
</div>
<!--}}}-->
/*{{{*/
body {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}

a {color:[[ColorPalette::PrimaryMid]];}
a:hover {background-color:[[ColorPalette::PrimaryMid]]; color:[[ColorPalette::Background]];}
a img {border:0;}

h1,h2,h3,h4,h5,h6 {color:[[ColorPalette::SecondaryDark]]; background:transparent;}
h1 {border-bottom:2px solid [[ColorPalette::TertiaryLight]];}
h2,h3 {border-bottom:1px solid [[ColorPalette::TertiaryLight]];}

.button {color:[[ColorPalette::PrimaryDark]]; border:1px solid [[ColorPalette::Background]];}
.button:hover {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::SecondaryLight]]; border-color:[[ColorPalette::SecondaryMid]];}
.button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::SecondaryDark]];}

.header {background:[[ColorPalette::PrimaryMid]];}
.headerShadow {color:[[ColorPalette::Foreground]];}
.headerShadow a {font-weight:normal; color:[[ColorPalette::Foreground]];}
.headerForeground {color:[[ColorPalette::Background]];}
.headerForeground a {font-weight:normal; color:[[ColorPalette::PrimaryPale]];}

.tabSelected {color:[[ColorPalette::PrimaryDark]];
	background:[[ColorPalette::TertiaryPale]];
	border-left:1px solid [[ColorPalette::TertiaryLight]];
	border-top:1px solid [[ColorPalette::TertiaryLight]];
	border-right:1px solid [[ColorPalette::TertiaryLight]];
}
.tabUnselected {color:[[ColorPalette::Background]]; background:[[ColorPalette::TertiaryMid]];}
.tabContents {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::TertiaryPale]]; border:1px solid [[ColorPalette::TertiaryLight]];}
.tabContents .button {border:0;}

#sidebar {}
#sidebarOptions input {border:1px solid [[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel {background:[[ColorPalette::PrimaryPale]];}
#sidebarOptions .sliderPanel a {border:none;color:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:hover {color:[[ColorPalette::Background]]; background:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:active {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::Background]];}

.wizard {background:[[ColorPalette::PrimaryPale]]; border:1px solid [[ColorPalette::PrimaryMid]];}
.wizard h1 {color:[[ColorPalette::PrimaryDark]]; border:none;}
.wizard h2 {color:[[ColorPalette::Foreground]]; border:none;}
.wizardStep {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];
	border:1px solid [[ColorPalette::PrimaryMid]];}
.wizardStep.wizardStepDone {background:[[ColorPalette::TertiaryLight]];}
.wizardFooter {background:[[ColorPalette::PrimaryPale]];}
.wizardFooter .status {background:[[ColorPalette::PrimaryDark]]; color:[[ColorPalette::Background]];}
.wizard .button {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryLight]]; border: 1px solid;
	border-color:[[ColorPalette::SecondaryPale]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryPale]];}
.wizard .button:hover {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Background]];}
.wizard .button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::Foreground]]; border: 1px solid;
	border-color:[[ColorPalette::PrimaryDark]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryDark]];}

.wizard .notChanged {background:transparent;}
.wizard .changedLocally {background:#80ff80;}
.wizard .changedServer {background:#8080ff;}
.wizard .changedBoth {background:#ff8080;}
.wizard .notFound {background:#ffff80;}
.wizard .putToServer {background:#ff80ff;}
.wizard .gotFromServer {background:#80ffff;}

#messageArea {border:1px solid [[ColorPalette::SecondaryMid]]; background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]];}
#messageArea .button {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::SecondaryPale]]; border:none;}

.popupTiddler {background:[[ColorPalette::TertiaryPale]]; border:2px solid [[ColorPalette::TertiaryMid]];}

.popup {background:[[ColorPalette::TertiaryPale]]; color:[[ColorPalette::TertiaryDark]]; border-left:1px solid [[ColorPalette::TertiaryMid]]; border-top:1px solid [[ColorPalette::TertiaryMid]]; border-right:2px solid [[ColorPalette::TertiaryDark]]; border-bottom:2px solid [[ColorPalette::TertiaryDark]];}
.popup hr {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::PrimaryDark]]; border-bottom:1px;}
.popup li.disabled {color:[[ColorPalette::TertiaryMid]];}
.popup li a, .popup li a:visited {color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:active {background:[[ColorPalette::SecondaryPale]]; color:[[ColorPalette::Foreground]]; border: none;}
.popupHighlight {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
.listBreak div {border-bottom:1px solid [[ColorPalette::TertiaryDark]];}

.tiddler .defaultCommand {font-weight:bold;}

.shadow .title {color:[[ColorPalette::TertiaryDark]];}

.title {color:[[ColorPalette::SecondaryDark]];}
.subtitle {color:[[ColorPalette::TertiaryDark]];}

.toolbar {color:[[ColorPalette::PrimaryMid]];}
.toolbar a {color:[[ColorPalette::TertiaryLight]];}
.selected .toolbar a {color:[[ColorPalette::TertiaryMid]];}
.selected .toolbar a:hover {color:[[ColorPalette::Foreground]];}

.tagging, .tagged {border:1px solid [[ColorPalette::TertiaryPale]]; background-color:[[ColorPalette::TertiaryPale]];}
.selected .tagging, .selected .tagged {background-color:[[ColorPalette::TertiaryLight]]; border:1px solid [[ColorPalette::TertiaryMid]];}
.tagging .listTitle, .tagged .listTitle {color:[[ColorPalette::PrimaryDark]];}
.tagging .button, .tagged .button {border:none;}

.footer {color:[[ColorPalette::TertiaryLight]];}
.selected .footer {color:[[ColorPalette::TertiaryMid]];}

.error, .errorButton {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Error]];}
.warning {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryPale]];}
.lowlight {background:[[ColorPalette::TertiaryLight]];}

.zoomer {background:none; color:[[ColorPalette::TertiaryMid]]; border:3px solid [[ColorPalette::TertiaryMid]];}

.imageLink, #displayArea .imageLink {background:transparent;}

.annotation {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border:2px solid [[ColorPalette::SecondaryMid]];}

.viewer .listTitle {list-style-type:none; margin-left:-2em;}
.viewer .button {border:1px solid [[ColorPalette::SecondaryMid]];}
.viewer blockquote {border-left:3px solid [[ColorPalette::TertiaryDark]];}

.viewer table, table.twtable {border:2px solid [[ColorPalette::TertiaryDark]];}
.viewer th, .viewer thead td, .twtable th, .twtable thead td {background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::Background]];}
.viewer td, .viewer tr, .twtable td, .twtable tr {border:1px solid [[ColorPalette::TertiaryDark]];}

.viewer pre {border:1px solid [[ColorPalette::SecondaryLight]]; background:[[ColorPalette::SecondaryPale]];}
.viewer code {color:[[ColorPalette::SecondaryDark]];}
.viewer hr {border:0; border-top:dashed 1px [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::TertiaryDark]];}

.highlight, .marked {background:[[ColorPalette::SecondaryLight]];}

.editor input {border:1px solid [[ColorPalette::PrimaryMid]];}
.editor textarea {border:1px solid [[ColorPalette::PrimaryMid]]; width:100%;}
.editorFooter {color:[[ColorPalette::TertiaryMid]];}
.readOnly {background:[[ColorPalette::TertiaryPale]];}

#backstageArea {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::TertiaryMid]];}
#backstageArea a {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstageArea a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; }
#backstageArea a.backstageSelTab {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
#backstageButton a {background:none; color:[[ColorPalette::Background]]; border:none;}
#backstageButton a:hover {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstagePanel {background:[[ColorPalette::Background]]; border-color: [[ColorPalette::Background]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]];}
.backstagePanelFooter .button {border:none; color:[[ColorPalette::Background]];}
.backstagePanelFooter .button:hover {color:[[ColorPalette::Foreground]];}
#backstageCloak {background:[[ColorPalette::Foreground]]; opacity:0.6; filter:alpha(opacity=60);}
/*}}}*/
/*{{{*/
* html .tiddler {height:1%;}

body {font-size:.75em; font-family:arial,helvetica; margin:0; padding:0;}

h1,h2,h3,h4,h5,h6 {font-weight:bold; text-decoration:none;}
h1,h2,h3 {padding-bottom:1px; margin-top:1.2em;margin-bottom:0.3em;}
h4,h5,h6 {margin-top:1em;}
h1 {font-size:1.35em;}
h2 {font-size:1.25em;}
h3 {font-size:1.1em;}
h4 {font-size:1em;}
h5 {font-size:.9em;}

hr {height:1px;}

a {text-decoration:none;}

dt {font-weight:bold;}

ol {list-style-type:decimal;}
ol ol {list-style-type:lower-alpha;}
ol ol ol {list-style-type:lower-roman;}
ol ol ol ol {list-style-type:decimal;}
ol ol ol ol ol {list-style-type:lower-alpha;}
ol ol ol ol ol ol {list-style-type:lower-roman;}
ol ol ol ol ol ol ol {list-style-type:decimal;}

.txtOptionInput {width:11em;}

#contentWrapper .chkOptionInput {border:0;}

.externalLink {text-decoration:underline;}

.indent {margin-left:3em;}
.outdent {margin-left:3em; text-indent:-3em;}
code.escaped {white-space:nowrap;}

.tiddlyLinkExisting {font-weight:bold;}
.tiddlyLinkNonExisting {font-style:italic;}

/* the 'a' is required for IE, otherwise it renders the whole tiddler in bold */
a.tiddlyLinkNonExisting.shadow {font-weight:bold;}

#mainMenu .tiddlyLinkExisting,
	#mainMenu .tiddlyLinkNonExisting,
	#sidebarTabs .tiddlyLinkNonExisting {font-weight:normal; font-style:normal;}
#sidebarTabs .tiddlyLinkExisting {font-weight:bold; font-style:normal;}

.header {position:relative;}
.header a:hover {background:transparent;}
.headerShadow {position:relative; padding:4.5em 0 1em 1em; left:-1px; top:-1px;}
.headerForeground {position:absolute; padding:4.5em 0 1em 1em; left:0; top:0;}

.siteTitle {font-size:3em;}
.siteSubtitle {font-size:1.2em;}

#mainMenu {position:absolute; left:0; width:10em; text-align:right; line-height:1.6em; padding:1.5em 0.5em 0.5em 0.5em; font-size:1.1em;}

#sidebar {position:absolute; right:3px; width:16em; font-size:.9em;}
#sidebarOptions {padding-top:0.3em;}
#sidebarOptions a {margin:0 0.2em; padding:0.2em 0.3em; display:block;}
#sidebarOptions input {margin:0.4em 0.5em;}
#sidebarOptions .sliderPanel {margin-left:1em; padding:0.5em; font-size:.85em;}
#sidebarOptions .sliderPanel a {font-weight:bold; display:inline; padding:0;}
#sidebarOptions .sliderPanel input {margin:0 0 0.3em 0;}
#sidebarTabs .tabContents {width:15em; overflow:hidden;}

.wizard {padding:0.1em 1em 0 2em;}
.wizard h1 {font-size:2em; font-weight:bold; background:none; padding:0; margin:0.4em 0 0.2em;}
.wizard h2 {font-size:1.2em; font-weight:bold; background:none; padding:0; margin:0.4em 0 0.2em;}
.wizardStep {padding:1em 1em 1em 1em;}
.wizard .button {margin:0.5em 0 0; font-size:1.2em;}
.wizardFooter {padding:0.8em 0.4em 0.8em 0;}
.wizardFooter .status {padding:0 0.4em; margin-left:1em;}
.wizard .button {padding:0.1em 0.2em;}

#messageArea {position:fixed; top:2em; right:0; margin:0.5em; padding:0.5em; z-index:2000; _position:absolute;}
.messageToolbar {display:block; text-align:right; padding:0.2em;}
#messageArea a {text-decoration:underline;}

.tiddlerPopupButton {padding:0.2em;}
.popupTiddler {position: absolute; z-index:300; padding:1em; margin:0;}

.popup {position:absolute; z-index:300; font-size:.9em; padding:0; list-style:none; margin:0;}
.popup .popupMessage {padding:0.4em;}
.popup hr {display:block; height:1px; width:auto; padding:0; margin:0.2em 0;}
.popup li.disabled {padding:0.4em;}
.popup li a {display:block; padding:0.4em; font-weight:normal; cursor:pointer;}
.listBreak {font-size:1px; line-height:1px;}
.listBreak div {margin:2px 0;}

.tabset {padding:1em 0 0 0.5em;}
.tab {margin:0 0 0 0.25em; padding:2px;}
.tabContents {padding:0.5em;}
.tabContents ul, .tabContents ol {margin:0; padding:0;}
.txtMainTab .tabContents li {list-style:none;}
.tabContents li.listLink { margin-left:.75em;}

#contentWrapper {display:block;}
#splashScreen {display:none;}

#displayArea {margin:1em 17em 0 14em;}

.toolbar {text-align:right; font-size:.9em;}

.tiddler {padding:1em 1em 0;}

.missing .viewer,.missing .title {font-style:italic;}

.title {font-size:1.6em; font-weight:bold;}

.missing .subtitle {display:none;}
.subtitle {font-size:1.1em;}

.tiddler .button {padding:0.2em 0.4em;}

.tagging {margin:0.5em 0.5em 0.5em 0; float:left; display:none;}
.isTag .tagging {display:block;}
.tagged {margin:0.5em; float:right;}
.tagging, .tagged {font-size:0.9em; padding:0.25em;}
.tagging ul, .tagged ul {list-style:none; margin:0.25em; padding:0;}
.tagClear {clear:both;}

.footer {font-size:.9em;}
.footer li {display:inline;}

.annotation {padding:0.5em; margin:0.5em;}

* html .viewer pre {width:99%; padding:0 0 1em 0;}
.viewer {line-height:1.4em; padding-top:0.5em;}
.viewer .button {margin:0 0.25em; padding:0 0.25em;}
.viewer blockquote {line-height:1.5em; padding-left:0.8em;margin-left:2.5em;}
.viewer ul, .viewer ol {margin-left:0.5em; padding-left:1.5em;}

.viewer table, table.twtable {border-collapse:collapse; margin:0.8em 1.0em;}
.viewer th, .viewer td, .viewer tr,.viewer caption,.twtable th, .twtable td, .twtable tr,.twtable caption {padding:3px;}
table.listView {font-size:0.85em; margin:0.8em 1.0em;}
table.listView th, table.listView td, table.listView tr {padding:0 3px 0 3px;}

.viewer pre {padding:0.5em; margin-left:0.5em; font-size:1.2em; line-height:1.4em; overflow:auto;}
.viewer code {font-size:1.2em; line-height:1.4em;}

.editor {font-size:1.1em;}
.editor input, .editor textarea {display:block; width:100%; font:inherit;}
.editorFooter {padding:0.25em 0; font-size:.9em;}
.editorFooter .button {padding-top:0; padding-bottom:0;}

.fieldsetFix {border:0; padding:0; margin:1px 0px;}

.zoomer {font-size:1.1em; position:absolute; overflow:hidden;}
.zoomer div {padding:1em;}

* html #backstage {width:99%;}
* html #backstageArea {width:99%;}
#backstageArea {display:none; position:relative; overflow: hidden; z-index:150; padding:0.3em 0.5em;}
#backstageToolbar {position:relative;}
#backstageArea a {font-weight:bold; margin-left:0.5em; padding:0.3em 0.5em;}
#backstageButton {display:none; position:absolute; z-index:175; top:0; right:0;}
#backstageButton a {padding:0.1em 0.4em; margin:0.1em;}
#backstage {position:relative; width:100%; z-index:50;}
#backstagePanel {display:none; z-index:100; position:absolute; width:90%; margin-left:3em; padding:1em;}
.backstagePanelFooter {padding-top:0.2em; float:right;}
.backstagePanelFooter a {padding:0.2em 0.4em;}
#backstageCloak {display:none; z-index:20; position:absolute; width:100%; height:100px;}

.whenBackstage {display:none;}
.backstageVisible .whenBackstage {display:block;}
/*}}}*/
/***
StyleSheet for use when a translation requires any css style changes.
This StyleSheet can be used directly by languages such as Chinese, Japanese and Korean which need larger font sizes.
***/
/*{{{*/
body {font-size:0.8em;}
#sidebarOptions {font-size:1.05em;}
#sidebarOptions a {font-style:normal;}
#sidebarOptions .sliderPanel {font-size:0.95em;}
.subtitle {font-size:0.8em;}
.viewer table.listView {font-size:0.95em;}
/*}}}*/
/*{{{*/
@media print {
#mainMenu, #sidebar, #messageArea, .toolbar, #backstageButton, #backstageArea {display: none !important;}
#displayArea {margin: 1em 1em 0em;}
noscript {display:none;} /* Fixes a feature in Firefox 1.5.0.2 where print preview displays the noscript content */
}
/*}}}*/
<!--{{{-->
<div class='toolbar' role='navigation' macro='toolbar [[ToolbarCommands::ViewToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='subtitle'><span macro='view modifier link'></span>, <span macro='view modified date'></span> (<span macro='message views.wikified.createdPrompt'></span> <span macro='view created date'></span>)</div>
<div class='tagging' macro='tagging'></div>
<div class='tagged' macro='tags'></div>
<div class='viewer' macro='view text wikified'></div>
<div class='tagClear'></div>
<!--}}}-->
Para indicar a un comando que hemos terminado de darle opciones, ponemos dos guiones seguidos: {{{--}}}

ejemplo en el que creamos un fichero que se llama {{{"--help"}}}:
{{{
# touch -- --help
# ls -l
-rw-rw-r-- 1 fernando fernando       0 sep 17 20:58 --help
# rm -- --help
}}}
Pulsando {{{ALT}}} + {{{.}}} insertamos en el la línea de comandos el último parámetro del comando anterior:
{{{
# ls /etc/resolv.conf
# cat ALT+.
/etc/resolv.conf
}}}
Si repetimos, vamos subiendo por el histórico de "últimos parámetros" de los comandos anteriores.
Secuencia de arranque del sistema. Los ficheros implicados están marcados.

# BIOS
# Gestor de arranque (instalado en el mbr)
## Fichero de configuración: @@/boot/grub/grub.conf@@
# kernel
# init
## Fichero de configuración: @@/etc/inittab@@
### /etc/rc.d/rc.sysinit
#### Fichero de configuración: @@/etc/fstab@@
### /etc/rc.d/rc@@X@@.d/*
### /etc/rc.d/rc.local
# Arranque gráfico (si procede).
CTRL Key Bound
Ctrl + a - Jump to the start of the line
Ctrl + b - Move back a char
Ctrl + c - Terminate the command
Ctrl + d - Delete from under the cursor
Ctrl + e - Jump to the end of the line
Ctrl + f - Move forward a char
Ctrl + k - cut to EOL
Ctrl + H - Backspace
Ctrl + l - Clear the screen
Ctrl + N - Next command line (useful for "scrolling" with Ctrl+P)
Ctrl + P - Previous command line
Ctrl + r - Search the history backwards
Ctrl + R - Search the history backwards with multi occurrence
Ctrl + t - swap the last 2 letters
Ctrl + u - Delete backward from cursor
Ctrl + w - Delete last word
Ctrl + xx - Move between EOL and current cursor position
Ctrl + x @ - Show possible hostname completions
Ctrl + x Ctrl + e  - Invoke $EDITOR
Ctrl + Y - yank (paste)
Ctrl + z - Suspend/ Stop the command
Ctrl + / - Undo last command-line edit

ALT Key Bound
Alt + < - Move to the first line in the history
Alt + > - Move to the last line in the history
Alt + ? - Show current completion list
Alt + * - Insert all possible completions
Alt + / - Attempt to complete filename
Alt + . - Yank last argument to previous command
Alt + b - Move backward
Alt + c - Capitalize the word
Alt + d - Delete word
Alt + f - Move forward
Alt + l - Make word lowercase
Alt + n - Search the history forwards non-incremental
Alt + p - Search the history backwards non-incremental
Alt + r - Recall command
Alt + t - Move words around
Alt + u - Make word uppercase
Alt + back-space - Delete backward from cursor

More Special Keybindings

Here "2T" means Press TAB twice

$ 2T - All available commands(common)
$ (string)2T - All available commands starting with (string)
$ /2T - Entire directory structure including Hidden one
$ 2T - Only Sub Dirs inside including Hidden one
$ *2T - Only Sub Dirs inside without Hidden one
$ ~2T - All Present Users on system from "/etc/passwd"
$ $2T - All Sys variables
$ @2T - Entries from "/etc/hosts"
$ =2T - Output like ls or dir
* ''man'' -> Ayuda principal del sistema (~MANual). Está dividida en páginas temáticas, siendo las más importantes la 5, la 8 y la 1.
** ''man man'' -> Ayuda sobre man.
** @@''man 5''@@ -> ficheros de configuración (ej. //man 5 inittab//)
** ''man 8'' -> /sbin/ comandos de root (ej. //man 8 fdisk//)
** ''man 1'' -> /bin/ comandos que puede ejecutar cualquier usuario (ej. //man 1 ls//)
** ''man 7'' -> ayuda genérica (ej. //man 7 wireless//)
** ''man 2'' -> llamadas al sistema
** ''man 3'' -> funciones de lenguajes de programación
** ''man 4'' -> dispositivos (devices)
** ''man 6'' -> juegos
* ''makewhatis'' -> genera una base de datos con la primera linea de todas las páginas del Manual, la linea en la que se  describe cada comando. Esa base de datos luego es usada por los dos comandos siguientes.
** ''whatis'' -> busca palabras completas en la base de datos (ej. //whatis ls//).
** ''apropos'' -> busca cadenas en la base de datos (ej. //apropos ls//).
* ''updatedb'' -> genera una base de datos con todos los ficheros accesibles en ese momento del sistema. Almacena el camino completo, el path completo.
** ''locate'' -> busca en la base de datos la cadena especificada, incluido el path (ej. //locate 27/READ//).
* ''info'' -> sistema de ayuda alternativo a //man//.
** ''info info'' -> ayuda sobre //info//.
* ''{{{--}}}help'' -> resumen de opciones de un comando (ej. //ls {{{--}}}help//).
* ''/usr/share/doc'' -> directorio con cientos de megabytes de documentación en varios formatos.
* ''grep -R //cadena// /etc/*'' -> buscar //cadena// en el contenido de todos los ficheros del directorio /etc
Como hacer bonding con un ~USB-Ethernet. El bonding consiste en tener más de una interfaz con la misma IP, para que si falla uno de ellos, no se pierda la comunicación.

Hay varios tipos de bonding, y existe mucha información sobre el bonding en el sistema; hay dos ficheros con documentación, aunque para acceder al segundo necesitamos tener instalado el paquete "kernel-doc": {{{/usr/share/doc/iputils-20071127/README.bonding
/usr/share/doc/kernel-doc-2.6.26/Documentation/networking/bonding.txt}}}. Para encontrar estos ficheros podemos ejecutar la orden {{{locate bonding | grep /doc/}}}

* Lo primero que hay que hacer es determinar el módulo que se encarga de controlar el USB, para eso puedo hacer lo siguiente:
{{{
$ lsmod > /root/lsmod_antes
}}}
** Ahora conecto el USB
{{{
$ lsmod > /root/lsmod_despues
$ diff /root/lsmod_antes /root/lsmod_despues
1a2
> rtl8150                13505  0
}}}
** Y esto me indica que la diferencia entre el antes y el después de conectar el USB es el módulo rtl8150, con lo cual ya tenemos el módulo localizado.

* Cuando enchufo el usb-ethernet carga en memoria el módulo rtl8150, podemos ver la información de dicho módulo con el comando modinfo:
{{{
$ modinfo rtl8150
filename:       /lib/modules/2.6.9-22.EL/kernel/drivers/usb/net/rtl8150.ko
author:         Petko Manolov <petkan@users.sourceforge.net>
description:    rtl8150 based usb-ethernet driver
license:        GPL
vermagic:       2.6.9-22.EL 686 REGPARM 4KSTACKS gcc-3.4
depends:
alias:          usb:v0BDAp8150dl*dh*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0411p0012dl*dh*dc*dsc*dp*ic*isc*ip*
alias:          usb:v3980p0003dl*dh*dc*dsc*dp*ic*isc*ip*
alias:          usb:v07B8p401Adl*dh*dc*dsc*dp*ic*isc*ip*
}}}

* Pasamos a configurarlo. Primero añadimos dos líneas a /etc/modprobe.conf, para poder hacer el bonding:
{{{
$ cat >> /etc/modprobe.conf <<EOF
> alias eth1 rtl8150
> alias bond0 bonding
> EOF
$ tail -2 /etc/modprobe.conf
alias eth1 rtl8150
alias bond0 bonding
}}}
** A continuación vemos como tenemos configurada la red:
{{{
$ cat /etc/sysconfig/network-scripts/ifcfg-eth1
ONBOOT=yes
BOOTPROTO=none
IPADDR=192.168.0.21
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
TYPE=Ethernet
DEVICE=eth1
}}}
** Pasamos ahora a configurar las tarjetas de red, a las que haremos esclavas de la nueva tarjeta "bond0" que crearemos luego:
{{{
$ cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes
USERCTL=no
}}}
{{{
$ cat /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes
USERCTL=no
}}}
** Creamos la tarjeta "bond0" como si fuera una tarjeta de red normal:
{{{
$ cat /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
IPADDR=192.168.0.21
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
}}}
** E incluso podemos incluso darle múltiples ~IPs: 
{{{
$ cat /etc/sysconfig/network-scripts/ifcfg-bond0:0
DEVICE=bond0:0
IPADDR=192.168.100.21
NETMASK=255.255.255.0
GATEWAY=192.168.100.1
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
}}}

* Y por último, tratamos el dispositivo bond0 como si fuera un dispositivo eth corriente: {{{ifup bond0}}}.
Esto no tiene que ver con Linux, sino con Firefox. No lo he probado en otros navegadores.

Lo siguiente son [[Bookmarklets|http://es.wikipedia.org/wiki/Bookmarklet]] (también llamados Favelets) útiles que he encontrado en internet, y que reproduzco aquí. Son pequeñas piezas de código Javascript que pueden guardarse como Bookmarks, como favoritos, de tal forma que al pinchar en ellos ejecutamos lo que contengan, mejorando la experiencia de navegar.

Para instalarlos pincha en ellos, y SIN soltarlos, arrástralos hasta la barra de bookmarks. O también, pincha con el botón derecho y dale a "agregar enlace". Puedes probarlos sin instalarlos, simplemente pinchando en ellos. Y si quieres renombrarlos una vez instalados (les he puesto nombres muy cortitos, para que quepan bien en una barra), pincháis con el botón derecho en uno de ellos y luego en propiedades, y entonces le poneis el nombre que queráis.

|!Bookmarklet|!Comentario|
| <html><a class="bml" href="javascript:(function(){ function zoomImage(image, amt) { if(image.initialHeight == null) { /* avoid accumulating integer-rounding error */ image.initialHeight=image.height; image.initialWidth=image.width; image.scalingFactor=1; } image.scalingFactor*=amt; image.width=image.scalingFactor*image.initialWidth; image.height=image.scalingFactor*image.initialHeight; } var i,L=document.images.length; for (i=0;i&lt;L;++i) zoomImage(document.images[i], 2); if (!L) alert(&quot;This page contains no images.&quot;); })();">+Zoom</a></html> |Para aumentar las imágenes de una página|
| <html><a class="bml" href="javascript:(function(){ function zoomImage(image, amt) { if(image.initialHeight == null) { /* avoid accumulating integer-rounding error */ image.initialHeight=imagerobots.height; image.initialWidth=image.width; image.scalingFactor=1; } image.scalingFactor*=amt; image.width=image.scalingFactor*image.initialWidth; image.height=image.scalingFactor*image.initialHeight; } var i,L=document.images.length; for (i=0;i&lt;L;++i) zoomImage(document.images[i],.5); if (!L) alert(&quot;This page contains no images.&quot;); })();">-Zoom</a></html> |Para disminuir las imágenes de una página |
| <html><a class="bml" href="javascript:(function(){var%20count=0,%20text,%20dv;text=prompt(%22Search%20phrase:%22,%20%22%22);if(text==null%20||%20text.length==0)return;dv=document.defaultView;function%20searchWithinNode(node,%20te,%20len){var%20pos,%20skip,%20spannode,%20middlebit,%20endbit,%20middleclone;skip=0;if(%20node.nodeType==3%20){pos=node.data.toUpperCase().indexOf(te);if(pos>=0){spannode=document.createElement(%22SPAN%22);spannode.style.backgroundColor=%22yellow%22;middlebit=node.splitText(pos);endbit=middlebit.splitText(len);middleclone=middlebit.cloneNode(true);spannode.appendChild(middleclone);middlebit.parentNode.replaceChild(spannode,middlebit);++count;skip=1;}}else%20if(%20node.nodeType==1&&%20node.childNodes%20&&%20node.tagName.toUpperCase()!=%22SCRIPT%22%20&&%20node.tagName.toUpperCase!=%22STYLE%22){for%20(var%20child=0;%20child%20<%20node.childNodes.length;%20++child){child=child+searchWithinNode(node.childNodes[child],%20te,%20len);}}return%20skip;}window.status=%22Searching%20for%20'%22+text+%22'...%22;searchWithinNode(document.body,%20text.toUpperCase(),%20text.length);window.status=%22Found%20%22+count+%22%20occurrence%22+(count==1?%22%22:%22s%22)+%22%20of%20'%22+text+%22'.%22;})();">Resaltar</a></html> |Resalta en la página el texto que le indiquemos |
| <html><a class="bml" href="javascript:if(!document.referrer)%20alert(%22No%20referrer!%22);%20else%20document.location%20=%20document.referrer;%20void%200">Atrás</a></html> |Para volver atrás en una página, aunque no nos deje el navegador (por ejemplo, cuando estamos haciendo un pedido por Internet)|
| <html><a class="bml" href="javascript:dT30FfN3b=new%20Date();void(window.open(location.href,'w'+dT30FfN3b.getTime()))">Dup</a></html> |Duplica la página que estemos viendo|
| <html><a class="bml" href="javascript:(function(){s='';for%20(i=0;i<document.images.length;i++){s+='<img%20src=%22'+document.images[i].src+'%22><br>'};if(s!=''){fg=window.open();fg.document.write('<center>'+s+'</center>');document.close();}else{alert('No%20images!');}})()">Img</a></html> |Muestra las imágenes de la página actual en una nueva página|
| <html><a class="bml" href="javascript:var%20HSI01;{var%20vis;if(!HSI01){HSI01=1;vis='hidden'}else{HSI01=0;vis='visible'};for(var%20i=0;i<document.images.length;i++){document.images[i].style.visibility=vis}};void(0);">Img On/Off</a></html> |Oculta las imágenes de la página actual|
| <html><a class="bml" href="javascript:var%20t=((window.getSelection&&window.getSelection())||(document.getSelection&&document.getSelection())||(document.selection&&document.selection.createRange&&document.selection.createRange().text));var%20e=(document.charset||document.characterSet);if(t!=''){location.href='http://translate.google.com/translate_t?text='+t+'&hl=es&langpair=auto|es&tbb=1&ie='+e;}else{location.href='http://translate.google.com/translate?u='+escape(location.href)+'&hl=es&langpair=auto|es&tbb=1&ie='+e;};">GTraductor</a></html> |Traduce la página actual con Google Traductor al Español|
| <html><a class="bml" href="javascript:/*%20Clear%20Ads%20*/function%20C(d,o){v=d.createElement('div');o.parentNode.replaceChild(v,o);}function%20A(d){for(j=0;t=['iframe','embed','object','marquee'][j];++j){o=d.getElementsByTagName(t);for(i=o.length-1;i>=0;i--)C(d,o[i]);}g=d.images;for(k=g.length-1;k>=0;k--)if({'21x21':1,'48x48':1,'60x468':1,'88x31':1,'88x33':1,'88x62':1,'90x30':1,'90x32':1,'90x90':1,'100x30':1,'100x37':1,'100x45':1,'100x50':1,'100x70':1,'100x100':1,'100x275':1,'110x50':1,'110x55':1,'110x60':1,'110x110':1,'120x30':1,'120x60':1,'120x80':1,'120x90':1,'120x120':1,'120x163':1,'120x181':1,'120x234':1,'120x240':1,'120x300':1,'120x400':1,'120x410':1,'120x500':1,'120x600':1,'120x800':1,'125x40':1,'125x60':1,'125x65':1,'125x72':1,'125x80':1,'125x125':1,'125x170':1,'125x250':1,'125x255':1,'125x300':1,'125x350':1,'125x400':1,'125x600':1,'125x800':1,'126x110':1,'130x60':1,'130x65':1,'130x158':1,'130x200':1,'132x70':1,'140x55':1,'140x350':1,'145x145':1,'146x60':1,'150x26':1,'150x60':1,'150x90':1,'150x100':1,'150x150':1,'155x275':1,'155x470':1,'160x80':1,'160x126':1,'160x600':1,'180x30':1,'180x66':1,'180x132':1,'180x150':1,'194x165':1,'200x60':1,'220x100':1,'225x70':1,'230x30':1,'230x33':1,'230x60':1,'234x60':1,'234x68':1,'240x80':1,'240x300':1,'250x250':1,'275x60':1,'280x280':1,'300x60':1,'300x100':1,'300x250':1,'320x50':1,'320x70':1,'336x280':1,'350x300':1,'350x850':1,'360x300':1,'380x112':1,'380x250':1,'392x72':1,'400x40':1,'400x50':1,'425x600':1,'430x225':1,'440x40':1,'464x62':1,'468x16':1,'468x60':1,'468x76':1,'468x120':1,'468x248':1,'470x60':1,'480x400':1,'486x60':1,'545x90':1,'550x5':1,'600x30':1,'720x90':1,'720x300':1,'725x90':1,'728x90':1,'734x96':1,'745x90':1,'750x25':1,'750x100':1,'750x150':1,'850x120':1}[g[k].width+'x'+g[k].height])C(d,g[k]);}A(document);for(f=0;z=frames[f];++f)A(z.document);/*%20Clear%20IntelliTxt%20*/javascript:function%20getTxt(obj){if(obj.nodeType==3)return%20obj.nodeValue;var%20txt=new%20Array(),i=0;while(obj.childNodes[i]){txt[txt.length]=getTxt(obj.childNodes[i++]);}return%20txt.join('');}function%20kill(w){try{for(var%20j=w.document.links.length-1;j>0;j--){L=w.document.links[j];if(L.href.indexOf('itxt.vibrantmedia.com')>=0||L.oncontextmenu!=null){t=w.document.createTextNode(getTxt(L));L.parentNode.replaceChild(t,L);}}for(var%20i=0;F=w.frames[i];i++){kill(F);}}catch(e){}}kill(window);/*%20Clear%20Geocities%20*/function%20KG(){try{if(frames.length)if(PUprop){var%20FS=document.getElementsByTagName('frameset')[0];FS.cols='*,0,0';}}catch(e){}}KG();/*%20Clear%20Trails%20*/function%20B(w,t){H(w,t);for(j=0;j<w.frames.length;j++){H(w.frames[j],t);}}function%20H(w,t){try{o=w.document.getElementsByTagName(t);for(i=o.length-1;N=o[i];i--){if(t=='span'){if({texttail:1,spanstyle:1}[N.className])N.removeNode(true);}else{if(N.id){p=N.parentNode;if(p.tagName=='DIV'&&p.style.position=='absolute'){p.removeNode(true);}}}}}catch(e){}}onerror=function(){return%20true;};B(window,'span');B(window,'div');B(window,'img');/*%20Allow%20Right-click%20*/function%20kill2(d){d.onmousedown=d.onmouseup=d.oncontextmenu=d.onselectstart=d.ondragstart=function(){return%20true;};}try{kill2(document);for(var%20j=0;F=frames[j];++j)kill2(F.document);}catch(e){}">Limpiar</a></html> |Quita anuncios, Flash, sonidos, bloqueos del ratón de la página|
| <html><a class="bml" href="javascript:s=document.body.appendChild(document.createElement('script'));s.id='fs';s.language='javascript';void(s.src='http://slayeroffice.com/tools/color_list/color_list_moz.js');">Colores</a></html> |Colores usados en la página ([[SlayerOffice|http://slayeroffice.com/]])|
| <html><a class="bml" href="javascript:TxtRsz={formEl:null,adEv:function(t,ev,fn){if(typeof%20document.addEventListener!='undefined'){t.addEventListener(ev,fn,false)}else{t.attachEvent('on'+ev,fn)}},rmEv:function(t,ev,fn){if(typeof%20document.removeEventListener!='undefined'){t.removeEventListener(ev,fn,false)}else{t.detachEvent('on'+ev,fn)}},init:function(){var%20textareas=document.getElementsByTagName('textarea');for(var%20i=0;i<textareas.length;i++){textareas[i].style.cursor='se-resize'}var%20inputs=document.getElementsByTagName('input');for(var%20i=0;i<inputs.length;i++){if(inputs[i].type=='text'){inputs[i].style.cursor='e-resize'}}TxtRsz.adEv(document,'mousedown',TxtRsz.initResize)},initResize:function(event){if(typeof%20event=='undefined'){event=window.event}var%20target=event.target||event.srcElement;if(target.nodeName.toLowerCase()=='textarea'||(target.nodeName.toLowerCase()=='input'&&target.type=='text')){TxtRsz.formEl=target;TxtRsz.formEl.startWidth=TxtRsz.formEl.clientWidth;TxtRsz.formEl.startHeight=TxtRsz.formEl.clientHeight;TxtRsz.formEl.startX=event.clientX;TxtRsz.formEl.startY=event.clientY;TxtRsz.adEv(document,'mousemove',TxtRsz.resize);TxtRsz.adEv(document,'mouseup',TxtRsz.stopResize);try{event.preventDefault()}catch(e){}}},resize:function(event){if(typeof%20event=='undefined'){event=window.event}try{TxtRsz.formEl.style.width=event.clientX-TxtRsz.formEl.startX+TxtRsz.formEl.startWidth+'px'}catch(e){}if(TxtRsz.formEl.nodeName.toLowerCase()=='textarea'){TxtRsz.formEl.style.height=event.clientY-TxtRsz.formEl.startY+TxtRsz.formEl.startHeight+'px'}},stopResize:function(event){TxtRsz.rmEv(document,'mousedown',TxtRsz.initResize);TxtRsz.rmEv(document,'mousemove',TxtRsz.resize);var%20textareas=document.getElementsByTagName('textarea');for(var%20i=0;i<textareas.length;i++){textareas[i].style.cursor='text'}var%20inputs=document.getElementsByTagName('input');for(var%20i=0;i<inputs.length;i++){if(inputs[i].type=='text'){inputs[i].style.cursor='text'}}}};TxtRsz.init();">+Area Texto</a></html> |Pincha y redimensiona áreas de texto|
| <html><a class="bml" href="javascript:var%20s=document.createElement('script');s.src='http://www.bitlet.org/javascripts/BitLetr.js?location='+encodeURIComponent(location.href);s.type='text/javascript';var%20head=document.getElementsByTagName('head').item(0);head.appendChild(s);void(0);">Torrents</a></html> |Bajar ficheros Torrents desde el propio navegador ([[BitLet|http://www.bitlet.org/more/bookmarklet]])|
| <html><a class="bml" href="javascript:var%20d=document,f='http://www.facebook.com/share',l=d.location,e=encodeURIComponent,p='.php?src=bm&v=4&i=1192209468&u='+e(l.href)+'&t='+e(d.title);1;try{if(!/^(.*\.)?facebook\.[^.]*$/.test(l.host))throw(0);share_internal_bookmarklet(p)}catch(z){a=function(){if(!window.open(f+'r'+p,'sharer','toolbar=0,status=0,resizable=0,width=626,height=436'))l.href=f+p};if(/Firefox/.test(navigator.userAgent))setTimeout(a,0);else{a()}}void(0)">Facebook</a></html> |Compartir la página que estás viendo como enlace en Facebook|
| <html><a class="bml" href="javascript:javascript:(function(){var%20d=document,i=0,l,em=0,ed,b=d.body,w=window,sl=[],hid=[],$=b.getElementsByTagName('*'),cTp=(d.all&&!w.opera)?'absolute':'fixed',css=d.createElement('style');css.type='text/css';css.media='all';var%20cT='#mPp{font-size:15px;padding:5px;background:#fdd;color:#000;position:'+cTp+';top:0;right:0;zIndex:1000;text-align:right}#mPp:hover{padding:.5em;line-height:1.6;}#mPp:hover%20u{display:none}#mPp%20i{display:none;text-align:left;cursor:default;color:#000}#mPp:hover%20i{display:block}#mPp%20b{border:1px%20outset%20#000;background:#fff;color:#666;padding:0%202px;margin-right:4px}#mPe{position:absolute;left:0;right:0;padding:5px%2010px;background:#fdd;text-align:left}#mPe%20textarea{width:99%;display:block}'+'.mPs,.mPs%20*{background:#ff0;color:#000;}.mPh{background:#ffc;}.mPi,.mPi%20*{background:#fff;width:auto;float:none;margin:1em%200;padding:0;}body.mPi{text-align:left;margin:0;}'.replace(/;/g,'%20!important;');if(css.styleSheet)css.styleSheet.cssText=cT;else%20css.appendChild(d.createTextNode(cT));d.getElementsByTagName('head')[0].appendChild(css);function%20nB(e){if(!e)var%20e=w.event;e.cancelBubble=true;if(e.stopPropagation)e.stopPropagation()}function%20over(e){nB(e);!em&&!this.isSel&&changeCn(this,'mPh')}function%20out(e){nB(e);!em&&!this.isSel&&changeCn(this)}function%20clik(e){nB(e);!em&&this.isSel?unSel(this):sel(this);return%20false}while(l=$.item(i++)){addEvents(l)}var%20h=d.createElement('a');h.id='mPp';h.href='http://mrclay.org/';h.innerHTML='<u>?</u><i><b>R</b>emove%20Selected</i><i><b>U</b>ndo%20Remove</i><i><b>I</b>solate%20Selected</i><i><b>P</b>rint%20Preview</i><i><b>W</b>iden%20Selected</i><i><i><b>B</b>ackwards</i><b>N</b>ext</i><i><b>D</b>eselect</i><i><b>C</b>opy%20Element</i><i><b>E</b>dit%20HTML</i><i><b>Esc</b>ape/Quit</i>';h.onclick=function(e){nB(e)};b.appendChild(h);d.onkeydown=function(e){var%20ls=sl.length?sl[sl.length-1]:0;if(!e)var%20e=window.event;if(e.keyCode==27){rm(h);rm(css);i=0;while(l=$.item(i++)){l.onmouseover=l.oldOnmouseover||null;l.onmouseout=l.oldOnmouseout||null;l.onclick=l.oldOnclick||null;l.oldOnmouseover=null;l.oldOnmouseout=null;l.oldOnclick=null}d.onkeydown=null;em&&rm(ed)}if(em)return%20true;switch(e.keyCode){case%2082:while(sl.length){ls=sl[sl.length-1];ls.style.display='none';unSel(ls);hid.push(ls)}break;case%2073:sel(h);while(b.hasChildNodes())b.removeChild(b.firstChild);while(sl.length){b.appendChild(sl[0]);unSel(sl[0])}break;case%2087:if(ls){unSel(ls);(ls!=b)&&sel(ls.parentNode)}break;case%2080:pp();break;case%2068:unSel(ls);break;case%2085:hid.length&&(hid.pop().style.display='');break;case%2069:ls&&ls.innerHTML&&edit(ls);break;case%2066:if(ls){l=d.getElementsByTagName('*').item(getSourceIndex(ls)-1);if(l&&l!=b){unSel(ls);sel(l)}}break;case%2078:if(ls){l=d.getElementsByTagName('*').item(getSourceIndex(ls)+1);if(l&&l!=h){unSel(ls);sel(l)}}break;case%2067:if(ls){l=ls.cloneNode(true);if(ls.id){l.id+='_copy'}ls.parentNode.insertBefore(l,ls.nextSibling);addEvents(l);i=0;var%20desc;while(desc=l.getElementsByTagName('*').item(i++))addEvents(desc);unSel(ls);sel(l)}break;default:return%20true}return%20false};function%20rm(l){l.parentNode.removeChild(l)}function%20changeCn(l,cN){l.className=l.className.replace(/\bmP[hs]\b/g,'');if(cN)l.className+=l.className?'%20'+cN:cN}function%20sel(l){changeCn(l,'mPs');l.isSel='1';sl.push(l)}function%20unSel(l){changeCn(l);l.isSel='';for(var%20i=0,len=sl.length;i<len;i++){if(sl[i]==l){sl.splice(i,1);return}}}function%20edit(l){em=1;var%20left=0,top=0,tmp=l,chg=0;if(tmp.offsetParent){while(tmp.offsetParent){left+=tmp.offsetLeft;top+=tmp.offsetTop;tmp=tmp.offsetParent}}ed=d.createElement('div');ed.id='mPe';b.appendChild(ed);ed.style.top=(top+l.offsetHeight+5)+'px';unSel(l);var%20oh=getOuterHTML(l).replace(/^\s*|\s*$/g,'').replace(/%20isSel[<>]*\u003E/g,'>').replace(/%20class=%22%22(?=[^<>]*>)/g,'');sel(l);var%20rows=Math.min(15,oh.split('\n').length+3);ed.innerHTML='<textarea%20id=mPta%20rows='+rows+'></textarea><button%20id=mPbu>done</button>';d.getElementById('mPta').value=oh;d.getElementById('mPta').onchange=function(){chg=1};function%20finEdit(){unSel(l);em=0;if(chg){var%20tmp=b.appendChild(d.createElement('div'));tmp.innerHTML=d.getElementById('mPta').value;i=0;var%20desc;while(desc=tmp.getElementsByTagName('*').item(i++))addEvents(desc);while(tmp.hasChildNodes())l.parentNode.insertBefore(tmp.firstChild,l);rm(l);rm(tmp)}rm(ed)}d.getElementById('mPbu').onclick=d.getElementById('mPbu').onkeypress=finEdit}function%20addEvents(l){if('String'!=typeof%20l.isSel){l.isSel='';l.oldOnmouseover=l.onmouseover;l.oldOnmouseout=l.onmouseout;l.oldOnclick=l.onclick;l.onmouseover=over;l.onmouseout=out;l.onclick=clik}}function%20getSourceIndex(l){if(l.sourceIndex)return%20l.sourceIndex;i=0;var%20el;while(el=d.getElementsByTagName('*').item(i)){if(el==l)return%20i;++i}}function%20getOuterHTML(l){if(l.outerHTML)return%20l.outerHTML;var%20dv=d.createElement('div');dv.appendChild(l.cloneNode(true));return%20dv.innerHTML}function%20pp(){var%20i=0,m,ss=d.styleSheets,wk=/webkit/i.test(navigator.userAgent);if(ss&&!wk){for(i=0;i<ss.length;i++){m=ss[i].media;if(m.mediaText)m.mediaText=media(m.mediaText);else%20ss[i].media=media(m)}}else{ss=[];var%20r,l;while(l=d.getElementsByTagName('link').item(i++)){r=l.getAttribute('rel');if(r&&/^style/i.test(r))ss.push(l)}i=0;while(l=d.getElementsByTagName('style').item(i++))ss.push(l);for(i=ss.length-1;i>=0;i--){if(wk)handleWk(ss[i]);else%20ss[i].media=media(ss[i].media)}}function%20media(m){return(m=='all')?m:(/projection/.test(m))?'print':(/speech/.test(m))?'screen':(/print/.test(m))?'screen,print,projection':'speech'}function%20handleWk(l){if(/print/.test(l.media)){var%20n=l.cloneNode(true);n.media='screen';l.parentNode.appendChild(n)}else%20if(/screen/.test(l.media)){l.disabled=true}}}})();">MyPage</a></html> |Permite "editar" una página para quitar lo que queramos y luego imprimirla ([[MrClay|http://mrclay.org/index.php/2006/04/23/mypage-bookmarklet/]])|
| <html><a class="bml" href="javascript:void((function(){var%20a=location.href.replace(/^http%5C:%5C/%5C/(.*)$/,"$1");location.href="http://www.google.com/search?q=cache:"+escape(a);})())">GCaché</a></html> |Consultar la caché de Google de la pagina que esté visitando|
| <html><a class="bml" href="javascript:void(location.href='http://web.archive.org/web/*/'+escape(location.href));">Backups</a></html> |Busca copias antiguas de la página actual|
| <html><a class="bml" href="javascript:(function(){var D=document; D.body.normalize(); F(D.body); function F(n){var u,A,M,R,c,x; if(n.nodeType==3){ u=n.data.search(/https?\:\/\/[^\s]*[^.,;'&quot;&gt;\s\)\]]/); if(u&gt;=0) { M=n.splitText(u); R=M.splitText(RegExp.lastMatch.length); A=document.createElement(&quot;A&quot;); A.href=M.data; A.appendChild(M); R.parentNode.insertBefore(A,R); } }else if(n.tagName!=&quot;STYLE&quot; &amp;&amp; n.tagName!=&quot;SCRIPT&quot; &amp;&amp; n.tagName!=&quot;A&quot;)for(c=0;x=n.childNodes[c];++c)F(x); } })();">Linkify</a></html> |Convierte ~URLs en texto plano en enlaces "pinchables"|
| <html><a class="bml" href="javascript:location.href = 'http://www.pagereboot.com/?url=' + location.href;">Autorrecarga</a></html> |Recarga la página automáticamente cada X segundos|
| <html><a class="bml" href="javascript:void(location.href='http://'%20+%20location.host%20+%20'/robots.txt')">robots.txt</a></html> |Ver el fichero robots.txt del dominio actual|
| <html><a class="bml" href="javascript:void(prompt('',gApplication.getMap().getCenter()));">GMLatLong</a></html> |Para calcular la Latitud y Longitud de un mapa que estés viendo en Google Maps|
| <html><a class="bml" href="javascript:alert(document.lastModified)">Actualizada</a></html> |Muestra cuando se ha modificado por última vez la página|
| <html><a class="bml" href="javascript:var%20fullTOCText%20=%20%22Table%20of%20Contents%22;%20var%20hideBtnText%20=%20%22\u00a0X\u00a0%22;%20var%20RXmatch%20=%20/^h[1-4]$/i;%20var%20XPmatch%20=%20%22//h1|//h2|//h3|//h4%22;%20var%20resetSelect%20=%20true;%20var%20showHide%20=%20true;%20var%20useCookie%20=%20false;%20var%20addMenuItem%20=%20true;%20function%20f()%20{%20if%20(document.getElementsByTagName(%22html%22).length%20&&%20(%20document.getElementsByTagName('h1').length%20||%20document.getElementsByTagName('h2').length%20||%20document.getElementsByTagName('h3').length%20||%20document.getElementsByTagName('h4').length%20)%20&&%20(!useCookie%20||%20(useCookie%20&&%20getCookie('autotoc_hide')!='true')))%20{%20var%20aHs%20=%20getHTMLHeadings();%20if%20(aHs.length%3E1)%20{%20var%20body%20=%20document.getElementsByTagName('body')[0];%20body.style.marginBottom%20=%20%2224px%20!important%22;%20addCSS(%20'#js-toc%20{position:%20fixed;%20left:%200;%20right:%200;%20top:%20auto;%20bottom:%200;%20width:%20100%;%20display:%20block;%20border-top:%201px%20solid%20#777;%20background:%20#ddd;%20margin:%200;%20padding:%203px;%20z-index:%209999;%20}\n'+%20'#js-toc%20select%20{%20font:%208pt%20verdana,%20sans-serif;%20margin:%200;%20margin-left:5px;%20background:%20#fff;%20color:%20#000;%20float:%20left;%20padding:%200;%20vertical-align:%20bottom;}\n'+%20'#js-toc%20option%20{%20font:%208pt%20verdana,%20sans-serif;%20color:%20#000;%20}\n'+%20'#js-toc%20.hideBtn%20{%20font:%20bold%208pt%20verdana,%20sans-serif%20!important;%20float:%20left;%20margin-left:%202px;%20margin-right:%202px;%20padding:%201px;%20border:%201px%20solid%20#999;%20background:%20#e7e7e7;%20}\n'+%20'#js-toc%20.hideBtn%20a%20{%20color:%20#333;%20text-decoration:%20none;%20background:%20transparent;}%20#js-toc%20.hideBtn%20a:hover%20{%20color:%20#333;%20text-decoration:%20none;%20background:%20transparent;}'%20);%20var%20toc%20=%20document.createElement(window.opera||showHide?'tocdiv':'div');%20toc.id%20=%20'js-toc';%20if%20(showHide)%20{%20var%20hideDiv%20=%20document.createElement('div');%20hideDiv.setAttribute('class','hideBtn');%20var%20hideLink%20=%20document.createElement('a');%20hideLink.setAttribute(%22href%22,%22#%22);%20hideLink.setAttribute(%22onclick%22,useCookie?%22document.getElementById('js-toc').style.display%20=%20'none';%20document.cookie%20=%20'autotoc_hide=true;%20path=/';%20return%20false;%22:%22document.getElementById('js-toc').style.display%20=%20'none';%22);%20hideLink.appendChild(document.createTextNode(hideBtnText));%20hideDiv.appendChild(hideLink);%20toc.appendChild(hideDiv);%20}%20tocSelect%20=%20document.createElement('select');%20tocSelect.setAttribute(%22onchange%22,%20%22if(this.value){function%20flash(rep,delay)%20{%20for%20(var%20i=rep;i%3E0;i--)%20{window.setTimeout('el.style.background=\%22#ff7\%22;',delay*i*2);window.setTimeout('el.style.background=elbg',delay*((i*2)+1));};};%20elid%20=%20this.value;%20el=document.getElementById(elid);%20elbg=el.style.background;%20location.href='#'+elid;%20flash(5,100);%22+(resetSelect?%22this.selectedIndex=0;}%22:%22}%22));%20tocSelect.id%20=%20'toc-select';%20tocEmptyOption%20=%20document.createElement('option');%20tocEmptyOption.setAttribute('value','');%20tocEmptyOption.appendChild(document.createTextNode(fullTOCText));%20tocSelect.appendChild(tocEmptyOption);%20toc.appendChild(tocSelect);%20document.body.appendChild(toc);%20for%20(var%20i=0,aH;aH=aHs[i];i++)%20{%20if%20(aH.offsetWidth)%20{%20op%20=%20document.createElement(%22option%22);%20op.appendChild(document.createTextNode(gs(aH.tagName)+getInnerText(aH).substring(0,100)));%20var%20refID%20=%20aH.id%20?%20aH.id%20:%20aH.tagName+'-'+(i*1+1);%20op.setAttribute(%22value%22,%20refID);%20document.getElementById(%22toc-select%22).appendChild(op);%20aH.id%20=%20refID;%20}%20}%20}%20}%20};%20function%20autoTOC_toggleDisplay()%20{%20if%20(document.getElementById('js-toc'))%20{%20if%20(document.getElementById('js-toc').style.display%20==%20'none')%20{%20document.getElementById('js-toc').style.display%20=%20'block';%20if%20(useCookie)%20{document.cookie%20=%20'autotoc_hide=;%20path=/';}%20}%20else%20{%20document.getElementById('js-toc').style.display%20=%20'none';%20if%20(useCookie)%20{document.cookie%20=%20'autotoc_hide=true;%20path=/';}%20};%20}%20else%20{%20if%20(useCookie)%20{document.cookie%20=%20'autotoc_hide=;%20path=/';}%20f();%20}%20}%20function%20getHTMLHeadings()%20{%20function%20acceptNode(node)%20{%20if%20(node.tagName.match(RXmatch))%20{%20if%20(node.value+''!='')%20{%20return%20NodeFilter.FILTER_ACCEPT;%20}%20}%20return%20NodeFilter.FILTER_SKIP;%20}%20outArray%20=%20new%20Array();%20if%20(document.evaluate)%20{%20var%20nodes%20=%20document.evaluate(XPmatch,%20document,%20null,%20XPathResult.ANY_TYPE,%20null);%20var%20thisHeading%20=%20nodes.iterateNext();%20var%20j%20=%200;%20while%20(thisHeading)%20{%20if%20(thisHeading.textContent+''!='')%20{%20outArray[j++]%20=%20thisHeading;%20}%20thisHeading%20=%20nodes.iterateNext();%20}%20}%20else%20{%20var%20els%20=%20document.getElementsByTagName(%22*%22);%20var%20j%20=%200;%20for%20(var%20i=0,el;el=els[i];i++)%20{%20if%20(el.tagName.match(RXmatch))%20outArray[j++]%20=%20el;%20}%20}%20return%20outArray;%20}%20function%20addCSS(css)%20{%20var%20head,%20styleLink;%20head%20=%20document.getElementsByTagName('head')[0];%20if%20(!head)%20{%20return;%20}%20styleLink%20=%20document.createElement('link');%20styleLink.setAttribute('rel','stylesheet');%20styleLink.setAttribute('type','text/css');%20styleLink.setAttribute('href','data:text/css,'+escape(css));%20head.appendChild(styleLink);%20}%20function%20gs(s){%20s%20=%20s.toLowerCase();%20var%20ret%20=%20%22%22;%20for%20(var%20i=1;%20i%3C(s.substring(1)*1);i++)%20{%20ret%20=%20ret%20+%20%22\u00a0%20\u00a0%20%22;%20}%20return%20ret;%20}%20function%20getInnerText(el)%20{%20var%20s='';%20for%20(var%20i=0,node;%20node=el.childNodes[i];%20i++)%20{%20if%20(node.nodeType%20==%201)%20s%20+=%20getInnerText(node);%20else%20if%20(node.nodeType%20==%203)%20s%20+=%20node.nodeValue;%20}%20return%20s;%20}%20function%20getCookie(cname)%20{%20var%20namesep%20=%20cname%20+%20%22=%22;%20var%20ca%20=%20document.cookie.split(';');%20for(var%20i=0,%20c;%20c=ca[i];%20i++)%20{%20c%20=%20c.replace(/^\s*|\s*$/g,%22%22);%20if%20(c.indexOf(namesep)%20==%200)%20{%20return%20c.substring(namesep.length,c.length);%20}%20}%20return%20null;%20}%20f();">AutoTOC</a></html> |Crear una Tabla de Contenidos (TOC) de la página actual ([[AutoTOC|http://electricdevelopment.blogspot.com/2005/11/new-release-autotoc-16.html]])|
| <html><a class="bml" href="javascript:var%20selTxt='';if(window.getSelection)%20selTxt=window.getSelection();else%20if(document.getSelection)%20selTxt=document.getSelection();void(document.location.href='http://silmaril.ie/cgi-bin/uncgi/acronyms?'+escape(selTxt));">Acrónimo</a></html> |Busca el Acrónimo Informático previamente seleccionado|
| <html><a class="bml" href="javascript:{function%20rest(d){d.oncontextmenu=d.onmousedown=d.onmouseup=d.click=d.onselectstart=d.ondragstart=null;}try{rest(document);for(var%20i=0;f=frames[i];i++)rest(f.document);}catch(e){}}">Liberar Ratón</a></html> |Permite liberar el ratón si la página no deja hacer ciertas cosas con él, como cuando desactivan el botón derecho|
| <html><a class="bml" href="javascript:void(location.href='http://tinyurl.com/create.php?url='+encodeURIComponent(location.href))">TinyURL</a></html> |Convertir una URL larga, en una URL mucho más corta|
| <html><a class="bml" href="javascript:void(window.open('http://www.pdfdownload.org/web2pdf/Default.aspx?left=0&right=0&top=0&bottom=0&page=0&cURL='+document.location.href));">Web a PDF</a></html> |Convertir una página web a pdf ([[pdfdownload|http://www.pdfdownload.org]])|
| <html><a class="bml" href="javascript:void(location.href='http://www.webshotspro.com/screenshot.php?bookmarklet=true&url='+location.href)">Screenshot</a></html> |Tomar un screenshot (o pantallazo) de una página web en jpg ([[Webshotspro|http://www.webshotspro.com]])|
| <html><a class="bml" href="javascript:var%20s='';if(window.getSelection)s=window.getSelection();else%20if(document.getSelection)s=document.getSelection();if(s=='')%7Bvoid(p=prompt('Search%20Google:',''));if(p)void(location.href='http://www.google.com/cse?cx=013170454177197411673%3Aro1ipxnsecu&ie=UTF-8&q='+escape(p));%7Delse%20void(window.location.href='http://www.google.com/cse?cx=013170454177197411673%3Aro1ipxnsecu&ie=UTF-8&q='+escape(s));">ESSI-RHEL Search</a></html> |Y por último, un bookmarklet que permite buscar lo que tengamos seleccionado, en un buscador especializado en RHEL, creado por mi|


Aquí tienes muchos más:
https://www.squarefree.com/bookmarklets/
http://www.bookmarklets.com/tools/categor.html
http://www.bmlet.com/Bookmarklets/
Este calendario se ha creado a partir de los datos mostrados en la página de formación de Red Hat: [[Cursos|http://www.redhat.es/training/dates.php?course=&location=#ES]].
<html>
<iframe src="http://www.google.com/calendar/embed?height=700&amp;wkst=2&amp;hl=es&amp;bgcolor=%23ffffff&amp;src=eohkuifn09ofaf6d82o2rp3290%40group.calendar.google.com&amp;color=%23A32929&amp;src=diardl34h4p2qcaolb43ahrs4o%40group.calendar.google.com&amp;color=%23BE6D00&amp;src=linux.release.stable%40gmail.com&amp;color=%23BE6D00&amp;ctz=Europe%2FMadrid" style=" border-width:0 " width="100%" height="700" frameborder="0" scrolling="no"></iframe>
</html>
Esta página es un chuletario de la sintaxis de TiddlyWiki. Esta sintaxis es propia, y no es común a otros Wikis.

!Principal
* Wiki Links: WikiLink (for words that appear strung together) or [[wiki link]] (for any other terms)
* Offsite Links http://www.tiddlywiki.com/ (to display the URL) or [[TiddlyWiki Homepage|http://www.tiddlywiki.com/]] (to display your own title)
* Comentarios Ocultos: Entre {{{/% texto %/}}} /%Este texto solo se ve cuando se edita.%/
* No Tiddlers: anteponiendo la tilde ({{{~}}}) a la WikiWord. Ejemplo: ~TiddlyWiki.

Like most wikis, ~TiddlyWiki supports a range of simplified character formatting:
| !To get | !Type this |h
| ''Bold'' | {{{''Bold''}}} |
| --Strikethrough-- | {{{--Strikethrough--}}} |
| __Underline__ | {{{__Underline__}}} (that's two underline characters) |
| //Italic// | {{{//Italic//}}} |
| Superscript: 2^^3^^=8 | {{{2^^3^^=8}}} |
| Subscript: a~~ij~~ = -a~~ji~~ | {{{a~~ij~~ = -a~~ji~~}}} |
| @@highlight@@ | {{{@@highlight@@}}} |

; definition list, term 
: definition list, description 
{{{
; definition list, term 
: definition list, description
}}}
<<<
The highlight can also accept CSS syntax to directly style the text:
@@color:green;green coloured@@
@@background-color:#ff0000;color:#ffffff;red coloured@@
@@text-shadow:black 3px 3px 8px;font-size:18pt;display:block;margin:1em 1em 1em 1em;border:1px solid black;Access any CSS style@@
o:
Format blocks of CSS definitions as:
{{{
/*{{{*/
div {color: #ff0000;}
/*}}}*/
}}}
It will be displayed as:
/*{{{*/
div {color: #ff0000;}
/*}}}*/
<<<

Línea Horizontal:
{{{
----
}}}
----


!!Cabeceras
!H1 Esta página es un chuletario de la sintaxis de TiddlyWiki. Esta sintaxis es propia, y no es común a otros Wikis.
!!H2 Esta página es un chuletario de la sintaxis de TiddlyWiki. Esta sintaxis es propia, y no es común a otros Wikis.
!!!H3 Esta página es un chuletario de la sintaxis de TiddlyWiki. Esta sintaxis es propia, y no es común a otros Wikis.
!!!!H4 Esta página es un chuletario de la sintaxis de TiddlyWiki. Esta sintaxis es propia, y no es común a otros Wikis.
!!!!!H5 Esta página es un chuletario de la sintaxis de TiddlyWiki. Esta sintaxis es propia, y no es común a otros Wikis.
 !!!!!H5 Esto no es un título porque empieza la línea con un espacio en blanco.


!!Formatos de Fechas
* DDD - day of week in full (eg, "Monday")
* DD - day of month, 0DD - adds a leading zero
* MMM - month in full (eg, "July")
* MM - month number, 0MM - adds leading zero
* YYYY - full year, YY - two digit year
* hh - hours, 0hh añade un cero delante si la hora tiene una sola cifra
* mm - minutes, 0mm añade un cero delante si los minutos tienen una sola cifra
* ss - seconds


!!Listas
Sin numeración ({{{*}}}):
* item 1
* item 2
** sublist 1
*** subsublist 1
*** subsublist 2
** sublist 2
* item 3

Con numeración ({{{#}}}):
# item 1
# item 2
## sublist 1
### subsublist 1
### subsublist 2
## sublist 2
# item 3

Borde ({{{>}}} o lineas entre {{{<<<}}} y {{{<<<}}}):
>level 1
>level 1
>>level 2
>>level 2
>>>level 3
>>>level 3
>>level 2
>level 1
<<<
*level 1
<<<
level 0


!!Tablas
You can create a table by enclosing text in sets of vertical bars (||, or shift-backslash on your keyboard). 
|!Headings: add an exclamation point (!) right after the vertical bar.|!Heading2|!Heading3|
|Row 1, Column 1|Row 1, Column 2|Row 1, Column 3|
|>|>|Have one row span multiple columns by using a >|
|Have one column span multiple rows by using a ~|>| Use a space to right-align text in a cell|
|~|>| Enclose text in a cell with spaces to center it |
|>|>|bgcolor(grey):Add color to a cell using bgcolor(yourcolorhere):|
|Add a caption by ending the table with a vertical bar followed by a c|c

*sample:
|!th1111111111|!th2222222222|
|>| colspan |
| rowspan |left|
|~| right|
|bgcolor(#a0ffa0):colored| center |
|caption|c

|Standard Periodic Table (ref. Wikipedia)|c
|| !1 | !2 |!| !3 | !4 | !5 | !6 | !7 | !8 | !9 | !10 | !11 | !12 | !13 | !14 | !15 | !16 | !17 | !18 |
|!1|bgcolor(#a0ffa0): @@color(red):H@@ |>|>|>|>|>|>|>|>|>|>|>|>|>|>|>|>||bgcolor(#c0ffff): @@color(red):He@@ |
|!2|bgcolor(#ff6666): Li |bgcolor(#ffdead): Be |>|>|>|>|>|>|>|>|>|>||bgcolor(#cccc99): B |bgcolor(#a0ffa0): C |bgcolor(#a0ffa0): @@color(red):N@@ |bgcolor(#a0ffa0): @@color(red):O@@ |bgcolor(#ffff99): @@color(red):F@@ |bgcolor(#c0ffff): @@color(red):Ne@@ |
|!3|bgcolor(#ff6666): Na |bgcolor(#ffdead): Mg |>|>|>|>|>|>|>|>|>|>||bgcolor(#cccccc): Al |bgcolor(#cccc99): Si |bgcolor(#a0ffa0): P |bgcolor(#a0ffa0): S |bgcolor(#ffff99): @@color(red):Cl@@ |bgcolor(#c0ffff): @@color(red):Ar@@ |
|!4|bgcolor(#ff6666): K |bgcolor(#ffdead): Ca ||bgcolor(#ffc0c0): Sc |bgcolor(#ffc0c0): Ti |bgcolor(#ffc0c0): V |bgcolor(#ffc0c0): Cr |bgcolor(#ffc0c0): Mn |bgcolor(#ffc0c0): Fe |bgcolor(#ffc0c0): Co |bgcolor(#ffc0c0): Ni |bgcolor(#ffc0c0): Cu |bgcolor(#ffc0c0): Zn |bgcolor(#cccccc): Ga |bgcolor(#cccc99): Ge |bgcolor(#cccc99): As |bgcolor(#a0ffa0): Se |bgcolor(#ffff99): @@color(green):Br@@ |bgcolor(#c0ffff): @@color(red):Kr@@ |
|!5|bgcolor(#ff6666): Rb |bgcolor(#ffdead): Sr ||bgcolor(#ffc0c0): Y |bgcolor(#ffc0c0): Zr |bgcolor(#ffc0c0): Nb |bgcolor(#ffc0c0): Mo |bgcolor(#ffc0c0): Tc |bgcolor(#ffc0c0): Ru |bgcolor(#ffc0c0): Rh |bgcolor(#ffc0c0): Pd |bgcolor(#ffc0c0): Ag |bgcolor(#ffc0c0): Cd |bgcolor(#cccccc): In |bgcolor(#cccccc): Sn |bgcolor(#cccc99): Sb |bgcolor(#cccc99): Te |bgcolor(#ffff99): I |bgcolor(#c0ffff): @@color(red):Xe@@ |
|!6|bgcolor(#ff6666): Cs |bgcolor(#ffdead): Ba |bgcolor(#ffbfff):^^*1^^|bgcolor(#ffc0c0): Lu |bgcolor(#ffc0c0): Hf |bgcolor(#ffc0c0): Ta |bgcolor(#ffc0c0): W |bgcolor(#ffc0c0): Re |bgcolor(#ffc0c0): Os |bgcolor(#ffc0c0): Ir |bgcolor(#ffc0c0): Pt |bgcolor(#ffc0c0): Au |bgcolor(#ffc0c0): @@color(green):Hg@@ |bgcolor(#cccccc): Tl |bgcolor(#cccccc): Pb |bgcolor(#cccccc): Bi |bgcolor(#cccc99): Po |bgcolor(#ffff99): At |bgcolor(#c0ffff): @@color(red):Rn@@ |
|!7|bgcolor(#ff6666): Fr |bgcolor(#ffdead): Ra |bgcolor(#ff99cc):^^*2^^|bgcolor(#ffc0c0): Lr |bgcolor(#ffc0c0): Rf |bgcolor(#ffc0c0): Db |bgcolor(#ffc0c0): Sq |bgcolor(#ffc0c0): Bh |bgcolor(#ffc0c0): Hs |bgcolor(#ffc0c0): Mt |bgcolor(#ffc0c0): Ds |bgcolor(#ffc0c0): Rg |bgcolor(#ffc0c0): @@color(green):Uub@@ |bgcolor(#cccccc): Uut |bgcolor(#cccccc): Uuq |bgcolor(#cccccc): Uup |bgcolor(#cccccc): Uuh |bgcolor(#fcfecc): @@color(#cccccc):Uus@@ |bgcolor(#ecfefc): @@color(#cccccc):Uuo@@ |

| !Lanthanides^^*1^^|bgcolor(#ffbfff): La |bgcolor(#ffbfff): Ce |bgcolor(#ffbfff): Pr |bgcolor(#ffbfff): Nd |bgcolor(#ffbfff): Pm |bgcolor(#ffbfff): Sm |bgcolor(#ffbfff): Eu |bgcolor(#ffbfff): Gd |bgcolor(#ffbfff): Tb |bgcolor(#ffbfff): Dy |bgcolor(#ffbfff): Ho |bgcolor(#ffbfff): Er |bgcolor(#ffbfff): Tm |bgcolor(#ffbfff): Yb |
| !Actinides^^*2^^|bgcolor(#ff99cc): Ac |bgcolor(#ff99cc): Th |bgcolor(#ff99cc): Pa |bgcolor(#ff99cc): U |bgcolor(#ff99cc): Np |bgcolor(#ff99cc): Pu |bgcolor(#ff99cc): Am |bgcolor(#ff99cc): Cm |bgcolor(#ff99cc): Bk |bgcolor(#ff99cc): Cf |bgcolor(#ff99cc): Es |bgcolor(#ff99cc): Fm |bgcolor(#ff99cc): Md |bgcolor(#ff99cc): No |

*Chemical Series of the Periodic Table
**@@bgcolor(#ff6666): Alkali metals@@
**@@bgcolor(#ffdead): Alkaline earth metals@@
**@@bgcolor(#ffbfff): Lanthanides@@
**@@bgcolor(#ff99cc): Actinides@@
**@@bgcolor(#ffc0c0): Transition metals@@
**@@bgcolor(#cccccc): Poor metals@@
**@@bgcolor(#cccc99): Metalloids@@
**@@bgcolor(#a0ffa0): Nonmetals@@
**@@bgcolor(#ffff99): Halogens@@
**@@bgcolor(#c0ffff): Noble gases@@

*State at standard temperature and pressure
**those in @@color(red):red@@ are gases
**those in @@color(green):green@@ are liquids
**those in black are solids


!!Pestañas
Here's a Tip describing how to create a tabbed, self-referencing To Do list submitted by Alvin Orzechowski. It's a simple, elegant solution. Go to [[THIS LINK|http://tiddlywikitips.com/Tip9example.html]] to see an example of this in action!
 
TiddlyWiki's Tag macro is a very handy way to create a Tiddler that displays the contents of two or more other Tiddlers. In the original [[TiddlyWiki|http://TiddlyWiki.com/]] you can see how this macro is being used in the right column, under options. But using Tags is bothersome if the contents of the Tiddlers are expected to change regularly. For example, in a To Do list.

Typically a To Do list is a list of three lists grouped by priority, say 1 (most important), 2 (important), and 3 (not so important). Begin by creating a Tiddler for each of these priority lists:

Tiddler "~ToDo1" contains:
{{{
![[Urgent|ToDo1]]
*Item 1
*Item 2
}}}

Tiddler "~ToDo2" contains:
{{{
![[Important|ToDo2]]
*Item 1
*Item 2
}}}

Tiddler "~ToDo3" contains:
{{{
![[Need To Do|ToDo3]]
*Item 1
*Item 2
}}}

Each of the above Tiddlers begins with a title:
{{{
![[list identifier|Tiddler id]]
}}}

This is followed by an unordered list. The formatting can be altered to suite.

Then create a Tiddler to combine these lists:

Tiddler "~ToDoList" contains:
{{{
<<tabs txtFavourite
Urgent "Priority 1" ToDo1
Important "Priority 2" ToDo2
"Need To Do" "Priority 3" ToDo3
>>
}}}

Now when you open the ~ToDoList Tiddler you will see tabs for each of your priority lists, and each list will have its own title. Click on a list's title to bring up that list's Tiddler and edit as needed.


!!Imágenes
{{{
[img[title|filename]]
[img[filename]]
[img[title|filename][link]]
[img[filename][link]]
}}}
Images can be included by their filename or full URL. It's good practice to include a title to be shown as a tooltip, and when the image isn't available. An image can also link to another tiddler or or a URL
[img[FRTG|imagenes/FRTG_teclas_115x78.jpg][http://www.ruiz-tapiador.com]]
{{{
[img[FRTG|imagenes/FRTG_teclas_115x78.jpg]]
[img[FRTG|imagenes/FRTG_teclas_115x78.jpg][http://www.ruiz-tapiador.com]]
[img[imagenes/FRTG_teclas_115x78.jpg]]
[img[imagenes/FRTG_teclas_115x78.jpg][http://www.ruiz-tapiador.com]]
}}}
The tooltip is optional.

[<img[Izquierda|imagenes/FRTG_teclas_115x78.jpg]][>img[Derecha|imagenes/FRTG_teclas_115x78.jpg]]You can also float images to the left or right: the forest is left aligned with {{{[<img[}}}, and the field is right aligned with {{{[>img[}}}.
@@clear(left):clear(right):display(block):You can use CSS to clear the floats@@
{{{
[<img[Izquierda|imagenes/FRTG_teclas_115x78.jpg]]
[>img[Derecha|imagenes/FRTG_teclas_115x78.jpg]]
}}}


!!Anidar Contenidos
Within a CustomStyleSheet, you can include the text of another tiddler by including it in double square brackets. For example, if the tiddler MyFavouriteColour contains {{{#ff763e}}}, and the StyleSheet tiddler contained:

{{{
#mainMenu {background-color:[[MyFavouriteColour]];}
#sidebarOptions {background-color: [[MyFavouriteColour]];}
#sidebarTabs {background-color: [[MyFavouriteColour]];}
}}}

Then, the effect is that each CSS declaration will be set to {{{background-color: #ff763e;}}}. The benefit is that if your favourite colour should change, it's only got to be modified in one place.

Of course, you can use this mechanism to redirect any part of a stylesheet, not just colours. And you can nest references for more complex effects.


!!Anidar Html
TiddlyWiki lets you write ordinary HTML by enclosing it in {{{<html>}}} and {{{</html>}}}:

<html>
<a href="javascript:;" onclick="onClickTiddlerLink(event);" tiddlyLink="TiddlyWiki" style="background-color: yellow;">Link to wikiwords from HTML</a>
</html>

The source for the above is:

{{{
<html>
<div style="background-color: yellow;">
<a href="javascript:;" onclick="onClickTiddlerLink(event);" tiddlyLink="Macros">Link to wikiwords from HTML</a>
</div>
</html>
}}}

HTML can enable some exotic new features (like [[embedding GMail and Outlook|http://groups.google.com/group/TiddlyWiki/browse_thread/thread/d363303aff5868d0/056269d8409d121f?lnk=st&q=embedding+gmail&rnum=1#056269d8409d121f]] in a TiddlyWiki). But, care needs to be taken with including things like JavaScript code. For example, this Flickr badge doesn't work in any of the browsers I've tried:

<html>
<!-- Start of Flickr Badge -->
<style type="text/css">
#flickr_badge_source_txt {padding:0; font: 11px Arial, Helvetica, Sans serif; color:#666666;}
#flickr_badge_icon {display:block !important; margin:0 !important; border: 1px solid rgb(0, 0, 0) !important;}
#flickr_icon_td {padding:0 5px 0 0 !important;}
.flickr_badge_image {text-align:center !important;}
.flickr_badge_image img {border: 1px solid black !important;}
#flickr_www {display:block; padding:0 10px 0 10px !important; font: 11px Arial, Helvetica, Sans serif !important; color:#3993ff !important;}
#flickr_badge_uber_wrapper a:hover,
#flickr_badge_uber_wrapper a:link,
#flickr_badge_uber_wrapper a:active,
#flickr_badge_uber_wrapper a:visited {text-decoration:none !important; background:inherit !important;color:#3993ff;}
#flickr_badge_wrapper {}
#flickr_badge_source {padding:0 !important; font: 11px Arial, Helvetica, Sans serif !important; color:#666666 !important;}
</style>
<table id="flickr_badge_uber_wrapper" cellpadding="0" cellspacing="10" border="0"><tr><td><a href="http://www.flickr.com" id="flickr_www">www.<strong style="color:#3993ff">flick<span style="color:#ff1c92">r</span></strong>.com</a><table cellpadding="0" cellspacing="10" border="0" id="flickr_badge_wrapper">
<script type="text/javascript" src="http://www.flickr.com/badge_code_v2.gne?count=5&display=latest&size=t&layout=v&source=user&user=35468148136%40N01"></script>
</table>
</td></tr></table>
<!-- End of Flickr Badge -->
</html>


!!Gradientes
<<gradient horiz #bbbbbb #eeeeee #ffffff>>The new GradientMacro allows simple horizontal and vertical coloured gradients. They are constructed from coloured HTML elements, and don't require any images to work.>>
The GradientMacro is an ExtendedMacro that processes the text after it up until the next '>>' sequence. It looks like this:
{{{
<<gradient vert #ffffff #ffdddd #ff8888>>gradient fill>>
}}}
The first parameter can be ''vert'' or ''horiz'' to indicate the direction of the gradient. The following parameters are two or more colours (CSS RGB(r,g,b) format is also acceptable). The GradientMacro constructs a smooth linear gradient between each of the colours in turn.

| <<gradient vert #ffffff #ffdddd #ff8888>>No images were harmed in the making of this gradient fill>> | <<gradient vert #ffffff #ddffdd #88ff88>>No images were harmed in the making of this gradient fill>> | <<gradient vert #ffffff #ddddff #8888ff>>No images were harmed in the making of this gradient fill>> |

Inline CSS definitions can be added to gradient filles like this:

<<gradient vert #000000 #660000 #aa2222>>color:#ffffff;font-size:12pt;Darkness>>
{{{
<<gradient vert #000000 #660000 #aa2222>>color:#ffffff;font-size:12pt;Darkness>>
}}}
Background: #fff
Foreground: #000
PrimaryPale: #eee
   /%PrimaryPale: #8cf%/
   /% texto seleccionado %/
PrimaryLight: #d00  
   /% parte arriba cabecera %/
PrimaryMid: #400
   /% parte abajo cabecera y tiddlers %/
PrimaryDark: #400
   /% Tiddlers %/
SecondaryPale: #ffc
   /% Amarillito claro %/
SecondaryLight: #fe8
   /% Amarillito claro %/
SecondaryMid: #db4
   /% Amarillo %/
SecondaryDark: #444
   /% Amarillo Oscuro, Títulos de Tiddler abiertos %/
TertiaryPale: #eee
TertiaryLight: #ccc
TertiaryMid: #999
TertiaryDark: #666
Error: #f88
*mii-tool (obsoleto)
*ethtool
*netconfig
*system-config-network
*ifconfig
*ifup
*ifdown
*ip
*route
*arp
*ping
*traceroute
*tracepath
*mtr
*nc -l -p 1111   ;   nc 127.0.0.1 1111 -> (netcat)
*netstat -putanve
*tcpdump
*iptraf
*wireshark (antiguo ethereal)
*wireshark-gnome (antiguo ethereal-gnome)
*lsof -i tcp
*dig
*nslookup
*host
*whois
*getent
*dhclient
*[[nmap]]
*showmount -e server1
*smbclient -L 
*nmblookup \* -T
*ftp
*wget
*curl
*rsync
*ssh
*scp
* ''file -s'' -> lee la cabecera de un fichero o sistema de ficheros, y dice de que tipo es.
* ''fuser'' -> especifica el PID del proceso que está accediendo a un directorio dado.
* ''lsof -i tcp'' -> especifica ficheros abiertos del sistema en un directorio dado.
* ''stat'' -> información del inodo del fichero dado.
* ''strace'' -> debug del comando dado.
* ''script'' -> almacena todo lo que se muestra por pantalla en un fichero.
* ''[[screen]] -r -d'' -> permite reconectar cuando se pierde una conexión.
* ''xargs'' -> pasándole como parámetro un comando, permite a ese comando leer los parámetros que se le pasan a través de una tubería o //pipe//.
* ''tee'' -> duplica la salida estandar.
* ''mtools'' -> utilidades de ~MS-DOS en el sistema.
* ''watch'' -> ejecuta cada 2 segundos el comando que se le indique.
* ''mc'' -> clon del Comandante Norton.
* ''ldd'' -> lista las librerias enlazadas con un ejecutable dado.
* ''sosreport'' -> crea un fichero de información con el estado actual del sistema.
* ''run-parts'' -> ejecuta todos los ficheros de un directorio pasado como parámetro
!!/etc/sysconfig/network-scripts/ifcfg-eth0
/*{{{*/
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.17.100
NETMASK=255.255.255.0
GATEWAY=192.168.17.1
ONBOOT=yes
/*}}}*/
*@@¡No se pueden hacer copias de seguridad en este directorio!@@, las interpreta como otro interfaz de red, es decir, el sistema ve dos interfaces de red con distinto nombre de fichero, pero internamente con el mismo nombre de interfaz, y distinta configuración. Por ejemplo, si copiamos ifcfg-eth0 en ifcfg-eth0.copia, el sistema cree que hay un interfaz llamado eth0.copia que internamente se llama DEVICE=eth0, con lo que cree que hay dos fichero de configuración de eth0 y puede tomar la configuración de uno u otro. En definitiva, si hacemos una copia de seguridad de algún fichero de este directorio, lo tenemos que poner en otro directorio distinto.

*@@¡Este fichero puede estar triplicado!@@, si hemos usado la herramienta de configuración gráfica, triplica el fichero: 
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/networking/devices/ifcfg-eth0
/etc/sysconfig/networking/profiles/default/ifcfg-eth0
*Resuelve el potencial problema creando un enlace duro entre los tres, pero se puede romper el enlace. Para comprobar que está bien, hay que ejecutar {{{locate -r ifcfg-eth0$ | xargs ls -i1}}} y ver que los tres ficheros tienen el mismo inodo. En caso de que esté mal, hay que rehacer de forma manual el enlace duro.
*Para rehacer el enlace duro, primero borramos los dos ficheros creados por la herramienta gráfica: {{{rm -f  /etc/sysconfig/networking/devices/ifcfg-eth0 /etc/sysconfig/networking/profiles/default/ifcfg-eth0}}} . Y después rehacemos los enlaces duros volviendo a ejecutar la herramienta gráfica o con las órdenes: 
**{{{ln /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/networking/devices/ifcfg-eth0}}} 
**{{{ln /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/networking/profiles/default/ifcfg-eth0}}}

!!/etc/sysconfig/network
/*{{{*/
NETWORKING=yes
HOSTNAME=babylon5.ruiz-tapiador.com
GATEWAY=192.168.17.1
NISDOMAIN=B5NIS
/*}}}*/
* El parámetro GATEWAY puede estar tanto en este fichero como en el anterior. En caso de que se presente en los dos, tiene validez el de la interfaz en concreto. Si se pone aquí, es para aquellos interfaces de red que no lo declaren explícitamente.

!!/etc/resolv.conf
/*{{{*/
search ruiz-tapiador.com redhat.com
nameserver 192.168.17.1
nameserver 208.67.222.222
/*}}}*/

!!/etc/hosts
/*{{{*/
127.0.0.1       localhost.localdomain   localhost
192.168.17.100   babylon5.ruiz-tapiador.com     babylon5
/*}}}*/

!!/etc/host.conf
/*{{{*/
order hosts,bind
/*}}}*/
* Pulsando CTRL+U borramos toda la línea del prompt.
* Pulsando CTRL+R buscamos en el histórico de comandos.
* Pulsando CTRL+L limpiamos la pantalla sin limpiar la línea del prompt.
* Pulsando CTRL+D salimos del entorno actual (es lo mismo que teclear {{{exit}}}).
[[Inicio]]
Para que el Touchpad se desactive al conectar un ratón USB, y al contrario, que el Touchpad se active al desconectar el ratón, hay que ejecutar (como root) lo siguiente 

{{{
cat >>/etc/udev/rules.d/01-touchpad.rules <<EOF
ACTION=="add", SUBSYSTEM=="input", ID_CLASS="mouse", RUN+="/usr/bin/synclient TouchpadOff=1"
ACTION=="remove", SUBSYSTEM=="input", ID_CLASS="mouse", RUN+="/usr/bin/synclient TouchpadOff=0"
EOF
}}}

Esto creará un fichero /etc/udev/rules.d/01-touchpad.rules cuyo contenido es
{{{
ACTION=="add", SUBSYSTEM=="input", ID_CLASS="mouse", RUN+="/usr/bin/synclient TouchpadOff=1"
ACTION=="remove", SUBSYSTEM=="input", ID_CLASS="mouse", RUN+="/usr/bin/synclient TouchpadOff=0"
}}}
Vamos a desactivar completamente ipv6, por dos razones importantes: porque ralentiza la red, aunque no se use, y porque aunque configuremos la seguridad para ipv4, se suele olvidar hacerlo para ipv6 (por ejemplo, las reglas de firewall para ipv4 no funcionan con ipv6, con lo que podemos tener controlados los puertos en ipv4, pero es muy posible que se dejen abiertos en ipv6).

IMPORTANTE: Hay un cambio de "mentalidad" en RHEL 5.4, en el sentido de que si ~IPv6 está desactivado, da problemas con el bonding (no funciona correctamente). El método correcto ahora es cargar en memoria el módulo, pero con la opción "disable" activa.

Para desactivarlo, lo haremos en 2 pasos:

1.- en {{{/etc/modprobe.conf}}} añadimos la siguiente línea:
{{{
options ipv6 disable=1
}}}

2.- en {{{/etc/hosts}}} comentamos (o borramos) la línea de localhost en ipv6:
{{{
#::1    localhost6.localdomain6 localhost6
}}}

De todos modos, la explicación completa está en http://kbase.redhat.com/faq/docs/DOC-8711
Aunque hay varias formas de hacerlo, la única que nos aseguramos que no vuelva a funcionar, es anular el módulo que se encarga de ello. Para eso editamos el fichero {{{/etc/modprobe.conf}}} , y le añadimos la siguiente orden:
{{{
install pcspkr /bin/true
}}}
una vez hecho esto, lo quitamos de la memoria, y nunca más nos molestará el altavoz:
{{{
modprobe -r pcspkr
}}}
El módulo ''usb_storage'' es el que se encarga de gestionar los dispositivos USB de almacenamiento. Para impedir el uso de estos dispositivos en el sistema, tenemos que deshabilitar este módulo.

En el fichero /etc/modprobe.conf añadimos la siguiente linea:
{{{
install usb_storage wall "Los dispositivos de almacenamiento USB han sido deshabilitados" && /bin/true
}}}

Previo a esto tenemos que asegurarnos de que el módulo usb_storage no está cargado en memoria: 
{{{
modprobe -r usb_storage
}}}

Cada vez que enchufemos un pendrive o disco usb al sistema, mostrará el mensaje anterior y no hará nada al no cargar el módulo, con lo que no se podrá sacar información del sistema mendiante ningún dispositivo USB.
Para cuando hagan ping a tu máquina, que no conteste. Hay dos formas:

* iptables -I OUTPUT -p icmp {{{--}}}icmp-type echo-reply -j DROP
* echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
/%
!!Mantenidos por mí:
*[img[imagenes/es.gif]] [[Buscador|http://www.google.com/coop/cse?cx=013170454177197411673:ro1ipxnsecu]] especializado en Red Hat
*[img[imagenes/es.gif]] [[Buscador|http://www.google.com/coop/cse?cx=013170454177197411673:l9nqdhxdrz4]] especializado en Red Hat Cluster Suite
*[img[imagenes/es.gif]] [[Calendario|http://www.google.com/calendar/embed?src=eohkuifn09ofaf6d82o2rp3290%40group.calendar.google.com&ctz=Europe/Madrid&pvttk=26736853aab6bfaaf7324a1fdbd4fb3f]] de cursos de Red Hat y ~JBoss en España
%/

!!Linux en general:
*[img[imagenes/en.gif]] http://www.yolinux.com - Cientos de enlaces clasificados temáticamente
*[img[imagenes/en.gif]] http://www.tldp.org - The Linux Documentation Project
*[img[imagenes/en.gif]] http://www.howtoforge.com - Linux Tutorials
*[img[imagenes/en.gif]] http://bhami.com/rosetta.html - Equivalencias de comandos entre distintas versiones de UNIX
*[img[imagenes/en.gif]] http://www.linuxrsp.ru/win-lin-soft/table-eng.html - Tabla de equivalencias de software entre Windows y Linux
*[img[imagenes/en.gif]] http://www.linuxappfinder.com - Linux App Finder, catálogo de programas GNU/Linux
*[img[imagenes/en.gif]] http://www-130.ibm.com/developerworks/linux - Página de Linux de IBM

!!Red Hat:
*[img[imagenes/en.gif]] http://www.redhat.com - Red Hat Inc.
*[img[imagenes/es.gif]] http://www.redhat.es - Red Hat España
*[img[imagenes/es.gif]] http://www.redhat.es/training - Cursos oficiales Red Hat en España
*[img[imagenes/en.gif]] https://access.redhat.com/home - Red Hat Customer Portal, (incluye la Knowledgebase)
*[img[imagenes/en.gif]] http://docs.redhat.com/ - Documentación de Red Hat
*[img[imagenes/es.gif]] http://docs.redhat.com/docs/es-ES/index.html - Documentación de Red Hat
*[img[imagenes/es.gif]] http://www.alcancelibre.org/filemgmt/index.php?id=1 - Implementación de Servidores con GNU/Linux, por Joel Barrios Dueñas. El mejor manual en castellano que podáis encontrar.
*[img[imagenes/en.gif]] http://linuxmafia.com/faq/RedHat/rhel-forks.html/ - Clones de Red Hat Enterprise Linux (forks)
*[img[imagenes/en.gif]] http://www.centos.org/ - ~CentOS, Clon libre de Red Hat Enterprise Linux
*[img[imagenes/en.gif]] http://sunsite.rediris.es/mirror/CentOS/6.3/isos/x86_64/ - ~LiveCD y ~LiveDVD de ~CentOS 6.3, clon libre de Red Hat Enterprise Linux 6 Update 3
*[img[imagenes/en.gif]] https://www.scientificlinux.org/news/SL6.3-live - ~LiveCD y ~LiveDVD de Scientific Linux 6.3, clon libre de Red Hat Enterprise Linux 6 Update 3

!!Red Hat Summits Presentations:
*[img[imagenes/en.gif]] [[2012 Presentations|http://www.redhat.com/summit/2012/presentations/]]
*[img[imagenes/en.gif]] [[2011 Presentations|http://www.redhat.com/summit/2011/presentations/]]
*[img[imagenes/en.gif]] [[2010 Presentations|http://www.redhat.com/promo/summit/2010/presentations/]]
*[img[imagenes/en.gif]] [[2009 Presentations|http://www.redhat.com/promo/summit/2009/downloads/]]
*[img[imagenes/en.gif]] [[2008 Presentations|http://www.redhat.com/promo/summit/2008/downloads/]]
*[img[imagenes/en.gif]] [[2007 Presentations|http://www.intelligentedu.com/blogs/post/best_new_training_sites/3690/top-15-red-hat-linux-summit-presentations]]

!!Fedora:
*[img[imagenes/en.gif]] http://fedoraproject.org/wiki/ - Fedora Project
*[img[imagenes/es.gif]] / [img[imagenes/en.gif]] http://docs.fedoraproject.org/ - Documentación de Fedora
*[img[imagenes/en.gif]] http://www.mjmwired.net/resources/mjm-fedora-f17.html - Guía de Instalación/Configuración de Fedora 17
*[img[imagenes/en.gif]] http://www.howtoforge.com/the-perfect-desktop-fedora-17 - Guía de Configuración para Fedora 17
*[img[imagenes/en.gif]] http://www.howtoforge.com/howtos/linux/fedora - Guías para Fedora
*[img[imagenes/en.gif]] http://fedorasolved.org/ - Fedora Solved, ~HOWTOs para Fedora

!!Repositorios para RHEL:
*[img[imagenes/en.gif]] http://fedoraproject.org/wiki/EPEL - Extra Packages for Enterprise Linux (EPEL)
*[img[imagenes/es.gif]] http://www.alcancelibre.org/staticpages/index.php/al-desktop - AL Desktop (Alcance libre)
*[img[imagenes/en.gif]] http://rpmfusion.org/Configuration - RPM Fusion
*[img[imagenes/en.gif]] http://pkgs.org/#centos-6-rhel-6 - Repositorios compatibles con ~RHEL6 - ~CentOS6
*[img[imagenes/en.gif]] http://pkgs.org/#centos-5-rhel-5 - Repositorios compatibles con ~RHEL5 - ~CentOS5

!!Revistas:
*[img[imagenes/es.gif]] http://barrapunto.com - Barrapunto.com
*[img[imagenes/es.gif]] http://www.alcancelibre.org - Alcance Libre
*[img[imagenes/es.gif]] http://www.diariolinux.com - ~DiarioLinux
*[img[imagenes/es.gif]] http://www.linux-magazine.es - Linux Magazine
*[img[imagenes/es.gif]] http://www.linuxjuegos.com - Juegos para Linux
*[img[imagenes/es.gif]] http://usemoslinux.blogspot.com/2010/08/las-mejores-revistas-sobre-linux-y.html - Otras Revistas

!!Open Source:
*[img[imagenes/en.gif]] http://www.thevarguy.com/the-open-source-50/ - The Open Source 50: A to Z (2010 Edition)
*[img[imagenes/en.gif]] http://directory.fsf.org/wiki/Main_Page - The Free Software Directory
*[img[imagenes/en.gif]] http://www.osalt.com/ - Alternativas Open Source a software comercial

/%
*[img[imagenes/es.gif]] 
*[img[imagenes/en.gif]] 
%/
!! Información general sobre el Examen RHCE/RHCSA
* Es total y absolutamente práctico, no hay ninguna parte de teoria.
* Consiste en la configuración de un servidor completo. Se corrige cuando todo el mundo haya acabado y NO se dice la nota en el momento. Cuando se acaba, la gente se puede ir directamente. El resultado se empaqueta, se cifra y se manda a Red Hat. Oficialmente el resultado se recibe dentro de 3 días laborables, aunque normalmente se recibe antes.
* A diferencia de lo que pasaba con el examen en la versión ~RHEL5, están separados el RHCSA y el RHCE.
* Para el examen solo se permite llevar un bolígrafo. Se proporcionará a los alumnos papel para que puedan escribir todo lo que quieran en él, pero luego ese papel se lo queda el examinador. No se permite nada más.
* Hay que llevar ''DNI'' o ''Pasaporte'', se recolectará al iniciar el examen, junto con móviles y ~PDAs. Todo ello se devolverá al terminar el examen.
* El DVD de instalación oficial de Red Hat Enterprise Linux estará en todo momento accesible a través de la red. Se podrá acceder a los ~RPMs siempre que se quiera (a menos que la máquina no tenga red en ese momento).
* La red se monitoriza para evitar conexiones no autorizadas.

!!Para pasar el examen se necesita lo siguiente
* ''RHCSA'': Conseguir un 70% en 2 horas y media.
* ''RHCE'': Conseguir un 70% en 2 horas.

!!Duración total del examen
* ''RHCSA'':
** Empezar, rellenar formulario online, comprobar identidades: 30 minutos
** Examen: 2 horas y media
** ''Tiempo total'': 3:00h. Si se empieza a las 10:00h, a las 13:00h normalmente se ha acabado
* ''RHCE'':
** Empezar, rellenar formulario online, comprobar identidades: 30 minutos
** Examen: 2 horas
** ''Tiempo total'': 2:30h. Si se empieza a las 10:00h, a las 12:30h normalmente se ha acabado

!!Consejos generales acerca del examen
* El examen no es difícil en sí, pero si que hay que hacer muchas cosas en relativamente poco tiempo. Es absolutamente vital tener soltura con el sistema, sobre todo con la [[Ayuda del sistema]]. Si se da un día para hacer el examen, prácticamente todo el mundo lo pasaría, pero si se pierde demasiado tiempo buscando las cosas no se aprobará.
* Repito: el examen es más una prueba de estrés, que de conocimientos, hay que hacer muchas cosas en poco tiempo.
* Otra recomendación importante es dominar RPM, YUM y los repositorios. Con ello podemos ahorrar mucho tiempo durante la realización del examen.
* El examen RHCSA es asequible, pero el RHCE es bastante difícil. Suelen aprobar un 75% y un 33% de la gente respectivamente, siempre que hayan asistido al curso asociado a cada examen. Si no se ha asistido a ningún curso, el porcentaje cae.
* Dominar las herramientas de [[Ayuda del sistema]] de Red Hat Enterprise Linux es @@VITAL@@.
* No pararse demasiado en las partes en las que tenemos dificultades es muy importante. Seguid con el examen, y cuando terminéis la primera vuelta, volved a esta parte con más calma.

!!Consejos desde el blog de Red Hat:
*[img[imagenes/en.gif]] http://servicesblog.redhat.com/2013/01/30/guest-post-preparing-for-red-hat-exams/
*[img[imagenes/en.gif]] http://servicesblog.redhat.com/2013/02/12/guest-post-preparing-for-red-hat-exams-2/
*[img[imagenes/en.gif]] http://servicesblog.redhat.com/2013/05/15/guest-post-preparing-for-red-hat-exams-3/

!!Enlaces:.
*[img[imagenes/es.gif]] https://plus.google.com/communities/113215566712954860402 - "Aprende Red Hat" - Comunidad en Google+
*[img[imagenes/es.gif]] https://plus.google.com/communities/115627020378454313075 - "Aprende ~JBoss" - Comunidad en Google+
*[img[imagenes/en.gif]] http://servicesblog.redhat.com/2013/01/30/guest-post-preparing-for-red-hat-exams - Consejos generales
*[img[imagenes/es.gif]] http://es.redhat.com/training/courses/ex200/examobjective - Página de Red Hat acerca del examen RHCSA
*[img[imagenes/es.gif]] http://es.redhat.com/training/courses/ex300/examobjective - Página de Red Hat acerca del examen RHCE
*[img[imagenes/es.gif]] http://www.es.redhat.com/training/certification/faq/ - FAQ de Red Hat acerca de las certificaciones
*[img[imagenes/en.gif]] http://rhel6rhce.tiddlyspot.com/ - Página no oficial acerca de las materias contenidas en el examen - "Preparing for RHCE on ~RHEL6"
*[img[imagenes/en.gif]] https://github.com/texastwister/OpenRHCE - Página no oficial del proyecto ~OpenRHCE, para estudiar el examen
*[img[imagenes/en.gif]] http://www.amazon.es/Hands--Guide-Red-Exams-Certification/dp/0321767950/ref=sr_1_4?ie=UTF8&qid=1316774122&sr=8-4 - Libro muy recomendable para estudiar

/%
** Al ser Red Hat una empresa Estadounidense, está atada a sus leyes. Esto implica que NO PUEDEN HACER EL EXAMEN, personas con nacionalidad CUBANA, Irakí, Iraní, Norcoreana o Siria. (señalo cubana, porque en España es más común, y de hecho a algún cubano le he hecho el examen anteriormente).
%/
!@@''ATENCIÓN: desde el 1 de mayo de 2009 ha cambiado el formato del examen''@@

* Página de Red Hat acerca del examen:
** https://www.redhat.com/training/rhce/examprep.html
* Página no oficial acerca de las materias contenidas en el examen - RHCE "Cheat Sheet" :
** http://conigliaro.org/wiki/rhce

* Información general sobre el Examen RHCE/RHCT:
** Es total y absolutamente práctico, no hay ninguna parte de teoria.
** Consiste en la configuración de un servidor completo. Se corrige cuando todo el mundo haya acabado y NO se dice la nota en el momento. Cuando se acaba, la gente se puede ir directamente. El resultado se empaqueta, se cifra y se manda a Red Hat. Oficialmente el resultado se recibe dentro de 3 días laborables, aunque normalmente esa misma tarde/noche se tiene el resultado en el email proporcionado por el propio examinado.
** Dentro del examen RHCE, está el RHCT imbuido. Esto implica que alguien que se presente al examen RHCE, si no lo aprueba, todavía podría sacarse el título RHCT si pasa la parte correspondiente. En todo momento se indica que problemas pertenecen a cada certificación..
** Para el examen solo se permite llevar un bolígrafo. Se proporcionará a los alumnos papel para que puedan escribir todo lo que quieran en él, pero luego ese papel se lo queda el examinador. No se permite nada más.
** Hay que llevar DNI o Pasaporte, se recolectará al iniciar el examen, junto con móviles y ~PDAs. Todo ello se devolverá al terminar el examen.
** Al ser Red Hat una empresa Estadounidense, está atada a sus leyes. Esto implica que NO PUEDEN HACER EL EXAMEN, personas con nacionalidad CUBANA, Irakí, Iraní, Norcoreana o Siria. (señalo cubana, porque en España es más común, y de hecho a algún cubano le he hecho el examen anteriormente).
** El DVD de instalación oficial de Red Hat Enterprise Linux estará en todo momento accesible a través de la red. Se podrá acceder a los ~RPMs siempre que se quiera (a menos que la máquina no tenga red en ese momento).
** La red se monitoriza para evitar conexiones no autorizadas.

* Para pasar el examen se necesita lo siguiente:
** ''RHCT'': Conseguir un 70% en 2 horas.
** ''RHCE'': Conseguir un 70% de la parte RHCT y un 70% de la parte RHCE en 3'5 horas. No compensa la nota, si se saca un 69% y un 100% respectivamente se tiene el examen completamente suspendido y no se consigue ninguna certificación.

* Duración total del examen:
** ''RHCT'':
*** Empezar, rellenar formulario online, comprobar identidades: 15 minutos
*** Examen: 2 horas
*** ''Tiempo total'': 2:15h - 2:30h. Si se empieza a las 10:00h, a las 12:30h normalmente se ha acabado
** ''RHCE'':
*** Empezar, rellenar formulario online, comprobar identidades: 15 minutos
*** Examen: 3'5 horas
*** ''Tiempo total'': 3:45h - 4:00h. Si se empieza a las 10:00h, a las 14:00h normalmente se ha acabado

* Consejos generales acerca del examen:
** El examen no es dificil en sí, pero si que hay que hacer muchas cosas en relativamente poco tiempo. Es absolutamente vital tener soltura con el sistema, sobre todo con la [[Ayuda del sistema]]. Si se da un día para hacer el examen, prácticamente todo el mundo lo pasaría, pero si se pierde demasiado tiempo buscando las cosas no se aprobará.
** Repito: el examen es más una prueba de estress, que de conocimientos, hay que hacer muchas cosas en poco tiempo.
** El examen RHCT es relativamente fácil, pero el RHCE es bastante difícil. Suelen aprobar un 95% y un 40% de la gente respectivamente, siempre que hayan asistido al curso asociado a cada examen. Si no se ha asistido a ningún curso, el porcentaje de gente que aprueba el RHCE a la primera es del 10%.
** Dominar las herramientas de [[Ayuda del sistema]] de Red Hat Enterprise Linux es @@VITAL@@.
** No pararse demasiado en las partes en las que tenemos dificultades es muy importante. Seguid con el examen, y luego ya volvereis a esta parte con más calma.
Para exportar un directorio, y todo lo que contenga, por HTTP, hay una forma muy rápida de hacerlo, y es ejecutando lo siguiente:

{{{
alias compartirHTTP='python -c "import SimpleHTTPServer;SimpleHTTPServer.test()"'
}}}

Esto crea un alias, que al ejecutar ''{{{compartirHTTP}}}'' desde el directorio que queremos compartir, se exporta entero por HTTP, por el puerto 8000. De esta forma, desde la red, simplemente abriendo un navegador, poniendo la IP de mi máquina, y el puerto 8000, se accede a dicho directorio.

Lo puedes probar desde la propia máquina con http://localhost:8000
Resumen de las expresiones regulares, conocidas como "regex":

{{{
^  principio de linea
$  final de linea

. un caracter cualquiera
? 0 o 1 veces el caracter anterior
* 0 o más veces el caracter anterior
+ 1 o más veces el caracter anterior

[ ] caracter contenido en los corchetes
[^ ] caracter no contenido en los corchetes
[x-y] caracter contenido en el rango x-y

\ escapar un caracter

\< principio de palabra
\> final de palabra (seguido por un signo de puntuación,
                                un espacio o un salto)

x|y el caracter x o el y
( ) agrupa caracteres
( ) \1  el contenido entre los paréntesis se 
     referenciará más tarde como \1 (así hasta 9)
        ejemplos:
             (espaci)o \1ado    -->    espacio espaciado
	     (bar)(ce)(lo)(na): al \1 a \2\4r y \2\1    -->
                     barcelona: al bar a cenar y cebar
x{m}  m x's consecutivas
x{m,} m x's consecutivas o más
x{m,n}  entre m y n x's

Nota: el espacio en blanco se puede poner tal cual, no hay que escaparlo

1,$s/perro/gato/g desde la línea 1 hasta el final ($) substituye (s) perro por 
gato sin preguntar uno a uno (g - globalmente)
1,$s/\(Juan\) y \(Ana\)/\2 y \1/g  substituye "Juan y Ana" por "Ana y Juan" en 
todo el documento
/origen/,/destino/s/perro/gato/g  substituye perro por gato desde la línea que 
aparece por primera vez "origen" hasta la línea que aparece por primera vez 
"destino" después de aparecido "origen".

Caracteres:
[[:alnum:]] alfanuméricos (depende del idioma configurado)
[[:alpha:]] alfabéticos (depende del idioma configurado)
[[:lower:]] minúsculas (depende del idioma configurado)
[[:upper:]] mayúsculas (depende del idioma configurado)
[[:digit:]] dígitos
[[:xdigit:]] dígitos hexadecimales
[[:blank:]] espacio o tabulador
[[:space:]] blancos (espacio, tabuladores, cambio de línea, retorno de carro...)
[[:graph:]] no blancos
[[:print:]] como graph, pero incluye el espacio en blanco
[[:punct:]] de puntuación
[[:cntrl:]] control

\w [a-zA-Z0-9_] (también incluye el _)
\W [^a-zA-Z0-9_] (también incluye el _)
\b solo la palabra entre \b's
}}}
Bienvenidos, este TiddlyWiki está completamente dedicado a Red Hat Enterprise Linux. En él encontrarás información práctica acerca del sistema, así como enlaces y trucos.

Si quieres enlazar a algún tiddler concreto (un tiddler es una entrada en TiddlyWiki, un fragmento de información), abre los tiddlers que quieres que vean, y pincha en "permaview", en el menu de la derecha. Eso hará que la URL salga completa y sea enlazable.

Este sitio está en permanente construcción.
[img[Fernando Ruiz-Tapiador Gutiérrez|imagenes/FRTG_teclas_115x78.jpg]]
Bienvenidos a mi página personal, dedicada al mundo
[img[Red Hat|imagenes/redhat_100.jpg][http://www.redhat.es]]

----
<<tag red>>
<<tag sistema>>
<<tag seguridad>>
<<tag comandos>>
<<tag scripts>>
<<tag trucos>>
<<tag internet>>

[[Enlaces]]
[[Examen RHCE]]
[[Ruiz-Tapiador]]
[img[Essi Projects|imagenes/essi_projects_100.jpg][http://www.essiprojects.com]]
----
[img[Mi página web, si, esta misma|favicon.ico][http://www.ruiz-tapiador.com]]
[img[Mi cuenta de Twitter|imagenes/favicon_twitter.ico][http://twitter.com/RuizTapiador]] [img[Mi cuenta de Google+|imagenes/favicon_googleplus3.ico][https://plus.google.com/106014194529927338072]]
[img[Buscador especializado en RHEL|imagenes/favicon_gsearch.png][http://www.google.com/coop/cse?cx=013170454177197411673:ro1ipxnsecu]] [img[Buscador especializado en Red Hat Cluster Suite|imagenes/favicon_gsearch.png][http://www.google.com/coop/cse?cx=013170454177197411673:l9nqdhxdrz4]]

[img[TiddlyWiki|imagenes/tiddlywiki.ico][http://www.tiddlywiki.com]] [[TiddlyWiki]] v.<<version>>

/%
[img[Mis feeds compartidos|imagenes/favicon_greader.ico][https://www.google.com/reader/shared/fernando.ruiztapiador]]
[img[Calendario de cursos de Red Hat y JBoss en España|imagenes/favicon_gcalendar.ico][http://www.google.com/calendar/embed?src=eohkuifn09ofaf6d82o2rp3290%40group.calendar.google.com&ctz=Europe/Madrid&pvttk=26736853aab6bfaaf7324a1fdbd4fb3f]]
%/
/% [[Calendario Cursos]] %/
/% [img[Fernando Ruiz-Tapiador Gutiérrez|imagenes/FRTG_RH_4_128x76.jpg]] %/
/% [img[Fernando Ruiz-Tapiador Gutiérrez|imagenes/FRTG_teclas_115x78.jpg]] %/
/% [img[JBoss|imagenes/jboss_100.jpg][http://www.jboss.com]] %/
/% [img[imagenes/favicon_essi.ico][http://www.essiprojects.com/redhat.html]] %/
/%<html><center><a href= "http://www.essiprojects.com/" target="_blank"><img src="imagenes/essi_projects_100.jpg" width=100 alt="Essi Projects"></a></center></html>%/
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-5742566-1");
pageTracker._trackPageview();
</script>
<!--{{{-->
<link rel="shortcut icon" href="./favicon.ico" />
<link rel="icon" href="./favicon.ico" />
<link rel='alternate' type='application/rss+xml' title='RSS' href='index.xml' />
<!--}}}-->
Para mostrar un mensaje de forma gráfica, desde consola o desde dentro de un script, tenemos varias formas: una para KDE, otra para GNOME, otra para las X y por último, otra universal:

KDE:
{{{
kdialog --msgbox Mensaje
}}}
GNOME:
{{{
zenity --info --text="Mensaje"
}}}
X:
{{{
xmessage "Mensaje"
}}}
Universal:
{{{
notify-send "Titulo" "Mensaje" -i /usr/share/pixmaps/redhat-starthere.png -t 0
}}}
Donde -i indica el icono que queremos que se vea, y -t es el tiempo que queremos que esté activa la notificación (0 para que no desaparezca nunca)


----
Si queremos enviar un mensaje gráfico desde el cron, tenemos que decirle dónde está el entorno gráfico, ya que el cron se ejecuta desde fuera de él:
{{{
export DISPLAY=:0 ; notify-send "Cron" "Prueba de concepto" -i /usr/share/pixmaps/redhat-starthere.png -t 3000
}}}
Si lo añadimos al cron de root, hay que permitir a root ejecutar cosas en el entorno gráfico del usuario. O mejor aún, ejecutar el comando como el usuario que está logueado en el entorno gráfico:
{{{
export DISPLAY=:0 ; su - fernando -c 'notify-send "Cron" "Prueba de concepto" -i /usr/share/pixmaps/redhat-starthere.png -t 3000'
}}}


----
Cómo mandar un mensaje gráfico a una máquina remota (NO EN MI MÁQUINA).
{{{
ssh -f Usuario@HostRemoto DISPLAY=:0.0 notify-send "Título" "Mensaje" -i /usr/share/pixmaps/redhat-starthere.png -t 3000
}}}
Cómo mandar un mensaje gráfico a una máquina remota con Windows. Sólo funciona si el servicio NETSEND en la máquina Windows está activo.
{{{
echo "Mensaje" | smbclient -M HostWindowsRemoto
}}}
Para cambiar la línea del prompt, cambiar la variable PS1:
{{{
PS1="\e[0;31m\n-=[`id -u` \u@\h \D{%a%d%b} \t \w]=-\e[0;0m\n\\$ "
PS1="\e[0;0m\n  \e[0;31m\u(`id -u`)\e[1;31m\h\e[0;31m  \t-\D{%a/%d/%b}  \w\e[0;0m\n· "
}}}

Si queremos que el color cambie según seamos root (rojo) o no (verde), lo podemos hacer de esta forma:
{{{
# Añadido por Fernando
if [ $(id -u) = 0 ] ; then
        COLOR1='\e[0;31m'
        COLOR2='\e[1;31m'
else
        COLOR1='\e[0;32m'
        COLOR2='\e[1;32m'
fi
PS1="\[\017\033[m\033[?9l\033[?1000l\]\e[0;0m\n  "$COLOR1"\u(`id -u`)"$COLOR2"\h"$COLOR1"  \t-\D{%a/%d/%b}  \w\e[0;0m\n· "
}}}

Para que funcione con todo el mundo, lo podemos añadir al final del archivo {{{/etc/bashrc}}}

El código {{{\[\017\033[m\033[?9l\033[?1000l\]}}} con el que empieza la variable {{{PS1}}}, hace un {{{reset}}} del terminal cada vez que muestra el prompt, de tal forma que si al ver un fichero binario, se nos queda la terminal "fea", el prompt vuelve a salir limpio.

Podeis probarlo con el comando
{{{
cat /bin/cat
}}}
antes y después de poner el código en vuestro {{{PS1}}}.
<!--{{{-->
<div class='header' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>
<div id='mainMenu' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>
<!--
<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div>
-->
</div>
<div id='displayArea'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
</div>
<!--}}}-->
*iptables -I INPUT -p icmp {{{--}}}icmp-type echo-reply -j ACCEPT
*iptables -I OUTPUT -p icmp {{{--}}}icmp-type echo-request -j ACCEPT
* Instalar
** {{{rpm -i zip-2.3-27.i386.rpm}}} - instala, pero no actualiza, el paquete zip-2.3-27.i386.rpm
** {{{rpm -F zip-2.3-27.i386.rpm}}} - actualiza, pero no instala, el paquete zip-2.3-27.i386.rpm
** {{{rpm -U zip-2.3-27.i386.rpm}}} - instala y actualiza el paquete zip-2.3-27.i386.rpm
* Queries
** {{{rpm -qa}}} - ver todos los paquetes instalados
** {{{rpm -qa --last}}} - ver todos los paquetes instalados ordenados por fecha de instalación
** {{{rpm -qi zip}}} - ver información sobre el paquete {{{zip}}}
** {{{rpm -qf /usr/bin/zip}}} - ver a que paquete pertenece el fichero {{{/usr/bin/zip}}}
** {{{rpm -ql zip}}} - ver que ficheros contiene el paquete {{{zip}}}
** {{{rpm -q zip --changelog}}} - ver los cambios de las distintas versiones el paquete {{{zip}}}
** {{{rpm -q zip --scripts}}} - ver los scripts que se ejecutan al instalar o desinstalar el paquete {{{zip}}}
* Verificar
** {{{rpm -V zip}}} - verifica el paquete {{{zip}}}
** {{{rpm -Va}}} - verifica todos los paquetes
Si queremos configurar un dispositivo ~USB-Ethernet, debemos hacer lo siguiente:

* Lo primero que hay que hacer es determinar el módulo que se encarga de controlar el USB, para eso puedo hacer lo siguiente:
{{{
$ lsmod > /root/lsmod_antes
}}}
** Ahora conecto el USB
{{{
$ lsmod > /root/lsmod_despues
$ diff /root/lsmod_antes /root/lsmod_despues
1a2
> rtl8150                13505  0
}}}
** Y esto me indica que la diferencia entre el antes y el después de conectar el USB es el módulo rtl8150, con lo cual ya tenemos el módulo localizado.

* Cuando enchufo el usb-ethernet carga en memoria el módulo rtl8150, podemos ver la información de dicho módulo con el comando modinfo:
{{{
$ modinfo rtl8150
filename:       /lib/modules/2.6.9-22.EL/kernel/drivers/usb/net/rtl8150.ko
author:         Petko Manolov <petkan@users.sourceforge.net>
description:    rtl8150 based usb-ethernet driver
license:        GPL
vermagic:       2.6.9-22.EL 686 REGPARM 4KSTACKS gcc-3.4
depends:
alias:          usb:v0BDAp8150dl*dh*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0411p0012dl*dh*dc*dsc*dp*ic*isc*ip*
alias:          usb:v3980p0003dl*dh*dc*dsc*dp*ic*isc*ip*
alias:          usb:v07B8p401Adl*dh*dc*dsc*dp*ic*isc*ip*
}}}

* Pasamos a configurarlo. Primero añadimos una línea a /etc/modprobe.conf, para poder cargar el módulo:
{{{
$ cat >> /etc/modprobe.conf <<EOF
> alias eth1 rtl8150
> EOF
$ tail -1 /etc/modprobe.conf
alias eth1 rtl8150
}}}

* Para configurarlo:
{{{
$ cat /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=none
IPADDR=192.168.0.21
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
ONBOOT=yes
TYPE=Ethernet
}}}

* Y ya está, levantamos el interfaz eth1: {{{ifup eth1}}}, o simplemente recargamos toda la red: {{{service network restart}}}
Que el usuario //fernando// solo pueda salir a la ip 200.199.198.197:

{{{
iptables -A OUTPUT -d 200.199.198.197 -m owner --uid-owner fernando -j ACCEPT
iptables -A OUTPUT -d ! 200.199.198.197 -m owner --uid-owner fernando -j REJECT --reject-with icmp-proto-unreachable
}}}
/%
[<img[imagenes/rhce_logo-clr.jpg]]
%/
<html>
<img src="imagenes/FRTG_RH_5_251x313.jpg" width=251 height=313 border=2 vspace=18 hspace=8 alt="Fernando Ruiz-Tapiador" align="left">
</html>
Desde 2001, y hasta la actualidad de forma ininterrumpida, soy RHCE y RHCX (Examinador Certificado por Red Hat), impartiendo desde entonces cursos oficiales de Red Hat en España y realizando exámenes oficiales de certificación RHCE. Por tanto han pasado ya 11 años profesionalmente dedicado en exclusiva a Red Hat.

De 2001 a 2002 trabajé directamente para Red Hat, realizando principalmente tareas de formación, aunque también realicé tareas de soporte técnico, comercial y traducción. Si se hace la búsqueda de mi correo de la época en Red Hat, aparecerán todavía muchos resultados: [[Buscar frtapiador@redhat.es en Google|http://www.google.es/search?hl=es&q=frtapiador%40redhat.es]]

De 2003 a 2007 fuí autónomo, trabajando como formador y consultor especializado en Red Hat Enterprise Linux para diversas empresas. En esa época seguí dando los cursos oficiales de Red Hat en España, dependiendo directamente de Red Hat Europe.

De 2007 a la actualidad trabajo para [[Essi Projects|http://www.essiprojects.com/]], en la que hago labores de ingeniero de sistemas y como consultor especializado en Red Hat y ~JBoss. También, a través de su filial de formación, [[eduStance|http://www.edustance.com/]], sigo impartiendo los cursos oficiales en España, gracias a que somos Red Hat Advanced Business Partner y Red Hat Training Partner, siendo en la actualidad los únicos autorizados a dar los cursos en este país. Essi Projects fue galardonada con el premio ''Red Hat EMEA Best Infrastructure Partner of the year ~FY08''.

Desde 2009 también estoy capacitado para dar los cursos de administración de ~JBoss, y de administrar cualquier examen de ~JBoss.

Desde agosto de 2010 soy RHCVA (Red Hat Certified Virtualization Administrator). Esto, unido a que soy RHCX, significa que puedo impartir los cursos ~RH318 (Red Hat Enterprise Virtualization), ~RH319 (~RH318 + ~EX318) y el examen ~EX318 (Red Hat Certified Virtualization Administrator).

Desde marzo de 2012 soy RHCA (Red Hat Certified Architect), la certificación más alta de Red Hat, que implica haber recibido y aprobado 5 cursos con sus respectivos exámenes: ~RH401 - Red Hat Network Satellite, ~RH436 - Clustering, ~RH423 - Directory Server, ~RHS333 - Seguridad, ~RH442 - Tunning. Y en la actualidad soy el único español autorizado a dar dichos cursos.

También soy RHPVCS (Red Hat Partner Virtualization Certified Salesperson) y RHPMCS (Red Hat Partner Middleware Certified Salesperson).



----
<html>
<img src="imagenes/rhce_logo-clr.jpg" width=108 height=142 vspace=5 hspace=8 alt="RHCE" align="left">
</html>
''Fernando ~Ruiz-Tapiador''
Red Hat Architect
RHCSA, RHCE, RHCI, RHCX since 2001
RHCA, RHCDS, RHCVA, RHPMCS, RHPVCS
{{{#100-000-348}}} ([[Verificar|https://www.redhat.com/wapps/training/certification/verify.html?certNumber=100-000-348&verify=Verify]])
Essi Projects, S.A.
fernando.ruiztapiador{{{@}}}essiprojects{{{.}}}com
fernando{{{@}}}ruiz-tapiador{{{.}}}com


[img[imagenes/favicon_twitter.ico]] Mi Twitter: http://twitter.com/RuizTapiador
[img[imagenes/favicon_googleplus3.ico]] Mi Google+: https://plus.google.com/106014194529927338072


|>|>|>| <html><a href="http://www.essiprojects.com/"><img src="imagenes/essi_projects_160.jpg" border=0 vspace=2 hspace=8 alt="Essi Projects" align="center"></a></html> |
| <html><a href="http://maps.google.es/maps?f=q&hl=es&geocode=&q=Pla%C3%A7a+Prim,+4-5,+43001+Tarragona&sll=40.396764,-3.713379&sspn=11.054894,19.775391&ie=UTF8&z=16">Tarragona</a></html> | <html><a href="http://maps.google.es/maps?f=q&hl=es&geocode=&q=Avda.+Diagonal+640,+08917+Barcelona&sll=40.44916,-3.651479&sspn=0.010793,0.019312&ie=UTF8&z=16">Barcelona</a></html> |
| c/ Plaça Prim, 4-5, Planta Principal <br> 43001 Tarragona - Spain <br> Tel: +34 977 221182 <br> Fax: +34 977 230170 | Avda. Diagonal 640, 6a Planta <br> 08917 Barcelona -Spain <br> Tel: +34 93 4922709 <br> Fax: +34 93 2287899 |
(Para ver en Google Maps la localización de las distintas oficinas de Essi Projects, hay que hacer click en la localidad)

Las oficinas de Red Hat Iberia están en <html><a href="http://maps.google.es/maps?f=q&source=s_q&hl=es&geocode=&q=Jos%C3%A9+Bardasano+Baos+9,+3%C2%BA,+28016+Madrid&ie=UTF8&hq=&hnear=Calle+de+Jos%C3%A9+Bardasano+Baos,+9,+28016+Madrid,+Comunidad+de+Madrid&z=16">José Bardasano Baos 9, 3º, 28016 Madrid</a></html>

/%
[img[imagenes/favicon_greader.ico]] Mi gReader: https://www.google.com/reader/shared/fernando.ruiztapiador
%/


----
<html>
<div align="center">
<br>Jung Test Results<br>
	<table border="0" cellpadding="0" cellspacing="0" bgcolor="#dddddd"><tr><td>
		<div align="center">
			Extroverted (<b>E</b>) 70.83% Introverted (I) 29.17%<br>
			Sensing (<b>S</b>) 54.17% Intuitive (N) 45.83%<br>
			Thinking (<b>T</b>) 66.67% Feeling (F) 33.33%<br>
			Judging  (<b>J</b>) 66.67% Perceiving (P) 33.33%<br>
		</div>
	</td>	</tr></table>
<br>
<table border="0" cellpadding="0" cellspacing="0" style="color: black; background: #C9D1DC">
   <tr><td width="250">
   <div align="center"><font color="black">
      <b><a href="http://similarminds.com/jung/estj.html">ESTJ</a></b>
         -  "Administrator". Much in touch with the external environment. Very responsible. Pillar of strength. 8.7% of total population.
   </font></div></td></tr></table>
<font size="1"><a href="http://similarminds.com">personality tests by similarminds.com</a></font></div>
</html>
<<search>><<closeAll>><<permaview>><<newTiddler>><<newJournal "DD MMM YYYY" "journal">><<saveChanges>><<slider chkSliderOptionsPanel OptionsPanel "options »" "Change TiddlyWiki advanced options">><<slider chkSideBarTabs SideBarTabs "index »" "display lists of tiddlers"'>>
<<tabs txtMainTab "Timeline" "Timeline" TabTimeline "All" "All tiddlers" TabAll "Tags" "All tags" TabTags "More" "More lists" TabMore>>
Fernando ~Ruiz-Tapiador
Red Hat Enterprise Linux
http://www.ruiz-tapiador.com/
Hace tiempo que me interesaban los [[Wikis|http://es.wikipedia.org/wiki/Wiki]], y fué entonces cuando descubrí [[TiddlyWiki|http://tiddlywiki.com]], del cual me enamoré al instante.

Básicamente TiddlyWiki es un Wiki que se almacena en un solo fichero, y que no necesita la instalación de ningún programa, esto es, es un solo fichero .html, en cuyo interior, gracias a ~JavaScript, podemos editarlo, cambiarlo y modificarlo a nuestro gusto desde el propio navegador. Si quereis ver las posibilidades de TiddlyWiki, me he creado una [[Chuleta]] con la sintaxis y con ejemplos de como funciona (el ejemplo de la Tabla Periódica es realmente espectacular).

Tiene la ventaja de poder llevarlo en cualquier lado, o incluso almacenarlo en una cuenta de webmail (como gmail). Eso si, si el Wiki estubiera almacenado en un espacio gratuito en internet, no tendríamos permiso para editarlo online (lo cual en ciertos casos puede ser una ventaja), pero sería posible hacerlo si tuvieramos nuestro propio espacio dedicado.

Como desventaja tiene que no podemos almacenar demasiada información, ya que al ser un único fichero, puede crecer de forma desmesurada.

!!Enlaces relacionados
*[img[imagenes/en.gif]] http://tiddlywiki.com/ (La página original)
*[img[imagenes/en.gif]] http://tiddlertoddler.tiddlyspot.com/ (Guía para principiantes) 
*[img[imagenes/en.gif]] http://www.tiddlytools.com/ (Inmensa colección de plugins)
*[img[imagenes/en.gif]] http://15black.bluedepot.com/twtests/adsense.html (Adsense en TiddlyWiki)
*[img[imagenes/en.gif]] http://15black.bluedepot.com/styles/tiddlypedia.htm (Apariencia de Wikipedia)
*[img[imagenes/en.gif]] http://giffmex.tiddlyspot.com/ (Ayuda)
*[img[imagenes/en.gif]] http://twhelp.tiddlyspot.com/ (Ayuda)
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::ViewToolbar]]'></div>
<div style="background:#ffffff;color:#ffffff" class='title' macro='gradient vert #900 #600'>&nbsp; <span macro='view title'></span></div>
<div style="background:#990000;color:#000" class='subtitle' macro='gradient vert #600 #200'> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span macro='view modified date'></span></div>
<div class='tagging' macro='tagging'></div>
<div class='tagged' macro='tags'></div>
<div class='viewer' macro='view text wikified'></div>
<div class='tagClear'></div>
<h3></h3>
<br>
<br>
<!--}}}-->
*{{{find / -name *.avi -exec ls -lh {} \;}}} - Busca desde la raiz (/), ficheros que acaben en ".avi", y cuando los encuentra, para cada uno de ellos ejecuta "ls -lh {}" donde {} es el nombre de cada fichero.
*{{{find $HOME/. -name *.txt -ok rm {} \;}}} - Busca ficheros que acaben en ".txt"  apartir del directorio HOME del usuario, y pregunta si quieres ejecutar "rm {}" con cada uno de ellos.
*{{{find / -inum 1337 -exec ls -alih {} \;}}} - Muestra el fichero cuyo inodo es el 1337
*Al abrir un fichero rpm con less, nos muestra la información del paquete, el changelog y los ficheros que lo componen.
*Cuando abrimos un fichero con less, al pulsar "v", lo editamos directamente con el "vi".
*Si invocamos less con la opción -X, al salir del less no borra la pantalla.
*{{{nmap -sP 192.168.0.0/24}}} - Averiguar que equipos hay en una red respondiendo
*{{{nmap -sP 192.168.0.0/24 192.168.1.100 192.168.2.100-150 192.168.3.*}}} - Búsqueda en varios rangos
*{{{nmap -P0 -sV -O -p 25,80,110 192.168.1.1}}} - Comprobar el SO y las versiones de software en los puertos indicados
*{{{nmap -sS -P0 -O IP}}} - 
Type the text for 'red'
{{{
#!/bin/bash
#
# relacionados.sh  v1.0  20060526
#       script que muestra todos los comandos relacionados con uno dado
#       como parámetro, es decir, muestra los ejecutables contenidos en
#       el mismo paquete rpm que el ejecutable proporcionado.
#
#       Fernando Ruiz-Tapiador  ---  fernando@ruiz-tapiador.com

# Localizamos a que paquete pertenece el comando que le hemos dado como
# parámetro y lo metemos en la variable $PAQUETE

PAQUETE=`whereis -b $1 | cut -f2 -d" " | xargs rpm -qf`
echo
echo "Comandos dentro del paquete \"$PAQUETE\":"
echo

# Buscamos todos los ejecutables que hay dentro del paquete, y por cada
# uno de ellos le hacemos un whatis para que me muestre por pantalla
# que hace cada uno

for i in `rpm -ql $PAQUETE | grep bin/` ; do
        basename $i | xargs whatis | grep '([18])' | sort
done

# Listamos los comandos que no tienen página man, y que por lo tanto al
# hacer el whatis no encuentra nada

for i in `rpm -ql $PAQUETE | grep bin/` ; do
        basename $i | xargs whatis | grep 'nothing appropriate' | sort
done
echo
echo "Ficheros de configuración del paquete \"$PAQUETE\":"
echo

# Buscamos todos los ficheros que cuelgan de /etc dentro del paquete

rpm -ql $PAQUETE | grep /etc/ | sort
echo
}}}

ejemplo de salida del script:

{{{
$ relacionados.sh lsmod

Comandos dentro del paquete "module-init-tools-3.3-0.pre3.1.60.el5":

depmod               (8)  - program to generate modules.dep and map files
insmod               (8)  - simple program to insert a module into the Linux Kernel
lsmod                (8)  - program to show the status of modules in the Linux Kernel
modinfo              (8)  - program to show information about a Linux Kernel module
modprobe             (8)  - program to add and remove modules from the Linux Kernel
rmmod                (8)  - simple program to remove a module from the Linux Kernel
generate-modprobe.conf: nothing appropriate
insmod.static: nothing appropriate
weak-modules: nothing appropriate

Ficheros de configuración del paquete "module-init-tools-3.3-0.pre3.1.60.el5":

/etc/depmod.d
/etc/depmod.d/depmod.conf.dist
/etc/modprobe.conf
/etc/modprobe.d
/etc/modprobe.d/blacklist-compat
/etc/modprobe.d/modprobe.conf.dist
}}}
Screen nos permite ejecutar varias sesiones dentro de la misma consola. También podemos dejar las sesiones en suspenso y recuperarlas más tarde, incluso desde otro ordenador. 

Un ejemplo práctico: a última hora de la tarde, antes de irnos, desde Windows, y con el putty, accedemos a un ordenador con Linux. Ejecutamos {{{screen}}}, y luego lo siguiente: {{{sleep 7200 ; yum -y update}}}. Acto seguido cerramos la ventana directamente. Lo que hemos hecho es que espere dos horas, y luego actualice el sistema, cuando no haya nadie en la oficina. Cuando volvamos al día siguiente, abrimos el putty, nos conectamos al servidor, y ejecutamos {{{screen -r}}}, lo que hará que recuperemos la sesión anterior con el resultado del yum en pantalla.

Ejecutamos ''screen'' y entramos dentro de su entorno.

Con Cntrl+a activamos los controles de ''screen'', si luego pulsamos cualquiera de estas teclas pasa lo siguiente:
* ? : muestra la ayuda.
* c : crea nueva sesión.
* " (comillas dobles) : lista sesiones.
* n : va a la siguiente sesión.
* p : va a la sesión previa.
* A : asigna un nombre a la sesión actual.
* 1 : ir a la sesión 1 (igual con cualquier otro número de sesión).
* [ : copia en el clipboard (moverse con los cursores y pulsar enter para empezar a copiar y otra vez para acabar).
* ] : pega del clipboard.
* d : desvincula una sesión, que luego podremos recuperar, incluso desde otra máquina.
* S : divide la pantalla en dos (se puede hacer más veces de forma recursiva).
** Cntrl+i : cambiar a otra pantalla.
** Q : cerrar otras pantallas y dejar solo la actual.
* <TAB> : cambia entre los terminales
* <ESC> : cambia entre inserción/comando (como vi)
* D D : Salir completamente, reconectar con screen -R después de reconectar por ssh

screen -ls : listamos sesiones abiertas:
{{{
$ screen -ls
There is a screen on:
        27732.pts-4.babylon5    (Detached)
1 Socket in /var/run/screen/S-fernando.
}}}

Recuperamos la sesión con screen -r <número de la sesión> :
{{{
$ screen -r 27732
}}}

Para terminar las sesiones, teclear ''exit''.

Podemos crear un fichero ~/screenrc para que al conectar me abra varias consolas de forma simultánea:
{{{
screen -t CONSOLE 0
console on
split
focus
screen -t bash 1 bash
split
focus
screen -t /var/log/messages 2 tail -f /var/log/messages
focus
focus
}}}
Type the text for 'scripts'
Type the text for 'seguridad'
{{{
#!/bin/bash
#
# sincomentarios.sh  v2.0  20090922
#       script que muestra el contenido de un fichero, 
#       sin mostrar comentarios ni líneas en blanco
#
# v2.0 - Ahora borra también los comentarios de ficheros XML (<!-- -->), sean de una linea o de varias
#
#       Fernando Ruiz-Tapiador  ---  fernando@ruiz-tapiador.com

cat $1 | egrep -v '^[[:space:]]*#|^[[:space:]]*$|^[[:space:]]*;' | sed '/<!--.*-->/d' | sed '/<!--/,/-->/d'
}}}

ejemplo de salida del script:

{{{
$ cat /etc/samba/smb.conf | wc -l
288
$ sincomentarios.sh /etc/samba/smb.conf
[global]
	workgroup = fernando_casa
	server string = Samba
	log file = /var/log/samba/log.%m
	max log size = 50
	passdb backend = tdbsam
	cups options = raw
	username map = /etc/samba/smbusers
	guest ok = yes
	guest account = juan
[homes]
	comment = Home Directories
	browseable = no
	writeable = yes
[printers]
	comment = All Printers
	path = /var/spool/samba
	browseable = no
	printable = yes
[music]
	path = /multimedia/music
	valid users = fernando juan
	writeable = yes
	browseable = no
}}}
Type the text for 'sistema'