Debian / Ubuntu relocation error, error code (127) după actualizările recente

Vine o vreme când apar surprize cauzate de actualizări și în zona Debian / Ubuntu.

Cea mai recentă surpriză este eroarea de genul:

relocation error /usr/lib/x86_64-linux-gnu/libgnutls.so.30: symbol _idn2_punycode_decode version IDN2_0.0.0 not defined in file libidn2.so.0 with link time reference

De la asta, module din apache2.4 nu vor mai vrea să funcționeze (modsecurity2 fiind unul dintre ele), curl (și librăriile php-curl) și încă câteva.

În majoritatea cazurilor de azi-noapte încoace m-am lovit de astfel de erori:

 /usr/lib/apt/methods/http: relocation error: /usr/lib/x86_64-linux-gnu/libgnutls.so.30: symbol _idn2_punycode_decode version IDN2_0.0.0 not defined in file libidn2.so.0 with link time reference
/usr/lib/apt/methods/http: relocation error: /usr/lib/x86_64-linux-gnu/libgnutls.so.30: symbol _idn2_punycode_decode version IDN2_0.0.0 not defined in file libidn2.so.0 with link time reference
/usr/lib/apt/methods/http: relocation error: /usr/lib/x86_64-linux-gnu/libgnutls.so.30: symbol _idn2_punycode_decode version IDN2_0.0.0 not defined in file libidn2.so.0 with link time reference
/usr/lib/apt/methods/http: relocation error: /usr/lib/x86_64-linux-gnu/libgnutls.so.30: symbol _idn2_punycode_decode version IDN2_0.0.0 not defined in file libidn2.so.0 with link time reference
/usr/lib/apt/methods/http: relocation error: /usr/lib/x86_64-linux-gnu/libgnutls.so.30: symbol _idn2_punycode_decode version IDN2_0.0.0 not defined in file libidn2.so.0 with link time reference
/usr/lib/apt/methods/http: relocation error: /usr/lib/x86_64-linux-gnu/libgnutls.so.30: symbol _idn2_punycode_decode version IDN2_0.0.0 not defined in file libidn2.so.0 with link time reference
/usr/lib/apt/methods/http: relocation error: /usr/lib/x86_64-linux-gnu/libgnutls.so.30: symbol _idn2_punycode_decode version IDN2_0.0.0 not defined in file libidn2.so.0 with link time reference
/usr/lib/apt/methods/http: relocation error: /usr/lib/x86_64-linux-gnu/libgnutls.so.30: symbol _idn2_punycode_decode version IDN2_0.0.0 not defined in file libidn2.so.0 with link time reference
/usr/lib/apt/methods/http: relocation error: /usr/lib/x86_64-linux-gnu/libgnutls.so.30: symbol _idn2_punycode_decode version IDN2_0.0.0 not defined in file libidn2.so.0 with link time reference
Reading package lists... Done
E: Method http has died unexpectedly!
E: Sub-process http returned an error code (127)
E: Method /usr/lib/apt/methods/http did not start correctly
E: Method http has died unexpectedly!
E: Sub-process http returned an error code (127)
E: Method /usr/lib/apt/methods/http did not start correctly
E: Method http has died unexpectedly!
E: Sub-process http returned an error code (127)
E: Method /usr/lib/apt/methods/http did not start correctly
E: Method http has died unexpectedly!
E: Sub-process http returned an error code (127)
E: Method /usr/lib/apt/methods/http did not start correctly
E: Method http has died unexpectedly!
E: Sub-process http returned an error code (127)
E: Method /usr/lib/apt/methods/http did not start correctly
E: Method http has died unexpectedly!
E: Sub-process http returned an error code (127)
E: Method /usr/lib/apt/methods/http did not start correctly
E: Method http has died unexpectedly!
E: Sub-process http returned an error code (127)
E: Method /usr/lib/apt/methods/http did not start correctly
E: Method http has died unexpectedly!
E: Sub-process http returned an error code (127)
E: Method /usr/lib/apt/methods/http did not start correctly
E: Method http has died unexpectedly!
E: Sub-process http returned an error code (127)
E: Method /usr/lib/apt/methods/http did not start correctly

punycode_decode_version_IDN2_0.0.0_not_defined_in_file_libidn2.so.0

 

Soluția (cel puțin temporară) este următoarea:

 # wget http://ftp.us.debian.org/debian/pool/main/libi/libidn2/libidn2-0_2.0.5-1_amd64.deb

# sudo dpkg -i libidn2-0_2.0.5-1_amd64.deb

După instalare, un apt-get update && apt-get upgrade -y ar trebui să rezolve problemele.

 

 

 

 

6 martie – lansare Păcatele fiului de Theo Anghel

Pasionații de istorie vor găsi probabil legătura din titlu 🙂 dar nu despre Vișinschi vreau să povestesc deși tot despre demoni prezenți pe meleagurile noastre ar putea fi vorba.

Așadar, pe 6 martie 2019, intr-o superbă seară de primăvară, la cafeneaua Lente din București intr-una din edițiile săptămânale ale Clubului de lectură “Eu citesc” a avut loc lansarea celui mai recent volum (cel de-al treilea) al seriei “Păcatele fiului” serie scrisă de Theo Anghel (după mine cea mai tare autoare de literatură fantasy din România), volum despre care se presupune că ar trebui (în stilul plin de suspans, umor și uneori erotism cu care ne-a obișnuit Theo Anghel) -, să aducă lumină în relația dintre Lia și Luca. Mă voi încăpățâna să nu dau spoilere, cărțile acestea chiar merită să fie citite, orice aș spune eu aici ar putea duce la formarea vreunei idei care s-ar putea dovedi greșite la final.

Am reușit să ajung acolo împreună cu Iulia și Bianca (aflată la prima ei lansare de carte, acum dornică să mă însoțească și la alte lansări).

Lansare Pacatele fiului

Lume faină acolo la lansare, sala în care s-au întâmplat lucrurile a devenit destul de repede neîncăpătoare (dacă autorii români ar avea parte de vizibilitatea pe care o merită eu unu’ aș pune o ladă de bere pe masă că o Theo Anghel ar avea nevoie de Sala Palatului pentru lansările sale) iar atmosfera a fost atât de mișto încât după primele minute parea că suntem o gașcă de prieteni adunați să sărbătorim împreună, în avans 8 și 9 martie.

Am avut parte de o recapitulre a întâmplărilor din primele două volume, de o sesiune de întrebări și răspunsur și chiar și o scenetă în care a fost interpretată una dintre scenele cele mai interesante din primul volum. Aici, la faza cu sceneta au cedat probabil și ultimele fețe serioase, felul în care s-a jucat (nu-mi dau seama dacă au avut idee la început de efectul pe care-l va avea sceneta) și felul în care a ieșit totul a transformat momentul într-o adevărată ședință de terapie prin râs.

Probabil că nu are rost să menționez că noaptea care a urmat a fost una albă, acest al treilea volum al Păcatelor fiului ținându-mă treaz și “în priză” de la prima până la ultima pagină.

Nu știu alții cum sunt 🙂 dar asupra mea cărțile scrise de Theo au același efect pe care-l are George R. R. Martin sau, în copilărie Jules Verne. Așa că deja aștept următoarea carte pe care o va publica Theo, fiind convins că mă va captiva de la prima copertă până la ultima.

Cărțile scrise de Theo Anghel (seria Am Murit Din Fericire, Rochia aurie și de acum trilogia Păcatele fiului) pot fi comandate de la Editura Quantum Publishers, editură care se încăpățânează să primească autori români tineri (autoarea “tăvălug” Sandra Coroian  – care scrie un S.F. contra-indicat cardiacilor -, sau Mihaela Strenc – ale cărei cărți sunt o îmbinare incredibilă de fantasy și sensibilitate, dar și alții care scriu la fel de bine), să le tipărească lucrările și să-i susțină într-o piață în care marile edituri se mulțumesc să traducă autori “consacrați”, mergând pe drumul cu riscuri minime spre profit.

Multumim pentru invitație Theo, cu siguranță vom încerca să-ți fim alături la următoarele lansări 🙂 .

Bash-it – un framework cu ajutorul căruia îți poti controla aliasurile și scripturile

Bash-it este un pachet de scripturi și comenzi pentru versiuni ale Bash mai noi de 3.2, pachet făcut de comunitatea Bash și care aduce funcții modificate, teme, aliasuri, auto-completarea comenzilor și multe alte lucruri interesante. De asemenea aduce o serie de unelte pentru dezvoltatori, integrări ale unor comenzi pentru git și multe alte scripturi cu ajutorul cărora îți ușurează munca zilnică.

Cum se instalează Bash-it în sistemele de operare GNU/Linux

Pentru a instala Bash-it se clonează în primul rând repo-ul într-o destinație la alegerea utilizatorului:

$ git clone --depth=1 https://github.com/Bash-it/bash-it.git ~/.bash_it

Odată clonarea încheiată se rulează următoarea comandă pentru instalare (fișierele ~/.bash_profile sau ~/.bashrc – în funcție de sistemul de operare folosit vor fi salvate automat)

$ ~/.bash_it/install.sh

Veți fi întrebat “Would you like to keep your .bashrc and append bash-it templates at the end? [y/N]”, răspundeți după preferință.

Odată instalarea terminată aceasta poate fi verificată cu ajutorul comenzii ls. Fișisrele și directoarele ar trebui să fie afișate.

Cum poate fi modificat Bash-it în Linux

Bash-it poate fi modificat oricând editând fișierul ~/.bashrc.
Pentru a vedea lista aliasurilor, completărilor și modulelor suplimentare instalate și/sau disponibile se pot rula următoarele comenzi (care de asemenea vor indica cum se pot activa și dezactiva):

$ bash-it show aliases
$ bash-it show completions
$ bash-it show plugins

Pentru a vedea ce aliasuri sunt active se folosește următoarea comandă:

$ alias

Toate aliasurile pot fi găsite în directorul aflat aici: $HOME/.bash_it/aliases/ .
De exemplu, să activăm aliasurile pentru apt:

$ bash-it enable alias apt

Reîncărcam apoi Bash-it pentru a vedea rezultatul:

$ bash-it reload
$ alias

Din ce putem vedea, aliasurile pentru apt au fost activate

Mișcarea inversă se face astfel:

$ bash-it disable alias apt
$ bash-it reload

Căile generale sunt următoarele:

Completările pot fi găsite aici – $HOME/.bash_it/completion/
Modulele suplimentare – $HOME/..bash_it/plugins/
Toate elementele activate pot fi găsite în directorul $HOME/.bash_it/enabled .

Cum spuneam la început, Bash-it are oferă și mai mult de 50 de teme, cea implicită fiind bobby. Tema activă poate fi aflată afișând valoarea variabilei env BASH_IT_THEME

echo $BASH_IT_THEME

Temele pot fi găsite în directorul $BASH_IT/themes .

$ ls $BASH_IT/themes

Aceste teme pot fi previzualizate înainte de a fi folosite cu comanda:

$ BASH_PREVIEW=true bash-it reload

Iar aplicarea uneia dintre ele se poate face editând fișierul .bashrc și adăugând următoarea linie (cu numele temei alese):

$ export BASH_IT_THEME='essential'

Salvați apoi fișierul și reîncărcați-l

$ source $HOME/.bashrc

Căutarea de noi plugin-uri, completări sau aliasuri specifice diferitelor limbaje de programare sau medii de dezvoltare poate fi făcută ușor astfel (de exemplu căutăm ceva legat de comenzile pe care le utilizăm frecvent):

$ bash-it search python pip pip3 pipenv
$ bash-it search git

Iar dacă aveți nevoie de ajutor puteți rula comenzile:

$ bash-it help aliases
$ bash-it help completions
$ bash-it help plugins

Orice scripturi, aliasuri etc. adiacente pot fi adăugate în directoarele respective:

aliases/custom.aliases.bash
completion/custom.completion.bash
lib/custom.bash
plugins/custom.plugins.bash
custom/themes//.theme.bash

Pentru a avea întotdeauna cea mai recentă versiune a Bash-it rulați:

$ bash-it update

Iar dacă la un moment dat nu vreți să mai folosiți Bash-it acesta se dezinstalează astfel:

$ cd $BASH_IT
$ ./uninstall.sh

Scriptul uninstall.sh va restaura fișierele de pornire folosite anterior instalării. Odată procesul încheiat directoarele Bash-it pot fi șterse manual.

$ rm -rf $BASH_IT

Mai multe detalii despre cum poate fi folosit Bash-it puteți afla rulând comanda:

$ bash-it help

Pentru mai multe informații puteți accesa pagina de Github https://github.com/Bash-it/bash-it.

Cel mai mare cablu subacvatic stabilește un nou record

Cablul subacvatic cu cea mai mare capacitate din lume, pe numele său MAREA este capabil să susțină viteze de transfer cu 20% mai mari decât era estimat până acum.

marea-1
Foto @dw.com

Acest cablu transatlantic, deținut în colaborare de Microsoft și Facebook are o lungime de aproape 6500 de kilometri este operat de Telxius și se întinde între Bilbao (Spania) și Virginia Beach (SUA) iar un test recent realizat cu modularea de 16 QAM a atins viteze de 26,2 Terabiti pe secundă. Acest lucru indică o îmbunatățire de 20% față de cei 20 Tbps pe fiecare pareche dintre cele opt perechi de fibră optică reprezentând viteza maximă inițială pentru care a fost proiectat să funcționeze.

marea-2
Foto @fossbytes.com

Testul a fost făcut de cercetătorii de la Infinera și aduce două vești bune: prima ar fi că s-a demonstrat cum se pot susține viteze mari de transfer pe distanțe foarte lungi; a doua fiind că se pot obține îmbunătățiri ale capacității de transfer folosind cablurile deja existente, fără a mai croșeta altele noi pe fundul oceanului.

Acest test deschide noi oportunități iar în curând vom auzi probabil și alte vești pe măsură ce nevoile de comunicare între Americi și Europa cer tot mai multă bandă.

Paginile individuale de pornire ale Google Sheets, Docs și Slides au primit actualizările Google Material Theme.

Acum 10 ani când am început să scriu aici, prima postare a fost despre Google.

Coincidență sau nu, azi am din nou ceva de zis despre Google pentru că în ultimile două zile au tot venit lucruri interesante din zona lor.

Astăzi, așadar este vorba de redesenarea aplicațiilor web folosind Google Material Theme.

Anul trecut la Google I/O 2018 am văzut implementarea Matherial în Google Drive. Răspunsurile venite de la utilizatori (în zonele în care este mai utilizat decât pe meleagurile mioritice) au fost pozitive iar cei de la Google au continuat aplicarea noii “teme” în celelate aplicații. Astfel că putem vedea la lucru Google Material Theme pe versiunile web ale paginilor individuale de produs pentru Google Docs, Sheets și Slides acestea fiind cele mai recente aplicații actualizate, utilizarea acestor aplicații din varianta web fiind acum similară cu cea de pe versiunile de Android sau iOS.

Înainte de această redesenare a interfețelor, bara de aplicații pentru fiecare dintre aceste trei aplicații era făcută în așa fel încât să se “încadreze” cu Gmail, Drive și Calendar, icoana fiecărei aplicații fiind afișată pe același rând cu numele, în partea stângă și cu o bară de căutare lângă.

Acum zona majoritară a paginii, mulțumită și Google Sans afișează o zonă mult mai degajată și cu un background mai luminos în secțiunea “Start a new document” din zona șabloanelor. Butonul de “Blank” document a fost de asemenea redesanat și acum apare ca un semn de “+” în culorile Google, în aceeași notă cu butoanele pentru Google Drive sau alte aplicații din G Suite.

google-docs

Mai sunt și alte butoane și icoane modificate cu această ocazie, actualizările poate că nu aduc îmbunătățiri în funcționalitate însă fac acum paginile individuale mai “consistente” și mai asemănătoare cu pagina principală Drive.

Ușor, ușor aplicațiile Google ajung să fie similare atât în versiunile mobile cât și pe cele web, funcționalitatea lor se dezvoltă și este foarte probabil ca în curând să ajungă la un nivel apropiat de aplicațiile deja consacrate (nu cred că vor putea concura prea curând suita Office, dar vor putea fi considerate o aleternativă bună pentru utilizatorii care au nevoie doar să acceseze sau să facă mici modificări în documente).

10 ani!

Fără să-mi dau seama au trecut 10 ani de când există alex.burlacu.org 🙂

Ani în care acest “loc de joacă pentru idei” cu i-am spus la început m-a ajutat să cunosc oameni faini, să descopăr lucruri noi și să-mi aminteasc lucruri pe care altfel le-aș fi uitat.

Recunosc, atunci când am făcut acest blog nu credeam că va rezista atât. Nu-mi propusesem un țel în acest sens, de asta probabil nu m-a deranjat să îl închid pentru câteva luni acum câțiva ani.

Cumva am strâns aici vreo șapte sute și ceva de postări, multe dintre ele trezindu-mi azi amintiri frumoase.

Acuma nu-mi rămâne decât să desfac o bere diseară pentru acești 10 ani 🙂

tort-de-10-ani

Migrarea unui repo git cu tot cu branch-uri în alt mediu, pe alt server.

A venit și acel moment din viață în care mi-am pus problema migrării unui repo git de pe un server pe altul cu păstrarea branch-urilor și a istoricului acțiunilor.
Și cum altfel decât între medii diferite, fără acces direct între ele.
Ar fi trebuit să fie simplu, dar s-a dovedit că e puțin mai mult de muncă, așa că adun aici (poate așa reușesc să repet mișcarea asta vreodată) lista pașilor de urmat.

Primul pas este să aduc pe local toate datele de pe repo, cu toate branch-urile:

[email protected]:~$ git clone [email protected]:proiectulmeu/test.git

Apoi vine rândul fiecărui branch în parte și încă un pull ca să fie treaba sigură:

[email protected]:~/test$ cd test
[email protected]:~/test$ git checkout master
[email protected]:~/test$ git pull -f
[email protected]:~/test$ git checkout development
[email protected]:~/test$ git pull -f
[email protected]:~/test$ git checkout test
[email protected]:~/test$ git pull -f

Fac apoi un director în care să adun bundle-ul proiectului git:

[email protected]:~$ mkdir bundles

Având toate branch-urile local, am adaptat scriptul făcut de Pagan Maganti (https://github.com/pmaganti/git-bundler/blob/master/bundler.sh) pentru a face un fișier bundle cu toate branch-urile, versiunea mea ajungând să arate cam așa:

#!/bin/bash
cd /home/alex/test
for branch in `git branch -a | grep remotes | grep -v HEAD | grep -v master `; do
git branch --track ${branch#remotes/origin/} $branch || git branch
done && git bundle create ../bundles/test.bundle --all && git bundle verify ../bundles/test.bundle"

În momentul ăsta sunt fericitul posesor al unui bundle care (teoretic) conține toate branch-urile de pe repo-ul care trebuie migrat.

Odată ajuns fișierul cu bundle-ul în noul său mediu, ar fi de restaurat în noua casă și pornită treaba mai departe.

Până aici treaba e destul de simplă, fiind plin internetul de instrucțiuni (exceptând manualul de git care e destul de cuprinzător), și probabil că pot fi numit un vașnic absolvent al școlii ajutătoare de git.

Pe mașina cea nouă bundle-ul terbuie “despachetat”.
După inițializarea unui git nou, desfac budle-ul și fac un merge pe HEAD folosindu-i id-ul. Apoi se fac remapările pentru branch-uri și se “curăță” cu un reset –hard.

[email protected]:~$ mkdir test
[email protected]:~$ cd test
[email protected]:~/test$ git init
[email protected]:~/test$ git bundle unbundle ../test.bundle
[email protected]:~/test$ git merge d7fd1f4f
[email protected]:~/test$ git fetch -u ../test.bundle 'refs/*:refs/*'
[email protected]:~/test$ git reset --hard

“În acest mod simplu, pomul ajunge lângă fereastră. Aici, avem avantajul că odată cu pomul putem aprinde și perdeaua.”… asta era din altă scenetă, nu cu git, dar e cumva din același serial.
Acum ar trebui ca proiectul împreună cu toate branch-urile sale să fie restaurate local, calde și numai bune de a fi urcate pe serverul cel nou.

[email protected]:~/test$ git remote add origin https://[email protected]/proiectulmeu/test.git
[email protected]:~/test$ git push --mirror origin

Acum proiectul este restaurat complet în noul său mediu, cu tot istoricul commit-urilor, cu branch-uri și toate cele necesare continuării dezvoltării în noul mediu de lucru.

 

Răspunsul meu pentru tine, moto-vloggere

Te salut moto-vloggere.

Ai două zeci și ceva de ani, ai terminat sau ești pe cale să termini o facultate, ai permis, o motocicletă, bani de benzină și o cameră video și te prezinți peste tot “moto-vlogger”.

În primul rând, dă-mi voie să te felicit. Ești deja mult mai tare decât am fost eu la vârsta ta. Recunosc, la două zeci de ani încă-mi era proaspăt în nări mirosul cauciucurilor Hoinarului din vitrina IDMS-ului de pe bucla din Dr. Taberei. Așadar, felicitări.

Datorită acestei pasiuni comune, ne întâlnim pe la diverse evenimente la care ajung cei care iubesc sentimentul pe care îl dau astea două roți care ne unesc în pasiune.

Indiferent de modelul de motocicletă și/sau stilul de mers, te-am auzit cum te plângi și mă întrebi mai mult sau mai puțin direct, de ce nu te bagă în seamă firmele mari, de ce nu vin la tine să le promovezi produsele în filmările tale.

Fiindcă de cele mai multe ori astfel de întrebări ajung să fie adresate când eu sunt mai atent la muzica din jur (fie ea doar cea a motocicletelor) sau la berea din propria-mi halbă, dă-mi voie să-ți răspund acum la întrebarea ta.

După mine, problema ta începe de la prima frază de am menționat-o mai sus – faptul că tu te prezinți din start “moto-vlogger”. Că tu în loc să vorbești despre ce anume faci cu plăcere (de exemplu, faptul că mergi cu motocicleta), tu te prezinți cu numărul de subscraibări, folouări și mai știu eu ce alte lucruri care ar trebui (în viziunea ta) să te identifice ca fiind mai bun decât ceilalți o sută de mii de moto-vloggeri care le-au bătut la ușă în ultimul an.

Orice firmă mai mare, care are un buget de publicitate bine definit și gestionat de oameni cu cap, te va trimite la plimbare încă din primele minute și va căuta în locul tău un jurnalist cu experiență în zona moto. De ce? Pentru că, pe ei îi interesează promovarea produselor lor. Nu îi interesează cum faci tu wheelie-uri, cât de fain înjuri tu în cască în timp ce te dai cu suta pe Magheru, cu atât mai puțin nu îi interesează motocicleta ta sau echipamentul pe care îl porți. Ei vor să se vadă în primul rând produsele lor, să audă o evaluare a produselor lor și, mai ales, ca tot acest proces să nu se întoarcă niciodată împotriva lor. “Îl ții minte pe X-sulescu, moto-vloggerul care povestea cât de tari sunt produsele Y? L-au dat la știrile de la ora 5. A căzut când se dădea pa A2 cu 230km/h. E viu, dar mobra e zob”. Ăsta e momentul în care numele tău și asocierea lui cu produsele lor este un dezavantaj. Cum crezi că se simte acel director de marketing care și-a lăsat o parte din bugetul lui în buzunarul tău, când în filmulețele tale, în timp ce apare într-adevăr sigla lui, se aud înjurăturile tale?

Dacă n-ai reușit să afli până acum, deasupra căștii tale, la 30 de centimetri, nu scrie nici numărul de folouări, nici câți subscraibări ai tu pe youtube. Aceste cifre cu care te lauzi (mai ales dacă sunt bazate pe copii care nu au mers în viața lor pe motocicletă) nu îți dau nici un fel de drepturi suplimentare pe stradă față de cei care merg cu un amărât de scuter chinezesc la muncă sau la pescuit, sau față de cei care au nerușinarea să nu poarte o cameră pe cască. Așa că nu te aștepta ca cineva să-ți accepte de exemplu să te bagi în fața lui la pompă, în benzinărie, pentru că tu ești moto-vlogger și nu poți sta la coadă cu prostimea, pentru că tu ai de filmat “evenimentul”, ești la job, nu la distracție ca restul lumii. Da, că și eu stăteam în casă și mă-ntrebam unde-mi pot scobi mucii din nas mai bine și de aceea am ieșit la întrunirea asta și stau așa la coadă la pompă ca să nu stau pe canapea acasă.

Lasă-te de pișcotăreală. La târguri, evenimente și mai știu eu unde ajungi tu, nu mai încerca să îți iei berea gratis lăudându-te cu camera de pe cască și stickerul ăla cu canalul  tău. Sunt sătui oamenii de acolo de cereri de intrare gratuită și bere gratuită.

Nu uita că vlogging-ul sau cum vrei tu să-i spui, nu este jurnalism, iar de ceva ani, sunt acolo, în școlile alea de jurnalism niște reguli (pe care mulți absolvenți ai școlilor ajutătoare de jurnalism – cum bine le zice Exarhu -, odată ajunși în presă le uită, sau pe care nu le-au învățat) în baza cărora se construiește orice articol, fie el audio, video sau scris.

Vrei să colaborezi cu firme mari? Lasă în primul rând egoismul la o parte. Încearcă apoi să mergi legal, mai legal decât papa și, foarte important, ai mare grijă la ce-ți iese pe gură. Dacă nu ești în stare să improvizezi, fă-ți povestea de acasă, fă-ți scenariul, repetă până memorezi ce ai de zis și turuie în alea x minute pe care le filmezi, fiind coerent și eventual fără să înjuri. Dacă reușești să faci asta, poate într-o bună zi o să te primească la masă vreo companie care să-ți încredințeze acel contract prin care tu să le prezinți lor produsele.

Dar pentru asta, tu trebuie să dovedești că ești în stare să le aduci lor un beneficiu pe termen lung, cu cât mai puține riscuri pentru ei, pentru că ei îți acordă încrederea lor, înaintea banilor sau produselor pe care le vei primi.

Acestea fiind zise, îți doresc mulți kilometri faini în șaua motocicletei tale, fără evenimente neplăcute, asfalt să fie doar dacă vrei și așa cum ți-l dorești și te rog să nu te superi dacă eu îmi voi vedea în continuare de berea mea și voi părea nepăsător la problemele tale legate de numărul de urmăritori și lipsa de interes a unora față de aspirațiile tale.

Ctrl+Alt+Delete prin mai multe conexiuni Remote Desktop

Vine uneori momentul în care dintr-o conexiune RDP pe o mașină Windows, trebuie să te conectezi la altă mașină, de pe care, de ce nu, pe altă mașină… iar pe aceasta din urmă să ai nevoie de un Ctrl+Alt+Delete.

Dacă în prima conexiune se poate rezolva cu Ctrl+Alt+End, pe mașinile următoare, soluția aceasta ajută.

Așadar, pe următoarele mașini soluția este On Screen Keyboard.

Start > Run și apoi osk.exe

După care Ctrl+Alt de pe tastatură și Delete din On-Screen-Keyboard.

Situație neplăcută după ceva upgrade de Ubuntu legată de /etc/init.d/screen-cleanup

S-a întâmplat moment de upgrade la ceva servere de la versiuni mai vechi de Ubuntu… și au apărut și primele situații neplăcute.

Din categoria “Note to self” ca să mă romglezesc corespunzător, în cazul în care mă mai lovesc de următoarea situație:

initctl: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused
insserv: warning: script 'screen-cleanup' missing LSB tags and overrides
insserv: Default-Start undefined, assuming empty start runlevel(s) for script `screen-cleanup'
insserv: Default-Stop undefined, assuming empty stop runlevel(s) for script `screen-cleanup'

Soluția este:

sudo mv /etc/init.d/screen-cleanup.dpkg-new /etc/init.d/screen-cleanup

După asta trebuie reactivate serviciile care nu mai voiau să pornească automat din cauza “ororii” de mai sus.

© 2009-2019 Alex. Burlacu
%d bloggers like this: