Dev Grzegorz Zmarz

Debian, Windows i moje doświadczenia ;)

Subscribe to RSS feed

Jak ułatwić sobie wysyłanie plików do znajomych?

, ,

Często zdarza mi się wysyłać różne treści do znajomych, czy to printscreen, czy jakiś inny plik.
Istnieją co prawda serwisy pokroju typu RapidShare czy imageshack, ale nie dość, że trzeba odpalić przeglądarkę czy nową kartę, to jeszcze trzeba rozszyfrowywać literki /znaczki aby poprawnie przejść weryfikację, że nie jest się internetowym botem.

Do tego wpisu zainspirował mnie ten blog. O co chodzi? O skrypt, który zaloguje się za nas, wyśle plik, a do tego automatycznie da nam adres do schowka, który możemy wysłać rozmówcy czy to mailem, czy po prostu w komunikatorze, a wszystko to, bez uruchamiania przeglądarki.

Wykorzystać do tego celu możemy chyba każdy dowolny hosting stron www z dostępem przez FTP. Ja wykorzystuję UGU.
Zakładamy konto, mamy login, hasło, więc brakuje nam tylko skryptu który by automatyzował czynności.

Jako, iż nawyki konsoli pozostały mi z Debiana, zainteresowałem się powershellem, który jest zresztą automatycznie dostępny w Windows 7.
# Send.ps1 - wysyła podany plik na serwer FTP i zwraca jego adres HTTP
# Parametr: nazwa pliku lokalnego
 param([string]$file = $(throw "File not specified"))
 $filename = (New-Object IO.FileInfo @($file)).Name


# Stałe
 $SERVER = "zulowski.ugu.pl" # to należy zmienić do swoich potrzeb
 $FTP_LOGIN = "zulowski.ugu.pl" # to też
 $FTP_PASS = "tu swoje hasło" # tu swoje hasło
 $FTP_PATH = "/uploads/" # Ścieżka FTP do katalogu z uploadami 
 $HTTP_PATH = "/uploads/" # Ścieżka HTTP do tego samego katalogu

# Odczytujemy plik
 $stream = New-Object IO.FileStream @($file, [IO.FileMode]::Open,
     [IO.FileAccess]::Read, [IO.FileShare]::Read)
 $content = New-Object byte[] @($stream.Length)
 $stream.Read($content, 0, $content.Length) | Out-Null
 $stream.Close()

# Uploadujemy na FTP
 $url = "ftp://" + $SERVER + $FTP_PATH + $filename
 $ftp = [Net.FtpWebRequest]::Create($url)
 $ftp.Credentials = New-Object Net.NetworkCredential @($FTP_LOGIN, $FTP_PASS)
 $ftp.Method = [Net.WebRequestMethods+Ftp]::UploadFile
 $ftp.ContentLength = $content.Length
 $req = $ftp.GetRequestStream()
 $req.Write($content, 0, $content.Length)
 $req.Close()

# Kopiujemy URL do schowka
"http://" + $SERVER + $HTTP_PATH + $filename | clip

Skrypt ten, w większości jest zapożyczony właśnie z tego blogu.
Dodatkowo tworzymy sobie plik wyślij_na_ugu.bat który wrzucamy do katalogu "sendto"
C:\Users\Grzegorz\AppData\Roaming\Microsoft\Windows\SendTo\

O takiej oto treści
powershell -Command . 'd:\scieżka_do_skryptu' '%1'

To rozwiązanie doda nam nową pozycję w menu kontekstowym (prawy przycisk na plik, wyślij do, wyślij_na_ugu).

Prawda, że ułatwia sprawę?
Oczywiście trzeba "pozwolić" Windowsowi na wykonywanie skryptów...

Idąc tym tokiem, stworzyłem trochę inne rozwiązanie, korzystając z narzędzi PuTTY, a dokładniej narzędzia psftp.exe i c# .
Posiadam dostęp do hostingu do którego dostęp mam tylko przez SSH/SFTP.
Program w c# do tego wygląda tak:
using System.Diagnostics;
using System.IO;

class Program
{
    static void Main(string[] args)
    {
        if (args.Length < 1) System.Console.WriteLine("sposob uzycia:\n\tsftpUploader.exe nazwa_pliku");
        else
        uploader(args[0]);
        System.Console.WriteLine("http:/server/~login/uploads/" + args[0] + "|clip");
    }

    /// <summary>
    /// upload to sftp using putty/psftp
    /// </summary>
    static void uploader(string fileName)
    {
        ProcessStartInfo startInfo = new ProcessStartInfo();
        startInfo.CreateNoWindow = false;
        startInfo.UseShellExecute = false;
        startInfo.RedirectStandardInput = true;
        startInfo.FileName = "psftp.exe";
        startInfo.WindowStyle = ProcessWindowStyle.Hidden;
        startInfo.Arguments = "LOGIN@SERVER";

        try
        {
            // Start the process with the info we specified.
            // Call WaitForExit and then the using statement will close.
            using (Process exeProcess = Process.Start(startInfo))
            {
                StreamWriter sw = exeProcess.StandardInput;
                sw.WriteLine("NASZE_HASŁO");
               // sw.Flush();
                System.Threading.Thread.Sleep(5000);
                sw.WriteLine("cd www/uploads");
                sw.WriteLine("put " + fileName);
                sw.Flush();
                sw.WriteLine("quit");
                sw.Close();
                exeProcess.WaitForExit();
            }
        }
        catch
        {
            //eror
        }        
    }
}

I wystarczy przeciągnąć plik na skrót tego programu, by go wysłać i dostać adres o przekazania wink

Na nowo?

,

Dawno nic tu nie pisałem, zamiłowanie Debianem jako desktopem minęło.. W internecie głosy sprzeciwu i wojna o ACTA.
Nie będę się rozpisywał co to i dlaczego.
Napiszę tylko, że też jestem przeciw!

Zachęcam do złożenia swojego wpisu, jestem pewny, że wygramy.
http://www.jestemprzeciwacta.pl/

Zmiana rozdzielczości ekranu bootowania i konsol TTY w Debianie

, ,

Jeżeli denerwuje was rozdzielczość 640x480 podczas ładowania się systemu, a także podczas przełączania się pomiędzy konsolami TTY (ctrl+alt+F[1-6]), jest na to prosta rada:

Edytujemy plik:
su
nano /etc/default/grub

Dodajemy vga=0x031b, do linijki:
GRUB_CMDLINE_LINUX_DEFAULT="quiet vga=0x031b" 

zapisujemy zmiany w pliku, następnie wydajemy polecenie:
update-grub


I możemy się cieszyć rozdzielczością 1280x1024 i 24 bits

Pozostałe rozdzielczości są takie :

Mode 0x0317: 1024x768 (+2048), 16 bits
Mode 0x0318: 1024x768 (+4096), 24 bits
Mode 0x031a: 1280x1024 (+2560), 16 bits
Mode 0x031b: 1280x1024 (+5120), 24 bits
Mode 0x0330: 320x200 (+320), 8 bits
Mode 0x0331: 320x400 (+320), 8 bits
Mode 0x0332: 320x400 (+640), 16 bits


Tak nieco innaczej - A co gdyby? Gdyby zainfekować Portal Społecznościowy?

, , , ...

Dwa serwisy należące do firm Google i Microsoft zaatakowane eksploitami typu drive-by. Serwis strony abc zablokowany przez hakerów! - Słyszymy, a raczej czytamy co chwilę.

A co jakby skutecznie zaatakować popularny portal społecznościowy? Rozejście się infekcji po naprawdę dużej liczbie użytkowników w jednostkę czasu była by nieporównywalnie większa od rezultatów otrzymanych po ataku chociażby jakiejś strony rządowej.
Spora część użytkowników takich portali odwiedza je Codziennie, nieraz kilka – kilka naście razy dziennie, czasami nawet co 15 minut.
Komputery tych użytkowników przeważnie nie są dobrze zabezpieczone przed szkodliwym oprogramowaniem. Więc botnet powstał by w mniej niż 12h.

A jakie były by skutki? Wyobraźmy sobie wszystkich klientów firmy np. TPSA którzy sami przeprowadzają atak ddos na własnego ISP? smile

Fences - Windows 7 jeszcze bardziej jak KDE4

,

Długo tu już nic nie pisałem, blog z Linuksowego, powoli zmienia się w Windowsowy. Czy to dobrze? Nie wiem wink
Ostatnio natrafiłem na ciekawy programik pod Windows, czyli Fences!
Testowałem i działa poprawnie z XP, Vista i 7

Program umożliwia organizowanie ikon na naszym Windowsowym pulpicie. Wygląda to jak wyświetlanie katalogu w KDE4
Zresztą, przyjrzyjcie się zdjęciu mojego pulpitu :


Możemy tworzyć dowolną ilość takich "płotków", można je dowolnie przenosić, ikony w nich są auto rozmieszczane, a jak się nie mieszczą, to po najechaniu na takiego "fencea" pojawia się scroll do przewijania!
Natomiast dwu-klik na pulpicie ukrywa wszystkie ikonki smile

Linki

fanboy wink

, ,



Skrót do wielu opcji i ustawień w Windows 7.

, , ,

Możemy zrobić skrót do wielu ciekawych ustawień systemu Windows 7.
Wystarczy stworzyć katalog, o specjalnie przygotowanej nazwie:
Użytki.{ED7BA470-8E54-465E-825C-99712043E01C}
Część pogrubioną możemy wpisać dowolną, proponuję "Użytki".
Część po kropce musi pozostać w niezmienionym formacie.
Po takim zabiegu, nasz nowy katalog zamienia się w skrót do wielu ustawień systemu.



Windows 7 przyłapany.

, ,

Stało się, udało mi się zawiesić uruchamiane usługi razem z rozruchem systemu Windows 7.
Jak widać usługi mają swoje okienka, których normalnie nie ujrzymy.


Wszystkie te okna tak zostały, musiałem zrestartować system.

Karty ATI Radeon HD i WiFi Broadcom bc4322

, , , ...

dodane 4 sierpnia 2010: Oczywiście na stronach ATI/AMD można pobrać własnościowe sterowniki do kart graficznych w postaci pliku .run, zajmują około 90-100MB, i nawet nie rozchrzaniają całego systemu smile


Jest to pierwszy wpis odkąd zmieniłem laptopa z DV6000 na DV4-1275mx, trochę się obawiałem karty firmy ATI pod Linuksem, ale społeczność OpenSource poczyniła znaczne postępy od mojego ostatniego kontaktu w takim zestawieniu.

Zainstalowałem Debiana Squeeze (aktualny Testing), instalacja przechodziła prawie tak samo jak w przypadku DV6000.

Sterowniki do grafiki HD 3200 instalujemy poprzez
aptitude install fglrx-driver fglrx-source


Natomiast kartę WiFi BroadCom'a
aptitude install module-assistant wireless-tools
m-a a-i broadcom-sta
modprobe wl

Elive Gem - Debian z Enlightenment

, ,

Ostatnio krążąc po sieci natrafiłem na ciekawą dystrybucję opartą na Debianie, Elive Gem.
Jest to dystrybucja która prostotą nie ustępuje Ubuntu, prawie wszystko z naszego laptopa Dv6000 wykrywa automatycznie, polecam do testowania smile


Strona Elive Gem

Osobiście pobrałem wersje Testową, ale nie jest jeszcze dobrze dopracowana (ogolnie E17 w moim odczuciu nie jest do codziennej pracy)