|
Pokud víš, uprav a vylepši
Historie GNU/Linux
Propagace
Odkazy
Sítě - HOWTO enkapsulace, topologie, routing a další. Krásně zpracováno!
Mgr. Ivona Spurná (Počítačové sítě, PHP, Technické vybavení a dokumentace)
Top Best 50 Ubuntu Opensource Applications For Design And Developing
Reconstructor * (Stáhnout) - vytváří vlastní LiveCD s Ubuntu, * EasyBuntu LiveCD
Network Manager přepisuje DNS servery v /etc/resolv.conf (IP adresa se načítá z DHCP serveru)
Jak v prohlížeči Mozilla Firefox načítat webové stránky rychleji
Apt-cacher - ako rýchlo aktualizovať balíčky na počítačoch v sieti (lokální repozitář)
Seriály
Skriptování a programování
BASH
Do každého skriptu přidávejte cestu k interpretu - nazývá se shebang
Každý skript by měl nakonci vracet nějakou hodnotu, defaultně:
exit 0
Cykly
for (( a=0 ; $a<8 ; a=$a+1 )) do echo $a done
for file in *.sh; do
# Název adresáře může být i skripty.sh!
if [ -f "$file" ]; then
echo $file
fi
done
i = 0
for i in 1 2 3 4 5 6 7 8 9 10; do
echo $i
done$i = 0 while [ "$i" -ne 100 ]; do # Konstrukci $(()) zavedl shell ksh a je rychlejší než příkaz expr i=$((i + 1)) echo $i done
$i = 0 until [ "$i" -eq 100 ]; do i=$((i + 1)) echo $i done
Funkce
### Může být v rozsahu (0-255), návarová hodnota 266 je rovna 0, 267=1, atd...
function ciselna_navratova_hodnota() {
return $1
}
ciselna_navratova_hodnota 276
hodnota=$?
echo $hodnota### Funkce neumí vracet řetezce, je nutno řešit přes globální proměnné
function vrat_retezec() {
retezec=$1
}
vrat_retezec ahoj
echo $retezec
Příklady
Skript vygeneruje číselný řetězec, počet čísel se zadává argumentem. bash generator.sh 12
### generator.sh ###
function random_number() {
NUMBER=$[ ( $RANDOM % 9 ) ]
return $NUMBER
}
function generate_number() {
for (( a=0 ; $a<$1 ; a=$a+1 ))
do
random_number
CISLO="$CISLO$?"
done
}
generate_number $1
echo "$CISLO"
QT designer
Jak vytvořit v QT Program Co instalovat:
apt-get install qt4-designer qt4-doc
Jak složit program v QT4 do "spustitelného" tvaru:
1) V QT4 designeru vytvořit formulář (jakýkoliv)
2) Pojmenovat a uložit formulář "formular.ui"
3) V terminálu přejít do složky se souborem "formular.ui"
4) Vytvořit soubor, kde bude hlavní vlákno. V souboru je důležité upravit inkludování hlavickovy soubor formuláře, vzniklého při budoucí kompilaci, ve spravnem tvaru "ui_formular.h"
gedit main.cpp
#include "ui_formular.h" int main(int argv, char* argc[]) { QApplication app(argv, argc); CMainDlg* dlg = new CMainDlg; dlg->setupUi(); dlg ->show(); return app.exec(); }
5) Vytvoříme projekt, vytvoříme makefile a zkompilujeme
qmake -project qmake -makefile make
Output:
/usr/bin/uic-qt4 formular.ui -o ui_formular.h g++ -c -pipe -fpermissive -g -Wall -W -D_REENTRANT -DQT_SHARED -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I. -I. -o main.o main.cpp g++ -Wl,--no-undefined -o Program main.o -L/usr/lib -lQtGui -lQtCore -lpthread
6) Spustíme
./Program
Win) Kompilace qmake -project qmake mingw32-make
Komunikátory (Jabber, ICQ, IRC, ...)
Konzoloví klienti
Finch - konzolový klient Pidgin
Posílat SMS přes Jabber (njs.netlab.cz "SMS transport") na GSM telefon, přidat kontakt ve tvaru:
+420_cislo_@sms.netlab.cz
Pidgin: Nový řádek = Shift + Enter
|
Základy
Příkaz/kombinace příkazů |
Specifický popis P/kp. |
Odkazy na howto, návody |
sudo |
Používá se k povýšení práva na roota pro konzolové aplikace. |
|
gksudo |
Používá se k povýšení práva na roota pro grafické aplikace (wireshark). |
|
passwd karla |
Nastaví heslo pro karla |
|
aptitude remove |
Odstraní balík |
|
aptitude purge |
Odstraní balík i s konfigurákama (neodstraní konfiguráky v home adresáři) |
|
aptitude clean |
|
|
aptitude update |
|
|
aptitude install dnstracer |
|
|
aptitude dist-upgrade |
Upgrade distra (Dapper -> Edgy) |
|
apt-get autoremove |
|
|
apt-get check |
Zjistí zda nejsou poškozené závislosti |
|
apt-get clean |
Odstraní archivní stáhnuté soubory |
|
apt-get autoclean |
Odstraní staré archivní stáhnuté soubory |
|
apt-get autoremove |
Odstraní přebytečné balíky (kontroluje závislosti) |
|
apt-get autoremove balík |
Odstraní balík a jeho nepotřebné závislosti |
|
apt-get update |
Aktualizace databáze dostupných balíčků |
|
apt-get upgrade |
Provede upgrade balíčků |
|
apt-get remove dnstracer |
Odstrané balík |
|
apt-get install --reinstall dnstracer |
Reinstaluje balík |
|
apt-get install |
Instaluje balík včetně závislostí |
|
apt-get -f install |
Instaluje násilím balík |
|
apt-cache showpkg dnstracer |
|
|
apt-cache search balik |
Hledá zadaný balík. |
|
apt-cache search balik --names-only |
Hledá zadaný balík pouze podle názvu. |
|
apt-cache show balik |
Zobrazí informace o zadaném balíku. |
|
update-manager -c |
Vypíše novější verzi, pro upgrade |
|
dpkg -i |
Instaluje samotný balík bez závislostí |
|
dpkg -r dnstracer |
|
|
dpkg-reconfigure xserver-xorg |
Nastavit xorg.conf na default |
|
Xorg -configure -config ~/Plocha/testXorg.conf |
Nejdříve je nutné ukončit Xka |
|
dpkg --get-selections |
Seznam aktuálně nainstalovaných balíčků |
scp user@ip:/remote/file.txt /local/file.txt |
Kopírovat soubor ze vzdáleného serveru ssh přes terminál |
scp /local/file.txt user@ip:/remote/file.txt |
Kopírovat soubor do vzdáleného serveru ssh přes terminál |
ssh user@ip 'bash -s' < local_script.sh |
Spustit na vzdáleném ssh serveru lokální skript |
Rychlost bootování
Nainstalovat program
apt-get install bootchart
Po restartu mrknout do /var/log/bootchart/
Problémy Dlouhé bootování kvůli usplash:
apt-get --purge remove usplash
Dlouhé bootování při odpojeném internetu:
Uprav soubor /etc/hostname
pokud tam není řádka 127.0.0.1 název_tvého_stroje
tak ji tam dopln, nazev tve masiny zjistis z prikazu uname -n
Inicializační skripty / restart služby
/etc/init.d/gdm restart |
Restart grafického prostředí |
/etc/init.d/apache2 restart |
Restart služby apache |
Wine
Samba
smb4k
Terminál a aplikace
curlftpfs -o allow_other ftp://login:password@site.cz /mnt/site.cz/
write, talk, mesg, wall - komunikace uživatelů přes terminál
Ctrl + R |
Hledání příkazu v historii (velmi užitečné) |
export HISTSIZE=10000 |
Nastavení délky historie na 10000 řádek (po překročení platí pravidlo FIFO) |
lynx |
textový www prohlížeč |
links |
textový www prohlížeč, může být spuštěn v grafickém režimu pro zobrazování obrázků |
centericq |
IM komunikátor |
nano, vim |
textové editory |
smbc |
samba commander |
fbgrab |
printscreen i v terminálu |
bittornado |
bittorent klient |
screen |
dokáže spustit programy a nechá je spuštěné i po odhlášení |
|
screen -ls |
Vypíše spuštěné terminály |
|
screen -r 12735.pts-0.ubuntu-srv |
Připojí se ke spuštěnému terminálu |
|
Ctrl + A; D |
Nechá puštěné programy na pozadí a přepne se zpět do terminálu |
Posílání emailu přes program mailx (nedodelano):
echo "Dobry den, ..." | mailx dd@email.cz dd@centrum.cz dd@gmail.com cat zprava.txt |mailx -s "predmet" -a X-Mailer: "mailx (ver 0.xx)" dd@email.cz /etc/mailname
Několik způsobů jak se přihlásit jako root
su su root sudo su sudo -i sudo -s sudo bash
Stažení internetových stránek pro offline prohlížení:
wget -r -k -p http://www.stranky.com/index.php # -r rekurzivně (včetně odkazů) # -k odkazy budou nastaveny na soubory stažené na disku (odkaz není směrovanej na inet) # -p stažení všech věcí (obrázky, ...)
Drupal
cp sites/default/default.settings.php sites/default/settings.php chmod go+w sites/default/settings.php mkdir sites/default/files chmod go+w sites/default/files/
Eshop
Prestashop
* PHP settings (modify via your PHP admin software):
* PHP 5.0 or later is installed
* Allowed to upload files
* Allowed to create new files and folders
* GD Library is installed
* MySQL support is on
* Write permissions on files and folders:
* /config
* /tools/smarty/compile
* /sitemap.xml
* Write permissions on folders and subfolders/recursively:
* /img
* /mails
* /modules
* /themes/prestashop/lang
* /translations
* /upload
* /downloadapt-get install php5-gd /etc/init.d/apache2 restart chmod go+w -R img/ mails/ modules/ themes/prestashop/lang/ translations/ chmod 777 -R config/ upload/ download/ tools/smarty/compile/ sitemap.xml
Rapidshare
Okení manažer - ten jediný mě správně funguje |
|
Konzolový klient |
|
doplněk do Firefoxu |
Konverzace formátů
http://www.miksoft.net/mobileMediaConverterDown.htm
Obrázky
Enblend - udělá z obrázků panorama ||Sloučení všech obrázků (jpg) do jednoho
Fonty
1) Stáhnout fonty (soubory *.tar.bz2) z ftp://ftp.gimp.org/pub/gimp/fonts/
2) Řídit se podle návodu http://maestric.com/doc/convert_pfb_pfm_font_to_otf
Instalovat fontforge
appt-get install fontforge
V adresáři s fonty (kde jsou soubory *.otf) vytvořit a editovat soubor: pfb2otf
Open($1);
Reencode("unicode");
Generate($fontname+".otf");
Quit(0);Vytvořit a editovat soubor: convert
PATH=/usr/local/bin:$PATH FONTFORGE_LANGUAGE=ff export PATH FONTFORGE_LANGUAGE if (test -f $1); then ./pfb2otf $1; fi
Nastavit spustitelný příznak souborů pfb2otf convert
chmod 755 pfb2otf convert
Začít konvertovat soubory *.pfb na *.otf
for i in *.[pP][fF][bB]; do ./convert $i; done
Zkopírovat soubory *.otf do adresáře ~/.fonts
Audacious mplayer -dumpaudio soubor.avi -dumpfile soubor.wav Extrahuje audio z filmu
Pokud nejde Amarok spustit a píše následující chyby: V terminálu to lze opravit takto:
mkisofs -dvd-video -o movie.iso /path/to/dvd/directory/ Vytvoří DVD video ISO z uloženého DVDfilmu na disku (cestu směrujeme do adresáře kde je VIDEO_TS) Mplayer, VLC Nejpoužívanější programy pro přehrávání videa mplayer -vo help Vypíše drivery výstupu videa mplayer -vo gl Použije pro přehrání videa driver gl mplayer -subcp cp1250 -sub tituly.sub film.avi Nastaví typ titulku na cp1250 (trvale nastaveni v souboru mplayer.conf -> subcp=cp1250) echo "vf=expand=0:-100:0:0" >> ~/.mplayer/config Titulky do černého pruhu vlc -vvv test.mpg --sout rtp:192.168.1.10:8080 Stream po síti mencoder -ovc xvid -xvidencopts bitrate=500:pass=2 -oac mp3lame -lameopts mode=1:q=3 soubor.rm -o soubor.avi Převod stream formátu rm na avi mencoder -oac mp3lame -ovc lavc -vf scale=0:0:0:0:0:0:qpal vstup.mov -o vystup.avi Konverze mov na avi: mencoder test.mpeg -of lavf -oac mp3lame -lameopts abr:br=56 -ovc lavc -lavcopts vcodec=flv:vbitrate=500:mbd=2:mv0:trell:v4mv:cbp:last_pred=3 -srate 22050 -o test.flv Konverze avi na flv mencoder input.mkv -ovc lavc -oac mp3lame -o output.avi Konverze mkv na avi flvtool2 -U test.flv Pro posouvání videa mencoder tv:// -tv driver=v4l2:device=/dev/video0:width=640:height=480 -ovc lavc -nosound -o webcam-filename.avi Nahrání videa z integrované kamery v notebooku bez zvuku(Lenovo S10e) mencoder tv:// -tv driver=v4l2:width=640:height=480:device=/dev/video0:forceaudio:adevice=/dev/dsp -ovc lavc -oac mp3lame -lameopts cbr:br=64:mode=3 -o filename.avi Nahrání videa z integrované kamery v notebooku se zvukem - zatim nefunguje(Lenovo S10e) ffmpeg -i OUTPUT.avi -vcodec libx264 libx264.avi Komprimace videa do kodeku libx264 ffmpeg -i input.mts -vcodec libxvid -b 18000k -acodec libmp3lame -ac 2 -ab 320k -deinterlace -s 1440x1080 output.avi Převede MTS do avi, nutno zjistit rozlišení videa (ffmpeg -i input.mts) a zda video používá "interlaced frames" > nutno "deinterlace". Odkaz na zdroj avimerge -o OUTPUT.avi -i INPUT1.avi INPUT2.avi Spojování Videa mencoder -oac copy -ovc copy -o OUTPUT.wmv INPUT1.wmv INPUT2.wmv Spojování Videa mencoder mf://*.jpeg -mf w=800:h=600:fps=25:type=jpeg -ovc lavc -lavcopts vcodec=mpeg4 -oac copy -o video.avi Vytvoří video (video.avi) z obrázků (*.jpeg) ffmpeg -i video.avi Informace o videu (get video parameters) mplayer -ao dummy -vo dummy -identify video.avi Informace o videu mencoder -fps 300 -ovc lavc input.avi -o output.avi Zrychlení videa ffmpeg -i video.avi picture%d.jpg Z videa nastříhat obrázky mplayer -vo fbdev -bpp 32 -vf scale=1024:-3 -fs -subcp cp1250 -ass video.avi Přehrát video bez grafického prostředí. Forum
apt-get install compizconfig-settings-manager Instalace manageru
Ovladače, nastavení Twinview - dva monitory, velká plocha + compiz (2x 1280x1024, Nvidia GTS 250) 1) Odeberte nesvobodné ovladače a součásti přes synaptic (vyhledat nvidia a odstranit všechny balíky které mají nvidia v názvu) Takto vypadá můj funkční xorg.conf /etc/X11/xorg.conf
Avidemux (howto), KDEnlive, Cinerella, Kino Používané programy dvgrab --format dv2 Pro stáhnutí videa z kamery Střih pomocí mencoderu (ss - start;endpos - konec) Musí být zadáno: čerpal jsem odtud: http://gentoo-wiki.com/HOWTO_Mencoder_Introduction_Guide
ccd2iso IMG to ISO
Netspeed applet na lištu iftop, iptraf, ethstatus monitorování vytížení linky wireshark, etherape detailní sledování paketů nmap oskenuje porty (zda je otevřený či zavřený)
Petr Kopecký - IP protokol v linuxu trocha teorie a hodně praxe příkazy ip, iptables a další Fail2Ban - zakáže IP adresu při mnoha neúspěšných pokusech o přihlášení Wicd - lepší a používanější než Network manager Networkmanager - standardní klient RutilT - zatim né moc rozšířený klient Ntop - monitoring síťového provozu /etc/hosts.deny Konfigurák pro zablokování přístupu z adres (ALL:ALL) /etc/hosts.allow Konfigurák pro povolení přístupu z adres (ALL:85.101.10.X) geoiplookup zjistí v jaké republice se nachází zadaná IP adresa (instalovat geoip-bin) ipcalc Pro spravne pocitani adresy Čti dále.. celkově ethtool eth0 iwspy mii-diag mii-tool dig DNS lookup utility nm-tool Zobrazí informace o připojení pomocí NetworkManageru * Rozdíly mezi v2.4 a v2.6 - Diskuze na fóru * Proč používat ip (balík iproute2) a ne ifconfig route -> ip route ifconfig -> ip a ifconfig Standardní příkaz pro jádra v2.4 iproute2 Balík pro jádra 2.6 ip link show Zobrazí síťová zařízení ip link set dev eth0 name wan Přejmenuje síťové zařízení (eth0 -> wan) ip link set dev eth0 up Aktivuje síové zařízení eth0 (down - pro deaktivaci) ip addr show Zobrazí adresu(y) pro síťové zařízení ip addr add 192.168.1.1/24 brd + dev eth0 Přidá (i odebírá) IP(192.168.1.1) a masku(255.255.255.0) ip route show Zobrazí routovací tabulku ip route add default via 1.2.3.254 Nastaví výchozí bránu na 1.2.3.254 ip link set eth0 address 00:01:02:f4:34:82 změna MAC adresy síťovky ip neighbor show ifconfig -a Zobrazí všechny (i zakázaná zařízení) route add default gw 192.168.0.1 route add default gw xxx.xxx.xxx.xxx dev eth0 route add -host 10.0.2.1 gw 10.0.0.100 Komunikace do jiné než defaultní brány ifupdown ifconfig eth0 mtu 1412 Změna MTU síťovky arp -vn iwlist eth1 scan iwconfig iwconfig eth1 essid xxx mode [managed | ad-hoc] key s:xxx iwconfig eth1 essid "Nazev sítě" Připojí se k síti ("zadat ESSID") dhclient3 eth1 Lízne si IP adresu z DHCP serveru host google.cz Test DNS nastavení scp soubor.txt uziv_jmeno@ip_adresa:"/tmp/soubor.txt" Přenos souboru přes síť nmap -sS -P0 -p 0-65535 IP_ADDRESS tcpdump -i eth0 -nn 'udp' Sleduje pakety na UDP portech /etc/init.d/networking restart Restart sítě arp 192.168.1.10 Pinguje přes ARP netstat -i Zobrazí statistiky síťovek netstat -nat Zobrazí aktivní internetové připojení netstat -rn netstat -tulp netstat -tulpn Zobrazí otevřené porty netstat -pant Print network connections, routing tables, interface statistics, masquerade connections, and multicast memberships nmblookup -M skupina zjistí jaké pc je Domain Master, odkaz export http_proxy="http://adresa:port" Nastavení http proxy přes terminál
802.11b: 1, 2, 5.5, 11 Mbit cat /proc/net/wireless iwconfig wlan0 rate 11M Nastaví rychlost wifi karty Beacon interval - Vysílá v pravidelných intervalech o sobě informace (maják), slouží pro udržení spojení. (defaultně 100ms, doporučeně 1000 a více). RTS Treshold - RTS/CTS přidá handshake před každým přenosem paketů, aby se zajistilo, že je kanál volný. To zvýší režii, ale také výkon v případě skrytých nodů nebo velkého počtu aktivních nodů. Tento parametr nastavuje velikost nejmenšího paketu, pro který node vysílá RTS; hodnota rovná maximální velikosti paketu tento mechanismus vypne. Fragment Threshold - Fragmentace dovoluje rozdělit IP paket na dávku několika menších částí přenesených médiem. To ve většině případů zvětší režii, ale ve velmi zašuměněm prostředí sníží ztráty způsobené chybami a umožní paketům projít při zarušení. Tento parametr nastaví maximální velikost fragmentu; hodnota rovná maximální velikosti paketu tento mechanismus vypne.
Hide SSID - lze odhalit Povolení přístupu na MAC adresu - lze odhalit Šifrování: Open system - nezabezpečená síť VPN - připojení pomocí certifikátu = největší zabezpečení
tar xzf soubor.tar.gz Rozbalí archiv.tar.gz tar xjf soubor.tar.bz2 Rozbalí archiv.tar.bz2 (pomocí bzip2 = parametr j) rar a -p -rr -v10240k archiv.rar soubor vícedílný archiv Vysvetlivky: [ c - vytvoř (archiv) ] [ v - detailní mód ] [ f - do souboru ] unzip '*' Rozbalí více archivů najednou
Probouzeni se provadi tzv. magic packetem, coz je ethernetovy ramec speciálního formátu (žádné TCP/IP) Při uspaném PC dokáže karta přijímat ethernetové rámce, ty funguji jen v LAN. Tuto funkci musí podporovat BIOS. echo "+00-00-00 00:03:00" > /proc/acpi/alarm Probudí PC za 3 minuty
Monitoring Network Latency du2rrd Long Term Disk Space Monitoring MRTH Multi Router Traffic Grapher (MRTG) is a tool to monitor the traffic load on network links
ps -aux Výpis procesů systému initctl list Běžící procesy service --status-all Běžící procesy chkconfig Běžící procesy kill -l Výpis možných signálů poslané procesu kill -s 9 pid_procesu Zabití procesu signálem 9 - signalKill nice Priorita procesu -20 (nejvyšší priorita) až +19 (nejmenší priorita), bez parametrů vypisuje defaultní hodnotu priority vytvářených procesů. Nice se používá pouze u spouštěných procesů. (nice -15 k3b %U) renice Změna priority u běžících procesů nohup Proces se stane imuní vůči některým signálům. nohup program & program pracuje i po odhlášení z konzole.
find -name co_hledame -v vypíše cesty k nalezeným položkam find /home -name '*' -print0 | xargs -0 grep -l 'hledany retezec' Hledá textový řetězec ve všech souborech v podadresářích /home locate Vypíše soubory k nainstalovanému programu (rm -i locate realplayer) / Hledání v manuálové stránce Shift + N Klávesová zkratka pro hledání dalšího řetězce
mkfs.cramfs mkfs.ext3 mkfs.minix mkfs.reiser4 mkfs.vfat mkfs.ext2 mkfs.jfs mkfs.msdos mkfs.reiserfs mkfs.xfs mkfs.ext3 -c /dev/sda přepínač -c zkontroluje zda disk obsahuje vadné bloky před vytvořením souborového systému
hdparm -y /dev/hdX Uspání disku (nejdrive odmountovat) hdparm -B 10 /dev/sda disk by se mel po chvilce vypnout hdparm -i /dev/sda Vypíší se informace o mechanice noflushd utilita na vypínání disku (install noflushd) hddtemp /dev/sda zobrazi teplotu disku (install hddtemp) fsck -rfv /dev/hdaX Vynutí kontrolu disku (Při chybě: Duplicate or bad block in use!) tune2fs -c 0 /dev/hdaX Zakázat kontrolu disku při startu systému tune2fs -c 100 /dev/hdaX Zkontrolovat po 100 startech systému eject -T /dev/cdrw Vysune mechaniku eject -t /dev/cdrw Zasune mechaniku mkdir /mnt/ram; mount -t tmpfs -o size=402450944 none /mnt/ram; Vytvoření ramdisku ntfsfix /dev/sdx(hdx..) Opravit disk s NTFS, pote je nutno disk remountnout. (nutno instalovat ntfsprogs) e2fsck -p /dev/sdb Kontrola NTFS disku smartctl -d ata -a /dev/sda Výpis informací o disku smartctl --smart=on -d ata /dev/sda Zapnutí SMARTu
(pomáhá příkaz: fdisk -l)
Systém → Správa → Systémový soubor záznam. (Logy v grafickém prostředí) hardinfo System information and benchmark tool cat /proc/meminfo Vypíše volnou paměť free -m Vypíše velikost a obsazení paměti (-m --- v megabajtech) ps -aux Vypisuje procesy a informace o nich (-aux - podrobnější informace) df -h Vypíše velikost a obsazenost disků du -hs * Vypíše velikosti složek (adresářů) [místo * lze použít cestu ke složce] hwinfo --cpu --bios Vypíše detaily HW dmidecode Vypíše DMI (vypíše hardware a jeho parametry) - velmi užitečné dmesg Příkaz pro zjištění boot logu lsmod Výpis zavedených modulů (ovladačů) lsof Výpis otevřených souborů lspcmcia Vypisuje pcmcia karty lspnp Vypisuje plug and play hw lshw Vypisuje veškerý HW (detailně) lshw -C cpu Vypisuje určitou sekci HW (cpu) lspci (-v) (-vv) Vypisuje všechna PCI zařízení lsusb Vypisuje všechny usb zařízení usplash Tapeta při startování which nazev_programu Vypisuje soubory programu (kam je nainstalován, konfigurační a manuálové stránky). whereis Napíše kde se na disku nachází spustitelný soubor. fdisk -l Rozdělení disku pstree -p hdparm /dev/hda Vypíše parametry nastavení disku dmidecode | grep -A 6 -i "Socket Designation: DIMM" Detail pamětí dmidecode | grep -A 17 -i "Memory Device" Detail pamětí
BleachBit je multiplatformní nástroj určený k čištění disku od nepotřebných souborů (cache, historie, atd...). deborphan vypisuje knihovny na kterých nic nezávisí, takže je lze odinstalovat (ale pozor opatrně vždy je potřeba zkontrolovat) debfoster se ptá balík po balíku (z vršku závislostí), zdali jej v systému chcete nechat nebo ne a výsledný stav si pak pamatuje. dpkg --purge zajistí úplné odstranění všech částí balíku dpkg --get-selections | grep deinstall ? nastaví vybrané balíky ze stdin a odinstaluje je
Laptop mode - Jak na uspávání disku / parkování hlaviček v Jaunty?
gconf-editor Nástroj pro úpravu nastavení prostředí usplash Tapeta při startování Zapnutí/Vypnutí funkce: Ctrl + Shift + NumLock Smazat zbytky po kompilaci (v případě nové kompilace).
rsync zynk, grsync unison unison-gtk
PyLoris is a scriptable tool for testing a server's vulnerability to connection exhaustion denial of service (DoS) attacks. PyLoris can utilize SOCKS proxies and SSL connections, and can target protocols such as HTTP, FTP, SMTP, IMAP, and Telnet.
nebo
Aplikace -> Internet -> QTNX Tlačítko Configure a zde nastavit parametry, HostName bude IP adresa serveru, port 22. Potvrdíme
Fail2ban je program který zkoumá logy aplikací (Apache, SSH, FTP, a další...) a vyhodnocuje zda zakáže zvědavou IP adresu v iptables. 1) Instalovat program fail2ban 2) Konfigurovat fail2ban Sekce DEFAULT Příklad ostatních pravidel: SSH ProFtpD 3) Po konfiguraci restartujeme službu: 4) A sledujeme co se nám chytilo do pavučiny:
1) Instalace programu: 2) Mount FTP z terminálu: 3) Zadání automatického mountování do fstab:
1) Nainstalujeme program: 2) Vytvoříme složky které budeme sdílet: 3) Upravíme konfigurační soubor (vypsal jsem pouze řádky které jsem změnil) 4) Můžeme zkontrolovat konfigurační soubor 4) Restartujeme službu Návod není dokončen
nano /etc/apache2/apache2.conf Úprava konfiguračního souboru ServerSignature Off Vypne podpis serveru ServerTokens Prod Minimální informace o serveru Zakázání zobrazení obsahu adresáře "Index of" Nezobrazí chybové hlášky "potenciální útočník neví na čem je" Restartujem službu
Zkontrolujeme zda se zapnul přes příkaz Editujeme konfigurační soubor Apache2: A vložíme na konec souboru text (upravime cestu!): Chyba apache2: pak upravte soubor a přidejte na konec souboru Pokud Apache2 odkazuje na špatný adresář, musíte zeditovat soubor
How to install cherokee + mysql + phpmyadmin + htaccess on ubuntu server 9.10 HOWTO Install Cherokee, MySQL, PHP and WordPress on Ubuntu 9.04 Jaunty Jackalope 0) Edituj repozitář /etc/apt/sources.list a přidej do něj text (změň název distribuce) 0) Přidej klíč 0) Updatni a aktualizuj zdroje 0) Nainstalujeme potřebné balíky, mysql-server bude vyžadovat heslo pro uživatele root, phpmyadmin bude vyžadovat vytvoření databáze přes dbconfig-common (zvolme ano): 0) V terminálu zadat: 0) Ve webovém prohlížeči se přihlásit na administrační rozhraní Cherokee (přihlašovací údaje vemte z terminálu - předchozí krok): 0) Povolíme php překlad: Virtual servers -> default -> záložka Behaviour -> PHP 0) Vytvoříme testovací soubor a ve webovém prohlížeči otestujeme zda funguje php překlad: Návod není dokončen Jak rozběhat clean url pro drupal? http://svn.cherokee-project.com/browser/cherokee/trunk/doc/cookbook_drupal.txt?rev=2879<<BR>> http://lists.octality.com/pipermail/cherokee-dev/2009-August/002979.html<<BR>> http://www.cherokee-project.com/doc/modules_handlers_redir.html<<BR>> http://groups.google.com/group/cherokee-http/browse_thread/thread/e70cd846abdb1e19<<BR>> http://docs.huihoo.com/cherokee/0.98/cookbook_drupal.html<<BR>>
Udělam upload (povolím ostatním uivatelům čtení/zápis), ale když tam něco nahraju, nelze to smazat -> vlastník (nouser) skupina (nogroup)
OpenVPN server (server-klienti) HOWTO
1) Nainstaluj balíček: 2) Uprav konfigurační soubor /etc/default/dhcp3-server 3) Uprav konfigurační soubor /etc/dhcp3/dhcpd.conf, můžeš všechno vymazat a zkopírovat a upravit toto: i) Nezapomeň zadat do ip adresu síťového zařízení eth0 jinak nastane:
crontab -e Editace crontabu crontab -l Výpis crontabu ps -ef | grep crond Ověření zda běží CRON /etc/rc.d/init.d/crond restart Restartovat službu minuty hodiny den v měsíci měsíc den v týdnu akce 1,2,3 * * * * echo "Každá 1,2,3minuta */2 * * * * echo "Každá sudá minuta * 10 echo "Každá minuta od 10 hodiny
Package list Jak z Ubuntu udělat Ubuntustudio:
Pro zvětšení plochy instalovat "Guest Extras"
set-uid a set-gid bit funguje pouze na binárním souboru (nefunguje na skriptech) set-uid bit: chmod u+s soubor přidá právo spuštění pro vlastníka souboru set-gid bit: chmod g+s soubor přidá právo spuštění souboru pro skupinu sticky bit: chmod o+t soubor ponechá soubor po doběhnutí v paměti pro rychlejší znovuspuštění chmod 7777 soubor Maximální oprávnění - první číslo popisuje set-Xid bit a sticky bit socket je speciální soubor, přes který si dva lokálně běžící procesy vyměňují data roura (pipe) speciální soubor používaný pro výměnu dat mezi procesy, ale na rozdíl od soketu je výměna jednosměrná Notifikation area Pidgin (Jaunty) - vypnut odinstalováním pidgin-libnotify Trvalé povolení spuštění příkazu bez administrátorského práva (bez SUDO) [url=http://forum.ubuntu.cz/index.php?topic=13248.msg99039#msg99039]Odkaz[/url] cp /etc/sudoers /etc/sudoers.backup záloha nastavení whereis shutdown ||zjisti kde je umisten skript || visudo /etc/sudoers ||bezpecna editace sudoers souboru || login_name ALL = NOPASSWD: /sbin/shutdown doplnit login_name a cestu ke skriptu příkaz je to samé jako $(příkaz) Zaznamenat komunikaci terminálu: ... příkazy ... modprobe sk98lin echo "brightness:4" > /proc/acpi/toshiba/lcd přidání brightnes na LCD ls -l /dev/disk/by-uuid/ dostane UID partitionu disku které lze zadat do fstabu blkid zobrazí uuid disku find ADRESAR_ODKUD_KOPIRUJES -type f -exec cp {} ADRESAR_KAM_KOPIRUJES \; Zkopíruje vše z adresáře a podadresářů do jednoho adresáře (nezachovává strukturu podadresářů) ps aux vypíše seznam spuštěných procesů a jejich PID (podobně jako top) echo $$ zobrazení PID aktuálního shellu echo "Ahoj" & AND znamená že se spustí příkaz jako nový thread var=$! do proměnné var se uloží PID předchozího spuštěného vlákna echo $var vypíše se hodnota proměnné var Ctrl+Z Ručně pozastaví skript fg Opět skript spustí bg Skript pošle na pozadí mknod Vytvoří speciální soubor nebo pojmenovanou rouru $ (tar xzf archiv.tgz ; echo $? > exit_code_pro_rozbaleni ) & Testuje zda se rozbaleni archivu provedlo korektně a návratovou hodnotu zapíše do souboru. cp ~/.{.bashrc,.bash_history} /tmp/test Kopíruje z uvedene cesty (domovska slozka ~/) vsechny soubory uvedené v závorce {} do /tmp/test cat xorg.conf | grep -Ev '#|;|^$' vypise xorg.conf bez komentaru a prazdnych radku cat xorg.conf | grep -E '[#;]' to same akorat opacnou metodou cat xorg.conf | sed -ne '/Section\ \"ServerLayout\"/,/EndSection/p' vypise sekci z xorg.conf for x in ServerLayout Device; do cat xorg.conf | sed -ne "/Section\ \"$x\"/,/EndSection/p"; done vypise nekolik sekci, v tomto pripade ServerLayout a Device ! cat test.txt | tr ' ' '\n' | sort | uniq -c Vypíše ze souboru jednotlivá slova abecedně a jejich počet (opakování)
find -name co_hledame -v vypíše cesty k nalezeným položkam find /etc -name '*.txt' | xargs grep -li text Vyhledat všechny soubory co obsahují slovo text locate Vypíše soubory k nainstalovanému programu (rm -i locate realplayer) / Hledání v manuálové stránce Shift + N Klávesová zkratka pro hledání dalšího řetězce Grafická úprava: Tento návod potřebuje důležité grafické a stylistické úpravy. Více... Konvence: Tento návod nesplňuje některé z na Wiki zavedených konvencí. Více... mkdir ~/.fonts
cp *.otf ~/.fonts/
Vytvořit informační cache fontů***? sudo fc-cache -f
Audio
Amarok
Configuration file "/home/user/.kde/share/config/knotifyrc" not writable.
Please contact your system administrator.
Will not save configuration.
Configuration file "/home/user/.kde/share/config/kdeglobals" not writable.
Please contact your system administrator.
sudo chown -R `whoami` ~/.kde
Video a Audio
Compiz
Nvidia
2) Stáhnout nejnovější ovladače z internetu: http://www.nvidia.com/Download/index.aspx?lang=en-us<<BR>> 3) Zastavit X - jako root spustit /etc/init.d/gdm stop
4) Přihlásit se jako root a spustit instalaci: sh NVIDIA-Linux-x86-185.18.36-pkg1.run #Uprav dle souboru
5) Inicializovat nový xorg: nvidia-xserver
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings: version 1.0 (buildmeister@builder63) Fri Aug 14 17:55:55 PDT 2009
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "Files"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
Load "type1"
Load "freetype"
Load "glx"
EndSection
Section "ServerFlags"
Option "Xinerama" "0"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "CRT-1"
HorizSync 30.0 - 71.0
VertRefresh 56.0 - 75.0
Option "DPMS"
EndSection
Section "Monitor"
Identifier "Monitor1"
VendorName "Unknown"
ModelName "LG L1953TR"
HorizSync 30.0 - 71.0
VertRefresh 56.0 - 75.0
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTS 250"
EndSection
Section "Device"
Identifier "Device1"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTS 250"
BusID "PCI:1:0:0"
Screen 1
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "TwinView" "1"
Option "metamodes" "CRT: 1280x1024 +0+0, DFP: 1280x1024 +1280+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Device "Device1"
Monitor "Monitor1"
DefaultDepth 24
Option "TwinView" "0"
Option "TwinViewXineramaInfoOrder" "DFP-0"
Option "metamodes" "DFP: 1280x1024 +0+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "Extensions"
Option "Composite" "1"
EndSectionStřih videa
V Avidemuxu nepouzivejte QPEL a GMC, aby šel výsledný .avi soubor přehrát ve stolním DVD/DivX přehrávači.
mencoder video.wmv -ss 506 -endpos 110 -o video_out.avi -ovc lavc -oac lavc -lavcopts abitrate=128
-ovc lavc [No video encoder (-ovc) selected. Select one (see -ovc help).]
-oac lavc [No audio encoder (-oac) selected. Select one (see -oac help) or use -nosound.]
-lavcopts abitrate= [jinak nastane chyba - [mp2 @ 0x87ee0b8]bitrate 224 is not allowed in mp2 \ Couldn't open codec mp2, br=224.]
Konverze formátů
Monitorování, skenování sítě
Síť
Klienti # Manuály
man interfaces
man wpa_supplicant
man wpa_supplicant.conf
zless /usr/share/doc/wpasupplicant/README.Debian.gz
apt-get install ntop
/etc/init.d/ntop start
http://localhost:3000/
Transparentní bridge (transparent bridge)
apt-get install bridge-utils
brctl addbr br0
brctl addif br0 eth0 #Zmen nazvu sitovek
brctl addif br0 eth1 #Zmen nazvu sitovek
dhclient3 br0
WIFI
802.11g: 6, 9, 12, 18, 24, 36, 48, 54 Mbit
802.11a: 6, 9, 12, 18, 24, 36, 48, 54 Mbit
Zabezpečení WIFI síťe
WEP-64 - lze prolomit
WEP-128 - lze prolomit
WPA-PSK
WPA2-PSK
Archivy
Probuzení PC (WakeUp)
Logy, Monitoring
Procesy
Hledání
Vytvoření souborového systému (formátování)
Mechaniky, HDD
Souborové systémy
Grub a označení disků
Oddily se znaci: (hdX,Y) (X = cislo disku; Y = cislo oddilu)
Ozn. v Linuxu => Ozn. v Grubu
/dev/sda => (hd0)
/dev/sda1 => (hd0,0)
/dev/sda2 => (hd0,1)
Výpisy a Logy
tail /var/log/syslog
tail /var/log/kern.log
Vyčištění systému
Notebooky - vychytávky
echo 1500 > /proc/sys/vm/dirty_writeback_centisecs # doporucuje powertop
#echo 5 > /proc/sys/vm/laptop_mode # doporucuje powertop ale ja k laptop modu nemam duveru
# vypne modrozuba
/etc/init.d/bluetooth stop
hciconfig hci0 down ; rmmod hci_usb
## doporucuje powertop
hal-disable-polling --device /dev/cdrom
## na tohle usb je pripojena moje webkamera. - defaultne je always active
echo auto > /sys/bus/usb/devices/1-5/power/level # default: on
## vypne druhe jadro, bohuzel nevim jak ho zase zapnout(krome restartu) :D
echo 0 > /sys/devices/system/cpu/cpu1/online
## podtaktovani na minimum
echo userspace > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
killall pulseaudio ## extremne hodne preruseni
rfkill block wifi
vypnutie bluetooth
rfkill block bluetooth
Znizenie jasu pri napajani zo siete na 50%
gconftool-2 --set /apps/gnome-power-manager/backlight/brightness_ac --type integer 50
Znizenie jasu pri napajani z baterie na 50%
gconftool-2 --set /apps/gnome-power-manager/backlight/brightness_dim_batter --type integer 50
Prepnutie procesora na powersave
cpufreq-selector -g powersave
Různé
make mrproper || make clean
Synchronizace
Server
Zabezpečení PC/serveru
FreeNX - remote desktop
Server
add-apt-repository ppa:freenx-team
echo deb http://ppa.launchpad.net/freenx-team/ppa/ubuntu `lsb_release -c | awk '{print $2}'` main >> /etc/apt/sources.list2) Nainstalujeme programy apt-get update
apt-get install python-software-properties freenx
3) Upravíme konfigurační soubor nano /etc/nxserver/node.conf
...
ENABLE_SSH_AUTHENTICATION="1"
...
4) Spustíme FreeNX server nxserver --start
Zde může nastat následující problém: mv: cannot stat `/var/lib/nxserver/home/.ssh/authorized_keys2.disabled': No such file or directory
Řešením je vytvořit tento soubor touch /var/lib/nxserver/home/.ssh/authorized_keys2.disabled
Client
apt-get install qtnx
2) Spustit program
Může nastat problém se špatným mapováním kláves (např. šipka nahoru udělá printscreen)
Na serveru => Systém -> Předvolby -> Klávesnice -> záložka Rozložení -> tlačítko Model klávesnice
Dodavatelé = Generic
Modely = Klávesnice spravovaná pomocí Evdev
Fail2ban - Ochrana před zvědavci a roboty
apt-get install fail2ban
nano /etc/fail2ban/jail.conf
...
[DEFAULT]
ignoreip = 127.0.0.1 80.200.70.201 ### Nikdy nebude banovat tyto adresy - whitelist
bantime = 12000 ### Defaultní čas zabanování - platí v případě že jednotlivé sekce si čas nepřepíší
maxretry = 3 ### Defaultní
banaction = iptables-multiport ### Pokud je nějaké pravidlo porušeno, odstříhne fail2ban IP adresu na všechny porty které hlídá (nejsem si jistej)
...
...
[ssh]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
banaction = iptables-allports
maxretry = 6
...
...
[proftpd]
enabled = true
port = ftp,ftp-data,ftps,ftps-data
filter = proftpd
logpath = /var/log/proftpd/proftpd.log
banaction = iptables-allports
maxretry = 3
...
/etc/init.d/fail2ban restart
cat /var/log/fail2ban.log
FTP
Připojení FTP jako filesystém
apt-get install curlftpfs
curlftpfs -o allow_other ftp://user:pass@ftp.example.com slozka_pro_mount
curlftpfs#user:pass@ftp.example.com /mnt/host fuse rw,uid=500,user,noauto 0 0
ProFtpD
apt-get install proftpd
mkdir /media/data/FTP
mkdir /media/data/FTP/share
mkdir /media/data/FTP/upload && chmod 777 /media/data/FTP/upload
nano /etc/proftpd/proftpd.conf
UseIPv6 off
DefaultRoot /media/data/FTP
MaxInstances 10
proftpd -td5
/etc/init.d/proftpd restart
LAMP server (Web, Apache, mySQL, phpMyAdmin)
name-based virtual host <VirtualHost *:80>
ServerName www.ubuntu.cz
ServerAlias ubuntu.cz *.ubuntu.cz // seznam adres směrovaných do document root
DocumentRoot /var/www/ubuntu // document root
</VirtualHost>
<VirtualHost *:80>
ServerName www.domena2.com
DocumentRoot /var/www/domena2.cz // document root
</VirtualHost>
Zabezpečení
nano /etc/apache2/sites-available/default
...
<Directory /var/www/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
...nano /etc/php5/apache2/php.ini
...
display_errors = Off
.../etc/init.d/apache2 reload
Jak zapnout Clean Url (například pro Drupal)?
a2enmod rewrite
/etc/init.d/apache2 restart
...
rewrite_module (shared)
...
nano /etc/apache2/apache2.conf
<Directory /var/www/domena.cz>
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
</Directory>Could not determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
gedit /etc/apache2/apache2.conf
ServerName localhost
gedit /usr/share/apache2/default
a soubory v adresáři /usr/share/apache2/allowed-sites/ Cherokee + (mysql, phpmyadmin)
deb http://ppa.launchpad.net/cherokee-webserver/ppa/ubuntu karmic main
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 51BB8E83EBA7BD49
apt-get -y update && apt-get -y upgrade
apt-get install cherokee php5-cgi php5-mysql mysql-server mysql-client
cherokee-admin -b
http://localhost:9090/
V levo na stránce klikneme na tlačítko Save echo "<? phpinfo(); ?>" > /var/www/test.php
ln -s /usr/share/phpmyadmin/ /var/www/phpmyadmin
chmod 0755 -R /usr/share/phpmyadmin/
chown -R www-data:www-data /var/www/
Samba server
Řešení (přidat sebe "uživatele" do skupiny nogroup) (edit.: asi nefunguje)
adduser `whoami` nogroup
OpenVPN server
DHCP
apt-get install dhcp3-server
INTERFACES="eth0" ### Zde napiš pro na jakém zařízení bude rozdávat DHCP server IP adresy
ddns-update-style none;
authoritative;
log-facility local7;
subnet 192.168.2.0 netmask 255.255.255.0 {
range 192.168.2.100 192.168.2.200; ### Rozsah přidělovaných IP adres
option domain-name-servers 192.168.1.1;
option domain-name "domain.name";
option routers 192.168.2.1; ### Zde má být IP tvojí síťovky která rozdává IP adresy (v mém případě eth0)
option broadcast-address 192.168.2.255;
option nntp-server 192.168.2.1; ### pokud nemáš časový server (NTP) tuto řádku můžeš smazat
default-lease-time 600;
max-lease-time 7200;
}
# Nastaví statické IP adresy pro MAC adresu síťové karty uživatele
host fix0 # DuckD
{
hardware ethernet 00:11:22:33:44:20;
fixed-address 192.168.2.64;
}
host fix1 # Ondra
{
hardware ethernet 00:11:75:33:44:c2;
fixed-address 192.168.2.91;
}ip addr add 192.168.1.1/24 brd + dev eth0
No subnet declaration for eth0 (0.0.0.0).
** Ignoring requests on eth0. If this is not what
you want, please write a subnet declaration
in your dhcpd.conf file for the network segment
to which interface eth0 is attached. **CRON
Při editaci crontabu musí být ke konci prázdný řádek (za posledním záznamem od entrovat)! Jinak Cron nebude fungovat! Ubuntustudio
echo deb http://archive.ubuntustudio.org/ubuntustudio `lsb_release -c | awk '{print $2}'` main >> /tmp/sources.list
wget -q http://archive.ubuntustudio.org/ubuntustudio.gpg -O- | sudo apt-key add - && sudo apt-get update
apt-get install ubuntustudio-desktop ubuntustudio-audio ubuntustudio-audio-plugins ubuntustudio-graphics ubuntustudio-video linux-rtVirtualizace
Virtualbox (Sun)
Tipy triky
script cmd_history
exit
cat cmd_history
Hledání, vyhledávání
Vytvořil: DuckD
Díky!