Hoofdpagina: verschil tussen versies

Uit Rolandow
Ga naar: navigatie, zoeken
(WebDAV mounten)
 
(96 tussenliggende versies door dezelfde gebruiker niet weergegeven)
Regel 9: Regel 9:
 
* [[PHP_SOAP|SOAP]]: WSDL, object mapping
 
* [[PHP_SOAP|SOAP]]: WSDL, object mapping
 
* [[PHP_Downgrade|PHP Downgrade]]: script om php te downgraden van 5.3 naar 5.2 op Ubuntu
 
* [[PHP_Downgrade|PHP Downgrade]]: script om php te downgraden van 5.3 naar 5.2 op Ubuntu
 +
* [[PHP_gettext|PHP gettext]]: multiple language support met gettext
 +
 +
== composer problemen ==
 +
 +
Op mijn VM kreeg ik problemen met composer (ubuntu 16.04 en php7), namelijk een Content-Length Mismatch error. Dit kan opgelost te worden door overal https te gebruiken ipv http. Een mogelijke oorzaak zou kunnen zijn een virusscanner die de http stream controleert en vernaggelt, maar dit heb ik niet kunnen bevestigen. Onderstaande code toevoegen aan de composer config (van je account). Dit staat waarschijnlijk in /home/user/.composer/config.json ..
 +
 +
<source lang="javascript">
 +
{
 +
    "config": {
 +
    "github-protocols": [
 +
      "https"
 +
    ]
 +
  },
 +
  "repositories": {
 +
    "packagist": {
 +
      "type": "composer",
 +
      "url": "https://packagist.org"
 +
    }
 +
  }
 +
}
 +
</source>
  
 
= Oracle =
 
= Oracle =
Regel 24: Regel 45:
 
end;
 
end;
 
</source>
 
</source>
 +
 +
== Toad driver ==
 +
 +
Toad heeft een oracle client nodig, maar dit werkt alleen met de 32 bit versie. Download [http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-win32soft-098987.html win32_11gR2_client.zip] hierrr....
  
 
== Update from table ==
 
== Update from table ==
Regel 67: Regel 92:
  
 
Bron: [http://www.techonthenet.com/sql/exists.php http://www.techonthenet.com/sql/exists.php]
 
Bron: [http://www.techonthenet.com/sql/exists.php http://www.techonthenet.com/sql/exists.php]
 +
 +
== Limit rows ==
 +
 +
Er is geen LIMIT zoals in mysql. Aantal rijen limiteren:
 +
 +
<source lang="sql">
 +
select *
 +
from 
 +
( select *
 +
  from emp
 +
  order by sal desc )
 +
where ROWNUM <= 5;
 +
</source>
 +
 +
Met een offset:
 +
 +
<source lang="sql">
 +
select * from
 +
( select a.*, ROWNUM rnum from
 +
  ( <your_query_goes_here, with order by> ) a
 +
  where ROWNUM <= :MAX_ROW_TO_FETCH )
 +
where rnum  >= :MIN_ROW_TO_FETCH;
 +
</source>
 +
 +
* [http://www.oracle.com/technetwork/issue-archive/2006/06-sep/o56asktom-086197.html On ROWNUM and limiting results]
 +
* [http://stackoverflow.com/questions/470542/how-do-i-limit-the-number-of-rows-returned-by-an-oracle-query stackoverflow topic]
 +
 +
== datum vergelijken met sysdate ==
 +
 +
Als je een DATE field vergelijkt met de SYSDATE variabele, gaat dit niet goed. De waarde in het veld wordt namelijk automatisch met 00:00 als tijd opgeslagen. Als je dus een vergelijking maakt met datumveld >= sysdate, gaat dit niet goed op de datum zelf, omdat de tijd mee wordt geteld.
 +
 +
Je kunt met trunc alleen de datum pakken, dus dit werkt wel: datumveld >= trunc(sysdate);
 +
 +
== INSERT .. ON DUPLICATE ==
 +
 +
Een variant gevonden voor de query syntax die je in mysql kunt gebruiken om een insert/update te doen. Het is wel een draak van een query, maar het werkt wel. Zou gebruikt kunnen worden tijdens import scripts, maar het nadeel is dat je nu geen extra checks kunt doen tussendoor. Dus vaak is eerst een SELECT toch handiger, zodat je kunt kijken of je echt wel MOET updaten.
 +
 +
Toch wil ik hem wel documenteren.
 +
 +
<source lang="sql">
 +
MERGE INTO Movie_Ratings M
 +
      USING (SELECT 1 AS mid, 3 AS aid, 8 AS rating FROM dual) N
 +
          ON (M.mid = N.mid AND M.aid = N.aid)
 +
      WHEN    MATCHED THEN UPDATE SET M.rating = N.rating
 +
      WHEN NOT MATCHED THEN INSERT(  mid,  aid,  rating)
 +
                            VALUES(N.mid, N.aid, N.rating);
 +
</source>
 +
 +
* Bron: [http://stackoverflow.com/questions/4589647/update-on-insert-duplicate-primary-key-in-oracle stackoverflow]
 +
 +
= mySQL =
 +
 +
== remove high ascii rows ==
 +
 +
Query to remove rows that have high ascii in a specific column. (Used to clean up core_url_rewrite Magento table).
 +
 +
<source lang="mysql">
 +
DELETE FROM core_url_rewrite WHERE NOT HEX(request_path) REGEXP '^([0-7][0-9A-F])*$';
 +
</source>
 +
 +
[http://stackoverflow.com/questions/401771/how-can-i-find-non-ascii-characters-in-mysql source]
 +
 +
== trigger ==
 +
 +
<source lang="sql">
 +
delimiter |
 +
DROP TRIGGER IF EXISTS after_insert_member|
 +
CREATE TRIGGER after_insert_member AFTER INSERT ON mVibesEMail.EmailPromotionQueue
 +
  FOR EACH ROW BEGIN
 +
    UPDATE mVibes.Member SET PromotionDateTime = NOW(), NumberOfPromotions = NumberOfPromotions+1 WHERE MemberId = NEW.MemberId;
 +
  END;
 +
|
 +
delimiter ;
 +
</source>
 +
 +
== table from large dump ==
 +
 +
To filter a table from a large dump:
 +
 +
<source lang="bash">
 +
sed -n -e '/CREATE TABLE.*mytable/,/CREATE TABLE/p' mysql.dump > mytable.dump
 +
</source>
 +
 +
* Source: [http://stackoverflow.com/questions/1013852/can-i-restore-a-single-table-from-a-full-mysql-mysqldump-file http://stackoverflow.com/questions/1013852/can-i-restore-a-single-table-from-a-full-mysql-mysqldump-file]
 +
 +
 +
== bitwise fields ==
 +
 +
Om meerdere flaggen in 1 veld op te slaan, kan het handig zijn met bitwise operations te werken. Een status veld moet dan bijv. waarde 1, 2, 4, 8, 16, 32, etc hebben. Je kunt dan twee vlaggen combineren door ze op te tellen, wil je vlag 1 en 8 dan heeft het veld dus waarde 9. Met de volgende queries kun je deze bits setten, unsetten, en queryen.
 +
 +
Bit setten:
 +
 +
<source lang="sql">UPDATE users SET permission = permission | 16</source>
 +
 +
But unsetten:
 +
 +
<source lang="sql">UPDATE users SET permission = permission & ~16</source>
 +
 +
Gebruikers queryen met bit 16:
 +
 +
<source lang="sql">SELECT users WHERE permission & 16 = 16</source>
 +
 +
Gebruikers queryen die geen bit 16 hebben:
 +
 +
<source lang="sql">SELECT users WHERE permission & 16 = 0</source>
 +
 +
Je kunt volgens mij ook gewoon checken of er twee bits geset zijn:
 +
 +
<source lang="sql">SELECT users WHERE permissions & 5 = 5</source>
 +
 +
Vijf is in bits 4+1 .. dus 5 komt hier uit, maar ook 7 (4+2+1) en ook 8+4+2+1 = 15.
  
 
= Linux =
 
= Linux =
  
* [[Linux_rsync|rsync]]: exclude examples
+
== rsync ==
 +
 
 +
* [[Linux_rsync|rsync]]: exclude examples, incremental backup script
 +
* [http://www.mikerubel.org/computers/rsync_snapshots/ http://www.mikerubel.org/computers/rsync_snapshots/]: how incremental backup can be done
  
 
== Passive FTP ==
 
== Passive FTP ==
Regel 190: Regel 329:
 
<source lang="bash">rsync -av --rsh='ssh -p2222' source destination</source>
 
<source lang="bash">rsync -av --rsh='ssh -p2222' source destination</source>
  
== SVN ==
 
 
Install SVN server on Debian (also describes creation of repository)
 
[http://www.howtoforge.com/debian_subversion_websvn http://www.howtoforge.com/debian_subversion_websvn]
 
 
When you get the error message "OPTIONS of 'http://172.16.255.14/cms': 200 OK (http://172.16.255.14)" this means that the path to the repository is incorrect. Check the /etc/apache2/mods-enabled/dav_svn.conf. Is the new repository added? Right path in the Location tag? Right path after SVNPath?
 
 
Als je de 64 bits client hebt geinstalleerd, moet je de 32 bits client ook doen, anders werkt de integratie met PhpEd niet. Zie [http://www.nusphere.com/kb/technicalfaq/tip_phped_and_svn.htm http://www.nusphere.com/kb/technicalfaq/tip_phped_and_svn.htm]
 
  
 
== Mail attachment command-line ==
 
== Mail attachment command-line ==
Regel 249: Regel 380:
  
 
'''Update:''' Na het rebooten van de machine, kon ik niet meer printen. Ik heb usblp in de blacklist gezet in /etc/modprobe.d/blacklist.conf. Dit moest volgens een artikel. Toen kon ik nog steeds niet printen. in /usr/local/src/foo2zjs toen de stappen make, getweb, etc gevolgd. Je hoort de printer dan na de make install aanspringen (cups wordt opnieuw gestart). Nu kan ik weer printen.
 
'''Update:''' Na het rebooten van de machine, kon ik niet meer printen. Ik heb usblp in de blacklist gezet in /etc/modprobe.d/blacklist.conf. Dit moest volgens een artikel. Toen kon ik nog steeds niet printen. in /usr/local/src/foo2zjs toen de stappen make, getweb, etc gevolgd. Je hoort de printer dan na de make install aanspringen (cups wordt opnieuw gestart). Nu kan ik weer printen.
 +
 +
=== Mac Client ===
 +
 +
Om op de mac (als client) te kunnen printen, moet je het volgende doen.
 +
 +
# Download en installeer de drivers vanaf deze pagina: [http://support.apple.com/kb/dl907 http://support.apple.com/kb/dl907] .. en ja, dat is idioot groot ja.
 +
# Installeer de printer nu, gewoon via apple, dus via System -> Printer toevoegen .. dan IP, IPP kiezen, en als URL invullen: 192.168.1.200:631/printers/HP_LaserJet_1020 .. In dit scherm moet je http:// dus weglaten. Je kunt dan de printer driver kiezen. Kies nu HP Laserjet 1022 (dus niet CP). Je kunt deze driver alleen via deze manier kiezen, niet via CUPS.
 +
# De printer is nu geinstalleerd, maar op de 1 of andere manier op een verkeerd adres. Via CUPS kun je nu de locatie van de printer aanpassen. De mac draait zelf ook gewoon CUPS. Dus je kunt naar [http://127.0.0.1:631 http://127.0.0.1:631] verbinden. De web interface staat in eerste instantie uit, maar er staat wat je moet doen om dit aan te zetten. Ga nu via de printers naar Modify Printer. Je ziet de locatie van de printer dan weer staan op ipp://192.168.1.200:631 ... de rest van het pad is weggevallen dus.
 +
# Pas het pad aan naar ipp://192.168.1.200:631/printers/HP_LaserJet_1020 .. als je dan door klikt, moet je ook weer de driver kiezen. Laat deze gewoon staan waar hij op staat.
 +
 +
Nu kun je als het goed is een test pagina afdrukken, via het normale printer config ding van Apple.
 +
 +
=== device descriptor read/8, error -110 ===
 +
 +
Deze error zag ik voorbij komen in de kern.log. Uiteindelijk op mijn mac aangesloten, deed hij het nog niet. Printer weer uitgezet, USB kabel nog eens uit en in gedaan in de printer (niet de pc dus), printer aan, en toen deed hij het weer. Hij werd herkend op de mac, en dus ook weer toen ik hem terug stopte in de debian computer.
 +
 +
== fail2ban ==
 +
 +
=== returned 200 ===
 +
 +
Out of the box werkt fail2ban prima op Debian. Toen ik de apache jail aanzette (alleen enablen) kreeg ik echter een fout:
 +
 +
<pre>
 +
2012-02-20 11:12:42,405 fail2ban.actions.action: ERROR  iptables -N fail2ban-apache
 +
iptables -A fail2ban-apache -j RETURN
 +
iptables -I INPUT -p tcp -m multiport --dports http,https -j fail2ban-apache returned 200
 +
</pre>
 +
 +
Dit bleek te komen omdat de jails te snel achter elkaar opgestart worden oid. Een sleep in de client biedt uitkomst. In /usr/bin/fail2ban-client een sleep toevoegen:
 +
 +
<source lang="python">
 +
        def __processCmd(self, cmd, showRet = True):
 +
                beautifier = Beautifier()
 +
                for c in cmd:
 +
                        time.sleep(0.1)
 +
                        beautifier.setInputCmd(c)
 +
                        try:
 +
 +
</source>
 +
 +
== Apache benchmark ==
 +
 +
<source lang="bash">
 +
ab -n 100 -c 10 http://bla.nl/test/
 +
</source>
 +
 +
== Nagios ==
 +
 +
Aangezien ik kleine nagios scriptjes steeds opnieuw lijkt te maken, sla ik ze nu even op hier.
 +
 +
* [[Linux_Nagios_Running_Proces|Running Proces]]: check if a proces is running
 +
* [[Linux_Nagios_Different_Port|Different port]]: Run NRPE services on a different port
 +
 +
== chmod directories ==
 +
 +
Even de directoties en files weer goed zetten qua rechten.
 +
 +
<source lang="bash">
 +
cd /home/www/marticle
 +
chown -R marticle:marticle *
 +
find . -type d -exec chmod 2771 '{}' \;
 +
find . -type f -exec chmod 0664 '{}' \;
 +
</source>
 +
 +
== positional parameters $* $@ ==
 +
 +
Bij het maken van een phpwrapper wilde ik alle parameters doorgeven aan php. Omdat er bestanden met spaties waren, ging dit niet goed. De oplossing was uiteindelijk als volgt:
 +
 +
<source lang="bash">
 +
/usr/bin/php "$@"
 +
</source>
 +
 +
De aanhalingstekens zijn belangrijk. De man pages leggen dit ook uit:
 +
 +
<source lang="bash">
 +
man -P "less -p 'Expands  to  the positional'" bash
 +
</source>
 +
 +
* Bron: [http://ubuntuforums.org/showthread.php?t=379668&p=2268911#post2268911 http://ubuntuforums.org/showthread.php?t=379668&p=2268911#post2268911]
 +
 +
== batch convert .bmp to .jpg ==
 +
 +
ImageMagick moet geinstalleerd zijn. Dan in de folder het volgende commando:
 +
 +
<source lang="bash">
 +
for i in *bmp; do convert "$i" "${i%.*}.jpg" ; done
 +
</source>
 +
 +
Een andere mogelijkheid is mogrify gebruiken, dat ook bij ImageMagick hoort:
 +
 +
<source lang="bash">
 +
mogrify -format jpg *.bmp
 +
</source>
 +
 +
== locale ==
 +
 +
Gezeik met locale, kan ook komen doordat je client zijn settings doorgeeft tijdens het connecten. Dit uitschakelen in de sshd op de server hielp.
 +
 +
Dus eerst kijken met commando locale wat de settings zijn. Dit is dan bijv: en_US.UTF-8. Die installeer je dan met sudo locale-gen en_US.UTF-8. Daarna dpkg-reconfigure locales. Dan is de meuk geinstalleerd. Dan in /etc/ssh/sshd_config de regel AcceptEnv LANG LC_* commenten.
 +
 +
* Bron: [http://askubuntu.com/questions/144235/locale-variables-have-no-effect-in-remote-shell-perl-warning-setting-locale-f http://askubuntu.com/questions/144235/locale-variables-have-no-effect-in-remote-shell-perl-warning-setting-locale-f]
 +
 +
== Samba / os x ==
 +
 +
Aanpassing die de snelheid wat dragelijker maakt:
 +
 +
<source lang="ini">
 +
# Most people will find that this option gives better performance.
 +
# See smb.conf(5) and /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/speed.html
 +
# for details
 +
# You may want to add the following on a Linux system:
 +
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=16384 SO_SNDBUF=16384
 +
</source>
 +
 +
Onder global heb ik nog staan, maar weet niet of dit uitmaakt:
 +
 +
<source lang="ini">
 +
# This will prevent nmbd to search for NetBIOS names through DNS.
 +
  dns proxy = no
 +
</source>
 +
 +
Met de buffers valt nog te spelen, volgens onderstaand artikel gaat 16 mb bijvoorbeeld beter:
 +
 +
* Bron: [http://www.linuxquestions.org/questions/linux-server-73/extremly-slow-samba-536370/page2.html http://www.linuxquestions.org/questions/linux-server-73/extremly-slow-samba-536370/page2.html]
 +
 +
== Madsonic ==
 +
 +
De .deb gewoon installeren. Heb je nog wel even java nodig. Om als jukebox te spelen, moet je de juiste soundcard setten. Dit staat [http://mygeekyhomeprojects.blogspot.nl/2012/03/subsonic-finishing-touches.html hier] omschreven.
 +
 +
=== Sorteren op filename ===
 +
 +
Dit staat gewoon bij Settings onder General.
 +
 +
 +
=== 5.1 final werkt niet ===
 +
 +
Op debian kwam dit door de verkeerde java versie. Die van Oracle moet uiteindelijk geinstalleerd worden. Ik heb uiteindelijk geprobeerd java er helemaal af te kieperen, en toen opnieuw java (oracle versie) te installeren.
 +
 +
[http://superuser.com/questions/608163/how-do-i-remove-java-in-debian http://superuser.com/questions/608163/how-do-i-remove-java-in-debian]
 +
[http://www.webupd8.org/2014/03/how-to-install-oracle-java-8-in-debian.html http://www.webupd8.org/2014/03/how-to-install-oracle-java-8-in-debian.html]
 +
 +
=== Equaliser in jukebox ===
 +
 +
Wel fijn om een equaliser te hebben als je hem als jukebox gebruikt, zoals op kantoor. Hier is een plugin voor. Wat ik miste is dat je in /etc/asound.conf de settings system-wide kan toevoegen. Manual staat hier:
 +
 +
[http://science-logbook.blogspot.co.uk/2013/08/system-sound-equalized-with-alsa-for.html http://science-logbook.blogspot.co.uk/2013/08/system-sound-equalized-with-alsa-for.html]
 +
 +
Op kantoor op dev als volgt voor elkaar gekregen... madsonic gebruikt de default soundcard:
 +
 +
/usr/share/madsonic/madsonic.sh, onderin ergens:
 +
 +
<source lang="bash">
 +
${JAVA} -Xms${MADSONIC_INIT_MEMORY}m -Xmx${MADSONIC_MAX_MEMORY}m \
 +
  -Dmadsonic.home=${MADSONIC_HOME} \
 +
  -Dmadsonic.host=${MADSONIC_HOST} \
 +
  -Dmadsonic.port=${MADSONIC_PORT} \
 +
  -Dmadsonic.httpsPort=${MADSONIC_HTTPS_PORT} \
 +
  -Dmadsonic.contextPath=${MADSONIC_CONTEXT_PATH} \
 +
  -Dmadsonic.defaultMusicFolder=${MADSONIC_DEFAULT_MUSIC_FOLDER} \
 +
  -Dmadsonic.defaultUploadFolder=${MADSONIC_DEFAULT_UPLOAD_FOLDER} \
 +
  -Dmadsonic.defaultPodcastFolder=${MADSONIC_DEFAULT_PODCAST_FOLDER} \
 +
  -Dmadsonic.defaultPlaylistImportFolder=${MADSONIC_DEFAULT_PLAYLIST_IMPORT_FOLDER} \
 +
  -Dmadsonic.defaultPlaylistExportFolder=${MADSONIC_DEFAULT_PLAYLIST_EXPORT_FOLDER} \
 +
  -Dmadsonic.defaultPlaylistBackupFolder=${MADSONIC_DEFAULT_PLAYLIST_BACKUP_FOLDER} \
 +
  -Duser.timezone=${MADSONIC_DEFAULT_TIMEZONE} \
 +
  -Djava.awt.headless=true \
 +
  -verbose:gc \
 +
  '-Djavax.sound.sampled.SourceDataLine=#AudioPCI [default]' \
 +
  -jar madsonic-booter.jar > ${LOG} 2>&1 &
 +
</source>
 +
 +
Alle .arounsrc in de home directories weggegooid. En dan in /etc/asound.conf:
 +
 +
<source lang="bash">
 +
ctl.equal {
 +
  type equal;
 +
}
 +
pcm.plugequal {
 +
  type equal;
 +
  # Modify the line below if you don't
 +
  # want to use sound card 0.
 +
  slave.pcm "plughw:0,0";
 +
  # or if you want to use with multiple applications output to dmix
 +
  # slave.pcm "plug:dmix"
 +
}
 +
# pcm.equal {
 +
  # Or if you want the equalizer to be your
 +
  # default soundcard uncomment the following
 +
  # line and comment the above line.
 +
pcm.!default {
 +
  type plug;
 +
  slave.pcm plugequal;
 +
}
 +
</source>
 +
 +
 +
Equaliser starten (als root):
 +
 +
alsamixer -D equal
 +
 +
Effect is tijdens het spelen hoorbaar, maar duurt wel eventjes..
 +
 +
== Grotere HDD naar kleinere SSD copyeren ==
 +
 +
Voor in de HP2140 had ik een kleinere SSD gekocht. De harddisk die erin zat was lang niet vol, dus zou ik alles makkelijk moeten kunnen copyeren. CloneZille geprobeerd, maar dat was waardeloos. Ik had de oude harddisk via de hdd docking met USB aangesloten. De nieuwe schijf zat al in de laptop. Uiteindelijk wat dit de methode:
 +
 +
# Met gparted de grote ext4 partitie resizen, zodat dit ruim binnen de SSD valt. Opschalen is daarna weer heel makkelijk, dus een paar GB minder is heus niet erg.
 +
# Met ddrescue de boel copyeren: ddrescue /dev/sdb /dev/sda --force .. Dit copyeert echter wel de partition table (dit had ik niet verwacht). Uitgevoerd vanaf de gparted live cd, hier staat ddrescue ook op.
 +
# Dan na rebooten en checken of alles werkt weer met gparted de nieuwe disk bekeken. Kreeg nu de foutmelding ''can't have a partition outside disk'' .. Dit komt omdat de partition table dus over genomen is, inclusief de unpartitioned space. Bleek dat mijn swap partitie helemaal aan het eind van de disk stond. Er zat nu dus een gat in. Uiteindelijk deze swap partitie weggehaald, en toen werd de juiste grootte keurig getoond en waren deze foutmeldingen weg. Opnieuw een swap partitie aangemaakt, en deze in fstab gezet. Klaar!
 +
 +
Bronnen:
 +
 +
* [http://gparted.org/livecd.php http://gparted.org/livecd.php]: Gparted live cd. Hier staat ook ddrescue op. Perfect!
 +
* [http://askubuntu.com/questions/180730/how-do-i-restore-a-swap-partition-i-accidentally-deleted http://askubuntu.com/questions/180730/how-do-i-restore-a-swap-partition-i-accidentally-deleted]: Swap partitie herstellen, inclusief toevoegen in fstab met UUID.
 +
 +
= Mac OS X =
 +
 +
== Thunderbird ==
 +
 +
Aanpassen van de font grootte gaat ook in CSS. De locatie was echter even zoeken. Dit blijkt te zitten in ~/Library/Thunderbird/Profiles/[yourProfileName]/chrome/userChrome.css. Mocht deze map of dit bestand niet bestaan, dan moet je dit aanmaken. Vervolgens kun je in de CSS de volgende code opnemen om de font-size wat te vergroten.
 +
 +
<source lang="css">
 +
/* Global UI font */
 +
* {
 +
  font-size: 10pt !important;
 +
}
 +
</source>
 +
 +
* Bron: [http://superuser.com/questions/175135/how-to-change-the-font-size-of-thunderbird-thread-list-on-a-mac http://superuser.com/questions/175135/how-to-change-the-font-size-of-thunderbird-thread-list-on-a-mac]
 +
 +
== Shortcut (maximize) ==
 +
 +
Je kunt zelf een shortcut toevoegen, zodat je bijvoorbeeld Maximize aan een toets kunt hangen. Je moet daarvoor naar System Preferences -> Keyboard -> Keyboard Shortcuts. En bij "All Applications", het plusje gebruiken om een nieuwe shortcut te maken. Je moet dan de naam van de functie weten, dus gewoon Zoom in typen. Je kunt er daarna een toets aan hangen (ik heb control+command+m).
 +
 +
* Bron: [http://scratching.psybermonkey.net/2011/01/osx-how-to-maximize-window-using.html http://scratching.psybermonkey.net/2011/01/osx-how-to-maximize-window-using.html]
 +
 +
== Toetsen omdraaien ==
 +
 +
Op mijn Logitech K750 mac zat de tilde op een onlogische plaats, namelijk naast de z toets. Terwijl deze toets op de mac zelf gewoon links bovenin zit, net als op de meeste PC toetsenborden. Met de tool Karabiner kun je allerlei toetsen remappen.
 +
 +
Out of the box werden de toetsen echter in alle gevallen geremapped, dus ook voor mijn macbook, terwijl ik dit hier juist niet wilde. Gelukkig kun je zelf een XLM definieren, waarbij je de mapping aan een specifiek device kunt hangen. Dit staat ook keurig uitgelegd op de website. Voor de historie, bij deze de xml die ik gebrouwen heb en werkt:
 +
 +
<source lang="xml">
 +
<?xml version="1.0"?>
 +
<root>
 +
  <devicevendordef>
 +
    <vendorname>LOGITECH</vendorname>
 +
    <vendorid>0x046d</vendorid>
 +
  </devicevendordef>
 +
 +
  <deviceproductdef>
 +
    <productname>LOGITECH_K750_KEYBOARD</productname>
 +
    <productid>0x4012</productid>
 +
  </deviceproductdef>
 +
 
 +
  <item>
 +
    <name>Swap the Tilda(~) key with Section (§) (logitech k750)</name>
 +
    <identifier>private.logitech_k750_tilda_section</identifier>
 +
    <device_only>DeviceVendor::LOGITECH, DeviceProduct::LOGITECH_K750_KEYBOARD</device_only>
 +
    <autogen>__KeyToKey__ KeyCode::BACKQUOTE,  KeyCode::UK_SECTION</autogen>
 +
    <autogen>__KeyToKey__ KeyCode::UK_SECTION, KeyCode::BACKQUOTE</autogen>
 +
  </item>
 +
</root>
 +
</source>
 +
 +
Je kunt de vedor definition en product definition opzoeken, dit staat omschreven. Aangezien ik een muis en toetsenbord heb aangesloten via de unifying receiver, heb ik nu gegokt dat het eerste device mijn keyboard zou zijn. Wellicht dat dit productID dus niet uniek is voor het apparaat, maar dat het een ID is voor het apparaat op de unifying. Mocht ik het ooit opnieuw moeten doen, dan zou hier dus een foutje in kunnen zitten. De vendor tag is wel per producent vast, dus Logitech heeft altijd 0x046d.
 +
 +
Na de update naar El Capitan werkte Karabiner niet meer. Ik deed een uninstall van LCC (Logitech Control Centre), en daarna wilde ik het weer installeren; bleek de versie die ik had niet meer geschikt te zijn voor deze os x versie. Dus een nieuwe gedownload bij logitech, die geinstalleerd, en toen werd mijn toetsenbord weer herkend als zijnde een Logitech K750. Anders kun je de specifieke instellingen voor dit device niet doen, en verandert ook de tilde knop op het toetsenbord van de macbook zelf.
 +
 +
* [https://pqrs.org/osx/karabiner/ Karabiner]
 +
* [http://pqrs.org/macosx/keyremap4macbook/xml-devicedef.html.en private.xml device specific]: Hoe je dus een custom config maakt die aan je device gekoppeld is
 +
 +
== SmoothMouse ==
 +
 +
Om de muis als windows te laten accelereren: [http://smoothmouse.com/ SmoothMouse]
 +
 +
== Bootable usb stick ==
 +
 +
Schrijven van een bootable (linux) usb stick.
 +
 +
# hdiutil convert -format UDRW -o ~/path/to/target.img ~/path/to/ubuntu.iso
 +
# met diskutil list kijken welke device het is, meestal /dev/disk2
 +
# diskutil unmountDisk /dev/diskN
 +
# sudo dd if=/path/to/downloaded.img of=/dev/rdiskN bs=1m
 +
# diskutil eject /dev/diskN
 +
 +
Bron: [http://www.ubuntu.com/download/desktop/create-a-usb-stick-on-mac-osx http://www.ubuntu.com/download/desktop/create-a-usb-stick-on-mac-osx]
 +
 +
== NTFS mounten met schrijfrechten ==
 +
 +
Als je een externe harddisk inplugt met NTFS dan is deze read-only. Dit kan makkelijk aangepast worden in fstab. Dit heb ik toegevoegd:
 +
 +
<pre>
 +
roland@Rolands-MacBook-Pro-3 RLNDW $ cat /etc/fstab
 +
LABEL=RLNDW none ntfs rw,auto,nobrowse
 +
</pre>
 +
 +
De fstab bestond niet. Na het aanpassen de schijf unmounten en mounten, en dan is hij in elk geval via de shell te bereiken.
 +
 +
* [https://prateekvjoshi.com/2013/04/21/ntfs-write-support-on-os-x-mountain-lion https://prateekvjoshi.com/2013/04/21/ntfs-write-support-on-os-x-mountain-lion]
 +
 +
= Windows 7 =
 +
 +
== USB disk ==
 +
 +
Legale windows versie downloaden, en dan met een Microsoft tooltje de ISO op USB flash drive zetten.
 +
 +
* [http://www.w7forums.com/official-windows-7-sp1-iso-image-downloads-t12325.html http://www.w7forums.com/official-windows-7-sp1-iso-image-downloads-t12325.html]: ISO's downloaden
 +
* [http://sevenbits.nl/howto/installeren_van_usb_stick.html http://sevenbits.nl/howto/installeren_van_usb_stick.html]: USB tool (bij mickeysoft istie foetsie?)
 +
 +
=== Bootable problemen ===
 +
 +
Aangezien er veel combinaties zijn die te proberen vallen. Uiteindelijk blijkt dat je de laptop die windows 8 heeft in "legacy mode" moet zetten. UEFI moet dus uitstaan. Als ik op linux de USB stick wil maken, kan ik het beste met gparted de stick op NTFS formatteren, en de bootable flag zetten. Met ms-sys kun je een windows 7 MBR wegschrijven. Dit blijkt uiteindelijk dan na veel proberen te werken. Dit gaat overigens niet met alle USB sticks goed. Met een Sandisk Cruzer ging het uiteindelijk wel.
 +
 +
* [http://superuser.com/questions/491981/making-a-bootable-windows-7-installation-flashdrive-from-fedora http://superuser.com/questions/491981/making-a-bootable-windows-7-installation-flashdrive-from-fedora]: bootable USB maken vanaf linux
 +
 +
== Partitie maken ==
 +
 +
Bij het installeren op de HP laptop van ma, kon ik Windows niet installeren, omdat de partitie niet geschikt was. Geen GPT partitie, ofzoiets. Blijkt dat je dit via DOS kunt opschonen:
 +
 +
# Druk op shift+f10
 +
# Typ "diskpart" en druk op enter
 +
# Typ "list disk" en druk op enter.
 +
# Typ "select disk x" De x moet worden vervangen door het nummer van de schijf die je wilt fixen
 +
# Typ "clean" en druk op enter
 +
# Typ "exit" en druk op enter
 +
# sluit het venster
 +
# klik op refresh
 +
 +
* [http://pchelpforum.nl/viewthread.php?tid=55234 http://pchelpforum.nl/viewthread.php?tid=55234]: Bron :-)
 +
 +
== HP support assistant ==
 +
 +
Er is gewoon een HP support assistant die ervoor zou moeten zorgen dat je alle drivers hebt.
 +
 +
* [http://www8.hp.com/nl/nl/campaign/hpsupportassistant/hpsupport.html http://www8.hp.com/nl/nl/campaign/hpsupportassistant/hpsupport.html]
 +
 +
== nVidia drivers voor Dell Latitude d820 ==
 +
 +
Die installeren dus mooi niet. Gelukkig is er een site die e.e.a. getweakt heeft waardoor de drivers wel installeren. Beetje vaag allemaal, maar blijkt wel te werken. Daardoor kun je weer op 1680x1050 draaien. De truuc is als volgt:
 +
 +
# Ga naar [http://www.laptopvideo2go.com/drivers?dev=&sub=&whql=0&lang=0&orderby=version&dir=desc&os=&os%5B%5D=win7x64 laptopvideo2go.com], dan naar drivers, en filter op je OS.
 +
# Klik door de linkjes door, zodat je uiteindelijk de requested driver kunt downloaden. Op dezelfde pagina staat een linkje om de modified INF file te downloaden.
 +
# Als je de driver .exe uitvoert, gaat hij extracten. Bij mij (versie 305.53) stond dan in het submapje Display.Driver de nv_disp.inf file. Deze moet je dus vervangen met de modified INF file.
 +
# Nu gewoon de setup uitvoeren, en alle waarschuwingen van Windows dat er niet gesigned is, negeren uiteraard.
 +
 +
Rebooten en klaar is kees.
 +
 +
= Hardware =
 +
 +
== VLAN's ==
 +
 +
Eindelijk na lang zoeken en trial on error denk ik nu het principe te begrijpen. Met name het verschil tussen taggen en untaggen. In feite kun je een poort op twee manieren member maken van een VLAN: tagged en untagged. Als je hem op tagged zet, ga je er vanuit dat de switch pakketje ontvangt die al gemarkeerd zijn. Als je hem op untagged zet, ga je er vanuit dat de tcp/ip paketten die niet getagged zijn, tot dit VLAN behoren. Feitelijk kun je dus nooit 1 poort in twee vlan's op untagged zetten. Dit onderscheid kan de router nooit maken.
 +
 +
In de praktijk, waarbij we telefoons en pc's via dezelfde switch poort aansluiten, maar de telefoon een VLAN ID 100 laten meesturen, moeten we dus die poorten van VLAN 100 op tagged zetten.
 +
 +
Ook uplink poorten zou je op tagged moeten zetten. Anders wordt dat verkeer niet door gelaten.
 +
 +
''I would just like to add these simple rules: Switch to switch links are typically tagged, with the links members of all vlans that will cross the link. Switch to device links are typically untagged, with the switch ports PVID set to the desired vlan. There is an exception to the rule when a phone is connected between the switch and the computer. These rules apply to standard ports as well as LAG/LACP port groups.''
 +
 +
Met de PVID wordt de VLAN dus geset voor die untagged ports. Switches die niet managed zijn trekken zich hier niks van aan denk ik, en laten alles gewoon door, blijven van die VLAN tag af. Managed switches luisteren hier echter wel naar, en scheiden aan de hand van die vlan's. Het is dus wel zaak dat het default vlan waar de pc's op terecht komen, matched met die in de router. Hier zou ik meer mee moeten testen, maar dat komt wel als het nodig is ;-)
 +
 +
Deze discussie heeft me daarbij geholpen: [http://community.spiceworks.com/topic/245757-tag-untag-ports-on-hp-switches http://community.spiceworks.com/topic/245757-tag-untag-ports-on-hp-switches]
  
 
= Software =
 
= Software =
Regel 263: Regel 757:
 
* [http://www.erightsoft.com/SUPER.html eRightSoft SUPER]: Converteren van allerlei formaten, GUI voor encoders (hier lukt het niet erg mee)
 
* [http://www.erightsoft.com/SUPER.html eRightSoft SUPER]: Converteren van allerlei formaten, GUI voor encoders (hier lukt het niet erg mee)
 
* [http://sourceforge.net/projects/iconvert iConvert]: Encode to flv (prima!)
 
* [http://sourceforge.net/projects/iconvert iConvert]: Encode to flv (prima!)
 +
* [http://winff.org/html_new WinFF]: ffmpeg gui voor wintendo
 +
* [http://code.google.com/p/flvmeta FLVmeta]: flvmeta om meta data in te voegen
 +
* [http://handbrake.fr Handbrake]
 +
 +
==== FLV filmpjes op de site ====
 +
 +
Aangezien het telkens weer zoeken hier, hier een kort stappenplan hoe je een filmpje online krijgt. Als voorbeeld een filmpje van mijn blackberry, die gelukkig mp4 filmpjes produceert. Helaas gaat er altijd wat kwaliteit verloren bij het converteren naar flv. Dit is echter wel het beste formaat, omdat het filmpje dan veel kleiner is, en omdat het streamen beter werkt.
 +
 +
Het makkelijkst gaat dit met WinFF. Ik heb een eigen profieltje aangemaakt, waarbij ik de resolutie heb opgehoogd naar 640x480, de bitrate, en ook de sample rate naar 44100. Hopelijk geeft dit wat meer kwaliteit.
 +
 +
In WinFF kun je naar bewerken -> voorkeursinstellingen en daar onder Websites kun je dingen de velden aanpassen. Ik heb een Rolandow instelling gemaakt op basis van de fullscreen instelling. Je moet "invoeren" drukken om de instellingen op te slaan (beetje gek). De commandline die ik nu heb is:
 +
 +
<pre>
 +
-vcodec flv -f flv -r 29.97 -vf scale=640:480 -aspect 4:3 -b:v 700k -g 160 -cmp dct  -subcmp dct  -mbd 2 -flags +aic+cbp+mv0+mv4 -trellis 1 -ac 1 -ar 44100 -b:a 56k
 +
</pre>
 +
 +
Vervolgens moet je met het flvmeta commando meta data toevoegen aan je flash film. Dit is om ervoor te zorgen dat hij kan streamen (?). Je moet het programma downloaden. Het makkelijkst is om hem dan in c:\windows te zetten zodat je hem overal aan kunt roepen. Dan commandline gewoon:
 +
 +
<pre>
 +
flvmeta tom_klimt.flv tom_klimt_stream.flv
 +
</pre>
 +
 +
Hij maakt dan een nieuw filmpje aan .. deze weer even renamen oid en die dan gebruiken.
 +
 +
Update: nog een beetje zitten klooien, command line werkt dit erg goed:
 +
 +
<pre>
 +
ffmpeg -i tom.mp4 -ar 22050 -f flv -qmax 2 tom_q2_no_scale.flv
 +
</pre>
 +
 +
Door de qmax parameter blijft de kwaliteit erg hoog. Dit blijkt toch een beetje TE hoog te zijn om goed te kunnen streamen. Een qmax van 4 geeft een goede kwaliteit, maar toch een kleiner bestand. Hier valt mee te spelen dus :-)
 +
 +
Je kunt de video ook meteen draaien:
 +
 +
<pre>
 +
ffmpeg -i 20140218_siep_lacht.mp4 -vf "transpose=1" -ar 22050 -f flv -qmax 2 20140218_siep_lacht.flv
 +
</pre>
 +
 +
* 0 = 90CounterCLockwise and Vertical Flip (default)
 +
* 1 = 90Clockwise
 +
* 2 = 90CounterClockwise
 +
* 3 = 90Clockwise and Vertical Flip
 +
 +
Zowel ffmpeg als flvmeta zijn op de max geinstalleerd. FFMPEG kan via brew geinstalleerd worden. [http://www.flvmeta.com Flvmeta] kreeg ik niet via de github versie aan de praat, maar wel via de download (en dan zelf compileren met ./configure, make, make install).
  
 
=== CD/DVD branden ===
 
=== CD/DVD branden ===
  
[http://infrarecorder.org InfraRecord]: Simpel gratis programma, doet wat het moet doen.
+
* [http://infrarecorder.org InfraRecorder]: Simpel gratis programma, doet wat het moet doen.
 +
* [http://www.imgburn.com ImgBurn]: Eveneens simple gratis programma. [http://forum.imgburn.com/index.php?showtopic=5555 Audio CD met ImgBurn] staat hier. Je moet eerst een CUE file maken, maar je kan dan wel zonder pauze opnemen. Dus beter voor live cd's. Bij Infrarecorder kun je de pregap ook uitschakelen, weet niet of dit goed werkt.
  
 
=== Virtueel CD/DVD station ===
 
=== Virtueel CD/DVD station ===
Regel 285: Regel 824:
  
 
[http://www.webdavsystem.com/server/documentation/authentication/basic_auth_vista http://www.webdavsystem.com/server/documentation/authentication/basic_auth_vista]
 
[http://www.webdavsystem.com/server/documentation/authentication/basic_auth_vista http://www.webdavsystem.com/server/documentation/authentication/basic_auth_vista]
 +
 +
=== Flowcharts ===
 +
 +
Voor het tekenen van flowcharts.
 +
 +
* [http://www.yworks.com/en/products_yed_about.html yEd]: open source ding speciaal voor flowcharts. Eventueel de manual even lezen, het is even wennen.
 +
* Open Office: Draw is een soort visio.
 +
 +
=== Naar DVD converteren ===
 +
 +
* [http://sourceforge.net/projects/avstodvd/ AVStoDVD] Net zoiets als onderstaand, maar kon de framerate van een .ts niet ontdekken. Freemake programma gaf keurig 50 aan als framerate.
 +
* [http://www.freemake.com/free_video_converter FreeMake free video converter] Converteren vanaf allerlei formaten naar een DVD schijfje. Gebruikt om een .TS (opname van een hd recorder van humax) naar DVD om te zetten. '''Let op:''' heeft wel adware trekjes, WinPatrol meldt dat er een proces gestart wil worden, en als je dit niet toelaat, crasht het programma.
 +
 +
=== Cipher: wipe files ===
 +
 +
Windows 7 heeft een ingebouwde wipe tool die veilig informatie kan verwijderen.
 +
 +
<pre>
 +
cipher /w:x:\folder
 +
</pre>
 +
 +
Hiermee haal je x:\folder leeg.
 +
 +
* [http://www.ghacks.net/2010/06/21/wipe-yopur-drives-securely-with-a-hidden-windows-7-tool/ bron]
  
 
== Linux ==
 
== Linux ==
Regel 380: Regel 943:
  
 
Bron: [http://blogs.msdn.com/b/outlook/archive/2008/07/11/how-do-i-back-up-my-signatures.aspx http://blogs.msdn.com/b/outlook/archive/2008/07/11/how-do-i-back-up-my-signatures.aspx]
 
Bron: [http://blogs.msdn.com/b/outlook/archive/2008/07/11/how-do-i-back-up-my-signatures.aspx http://blogs.msdn.com/b/outlook/archive/2008/07/11/how-do-i-back-up-my-signatures.aspx]
 +
 +
== Video ==
 +
 +
Transcoder:
 +
 +
* [http://handbrake.fr Handbrake]
  
 
= RegExp (textpad) =
 
= RegExp (textpad) =
Regel 421: Regel 990:
  
 
[http://blog.wangling.me/2009/07/meta-backup-dreamhost-on-dreamhost-backups http://blog.wangling.me/2009/07/meta-backup-dreamhost-on-dreamhost-backups]
 
[http://blog.wangling.me/2009/07/meta-backup-dreamhost-on-dreamhost-backups http://blog.wangling.me/2009/07/meta-backup-dreamhost-on-dreamhost-backups]
 +
 +
= TransIP =
 +
 +
== Plesk 11 ==
 +
 +
=== wordpress ===
 +
 +
Bij een VPS met Plesk 11.0.9 was het niet mogelijk om plugins te zoeken binnen Wordpress. Dit bleek aan een instelling te liggen op het VPS. Komt waarschijnlijk door nginx. Het volgende als root uivoeren hielp:
 +
 +
<source lang="bash">
 +
setsebool -P httpd_can_network_connect 1
 +
</source>
 +
 +
Bronnen:
 +
 +
* [https://forum.transip.nl/post/prm/442#442 https://forum.transip.nl/post/prm/442#442]
 +
* [http://stackoverflow.com/questions/8765848/troubleshooting-permission-denied-when-attempting-to-connect-to-redis-from-php http://stackoverflow.com/questions/8765848/troubleshooting-permission-denied-when-attempting-to-connect-to-redis-from-php]
  
 
= Encoding =
 
= Encoding =
Regel 433: Regel 1.019:
  
 
[[Magento]]: Magento aanpassingen. Compare products verwijderen.
 
[[Magento]]: Magento aanpassingen. Compare products verwijderen.
 
= Git =
 
 
[[Git]]: Versie beheer met git. Hoe de stumpelnl remote git is opgezet.
 
  
 
= Rescue disk =
 
= Rescue disk =
Regel 456: Regel 1.038:
  
 
[https://market.android.com/details?id=com.kebab.Llama&hl=en Llama]: Toffe app om automatisch je profiel te laten switchen aan de hand van tijd en locatie.
 
[https://market.android.com/details?id=com.kebab.Llama&hl=en Llama]: Toffe app om automatisch je profiel te laten switchen aan de hand van tijd en locatie.
 +
 +
== Default ringtone picker ==
 +
 +
Na installatie van EZ File Explorer kon ik in bijv. gemail niet meer met de default applicatie mijn ringtone kiezen. In plaats daarvan kwam ik in een file browser terecht, en dan mis je behoorlijk wat ringtones. Dit blijkt op te losset te zijn door bij de app instellingen 'clear defaults' te kiezen. In mijn geval moest ik dit voor Media storage (media opslag) doen, maar heb het ook voor gmail, file explorer en android system gedaan. Uiteindelijk heeft het gewerkt, en kon ik met Media opslag mijn ringtone kiezen. Dan krijg je ook een lijstje terug met de default ringtones.
 +
 +
[http://android.stackexchange.com/questions/19112/reset-ringtone-picker-preferences http://android.stackexchange.com/questions/19112/reset-ringtone-picker-preferences]
 +
 +
= Blackberry =
 +
 +
== LogicMail ==
 +
 +
Goede app om e-mail accounts te gebruiken die je niet altijd actief hoeft te hebben. Je hebt dan dus geen push mail, maar je start de email client op wanneer je het nodig hebt. De app heet [http://www.logicmail.org LogicMail]. Het was even zoeken wat je als SMTP server kunt gebruiken, dit blijkt als volgt te zijn.
 +
 +
{|
 +
|Server
 +
|authsmtp.vodafone.nl
 +
|-
 +
|User
 +
|mail06xxxxxxxx (xxx = telnr)
 +
|-
 +
|Password
 +
|Zelfde als op [https://my.vodafone.nl My Vodafone]
 +
|}
 +
 +
'''LET OP:''' Je moet SSL selecteren als verbindings methode. Als je TLS doet gaan de mailtjes er niet uit!
 +
 +
= Asterisk / VOIP =
 +
 +
== Experia box ==
 +
 +
Locatie's met een Experia box gaven problemen bij Stumpel. Uiteindelijk was de oplossing eenvoudig. De telefoon rechtstreeks aan de experia box geven en een publiek IP geven. Dat laatste is wellicht niet eens nodig. Maar achter de netgear hangen (die een publiek IP heeft) werkt kennelijk niet. Port forwarding verder uitgeschakeld.
 +
 +
In eerste instantie leek het ook te helpen om de UDP poorten via "Applicatie delen" o.i.d. door te sturen naar de netgear router. Bij de Huesmolen werkte dit uiteindelijk niet zo goed.
 +
 +
== tcpdump ==
 +
 +
Een dump maken om uit te lezen met wireshark oid:
 +
 +
<source lang="bash">
 +
tcpdump -nniany -vvs0 -w huesman2.pcap not port 22
 +
</source>
 +
 +
== nat / canreinvite / directmedia ==
 +
 +
Eindelijk snap ik de nat optie een beetje. Het gaat hierbij niet om de asterisk server die wel of niet achter nat zit, maar of de binnenkomende gesprekken van die SIP achter nat zit. Voor telefoons die dus, samen met Asterisk, op het lokale netwerk zitten, kun je NAT=no doen. Er is immers geen NAT tussen Asterisk en de telefoons.
 +
 +
Over het algemeen is het vrij safe om NAT=yes te gebruiken.
 +
 +
Canreinvite is in 1.8 vervangen door directmedia. Als je asterisk achter NAT hebt, is directmedia haast onmogelijk, dus het is best om die gewoon op NO te zetten (of nonat, als je lokaal wel een directe stream zou willen).
 +
 +
== externhost ==
 +
 +
Bij de general config kun je met externaddr je externe IP opgeven. Dit is, samen met localnet, nodig zodat Asterisk goed het onderscheid kan maken tussen lokaal en extern, en het juiste IP in de headers kan stoppen. Wat ik niet wist is dat er ook een externhost optie is. Je kunt hier een hostname opgeven. Met externrefresh kun je de interval opgeven waarmee hij moet checken wat het IP van die host is. Op deze manier kun je asterisk dus veilig achter NAT zetten (met failover).
 +
 +
== No application 'SendDTMF' for extension (incoming, 31201234567, 13) ==
 +
 +
Lekker dom, maar in /etc/asterisk/modules.conf staat een noload. Dan wordt de applicatie natuurlijk niet geladen.
 +
 +
== Ringtone ==
 +
 +
Een ringtone kun je als volgt converteren. Dit heb ik getest op een Yealink T42S. De ringtone mag hier niet groter dan 100 kb zijn.
 +
 +
<source lang="bash">
 +
sox infile.wav -r 8000 -c 1 -e u-law outfile.wav
 +
</source>
 +
 +
 +
== Music on hold ==
 +
 +
=== mp3 converteren ===
 +
 +
Op http://www.jamendo.com staat een hoop leuke, goede muziek dat rechtenvrij is. Eenmaal gedownload als MP3, moeten de nummers geconverteerd worden naar wav en alaw. Dit heb ik gedaan door in /home/roland/moh alle mp3's neer te zetten. Dan kun je het volgende commando runnen:
 +
 +
<source lang="bash">
 +
IFS=$'\n' ; for f in `ls -1 *.mp3` ; do FILE=$(basename "$f" .mp3) ; ffmpeg -i "$FILE.mp3" -ar 8000 -ac 1 -ab 64 "$FILE.wav" -ar 8000 -ac 1 -ab 64 -f alaw "$FILE.alaw" -map 0:0 -map 0:0 ; done
 +
</source>
 +
 +
Dan alle .wav en .alaw bestanden moven naar /var/lib/asterisk/moh ..
 +
 +
Dan de music on hold module herstarten met:
 +
 +
asterisk -rx "module unload res_musiconhold.so"; asterisk -rx "module load res_musiconhold.so";
 +
 +
=== radio ===
 +
 +
Met de mpg123 player kun je radio streamen. Echter de versie in het packaging system van Ubuntu werkt niet, gek genoeg. Maar een versie handmatig compileren werkt wel.
 +
 +
[http://mpg123.orgis.org/download/mpg123-0.60.tar.gz http://mpg123.orgis.org/download/mpg123-0.60.tar.gz] deze gewoon met ./configure, make en make install installeren ergens.
 +
 +
Let op: ik heb ook versie 1.15 ofzo geprobeerd, maar hiervan gaat Asterisk onderuit. Dus echt deze versie gebruiken!
 +
 +
<source lang="ini">
 +
[radio]
 +
mode=custom
 +
application=/usr/local/bin/mpg123 -q -s --mono -r 8000 -f 4096 -b 0 http://icecast.omroep.nl/3fm-sb-mp3
 +
</source>
 +
 +
Met de -f parameter kan het volume aangepast worden.
 +
 +
* [http://forums.asterisk.org/viewtopic.php?t=81088 http://forums.asterisk.org/viewtopic.php?t=81088]: VLC om (udp) stream te gebruiken
 +
 +
== ODBC / mysql ==
 +
 +
Bij het overzetten naar een andere server, kreeg ik mijn mysql functies niet aan de praat. Blijkt te liggen aan het volgende.
 +
 +
Voordat asterisk geinstalleerd moet worden, moet libmysqlclient-dev package ook geinstalleerd worden. Hierdoor kun je mysql support compilen in asterisk. Vervolgens moet ook een unixODBC client geinstalleerd en geconfigureerd worden. Dit staat op de volgende pagina beschreven.
 +
 +
* [http://asteriskdocs.org/en/3rd_Edition/asterisk-book-html-chunk/installing_configuring_odbc.html http://asteriskdocs.org/en/3rd_Edition/asterisk-book-html-chunk/installing_configuring_odbc.html]
 +
 +
= Raspberry Pi =
 +
 +
== Firmware update ==
 +
 +
* Firmware up en downgraden met [[rpi-update]]
 +
 +
== Screensaver ==
 +
 +
Uitzetten voor de shell, in /etc/rc.local toevoegen:
 +
 +
<source lang="bash">
 +
#screensave uitzetten
 +
/usr/bin/setterm -blank 0 -powersave off -powerdown 0
 +
</source>
 +
 +
* [http://raspberrypi.stackexchange.com/questions/752/how-do-i-prevent-the-screen-from-going-blank stackxchange]: Screensaver uitzetten in X
 +
 +
= Internet services =
 +
 +
== Dynamic hostname ==
 +
 +
* [http://www.no-ip.com no-ip.com]: Gratis, met update client.
 +
 +
=== Namecheap dynamic DNS ===
 +
 +
Namecheap heeft een dynamic DNS service. Je kunt deze ook met ddclient onder linux updaten. Als je dynamic dns activeert, krijg je van namecheap een password (een key). De instellingen in /etc/ddclient.conf zijn dan als volgt:
 +
 +
<pre>
 +
protocol=namecheap
 +
use=web, web=checkip.dyndns.com/, web-skip='IP Address'
 +
server=dynamicdns.park-your-domain.com
 +
login=rolandow.net
 +
password='key'
 +
home
 +
</pre>
 +
 +
Aan het eind zet je de hostname die geupdate moet worden. Dit moet dus alleen de host zijn, zonder het domein.
 +
 +
Met dd-wrt kun je ook namcheap updaten. Dit heb ik gedaan en werkt prima.
 +
 +
* [http://www.dd-wrt.com/wiki/index.php/Dynamic_DNS#NameCheap dd-wrt wiki]: Namecheap dyn dns updaten met dd-wrt.
 +
 +
= Apple =
 +
 +
== Waarom geen Linux op een Apple ==
 +
 +
Je kunt Linux niet native op Apple installeren. Dit komt omdat de Apple geen SMBus heeft, maar een SMC. Dit is een onderdeel die ervoor zorgt dat het voltage omlaag wordt gebracht als de CPU het te zwaar krijgt. Bij de Apple wordt hiervoor een SMC gebruikt, die alleen goed kan worden aangestuurd door OSX. Apple beschermt de SMC, dus ze geven dit niet vrij zeg maar. Omdat normale pc's een SMBus gebruiken die zit zelf regelen, levert dit geen problemen op. De SMBus ziet zelf wanneer de cpu te warm wordt, en regelt dan het voltage.
 +
 +
Je kunt Linux dus alleen draaien in VMWare. Windows wordt om die reden gedraaid in Boot Camp.
 +
 +
Bron: #apple op irc.freenode.net
 +
 +
= YuanDao N90s =
 +
 +
Firmware updaten ging lasting. Bottom line is dat je de drivers moet installeren, te downloaden op rockchipfirmware.com en rockchip.nl. De drivers updaten lijkt eerst niet te werken door een code 10. Je moet het tablet dan zelf opnieuw starten.
 +
 +
Zonder kabels erin, volume + en power button komt in een soort recovery mode. Windows herkent het tablet dan niet goed. Schakel hem helemaal uit, dan weer zonder kabels, en dan volume + en power, en een seconde later de USB kabel erin. Dit doe je na het installeren van de drivers. Het tablet blijft dan zwart, en windows herkend het apparaat (gedaan op W7 64 bit). Nu kun je gewoon flashen.
 +
 +
# Put the tablet into stock recovery mode (the the page with the android bonnet open) and then connect with usb.
 +
# In windows device manager it will say N90 and it won't be able to automatically find a driver, this is fine. Right click on N90 and go to 'Update driver software', then click 'Browse my computer for driver software', then click 'Let me pick from a list of device drivers on my computer'.
 +
# Then, once the list shows up, select the very top option 'Any Device', and click 'Have Disk'. Then browse to the rockusb driver folder, select your correct operating system and either x86 or x64 depending on your computer, and find the correct 'rockusb' file to select.
 +
# Once this is done, it will show a list with a few Rockchip devices in it, you want to select 'RK30 Device' (as this is an RK3066 tablet). It will then try and install but will return a 'Device cannot start Code 10 error' - This is normal.
 +
# The next step is to turn the tablet off using the power button (Making sure to leave the tablet connected to the computer via USB.) And use the Volume down + Power button to turn it on again. This time the tablet will show a black screen, and will appear to be turned off, but actually this time it should pop up as an RK30 device with a green tick, signalling that it has been recognised correctly. Now if you try and open the RKbatchtool to upgrade the firmware, it should show up as a connected device, and you should be able to upgrade the firmware successfully. :)
 +
 +
* Bron: [http://www.slatedroid.com/topic/33518-firmware-window-n90-dual-core-ii-firmware-information-tools-2012-06-08/page__st__20 http://www.slatedroid.com/topic/33518-firmware-window-n90-dual-core-ii-firmware-information-tools-2012-06-08/page__st__20]
 +
 +
= Jiayu S3 =
 +
 +
== ROM flashen met flashtools ==
 +
 +
Flashen lijkt weer erg ingewikkeld, maar valt op zich mee. Heb het met een windows 7 machine gedaan. Als er geen gapps meer is, heb ik dit via bluetooth naar de telefoon gezonden.
 +
 +
# Allereerst via usbdeview alle drivers die iets met "Mediatek", "MT", "MTK", "V-COM" of "pre-loader" te maken hebben, verwijderen. http://www.nirsoft.net/utils/usb_devices_view.html
 +
# Reboot je PC. Ik heb hier ook met F8 gekozen voor "Disable Driver Signature Enforcement " (hoeft niet op Win7)
 +
# Driver downloaden uit "All MTK USB Driver 2014.rar" (gewoon even googlen)
 +
# Device manager openen (Control Panel -> Security)
 +
# Telefoon UIT
 +
# Telefoon aansluiten via USB
 +
# SNEL de unrecognized device verwijzen naar "All MTK USB Driver 2014\All MTK Drivers\MT65xx Preloader"
 +
# Flashtools manual: http://forum.xda-developers.com/showthread.php?t=1982587
 +
# Als je bij flashtools op download doet en de telefoon aansluit, gaat hij (bij mij) kennelijk opladen. Als je dan volUp+power doet, springt hij wel in de update modus. Dit kun je doen als hij nog aangesloten is met de USB kabel. Dan ineens gaat flashtool wel downloaden en de rom installeren.
 +
 +
== GAPPS installeren ==
 +
 +
# Instellingen > Beveiliging > Superuser > Zet deze aan!
 +
# Download jiayu.es apk, bijv hier: http://downloader-apk.com/jiayu/
 +
# Download gapps en zorg dat ze op je telefoon staan, ik heb deze van Slim Roms gebruikt na aanraden van iemand op needrom > http://slimroms.net/index...ps-4-4-4-build-9-20150107
 +
# Jiayu.es App > Downloads > Download CWM 6.0.5.1 Custom Recovery (TWRP staat er niet bij omdat deze niet werkt op de advanced versie, ik heb het handmatig geprobeerd)  (RodA: bij mij stond TWRP er juist wel en CWM niet)
 +
# Jiayu.es App > Device Tools > Install recovery > Klik op Recoverys downloaded en selecteer CWM > Install Recovery  (dit was pas beschikbaar nadat ik de app opnieuw startte)
 +
# Als het goed gaat restart de telefoon en start CWM Recovery > Gebruik de volume knoppen om te navigeren en de power knop om te selecteren > Install zip > Choose zip from /sdcard > 0/ > Kies je gapps (Slim-Addons-normal...zip) > Yes
 +
# Go Back > Reboot Phone
 +
# Gefeliciteerd! Je hebt nu de google apps geinstalleerd. Mocht je problemen hebben, probeer dan de cache van de Play Store te verwijderen > Instellingen > Apps > Alles > Google Play Store > Gegevens wissen
 +
 +
Gegevens wissen zorgt er ook voor dat aangeschafte apps weer als aangeschaft worden gezien.
 +
 +
== CWM Recovery handmatig starten ==
 +
 +
# Schakel de telefoon uit
 +
# Druk de Volume Omhoog knop in en DAARNA de Power knop
 +
# Je krijgt nu 3 opties: Recovery, Fastboot & Normal > Ga met de Volume Omhoog knop naar Recovery en druk dan op de Volume Omlaag knop om te selecteren
 +
 +
 +
= Versioning =
 +
 +
== Version numbers ==
 +
 +
Een artikel wat een logische nummering beschrijft. Komt er op neer dat bij versie 1.20.3 dat 1 de major versie is. Deze verandert alleen als er dingen veranderen waardoor dingen (voor buitenstaanders) incompatible worden, zoals een API. De 20 in dit geval is de minor versie. Dit hoogt op als er een nieuwe feature wordt toegevoegd. De 3 is patch, dit wordt gebruikt als er een fix gemaakt moet worden voor die versie. Eigenlijk heel logisch, maar toch :-)
 +
 +
== SVN ==
 +
 +
Install SVN server on Debian (also describes creation of repository)
 +
[http://www.howtoforge.com/debian_subversion_websvn http://www.howtoforge.com/debian_subversion_websvn]
 +
 +
When you get the error message "OPTIONS of 'http://172.16.255.14/cms': 200 OK (http://172.16.255.14)" this means that the path to the repository is incorrect. Check the /etc/apache2/mods-enabled/dav_svn.conf. Is the new repository added? Right path in the Location tag? Right path after SVNPath?
 +
 +
Als je de 64 bits client hebt geinstalleerd, moet je de 32 bits client ook doen, anders werkt de integratie met PhpEd niet. Zie [http://www.nusphere.com/kb/technicalfaq/tip_phped_and_svn.htm http://www.nusphere.com/kb/technicalfaq/tip_phped_and_svn.htm]
 +
 +
=== Create repository ===
 +
 +
<source lang="bash">
 +
svnadmin create --fs-type fsfs /var/svn-repos/project_zen
 +
chown -R www-data:subversion /var/svn-repos/*
 +
chmod -R 770 /var/svn-repos/*
 +
</source>
 +
 +
Edit /etc/apache2/mods-enabled/dav_svn.conf to add this repo.
 +
 +
Example:
 +
 +
<pre>
 +
<Location /project_zen>
 +
        DAV svn
 +
        SVNPath /var/svn-repos/project_zen
 +
        AuthType Basic
 +
        AuthName "Subversion Repository"
 +
        AuthUserFile /etc/apache2/dav_svn.passwd
 +
        Require valid-user
 +
#      SSLRequireSSL
 +
</Location>
 +
</pre>
 +
 +
= Git =
 +
 +
[[Git]]: Versie beheer met git. Hoe de stumpelnl remote git is opgezet.
 +
 +
== Update forceren ==
 +
 +
Als je een pakket hebt geinstalleerd met GIT, zou je normaal gesproken met git pull een update moeten kunnen uitvoeren. Bij mediawiki kreeg ik echter de foutmelding:
 +
 +
<pre>
 +
error: Your local changes to 'bin/svnstat' would be overwritten by merge.  Aborting.
 +
Please, commit your changes or stash them before you can merge.
 +
</pre>
 +
 +
Je kunt een update forceren op de volgende manier:
 +
 +
<source lang="bash">
 +
git fetch --all
 +
git reset --hard origin/master
 +
</source>
 +
 +
Bron: [http://stackoverflow.com/questions/1125968/force-git-to-overwrite-local-files-on-pull stackoverflow]
 +
 +
= HP 2140 =
 +
 +
Specificaties: [http://www.hp.com/hpinfo/newsroom/press_kits/2009/Mobility2009/Datasheet-Datasheet.HPMini2140.pdf http://www.hp.com/hpinfo/newsroom/press_kits/2009/Mobility2009/Datasheet-Datasheet.HPMini2140.pdf]
 +
 +
 +
== Wifi icoontje ==
 +
 +
Wifi doet het op zich prima, maar op Lubuntu mist het icoontje in de taskbar. Dit is een bekend probleem en simpel op te lossen. Zie: [http://askubuntu.com/questions/592406/nm-applet-wifi-issues-on-lubuntu-14-04 http://askubuntu.com/questions/592406/nm-applet-wifi-issues-on-lubuntu-14-04].
 +
 +
Vanuit de terminal nm-applet starten werkt ook, maar bovenstaand wordt omschreven hoe hij automatisch bij starten terugkomt.
 +
 +
== Geen wifi ==
 +
 +
Na een upgrade van Lubuntu veel gedoe gehad met wifi. De wifi knop bleef oranje. Middels '''rfkill unblock all''' kun je hem weer blauw krijgen, maar dan heb ik nog steeds geen mogelijkheid om een verbinding te kiezen.
 +
 +
Na een hele nieuwe Lubuntu bleek ik package '''firmware-b43-installer''' te moeten installeren. Daarna kon ik prima wifi netwerken kiezen.
 +
 +
= Arduino =
 +
 +
== Arduino nano v3 geen com poort ==
 +
 +
De clones zijn overgestapt op een andere chip voor communicatie. Dus windows herkent de serial port niet. Oplossing is om de CH340G drivers te installeren. [http://www.wch.cn/download/CH341SER_ZIP.html Die staan hier]
 +
 +
Bron: [https://www.diy-india.com/make/arduino-not-detected.html https://www.diy-india.com/make/arduino-not-detected.html]
 +
 +
= Onkyo HT-R380 =
 +
 +
Als je het volume van de speakers aanpast (de db's) dan wordt deze setting alleen onthouden als je dit via de setup doet. Als je die via de audio knop doet, wordt de instelling alleen onthouden tot hij weer op standby gaat. Via de setup ga je in test mode (hoor je ruis) en kun je per kanaal instellen hoeveel harder of zachter hij moet.
 +
 +
= Virtualmin =
  
 
= Meer hulp over MediaWiki =
 
= Meer hulp over MediaWiki =

Huidige versie van 8 nov 2019 om 07:38

Rolandow's wiki

Vergaarbak van allerlei informatie die ik in de loop der tijd heb verzameld, en niet mag vergeten.

Inhoud

PHP

composer problemen

Op mijn VM kreeg ik problemen met composer (ubuntu 16.04 en php7), namelijk een Content-Length Mismatch error. Dit kan opgelost te worden door overal https te gebruiken ipv http. Een mogelijke oorzaak zou kunnen zijn een virusscanner die de http stream controleert en vernaggelt, maar dit heb ik niet kunnen bevestigen. Onderstaande code toevoegen aan de composer config (van je account). Dit staat waarschijnlijk in /home/user/.composer/config.json ..

{
    "config": {
    "github-protocols": [
      "https"
    ]
  },
  "repositories": {
    "packagist": {
      "type": "composer",
      "url": "https://packagist.org"
    }
  }
}

Oracle

Trigger om sequence toe te voegen aan tabel (voorbeeldje)

create trigger MAG_CUST_ID_BR
before insert on MAGENTO_CUSTOMERS
for each row
begin
select MAG_CUST_ID.nextval into :new.CUST_ID from SYS.dual;
end;

Toad driver

Toad heeft een oracle client nodig, maar dit werkt alleen met de 32 bit versie. Download win32_11gR2_client.zip hierrr....

Update from table

Update records in table A from table B. In dit geval update de prijs in magento_products uit artikelen, waar de prijs in magento_products is null of 0, en de prijs in artikelen is groter dan 0.

update magento_products mp 
   set (price) = (
        select prijs3 
          from artikelen 
         where mp.sku = artikelen.artikel_nr
   )
   where ( nvl(mp.price,0) = 0) 
     and sku in (
        select to_char(artikel_nr) 
          from artikelen 
         where nvl(prijs3,0) > 0)
     )

Op internet zijn voorbeelden te vinden waarbij gebruik gemaakt wordt van EXISTS. Maar dit veroorzaakt soms een opdracht die erg lang duurt om uit te voeren.

UPDATE suppliers	
   SET supplier_name = (
         SELECT customers.name
           FROM customers
          WHERE customers.customer_id = suppliers.supplier_id)
            AND 1=1
       ),
       roland = 1
 WHERE EXISTS (
         SELECT customers.name
           FROM customers
          WHERE customers.customer_id = suppliers.supplier_id
            AND 1=1
       );
   AND 1=1

Ik heb roland=1 en AND 1=1 is toegevoegd ter illustratie om de formatting te krijgen zoals ik denk dat hij het mooist/duidelijkst is. Deze velden zijn in het oorspronkelijke voorbeeld niet gebruikt.

Bron: http://www.techonthenet.com/sql/exists.php

Limit rows

Er is geen LIMIT zoals in mysql. Aantal rijen limiteren:

select *
from  
( select * 
  from emp 
  order by sal desc ) 
where ROWNUM <= 5;

Met een offset:

select * from 
( select a.*, ROWNUM rnum from 
  ( <your_query_goes_here, with order by> ) a 
  where ROWNUM <= :MAX_ROW_TO_FETCH )
where rnum  >= :MIN_ROW_TO_FETCH;

datum vergelijken met sysdate

Als je een DATE field vergelijkt met de SYSDATE variabele, gaat dit niet goed. De waarde in het veld wordt namelijk automatisch met 00:00 als tijd opgeslagen. Als je dus een vergelijking maakt met datumveld >= sysdate, gaat dit niet goed op de datum zelf, omdat de tijd mee wordt geteld.

Je kunt met trunc alleen de datum pakken, dus dit werkt wel: datumveld >= trunc(sysdate);

INSERT .. ON DUPLICATE

Een variant gevonden voor de query syntax die je in mysql kunt gebruiken om een insert/update te doen. Het is wel een draak van een query, maar het werkt wel. Zou gebruikt kunnen worden tijdens import scripts, maar het nadeel is dat je nu geen extra checks kunt doen tussendoor. Dus vaak is eerst een SELECT toch handiger, zodat je kunt kijken of je echt wel MOET updaten.

Toch wil ik hem wel documenteren.

MERGE INTO Movie_Ratings M
       USING (SELECT 1 AS mid, 3 AS aid, 8 AS rating FROM dual) N
          ON (M.mid = N.mid AND M.aid = N.aid)
       WHEN     MATCHED THEN UPDATE SET M.rating = N.rating
       WHEN NOT MATCHED THEN INSERT(  mid,   aid,   rating)
                             VALUES(N.mid, N.aid, N.rating);

mySQL

remove high ascii rows

Query to remove rows that have high ascii in a specific column. (Used to clean up core_url_rewrite Magento table).

DELETE FROM core_url_rewrite WHERE NOT HEX(request_path) REGEXP '^([0-7][0-9A-F])*$';

source

trigger

delimiter |
DROP TRIGGER IF EXISTS after_insert_member|
 CREATE TRIGGER after_insert_member AFTER INSERT ON mVibesEMail.EmailPromotionQueue
  FOR EACH ROW BEGIN
     UPDATE mVibes.Member SET PromotionDateTime = NOW(), NumberOfPromotions = NumberOfPromotions+1 WHERE MemberId = NEW.MemberId;
  END;
|
delimiter ;

table from large dump

To filter a table from a large dump:

sed -n -e '/CREATE TABLE.*mytable/,/CREATE TABLE/p' mysql.dump > mytable.dump


bitwise fields

Om meerdere flaggen in 1 veld op te slaan, kan het handig zijn met bitwise operations te werken. Een status veld moet dan bijv. waarde 1, 2, 4, 8, 16, 32, etc hebben. Je kunt dan twee vlaggen combineren door ze op te tellen, wil je vlag 1 en 8 dan heeft het veld dus waarde 9. Met de volgende queries kun je deze bits setten, unsetten, en queryen.

Bit setten:

UPDATE users SET permission = permission | 16

But unsetten:

UPDATE users SET permission = permission & ~16

Gebruikers queryen met bit 16:

SELECT users WHERE permission & 16 = 16

Gebruikers queryen die geen bit 16 hebben:

SELECT users WHERE permission & 16 = 0

Je kunt volgens mij ook gewoon checken of er twee bits geset zijn:

SELECT users WHERE permissions & 5 = 5

Vijf is in bits 4+1 .. dus 5 komt hier uit, maar ook 7 (4+2+1) en ook 8+4+2+1 = 15.

Linux

rsync

Passive FTP

Als passive FTP niet werkt, dan moeten er modules geactiveerd worden. In /etc/modules toevoegen ip_conntrack_ftp en ip_nat_ftp.

Disable periodical fsck check's

The backup disk on jukebox was forcing a periocal fsck. This can be turned off with tune2fs.

tune2fs -c 0 -i 0d /dev/disk/by-id/usb-WD_My_Book_575532553130303331333730-part1

This should stop this message from syslog:

May 11 11:20:23 localhost automount[18777]: >> /dev/disk/by-id/usb-WD_My_Book_575532553130303331333730-part1 has been mounted 35 times without being checked, check forced.

SFTP umask

In /etc/ssh/sshd_config kun je de regel aanpassen:

Subsystem sftp /usr/lib/openssh/sftp-server -u 002

http://serverfault.com/questions/70876/how-to-put-desired-umask-with-sftp

SFTP chroot

We needed a user account to be able to receive files through SFTP. Since our port is opened at 2222 for the outside world. It seems that there is a CHROOT option in OpenSSH server nowadays. This needs to be changed in /etc/ssh/sshd_config:

Subsystem sftp internal-sftp

Match group sftponly
         ChrootDirectory /home/%u
         X11Forwarding no
         AllowTcpForwarding no
         ForceCommand internal-sftp

Then create a user like this:

adduser --ingroup sftponly --shell /bin/false <username>

Software RAID

Howto used to create the software raid array.

http://www.howtoforge.org/how-to-set-up-software-raid1-on-a-running-system-incl-grub-configuration-debian-lenny

Other link with some usefull tips:

http://unthought.net/Software-RAID.HOWTO/Software-RAID.HOWTO.html


Linux trics

Create snoop file of a port:

tcpdump -nvv -s 0 -w snoopport10295.snoop port 10295

Check the number of hits per IP, in the Apache access logs:

cat logs/access_log|grep 05/Feb/2007:14|awk '{print $1}'|sort|uniq -c

See what a process is doing:

lsof -p #PID

Last file in a directory:

ls -ltr|tail -n1

Partially extract a tarbal:

tar xvfz backup.tar.gz home/www/login.mobilebridges.com --exclude=*.log --exclude=*.xml

Use the t parameter instead of x to test tar.

tar tvfz backup.tar.gz home/www/login.mobilebridges.com --exclude=*.log --exclude=*.xml

Format your server:

dd if=/dev/zero of=/dev/hda bs=1M

This writes zero's to /dev/hda, so it will erase all data.

Format disk, using fat32:

1. Use fdisk to create the filesystem: fdisk /dev/hda - follow the prompts
2. Format it using mkfs.vfat -F 32 /dev/hda6
3. Add it to fstab

Add user:

adduser --gid 1010 --shell /usr/bin/false --home /home/www/peru charly

The GID should be the same for dutch and peru users. The home directory is different though.

Delete files older than 5 days:

find /home/www/login.mobilebridges.com/htdocs/Delivery/Error/ -mtime +5 -exec rm {} \;

Rename *.11.csv to *.csv:

rename 's/\.11\.csv$/\.csv/' *.csv

The ereg takes care of the rename action... the *.csv after that just selects the files that need to be renamed with this ereg.

Check projectsize Peru on developement:

/home/www/peru# du --max-depth=1 -h

Check if PING's are reaching the server:

tcpdump host 85.146.37.248 and icmp

85.146.37.248 is the source address.

See the number of connections to port 80 by ip:

netstat -pan|grep :80|sed 's/:/ /g'|awk '{print $6}'|sort|uniq -c


Rsync on an other port:

rsync -av --rsh='ssh -p2222' source destination


Mail attachment command-line

Met mutt kun je een attachment eenvoudig mailen, rechtstreeks van de command-line in de linux shell.

echo "Check deze logfile" | mutt -a /var/log/message rolandow@gmail.com

sar / sysstat / rs-sysmon monitor

Door package sysstat te installeren, kun je met sar gegevens terughalen over memory en cpu gebruik. Met rs-sysmon worden er dumps gemaakt in /var/log/rs-sysmon.

rs-sysmon is een script dat rackspace heeft ontwikkeld, en staat in /usr/sbin/rs-sysmon. Dit draait om de zoveel tijd en schrijft dingen weg in logfiles, zodat je achteraf logfiles kunt kijken van het systeem. Script zou gejat moeten worden van RS :-)

iptables

CUPS / HP Laserjet 1020 printer

DEBIAN NOTES


Follow the steps to install printer on debian etch:-

Install build-essential, foomatic-filters, cupsys FIRST:

$ su
# apt-get install build-essential
# apt-get install foomatic-filters
# apt-get install cupsys
$ wget -O foo2zjs.tar.gz http://foo2zjs.rkkda.com/foo2zjs.tar.gz
$ tar zxf foo2zjs.tar.gz
$ cd foo2zjs
$ make
$ ./getweb 1020
OR other printer
$ su
# make install install-hotplug cups

Vervolgens moet je in /etc/cups/conf.d instellen Listen *:631 om hem op alle poorten te laten luisteren. Tot slot had ik via putty een SSH tunnel gemaakt naar localhost, want dan kun je bij de admin pagina komen. Hier moet je nog bij "Add printers" de printer daadwerkelijk toevoegen. De driver is dan al toegevoegd aan het systeem door bovenstaande procedure.

Ook moet je de printers map allowen voor je interne netwerk. Dus bij Location / toevoegen Allow 192.168.0.*.

Vervolgens in Windows een netwerkprinter toevoegen, en dan de URL opgeven, dus: http://192.168.1.200:631/printers/HP_Laserjet_1020.

Bron: http://jitamitra.blogspot.com/2008/12/hp-laserjet-1020-on-debian.html

Update: Na het rebooten van de machine, kon ik niet meer printen. Ik heb usblp in de blacklist gezet in /etc/modprobe.d/blacklist.conf. Dit moest volgens een artikel. Toen kon ik nog steeds niet printen. in /usr/local/src/foo2zjs toen de stappen make, getweb, etc gevolgd. Je hoort de printer dan na de make install aanspringen (cups wordt opnieuw gestart). Nu kan ik weer printen.

Mac Client

Om op de mac (als client) te kunnen printen, moet je het volgende doen.

  1. Download en installeer de drivers vanaf deze pagina: http://support.apple.com/kb/dl907 .. en ja, dat is idioot groot ja.
  2. Installeer de printer nu, gewoon via apple, dus via System -> Printer toevoegen .. dan IP, IPP kiezen, en als URL invullen: 192.168.1.200:631/printers/HP_LaserJet_1020 .. In dit scherm moet je http:// dus weglaten. Je kunt dan de printer driver kiezen. Kies nu HP Laserjet 1022 (dus niet CP). Je kunt deze driver alleen via deze manier kiezen, niet via CUPS.
  3. De printer is nu geinstalleerd, maar op de 1 of andere manier op een verkeerd adres. Via CUPS kun je nu de locatie van de printer aanpassen. De mac draait zelf ook gewoon CUPS. Dus je kunt naar http://127.0.0.1:631 verbinden. De web interface staat in eerste instantie uit, maar er staat wat je moet doen om dit aan te zetten. Ga nu via de printers naar Modify Printer. Je ziet de locatie van de printer dan weer staan op ipp://192.168.1.200:631 ... de rest van het pad is weggevallen dus.
  4. Pas het pad aan naar ipp://192.168.1.200:631/printers/HP_LaserJet_1020 .. als je dan door klikt, moet je ook weer de driver kiezen. Laat deze gewoon staan waar hij op staat.

Nu kun je als het goed is een test pagina afdrukken, via het normale printer config ding van Apple.

device descriptor read/8, error -110

Deze error zag ik voorbij komen in de kern.log. Uiteindelijk op mijn mac aangesloten, deed hij het nog niet. Printer weer uitgezet, USB kabel nog eens uit en in gedaan in de printer (niet de pc dus), printer aan, en toen deed hij het weer. Hij werd herkend op de mac, en dus ook weer toen ik hem terug stopte in de debian computer.

fail2ban

returned 200

Out of the box werkt fail2ban prima op Debian. Toen ik de apache jail aanzette (alleen enablen) kreeg ik echter een fout:

2012-02-20 11:12:42,405 fail2ban.actions.action: ERROR  iptables -N fail2ban-apache
iptables -A fail2ban-apache -j RETURN
iptables -I INPUT -p tcp -m multiport --dports http,https -j fail2ban-apache returned 200

Dit bleek te komen omdat de jails te snel achter elkaar opgestart worden oid. Een sleep in de client biedt uitkomst. In /usr/bin/fail2ban-client een sleep toevoegen:

        def __processCmd(self, cmd, showRet = True):
                beautifier = Beautifier()
                for c in cmd:
                        time.sleep(0.1)
                        beautifier.setInputCmd(c)
                        try:

Apache benchmark

ab -n 100 -c 10 http://bla.nl/test/

Nagios

Aangezien ik kleine nagios scriptjes steeds opnieuw lijkt te maken, sla ik ze nu even op hier.

chmod directories

Even de directoties en files weer goed zetten qua rechten.

cd /home/www/marticle
chown -R marticle:marticle *
find . -type d -exec chmod 2771 '{}' \;
find . -type f -exec chmod 0664 '{}' \;

positional parameters $* $@

Bij het maken van een phpwrapper wilde ik alle parameters doorgeven aan php. Omdat er bestanden met spaties waren, ging dit niet goed. De oplossing was uiteindelijk als volgt:

/usr/bin/php "$@"

De aanhalingstekens zijn belangrijk. De man pages leggen dit ook uit:

man -P "less -p 'Expands  to  the positional'" bash

batch convert .bmp to .jpg

ImageMagick moet geinstalleerd zijn. Dan in de folder het volgende commando:

for i in *bmp; do convert "$i" "${i%.*}.jpg" ; done

Een andere mogelijkheid is mogrify gebruiken, dat ook bij ImageMagick hoort:

mogrify -format jpg *.bmp

locale

Gezeik met locale, kan ook komen doordat je client zijn settings doorgeeft tijdens het connecten. Dit uitschakelen in de sshd op de server hielp.

Dus eerst kijken met commando locale wat de settings zijn. Dit is dan bijv: en_US.UTF-8. Die installeer je dan met sudo locale-gen en_US.UTF-8. Daarna dpkg-reconfigure locales. Dan is de meuk geinstalleerd. Dan in /etc/ssh/sshd_config de regel AcceptEnv LANG LC_* commenten.

Samba / os x

Aanpassing die de snelheid wat dragelijker maakt:

# Most people will find that this option gives better performance.
# See smb.conf(5) and /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/speed.html
# for details
# You may want to add the following on a Linux system:
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=16384 SO_SNDBUF=16384

Onder global heb ik nog staan, maar weet niet of dit uitmaakt:

# This will prevent nmbd to search for NetBIOS names through DNS.
   dns proxy = no

Met de buffers valt nog te spelen, volgens onderstaand artikel gaat 16 mb bijvoorbeeld beter:

Madsonic

De .deb gewoon installeren. Heb je nog wel even java nodig. Om als jukebox te spelen, moet je de juiste soundcard setten. Dit staat hier omschreven.

Sorteren op filename

Dit staat gewoon bij Settings onder General.


5.1 final werkt niet

Op debian kwam dit door de verkeerde java versie. Die van Oracle moet uiteindelijk geinstalleerd worden. Ik heb uiteindelijk geprobeerd java er helemaal af te kieperen, en toen opnieuw java (oracle versie) te installeren.

http://superuser.com/questions/608163/how-do-i-remove-java-in-debian http://www.webupd8.org/2014/03/how-to-install-oracle-java-8-in-debian.html

Equaliser in jukebox

Wel fijn om een equaliser te hebben als je hem als jukebox gebruikt, zoals op kantoor. Hier is een plugin voor. Wat ik miste is dat je in /etc/asound.conf de settings system-wide kan toevoegen. Manual staat hier:

http://science-logbook.blogspot.co.uk/2013/08/system-sound-equalized-with-alsa-for.html

Op kantoor op dev als volgt voor elkaar gekregen... madsonic gebruikt de default soundcard:

/usr/share/madsonic/madsonic.sh, onderin ergens:

${JAVA} -Xms${MADSONIC_INIT_MEMORY}m -Xmx${MADSONIC_MAX_MEMORY}m \
  -Dmadsonic.home=${MADSONIC_HOME} \
  -Dmadsonic.host=${MADSONIC_HOST} \
  -Dmadsonic.port=${MADSONIC_PORT} \
  -Dmadsonic.httpsPort=${MADSONIC_HTTPS_PORT} \
  -Dmadsonic.contextPath=${MADSONIC_CONTEXT_PATH} \
  -Dmadsonic.defaultMusicFolder=${MADSONIC_DEFAULT_MUSIC_FOLDER} \
  -Dmadsonic.defaultUploadFolder=${MADSONIC_DEFAULT_UPLOAD_FOLDER} \
  -Dmadsonic.defaultPodcastFolder=${MADSONIC_DEFAULT_PODCAST_FOLDER} \
  -Dmadsonic.defaultPlaylistImportFolder=${MADSONIC_DEFAULT_PLAYLIST_IMPORT_FOLDER} \
  -Dmadsonic.defaultPlaylistExportFolder=${MADSONIC_DEFAULT_PLAYLIST_EXPORT_FOLDER} \
  -Dmadsonic.defaultPlaylistBackupFolder=${MADSONIC_DEFAULT_PLAYLIST_BACKUP_FOLDER} \
  -Duser.timezone=${MADSONIC_DEFAULT_TIMEZONE} \
  -Djava.awt.headless=true \
  -verbose:gc \
  '-Djavax.sound.sampled.SourceDataLine=#AudioPCI [default]' \
  -jar madsonic-booter.jar > ${LOG} 2>&1 &

Alle .arounsrc in de home directories weggegooid. En dan in /etc/asound.conf:

ctl.equal {
  type equal;
}
pcm.plugequal {
  type equal;
  # Modify the line below if you don't
  # want to use sound card 0.
  slave.pcm "plughw:0,0";
  # or if you want to use with multiple applications output to dmix
  # slave.pcm "plug:dmix"
}
# pcm.equal {
  # Or if you want the equalizer to be your
  # default soundcard uncomment the following
  # line and comment the above line.
 pcm.!default {
  type plug;
  slave.pcm plugequal;
}


Equaliser starten (als root):

alsamixer -D equal

Effect is tijdens het spelen hoorbaar, maar duurt wel eventjes..

Grotere HDD naar kleinere SSD copyeren

Voor in de HP2140 had ik een kleinere SSD gekocht. De harddisk die erin zat was lang niet vol, dus zou ik alles makkelijk moeten kunnen copyeren. CloneZille geprobeerd, maar dat was waardeloos. Ik had de oude harddisk via de hdd docking met USB aangesloten. De nieuwe schijf zat al in de laptop. Uiteindelijk wat dit de methode:

  1. Met gparted de grote ext4 partitie resizen, zodat dit ruim binnen de SSD valt. Opschalen is daarna weer heel makkelijk, dus een paar GB minder is heus niet erg.
  2. Met ddrescue de boel copyeren: ddrescue /dev/sdb /dev/sda --force .. Dit copyeert echter wel de partition table (dit had ik niet verwacht). Uitgevoerd vanaf de gparted live cd, hier staat ddrescue ook op.
  3. Dan na rebooten en checken of alles werkt weer met gparted de nieuwe disk bekeken. Kreeg nu de foutmelding can't have a partition outside disk .. Dit komt omdat de partition table dus over genomen is, inclusief de unpartitioned space. Bleek dat mijn swap partitie helemaal aan het eind van de disk stond. Er zat nu dus een gat in. Uiteindelijk deze swap partitie weggehaald, en toen werd de juiste grootte keurig getoond en waren deze foutmeldingen weg. Opnieuw een swap partitie aangemaakt, en deze in fstab gezet. Klaar!

Bronnen:

Mac OS X

Thunderbird

Aanpassen van de font grootte gaat ook in CSS. De locatie was echter even zoeken. Dit blijkt te zitten in ~/Library/Thunderbird/Profiles/[yourProfileName]/chrome/userChrome.css. Mocht deze map of dit bestand niet bestaan, dan moet je dit aanmaken. Vervolgens kun je in de CSS de volgende code opnemen om de font-size wat te vergroten.

/* Global UI font */
* { 
  font-size: 10pt !important;
}

Shortcut (maximize)

Je kunt zelf een shortcut toevoegen, zodat je bijvoorbeeld Maximize aan een toets kunt hangen. Je moet daarvoor naar System Preferences -> Keyboard -> Keyboard Shortcuts. En bij "All Applications", het plusje gebruiken om een nieuwe shortcut te maken. Je moet dan de naam van de functie weten, dus gewoon Zoom in typen. Je kunt er daarna een toets aan hangen (ik heb control+command+m).

Toetsen omdraaien

Op mijn Logitech K750 mac zat de tilde op een onlogische plaats, namelijk naast de z toets. Terwijl deze toets op de mac zelf gewoon links bovenin zit, net als op de meeste PC toetsenborden. Met de tool Karabiner kun je allerlei toetsen remappen.

Out of the box werden de toetsen echter in alle gevallen geremapped, dus ook voor mijn macbook, terwijl ik dit hier juist niet wilde. Gelukkig kun je zelf een XLM definieren, waarbij je de mapping aan een specifiek device kunt hangen. Dit staat ook keurig uitgelegd op de website. Voor de historie, bij deze de xml die ik gebrouwen heb en werkt:

<?xml version="1.0"?>
<root>
  <devicevendordef>
    <vendorname>LOGITECH</vendorname>
    <vendorid>0x046d</vendorid>
  </devicevendordef>

  <deviceproductdef>
    <productname>LOGITECH_K750_KEYBOARD</productname>
    <productid>0x4012</productid>
  </deviceproductdef>
  
  <item>
    <name>Swap the Tilda(~) key with Section (§) (logitech k750)</name>
    <identifier>private.logitech_k750_tilda_section</identifier>
    <device_only>DeviceVendor::LOGITECH, DeviceProduct::LOGITECH_K750_KEYBOARD</device_only>
    <autogen>__KeyToKey__ KeyCode::BACKQUOTE,  KeyCode::UK_SECTION</autogen>
    <autogen>__KeyToKey__ KeyCode::UK_SECTION, KeyCode::BACKQUOTE</autogen>
  </item>
</root>

Je kunt de vedor definition en product definition opzoeken, dit staat omschreven. Aangezien ik een muis en toetsenbord heb aangesloten via de unifying receiver, heb ik nu gegokt dat het eerste device mijn keyboard zou zijn. Wellicht dat dit productID dus niet uniek is voor het apparaat, maar dat het een ID is voor het apparaat op de unifying. Mocht ik het ooit opnieuw moeten doen, dan zou hier dus een foutje in kunnen zitten. De vendor tag is wel per producent vast, dus Logitech heeft altijd 0x046d.

Na de update naar El Capitan werkte Karabiner niet meer. Ik deed een uninstall van LCC (Logitech Control Centre), en daarna wilde ik het weer installeren; bleek de versie die ik had niet meer geschikt te zijn voor deze os x versie. Dus een nieuwe gedownload bij logitech, die geinstalleerd, en toen werd mijn toetsenbord weer herkend als zijnde een Logitech K750. Anders kun je de specifieke instellingen voor dit device niet doen, en verandert ook de tilde knop op het toetsenbord van de macbook zelf.

SmoothMouse

Om de muis als windows te laten accelereren: SmoothMouse

Bootable usb stick

Schrijven van een bootable (linux) usb stick.

  1. hdiutil convert -format UDRW -o ~/path/to/target.img ~/path/to/ubuntu.iso
  2. met diskutil list kijken welke device het is, meestal /dev/disk2
  3. diskutil unmountDisk /dev/diskN
  4. sudo dd if=/path/to/downloaded.img of=/dev/rdiskN bs=1m
  5. diskutil eject /dev/diskN

Bron: http://www.ubuntu.com/download/desktop/create-a-usb-stick-on-mac-osx

NTFS mounten met schrijfrechten

Als je een externe harddisk inplugt met NTFS dan is deze read-only. Dit kan makkelijk aangepast worden in fstab. Dit heb ik toegevoegd:

roland@Rolands-MacBook-Pro-3 RLNDW $ cat /etc/fstab
LABEL=RLNDW none ntfs rw,auto,nobrowse

De fstab bestond niet. Na het aanpassen de schijf unmounten en mounten, en dan is hij in elk geval via de shell te bereiken.

Windows 7

USB disk

Legale windows versie downloaden, en dan met een Microsoft tooltje de ISO op USB flash drive zetten.

Bootable problemen

Aangezien er veel combinaties zijn die te proberen vallen. Uiteindelijk blijkt dat je de laptop die windows 8 heeft in "legacy mode" moet zetten. UEFI moet dus uitstaan. Als ik op linux de USB stick wil maken, kan ik het beste met gparted de stick op NTFS formatteren, en de bootable flag zetten. Met ms-sys kun je een windows 7 MBR wegschrijven. Dit blijkt uiteindelijk dan na veel proberen te werken. Dit gaat overigens niet met alle USB sticks goed. Met een Sandisk Cruzer ging het uiteindelijk wel.

Partitie maken

Bij het installeren op de HP laptop van ma, kon ik Windows niet installeren, omdat de partitie niet geschikt was. Geen GPT partitie, ofzoiets. Blijkt dat je dit via DOS kunt opschonen:

  1. Druk op shift+f10
  2. Typ "diskpart" en druk op enter
  3. Typ "list disk" en druk op enter.
  4. Typ "select disk x" De x moet worden vervangen door het nummer van de schijf die je wilt fixen
  5. Typ "clean" en druk op enter
  6. Typ "exit" en druk op enter
  7. sluit het venster
  8. klik op refresh

HP support assistant

Er is gewoon een HP support assistant die ervoor zou moeten zorgen dat je alle drivers hebt.

nVidia drivers voor Dell Latitude d820

Die installeren dus mooi niet. Gelukkig is er een site die e.e.a. getweakt heeft waardoor de drivers wel installeren. Beetje vaag allemaal, maar blijkt wel te werken. Daardoor kun je weer op 1680x1050 draaien. De truuc is als volgt:

  1. Ga naar laptopvideo2go.com, dan naar drivers, en filter op je OS.
  2. Klik door de linkjes door, zodat je uiteindelijk de requested driver kunt downloaden. Op dezelfde pagina staat een linkje om de modified INF file te downloaden.
  3. Als je de driver .exe uitvoert, gaat hij extracten. Bij mij (versie 305.53) stond dan in het submapje Display.Driver de nv_disp.inf file. Deze moet je dus vervangen met de modified INF file.
  4. Nu gewoon de setup uitvoeren, en alle waarschuwingen van Windows dat er niet gesigned is, negeren uiteraard.

Rebooten en klaar is kees.

Hardware

VLAN's

Eindelijk na lang zoeken en trial on error denk ik nu het principe te begrijpen. Met name het verschil tussen taggen en untaggen. In feite kun je een poort op twee manieren member maken van een VLAN: tagged en untagged. Als je hem op tagged zet, ga je er vanuit dat de switch pakketje ontvangt die al gemarkeerd zijn. Als je hem op untagged zet, ga je er vanuit dat de tcp/ip paketten die niet getagged zijn, tot dit VLAN behoren. Feitelijk kun je dus nooit 1 poort in twee vlan's op untagged zetten. Dit onderscheid kan de router nooit maken.

In de praktijk, waarbij we telefoons en pc's via dezelfde switch poort aansluiten, maar de telefoon een VLAN ID 100 laten meesturen, moeten we dus die poorten van VLAN 100 op tagged zetten.

Ook uplink poorten zou je op tagged moeten zetten. Anders wordt dat verkeer niet door gelaten.

I would just like to add these simple rules: Switch to switch links are typically tagged, with the links members of all vlans that will cross the link. Switch to device links are typically untagged, with the switch ports PVID set to the desired vlan. There is an exception to the rule when a phone is connected between the switch and the computer. These rules apply to standard ports as well as LAG/LACP port groups.

Met de PVID wordt de VLAN dus geset voor die untagged ports. Switches die niet managed zijn trekken zich hier niks van aan denk ik, en laten alles gewoon door, blijven van die VLAN tag af. Managed switches luisteren hier echter wel naar, en scheiden aan de hand van die vlan's. Het is dus wel zaak dat het default vlan waar de pc's op terecht komen, matched met die in de router. Hier zou ik meer mee moeten testen, maar dat komt wel als het nodig is ;-)

Deze discussie heeft me daarbij geholpen: http://community.spiceworks.com/topic/245757-tag-untag-ports-on-hp-switches

Software

Wintendo

FLV filmpjes

Op de site van Tom heb ik plugins geinstalleerd voor het afspelen van filmpjes. Op deze pagina stond een tip: de url zonder www invoeren. Dit blijkt uiteindelijk de reden geweest te zijn waarom de stream het niet meer deed. Uiteindelijk gebruik ik iConvert voor het converteren van het filmpje. Meta data ding moet je uitvinken, anders wordt het bestand 0 kb groot.

Als je ook wilt kunnen doorspoelen e.d. in een filmpje, dan moet er meta data aan het filmpje worden toegevoegd. Dit kan na het encoderen met flvmeta.

  • mp42avi: Converteren van mp4's en mov's naar avi
  • eRightSoft SUPER: Converteren van allerlei formaten, GUI voor encoders (hier lukt het niet erg mee)
  • iConvert: Encode to flv (prima!)
  • WinFF: ffmpeg gui voor wintendo
  • FLVmeta: flvmeta om meta data in te voegen
  • Handbrake

FLV filmpjes op de site

Aangezien het telkens weer zoeken hier, hier een kort stappenplan hoe je een filmpje online krijgt. Als voorbeeld een filmpje van mijn blackberry, die gelukkig mp4 filmpjes produceert. Helaas gaat er altijd wat kwaliteit verloren bij het converteren naar flv. Dit is echter wel het beste formaat, omdat het filmpje dan veel kleiner is, en omdat het streamen beter werkt.

Het makkelijkst gaat dit met WinFF. Ik heb een eigen profieltje aangemaakt, waarbij ik de resolutie heb opgehoogd naar 640x480, de bitrate, en ook de sample rate naar 44100. Hopelijk geeft dit wat meer kwaliteit.

In WinFF kun je naar bewerken -> voorkeursinstellingen en daar onder Websites kun je dingen de velden aanpassen. Ik heb een Rolandow instelling gemaakt op basis van de fullscreen instelling. Je moet "invoeren" drukken om de instellingen op te slaan (beetje gek). De commandline die ik nu heb is:

-vcodec flv -f flv -r 29.97 -vf scale=640:480 -aspect 4:3 -b:v 700k -g 160 -cmp dct  -subcmp dct  -mbd 2 -flags +aic+cbp+mv0+mv4 -trellis 1 -ac 1 -ar 44100 -b:a 56k

Vervolgens moet je met het flvmeta commando meta data toevoegen aan je flash film. Dit is om ervoor te zorgen dat hij kan streamen (?). Je moet het programma downloaden. Het makkelijkst is om hem dan in c:\windows te zetten zodat je hem overal aan kunt roepen. Dan commandline gewoon:

flvmeta tom_klimt.flv tom_klimt_stream.flv

Hij maakt dan een nieuw filmpje aan .. deze weer even renamen oid en die dan gebruiken.

Update: nog een beetje zitten klooien, command line werkt dit erg goed:

ffmpeg -i tom.mp4 -ar 22050 -f flv -qmax 2 tom_q2_no_scale.flv

Door de qmax parameter blijft de kwaliteit erg hoog. Dit blijkt toch een beetje TE hoog te zijn om goed te kunnen streamen. Een qmax van 4 geeft een goede kwaliteit, maar toch een kleiner bestand. Hier valt mee te spelen dus :-)

Je kunt de video ook meteen draaien:

ffmpeg -i 20140218_siep_lacht.mp4 -vf "transpose=1" -ar 22050 -f flv -qmax 2 20140218_siep_lacht.flv
  • 0 = 90CounterCLockwise and Vertical Flip (default)
  • 1 = 90Clockwise
  • 2 = 90CounterClockwise
  • 3 = 90Clockwise and Vertical Flip

Zowel ffmpeg als flvmeta zijn op de max geinstalleerd. FFMPEG kan via brew geinstalleerd worden. Flvmeta kreeg ik niet via de github versie aan de praat, maar wel via de download (en dan zelf compileren met ./configure, make, make install).

CD/DVD branden

  • InfraRecorder: Simpel gratis programma, doet wat het moet doen.
  • ImgBurn: Eveneens simple gratis programma. Audio CD met ImgBurn staat hier. Je moet eerst een CUE file maken, maar je kan dan wel zonder pauze opnemen. Dus beter voor live cd's. Bij Infrarecorder kun je de pregap ook uitschakelen, weet niet of dit goed werkt.

Virtueel CD/DVD station

Virtual Clone Drive: Mounten van images in virtueel CD/DVD station

WebDAV mounten

In wintendo, werkt dat niet lekker via de normale weg. Als je de verbinding wilt onthouden, dan gaat dit bij de volgende keer opstarten niet lekker. Beter is dus via een ouderwets batch bestandje. Op die manier zou je ook zelf kunnen laten kiezen wanneer je wilt connect (batch bestand op buroblad plaatsen). De syntax is:

NET USE * http://cloud.stumpel.nl/files/webdav.php yourPass /USER:roland

Is WebDAV traag? Dan moet je in explorer onder Internet opties, verbindingen, het vinkje weghalen bij "Automatisch detecteren".

In de registry moet een auth waarde op 2 gezet worden. Hierna de service WebClient herstarten in Services.

http://www.webdavsystem.com/server/documentation/authentication/basic_auth_vista

Flowcharts

Voor het tekenen van flowcharts.

  • yEd: open source ding speciaal voor flowcharts. Eventueel de manual even lezen, het is even wennen.
  • Open Office: Draw is een soort visio.

Naar DVD converteren

  • AVStoDVD Net zoiets als onderstaand, maar kon de framerate van een .ts niet ontdekken. Freemake programma gaf keurig 50 aan als framerate.
  • FreeMake free video converter Converteren vanaf allerlei formaten naar een DVD schijfje. Gebruikt om een .TS (opname van een hd recorder van humax) naar DVD om te zetten. Let op: heeft wel adware trekjes, WinPatrol meldt dat er een proces gestart wil worden, en als je dit niet toelaat, crasht het programma.

Cipher: wipe files

Windows 7 heeft een ingebouwde wipe tool die veilig informatie kan verwijderen.

cipher /w:x:\folder

Hiermee haal je x:\folder leeg.

Linux

  • csync2: Automagisch syncen van bestanden
  • ucarp: VRRP failover gedoe
  • ncftp: client die bij Dreamhost geinstalleerd staat .. handig voor het overzetten van websites via ftp, want hij kan recursief mappen copyeren.
  • imap tools: Copyeren en syncen van imap accounts

DNS cache

Eigen DNS servertje installeren die requests kan cachen met Power DNS o.i.d.

http://www.debian-administration.org/articles/390

MS-DOS

Onder windows 7 kun je ervoor zorgen dat je batch wordt uitgevoerd als Administrator, door er met de rechterknop op te klikken. Zo kun je CMD ook als admin uitvoeren.

Route

Gateway routering aanpassen:

route delete 0.0.0.0
route add 81.175.103.10 mask 255.255.255.255 172.16.0.10
route add 0.0.0.0 mask 0.0.0.0 172.16.255.14

DNS

Met het commando "netsh" kun je ook DNS servers aanpassen.

netsh interface ip set dns "LAN-verbinding" static 8.8.8.8 primary
netsh interface ip add dns name="LAN-verbinding" 208.67.222.222
netsh interface ip add dns name="LAN-verbinding" 208.67.220.220
netsh interface ip add dns name="LAN-verbinding" 172.16.0.131

Meer tips en truucs:

http://www.petri.co.il/configure_tcp_ip_from_cmd.htm

Magento

Locatie default e-mails: /app/locale/nl_NL/template/email

HP

Om de laserjet die aan Ubuntu is gekoppeld aan de praat te krijgen heb ik deze handleiding gevolgd: http://www.sevenforums.com/drivers/20537-installing-sharing-hp-laserjet-1020-win7-x64.html

De CUPS pagina is via poort 631. Op het moment van schrijven: http://192.168.1.51:631/printers/HP-LaserJet-1020

Mozilla Thunderbird

Als je Thunderbird in de vertical view hebt, dan krijg je het scherm opgedeeld in drie kolommen. Nu wilde ik het e-mail bericht zelf in het midden zien. Dus Folder | Message | Message list. Dit blijkt te kunnen door in de profile map een CSS aan te maken. Je moet naar je user in Documents and Settings gaan en dan naar AppData, (Roaming), Thunderbird, Profiles, xxxxx.default .. dan hier een folder chrome aanmaken. Daarin een bestand userChrome.css aanmaken, met hierin de regel:

#threadPaneBox{-moz-box-direction: reverse;}

Bron: http://forums.mozillazine.org/viewtopic.php?f=19&t=623255

Redmine

Als het mailen niet werkt, kan dit komen door een exim config fout. De melding in de mainlog is dan:

2010-10-18 11:22:45 rejected EHLO from localhost [127.0.0.1]: syntactically invalid argument(s): (no argument given)

Dit is op te lossen door redmine op sendmail configuratie te draaien. Dit doe je door in redmine/config/email.yml te zetten:

production:
  delivery_method: :sendmail
#  delivery_method: :smtp
#  smtp_settings:
#    address: "localhost"
#    port: 25

Het gecommente deel is wat er stond.

Exchange

Signature

Je kunt eenvoudig bij de locatie van je signature files komen. In Exchange ga je naar de opties, en dan naar tabje E-mailindeling. Houd nu CTRL ingedrukt als je op Handtekeningen drukt, en je komt in de filebrowser naar de bestanden.

Bron: http://blogs.msdn.com/b/outlook/archive/2008/07/11/how-do-i-back-up-my-signatures.aspx

Video

Transcoder:

RegExp (textpad)

Mobile Bridges standards naar Zend standards

Voor het vervangen van de standaard van MB naar de standaard van Zend, kunnen de volgende search and replaces uitgevoerd worden in Textpad.

Voor het vervangen van $this->mPage naar $this->_page kun je in textpad de volgende parameters opgeven. De _ moet alleen voor private en protected vars, maar we gebruiken als het goed is geen public's.

  • Search: $this->m\([A-Z]\)
  • Replace: $this->_\L\1

De \L zorgt ervoor dat het lowercase wordt, en de \1 is het eerste gevonden groepje. Want \0 zou de hele zin zijn.

Voor het vervangen van $lPage en $aPage naar $page:

  • Search: $[al]\([A-Z]\)
  • Replace: $\L\1

Voor het vervangen van $mPage naar $_page:

  • Search: $m\([A-Z]\)
  • Replace: $_\L\1

Voor het vervangen van de functions die met een hoofdletter beginnen:

  • Search: function \([A-Z]\)
  • Replace: \L\0

Voor de aanroep van functies binnen de class, $this->SetBlablaFoo(...) naar $this->setBlablaFoo(...):

  • Search: $this->\([A-Z]\)\([A-Za-z]*\)(
  • Replace: $this->\L\1\E\2(

Dreamhost

Backup

Automagisch backuppen naar de backup user en snapshots maken.

http://blog.wangling.me/2009/07/meta-backup-dreamhost-on-dreamhost-backups

TransIP

Plesk 11

wordpress

Bij een VPS met Plesk 11.0.9 was het niet mogelijk om plugins te zoeken binnen Wordpress. Dit bleek aan een instelling te liggen op het VPS. Komt waarschijnlijk door nginx. Het volgende als root uivoeren hielp:

setsebool -P httpd_can_network_connect 1

Bronnen:

Encoding

Iets gelezen over het converteren van bestandsnamen. Handig voor als er een samba share is die verkeerde encoding heeft?

Commando convmv.

Bron: http://en.wikipedia.org/wiki/Character_encoding#Character_encoding_translation

Magento

Magento: Magento aanpassingen. Compare products verwijderen.

Rescue disk

HIREN

Om virussen te scannen moet je windows opstarten op de computer (dus niet van cd booten) en dan ComboFix gebruiken om virussen te scannen en op te ruimen. Als je van de cd start draait alles vanuit ram en is er dus te weinig ruimte om de virusscanner te installeren / starten.

Android

ROM

Eerst had ik DarkyRom, maar die was erg buggy. Daarna via deze tutorial mijn android versie geupdate: http://forum.xda-developers.com/showthread.php?t=1139050

Meer firmware op samfirmware.com

Apps

Llama: Toffe app om automatisch je profiel te laten switchen aan de hand van tijd en locatie.

Default ringtone picker

Na installatie van EZ File Explorer kon ik in bijv. gemail niet meer met de default applicatie mijn ringtone kiezen. In plaats daarvan kwam ik in een file browser terecht, en dan mis je behoorlijk wat ringtones. Dit blijkt op te losset te zijn door bij de app instellingen 'clear defaults' te kiezen. In mijn geval moest ik dit voor Media storage (media opslag) doen, maar heb het ook voor gmail, file explorer en android system gedaan. Uiteindelijk heeft het gewerkt, en kon ik met Media opslag mijn ringtone kiezen. Dan krijg je ook een lijstje terug met de default ringtones.

http://android.stackexchange.com/questions/19112/reset-ringtone-picker-preferences

Blackberry

LogicMail

Goede app om e-mail accounts te gebruiken die je niet altijd actief hoeft te hebben. Je hebt dan dus geen push mail, maar je start de email client op wanneer je het nodig hebt. De app heet LogicMail. Het was even zoeken wat je als SMTP server kunt gebruiken, dit blijkt als volgt te zijn.

Server authsmtp.vodafone.nl
User mail06xxxxxxxx (xxx = telnr)
Password Zelfde als op My Vodafone

LET OP: Je moet SSL selecteren als verbindings methode. Als je TLS doet gaan de mailtjes er niet uit!

Asterisk / VOIP

Experia box

Locatie's met een Experia box gaven problemen bij Stumpel. Uiteindelijk was de oplossing eenvoudig. De telefoon rechtstreeks aan de experia box geven en een publiek IP geven. Dat laatste is wellicht niet eens nodig. Maar achter de netgear hangen (die een publiek IP heeft) werkt kennelijk niet. Port forwarding verder uitgeschakeld.

In eerste instantie leek het ook te helpen om de UDP poorten via "Applicatie delen" o.i.d. door te sturen naar de netgear router. Bij de Huesmolen werkte dit uiteindelijk niet zo goed.

tcpdump

Een dump maken om uit te lezen met wireshark oid:

tcpdump -nniany -vvs0 -w huesman2.pcap not port 22

nat / canreinvite / directmedia

Eindelijk snap ik de nat optie een beetje. Het gaat hierbij niet om de asterisk server die wel of niet achter nat zit, maar of de binnenkomende gesprekken van die SIP achter nat zit. Voor telefoons die dus, samen met Asterisk, op het lokale netwerk zitten, kun je NAT=no doen. Er is immers geen NAT tussen Asterisk en de telefoons.

Over het algemeen is het vrij safe om NAT=yes te gebruiken.

Canreinvite is in 1.8 vervangen door directmedia. Als je asterisk achter NAT hebt, is directmedia haast onmogelijk, dus het is best om die gewoon op NO te zetten (of nonat, als je lokaal wel een directe stream zou willen).

externhost

Bij de general config kun je met externaddr je externe IP opgeven. Dit is, samen met localnet, nodig zodat Asterisk goed het onderscheid kan maken tussen lokaal en extern, en het juiste IP in de headers kan stoppen. Wat ik niet wist is dat er ook een externhost optie is. Je kunt hier een hostname opgeven. Met externrefresh kun je de interval opgeven waarmee hij moet checken wat het IP van die host is. Op deze manier kun je asterisk dus veilig achter NAT zetten (met failover).

No application 'SendDTMF' for extension (incoming, 31201234567, 13)

Lekker dom, maar in /etc/asterisk/modules.conf staat een noload. Dan wordt de applicatie natuurlijk niet geladen.

Ringtone

Een ringtone kun je als volgt converteren. Dit heb ik getest op een Yealink T42S. De ringtone mag hier niet groter dan 100 kb zijn.

sox infile.wav -r 8000 -c 1 -e u-law outfile.wav


Music on hold

mp3 converteren

Op http://www.jamendo.com staat een hoop leuke, goede muziek dat rechtenvrij is. Eenmaal gedownload als MP3, moeten de nummers geconverteerd worden naar wav en alaw. Dit heb ik gedaan door in /home/roland/moh alle mp3's neer te zetten. Dan kun je het volgende commando runnen:

IFS=$'\n' ; for f in `ls -1 *.mp3` ; do FILE=$(basename "$f" .mp3) ; ffmpeg -i "$FILE.mp3" -ar 8000 -ac 1 -ab 64 "$FILE.wav" -ar 8000 -ac 1 -ab 64 -f alaw "$FILE.alaw" -map 0:0 -map 0:0 ; done

Dan alle .wav en .alaw bestanden moven naar /var/lib/asterisk/moh ..

Dan de music on hold module herstarten met:

asterisk -rx "module unload res_musiconhold.so"; asterisk -rx "module load res_musiconhold.so";

radio

Met de mpg123 player kun je radio streamen. Echter de versie in het packaging system van Ubuntu werkt niet, gek genoeg. Maar een versie handmatig compileren werkt wel.

http://mpg123.orgis.org/download/mpg123-0.60.tar.gz deze gewoon met ./configure, make en make install installeren ergens.

Let op: ik heb ook versie 1.15 ofzo geprobeerd, maar hiervan gaat Asterisk onderuit. Dus echt deze versie gebruiken!

[radio]
mode=custom
application=/usr/local/bin/mpg123 -q -s --mono -r 8000 -f 4096 -b 0 http://icecast.omroep.nl/3fm-sb-mp3

Met de -f parameter kan het volume aangepast worden.

ODBC / mysql

Bij het overzetten naar een andere server, kreeg ik mijn mysql functies niet aan de praat. Blijkt te liggen aan het volgende.

Voordat asterisk geinstalleerd moet worden, moet libmysqlclient-dev package ook geinstalleerd worden. Hierdoor kun je mysql support compilen in asterisk. Vervolgens moet ook een unixODBC client geinstalleerd en geconfigureerd worden. Dit staat op de volgende pagina beschreven.

Raspberry Pi

Firmware update

Screensaver

Uitzetten voor de shell, in /etc/rc.local toevoegen:

#screensave uitzetten
/usr/bin/setterm -blank 0 -powersave off -powerdown 0

Internet services

Dynamic hostname

Namecheap dynamic DNS

Namecheap heeft een dynamic DNS service. Je kunt deze ook met ddclient onder linux updaten. Als je dynamic dns activeert, krijg je van namecheap een password (een key). De instellingen in /etc/ddclient.conf zijn dan als volgt:

protocol=namecheap
use=web, web=checkip.dyndns.com/, web-skip='IP Address'
server=dynamicdns.park-your-domain.com
login=rolandow.net
password='key'
home

Aan het eind zet je de hostname die geupdate moet worden. Dit moet dus alleen de host zijn, zonder het domein.

Met dd-wrt kun je ook namcheap updaten. Dit heb ik gedaan en werkt prima.

Apple

Waarom geen Linux op een Apple

Je kunt Linux niet native op Apple installeren. Dit komt omdat de Apple geen SMBus heeft, maar een SMC. Dit is een onderdeel die ervoor zorgt dat het voltage omlaag wordt gebracht als de CPU het te zwaar krijgt. Bij de Apple wordt hiervoor een SMC gebruikt, die alleen goed kan worden aangestuurd door OSX. Apple beschermt de SMC, dus ze geven dit niet vrij zeg maar. Omdat normale pc's een SMBus gebruiken die zit zelf regelen, levert dit geen problemen op. De SMBus ziet zelf wanneer de cpu te warm wordt, en regelt dan het voltage.

Je kunt Linux dus alleen draaien in VMWare. Windows wordt om die reden gedraaid in Boot Camp.

Bron: #apple op irc.freenode.net

YuanDao N90s

Firmware updaten ging lasting. Bottom line is dat je de drivers moet installeren, te downloaden op rockchipfirmware.com en rockchip.nl. De drivers updaten lijkt eerst niet te werken door een code 10. Je moet het tablet dan zelf opnieuw starten.

Zonder kabels erin, volume + en power button komt in een soort recovery mode. Windows herkent het tablet dan niet goed. Schakel hem helemaal uit, dan weer zonder kabels, en dan volume + en power, en een seconde later de USB kabel erin. Dit doe je na het installeren van de drivers. Het tablet blijft dan zwart, en windows herkend het apparaat (gedaan op W7 64 bit). Nu kun je gewoon flashen.

  1. Put the tablet into stock recovery mode (the the page with the android bonnet open) and then connect with usb.
  2. In windows device manager it will say N90 and it won't be able to automatically find a driver, this is fine. Right click on N90 and go to 'Update driver software', then click 'Browse my computer for driver software', then click 'Let me pick from a list of device drivers on my computer'.
  3. Then, once the list shows up, select the very top option 'Any Device', and click 'Have Disk'. Then browse to the rockusb driver folder, select your correct operating system and either x86 or x64 depending on your computer, and find the correct 'rockusb' file to select.
  4. Once this is done, it will show a list with a few Rockchip devices in it, you want to select 'RK30 Device' (as this is an RK3066 tablet). It will then try and install but will return a 'Device cannot start Code 10 error' - This is normal.
  5. The next step is to turn the tablet off using the power button (Making sure to leave the tablet connected to the computer via USB.) And use the Volume down + Power button to turn it on again. This time the tablet will show a black screen, and will appear to be turned off, but actually this time it should pop up as an RK30 device with a green tick, signalling that it has been recognised correctly. Now if you try and open the RKbatchtool to upgrade the firmware, it should show up as a connected device, and you should be able to upgrade the firmware successfully. :)

Jiayu S3

ROM flashen met flashtools

Flashen lijkt weer erg ingewikkeld, maar valt op zich mee. Heb het met een windows 7 machine gedaan. Als er geen gapps meer is, heb ik dit via bluetooth naar de telefoon gezonden.

  1. Allereerst via usbdeview alle drivers die iets met "Mediatek", "MT", "MTK", "V-COM" of "pre-loader" te maken hebben, verwijderen. http://www.nirsoft.net/utils/usb_devices_view.html
  2. Reboot je PC. Ik heb hier ook met F8 gekozen voor "Disable Driver Signature Enforcement " (hoeft niet op Win7)
  3. Driver downloaden uit "All MTK USB Driver 2014.rar" (gewoon even googlen)
  4. Device manager openen (Control Panel -> Security)
  5. Telefoon UIT
  6. Telefoon aansluiten via USB
  7. SNEL de unrecognized device verwijzen naar "All MTK USB Driver 2014\All MTK Drivers\MT65xx Preloader"
  8. Flashtools manual: http://forum.xda-developers.com/showthread.php?t=1982587
  9. Als je bij flashtools op download doet en de telefoon aansluit, gaat hij (bij mij) kennelijk opladen. Als je dan volUp+power doet, springt hij wel in de update modus. Dit kun je doen als hij nog aangesloten is met de USB kabel. Dan ineens gaat flashtool wel downloaden en de rom installeren.

GAPPS installeren

  1. Instellingen > Beveiliging > Superuser > Zet deze aan!
  2. Download jiayu.es apk, bijv hier: http://downloader-apk.com/jiayu/
  3. Download gapps en zorg dat ze op je telefoon staan, ik heb deze van Slim Roms gebruikt na aanraden van iemand op needrom > http://slimroms.net/index...ps-4-4-4-build-9-20150107
  4. Jiayu.es App > Downloads > Download CWM 6.0.5.1 Custom Recovery (TWRP staat er niet bij omdat deze niet werkt op de advanced versie, ik heb het handmatig geprobeerd) (RodA: bij mij stond TWRP er juist wel en CWM niet)
  5. Jiayu.es App > Device Tools > Install recovery > Klik op Recoverys downloaded en selecteer CWM > Install Recovery (dit was pas beschikbaar nadat ik de app opnieuw startte)
  6. Als het goed gaat restart de telefoon en start CWM Recovery > Gebruik de volume knoppen om te navigeren en de power knop om te selecteren > Install zip > Choose zip from /sdcard > 0/ > Kies je gapps (Slim-Addons-normal...zip) > Yes
  7. Go Back > Reboot Phone
  8. Gefeliciteerd! Je hebt nu de google apps geinstalleerd. Mocht je problemen hebben, probeer dan de cache van de Play Store te verwijderen > Instellingen > Apps > Alles > Google Play Store > Gegevens wissen

Gegevens wissen zorgt er ook voor dat aangeschafte apps weer als aangeschaft worden gezien.

CWM Recovery handmatig starten

  1. Schakel de telefoon uit
  2. Druk de Volume Omhoog knop in en DAARNA de Power knop
  3. Je krijgt nu 3 opties: Recovery, Fastboot & Normal > Ga met de Volume Omhoog knop naar Recovery en druk dan op de Volume Omlaag knop om te selecteren


Versioning

Version numbers

Een artikel wat een logische nummering beschrijft. Komt er op neer dat bij versie 1.20.3 dat 1 de major versie is. Deze verandert alleen als er dingen veranderen waardoor dingen (voor buitenstaanders) incompatible worden, zoals een API. De 20 in dit geval is de minor versie. Dit hoogt op als er een nieuwe feature wordt toegevoegd. De 3 is patch, dit wordt gebruikt als er een fix gemaakt moet worden voor die versie. Eigenlijk heel logisch, maar toch :-)

SVN

Install SVN server on Debian (also describes creation of repository) http://www.howtoforge.com/debian_subversion_websvn

When you get the error message "OPTIONS of 'http://172.16.255.14/cms': 200 OK (http://172.16.255.14)" this means that the path to the repository is incorrect. Check the /etc/apache2/mods-enabled/dav_svn.conf. Is the new repository added? Right path in the Location tag? Right path after SVNPath?

Als je de 64 bits client hebt geinstalleerd, moet je de 32 bits client ook doen, anders werkt de integratie met PhpEd niet. Zie http://www.nusphere.com/kb/technicalfaq/tip_phped_and_svn.htm

Create repository

svnadmin create --fs-type fsfs /var/svn-repos/project_zen
chown -R www-data:subversion /var/svn-repos/*
chmod -R 770 /var/svn-repos/*

Edit /etc/apache2/mods-enabled/dav_svn.conf to add this repo.

Example:

<Location /project_zen>
        DAV svn
        SVNPath /var/svn-repos/project_zen
        AuthType Basic
        AuthName "Subversion Repository"
        AuthUserFile /etc/apache2/dav_svn.passwd
        Require valid-user
#       SSLRequireSSL
</Location>

Git

Git: Versie beheer met git. Hoe de stumpelnl remote git is opgezet.

Update forceren

Als je een pakket hebt geinstalleerd met GIT, zou je normaal gesproken met git pull een update moeten kunnen uitvoeren. Bij mediawiki kreeg ik echter de foutmelding:

error: Your local changes to 'bin/svnstat' would be overwritten by merge.  Aborting.
Please, commit your changes or stash them before you can merge.

Je kunt een update forceren op de volgende manier:

git fetch --all
git reset --hard origin/master

Bron: stackoverflow

HP 2140

Specificaties: http://www.hp.com/hpinfo/newsroom/press_kits/2009/Mobility2009/Datasheet-Datasheet.HPMini2140.pdf


Wifi icoontje

Wifi doet het op zich prima, maar op Lubuntu mist het icoontje in de taskbar. Dit is een bekend probleem en simpel op te lossen. Zie: http://askubuntu.com/questions/592406/nm-applet-wifi-issues-on-lubuntu-14-04.

Vanuit de terminal nm-applet starten werkt ook, maar bovenstaand wordt omschreven hoe hij automatisch bij starten terugkomt.

Geen wifi

Na een upgrade van Lubuntu veel gedoe gehad met wifi. De wifi knop bleef oranje. Middels rfkill unblock all kun je hem weer blauw krijgen, maar dan heb ik nog steeds geen mogelijkheid om een verbinding te kiezen.

Na een hele nieuwe Lubuntu bleek ik package firmware-b43-installer te moeten installeren. Daarna kon ik prima wifi netwerken kiezen.

Arduino

Arduino nano v3 geen com poort

De clones zijn overgestapt op een andere chip voor communicatie. Dus windows herkent de serial port niet. Oplossing is om de CH340G drivers te installeren. Die staan hier

Bron: https://www.diy-india.com/make/arduino-not-detected.html

Onkyo HT-R380

Als je het volume van de speakers aanpast (de db's) dan wordt deze setting alleen onthouden als je dit via de setup doet. Als je die via de audio knop doet, wordt de instelling alleen onthouden tot hij weer op standby gaat. Via de setup ga je in test mode (hoor je ruis) en kun je per kanaal instellen hoeveel harder of zachter hij moet.

Virtualmin

Meer hulp over MediaWiki