Кратки съвети за linux

Тук може да намерите полезни съвети и примери за много ситуации.

 

Копиране на Volume serial number на дискета

Когате правите копие с Copy Disk на дадена дискета, полученото копие е напълно идентично с оригинала, освен една малка подробност: Volume serial number.

Volume serial number

Поради това някои производители използват това като защита срещу копиране.  Ето как да се  промени  този номер  в Linux:

С mdir от пакета mtools може да видите серийния номер на оригинала, например 173c-10db
Слагате копието във флопито и изпълнявате следната команда, която запазва неговия сериен номер във файла floppy.vsn
    dd if=/dev/floppy bs=1 count=4 skip=39  > floppy.vsn
С произволен hex редактор, например hexedit редактирате файла, така че да съдържа новия номер. Тук има една особеност - байтовете са подредени наобратно. Така че ако се стремите да постигнете номер 173c-10db, трябва да запишете във файла db 10 3c 17
Записвате новия номер върху копието:
    dd of=/dev/floppy bs=1 count=4 skip=39  < floppy.vsn
 

Стартиране на няколко X сървъра

За да стартирате няколко X сървъра, ползвайте следната команда:
 startx -- :1
където :1 трябва да е уникално за всеки един отделен, тоест вторият е :2 и т.н. За превключване между различните се ползва Ctrl + Alt + F7, F8 и т.н.

Създаване на файлове с определена големина чрез dd

За да създадете файл с произволно съдържание и точно определена дължина, бързо удобно е да се използва dd. Ето няколко примера.

Файл test1.bin, с големина 10k и съдържание от нулеви байтове:
dd bs=1024 count=10 if=/dev/zero of=test1.bin

Файл test2.bin, с големина 100k и случайно съдържание:
dd bs=1024 count=100 if=/dev/random of=test2.bin

Горният пример е доста бавен, особено за големи файлове, затова ето един начин за бързо генериране на относително случайни данни:
dd bs=1024 count=100 if=/dev/hda of=test2.bin skip=1000
Тази команда взима 100k данни от твъдият диск като започва от 1М след началото.

Rsync по ssh на нестандартен порт

Ако използвате rsync през ssh, за да се свързвате със сървър на различен от стандартния порт, например 555 вместо 22, използвайте следния формат:

rsync -a -e "ssh -p 555" rsyncuser@remoteserver:/data/to/sync /archive/

Повече за rsync

Монтиране на споделена директория от Windows в Linux

Да приемем, че Windows ресурса се намира в \\otherhost\share и искаме да го монтираме в /mnt/winshare, като използваме user/pass за да го достъпим. Тогава:

mkdir /mnt/winshare

mount -t smbfs -o username=user,password="pass" //otherhost/share /hmnt/winshare

или

mount -t cifs -o username=user,password="pass" //otherhost/share /hmnt/winshare

Как да изключваме компютъра с Linux след определено време без инсталиране на допълнителни програми


Ако искате да можете да настройвате компютъра да се изключва след известно време (добре познатата функция "sleep" на телевизора), имате на разположение достатъчно програми за целта. По-долу е показан лесен начин да с енаправи това само с bash и at. Добавете следното в .bashrc файла:
 
sleeper() {
    echo 'init 0' | sudo at now + $1 minutes
}

 
Готово. Сега ако искате компютъра да се загаси след 50 минути:
 
sleeper 50

Използвайте pm-suspend и pm-hibernate вместо init 0 съответно за приспиване и хибернация.