Tag: Ubuntu

  • Crossgrading Ubuntu 18.04 to Debian 10

    After upgrading all Ubuntu 18.04 packages to their latest releases, I adapted eudoxos‘ recipe:

    1. Rebooted and selected the stock 18.04 kernel instead of HWE, which I was using
    2. Downloaded debian-keyring and debian-archive-keyring .debs and installed them with dpkg -i debian*.deb
    3. Created /etc/apt/preferences.d/10-no-ubuntu to pin down Ubuntu packages:
      Package: *
      Pin: release o=Ubuntu
      Pin-Priority: -1000
    4. Added Debian sources for buster to the end of /etc/apt/sources.list:
      deb http://deb.debian.org/debian buster main contrib non-free
      deb http://deb.debian.org/debian-security/ buster/updates main contrib non-free
      deb http://deb.debian.org/debian buster-updates main contrib non-free
    5. apt update && apt-get dist-upgrade
    6. Answered “no” to all configuration changes questions (I’ll update them later)
    7. Post-install, networking was non-functional. Apparently this was caused by Apparmor, so I disabled it (systemctl disable apparmor.service) and rebooted.
    8. Deleted /etc/apt/preferences.d/10-no-ubuntu
    9. Then it was time for manual package surgery. Lots and lots of it. Searching for remaining Ubuntu packages is easy enough, with
      dpkg -l | grep ubuntu

      and

      aptitude search '?narrow(?installed, ?not(?origin(Debian)))'

      Many of the matching packages can be removed/downgraded to their Debian versions without issue, but a bunch of gcc and python packages turned out to be tricky, and had to be downgraded all together. I did make notes, but following them blindly would most likely just do more harm than good, so I won’t post them here; you’ll need to hack’n’slash your own way anyway.

  • LineageOS 16.0:n asennus Samsung Galaxy Tab 4:ään (SM-T530/SM-T535)

    Sama käännös on saatavilla myös pienemmille varianteille, mutta dokumentoin tässä vain nämä kymmentuumaiset, joiden kanssa tästä on omakätistä kokemusta, ja näistäkään en 3G-varianttia (SM-T531) ole koskaan nähnytkään. (En tiedä onko sitä Suomessa myytykään.)

    Edellytykset
    Laitteisto
    1. 10-tuumainen Samsung Galaxy Tab 4 (SM-T530/SM-T535)
    2. Tietokone, jossa laadukas USB-portti. Odin vaikutti ronkelilta tuon suhteen, sillä esimerkiksi oman läppärini kolmesta USB-portista sille kelpasi vain yksi.
    3. laadukas USB-kaapeli (tabletin ja tietokoneen kytkemiseen)
    Ohjelmisto
    1. Odin3 v3.14.1_3B_PatcheD Windowsille, tai Linuxin puolella Heimdall v.1.4.1. Itse käytin ( Ubuntu 22.04:ssä) Heimdallista versiota 1.4.3. Applen tietokoneissakin Heimdallin pitäisi toimia, mutta niistä minulla ei ole kokemusta.
    2. TWRP matisselle. Jos käytät Heimdallia, valitse .img-paketti. Jos käytät Odinia, valitse sen sijaan .tar-paketti (esim. twrp-3.6.0_9-0-matisse.tar). Mieluusti uusin (joka tätä kirjoittaessani 3.7.0_9), mutta XDA:lla käytetty tiedostonjakopalvelu on niin rikki, että sain vain 3.6.0_9-0:n sieltä ulos, joten sitä käytin.
    3. LineageOS 16.0 -ROM-tiedosto. Varmista, että paketin nimessä on laitetta vastaava koodinimi! SM-T530:n koodinimi on matissewifi, SM-T535:n matisselte. Tässäkin uusin (tätä kirjoittaessani 2022-10-20) olisi mieluisin, mutta sama jakeluhäiriö kuten edellä, joten jouduin asentamaan yli vuoden vanhan käännöksen SM-T530:een (lineage-16.0-20211013-UNOFFICIAL-matissewifi.zip SM-T530:een), ja melkein vuoden vanhan SM-T353:een (lineage-16.0-20220209-UNOFFICIAL-matisselte.zip).
    4. Uusin OpenGApps. Valitse ARM-alusta (ei ARM64!), Android 9.0, kokovariantti oman maun ja käyttötarkoituksien mukaan. Itse asensin SM-T530:een minin, SM-T535:een picon. Asennushetkellä uusin julkaisu oli 2022-02-15.
    Suoritus
    Esivalmistelut
    1. lataa kaikki edellä luetellut ohjelmistot ja tiedostopaketit tietokoneelle
    2. päivitä tabletin alkuperäisohjelmisto uusimpaan versioonsa (Android 5.0.2)
    3. lataa tabletin akku täyteen (hyväkuntoisella akulla vähempikin riittää)
    4. palauta tabletti tehdasasetuksille (Settings → General → Backup and reset → Factory data reset
    5. käynnistä laite uudestaan ja ohita aloitusasetukset (älä kirjaudu tai syötä mitään tietoja, ohita kaikki mahdollinen)
    6. kytke tabletti USB-kaapelilla tietokoneeseen tiedostonsiirtoa varten
    7. kopioi tabletin Download-hakemistoon LineageOS:n zip-paketti ja OpenGAppsin zip-paketti
    8. sammuta tabletti
    9. irrota tabletti USB-kaapelista
    10. Käynnistä tabletti pitämällä yhtä aikaa pohjassa kotinappia, äänenvoimakkuuden miinus -nappia (joka on äänenvoimakkuusnapeista virtanapin puoleinen) ja virtanappia. Vapauta kaikki napit kun näytölle ilmestyy teksti (“Warning!! A custom OS can cause critical problems” jne.).
    11. paina äänenvoimakkuuden plus -nappia kerran
    12. kytke tabletti USB-kaapelilla tietokoneeseen
    TWRP:n asennus (Windowsissa)
    1. käynnistä Odin, kuittaa sen varoitus OK:lla
    2. mene Odinin Options-välilehdelle, ja ota siellä “Auto Reboot” pois päältä
    3. palaa Odinin Log-välilehdelle
    4. napsauta Odinin AP-nappia, etsi ja valitse TWRP:n tar-paketti
    5. Napsauta Odinin Start-nappia. Odinin Message-laatikkoon pitäisi ilmestyä teksti “All threads completed. (succeed 1 / failed 0)”
    6. sulje Odin
    TWRP:n asennus (Linuxissa)
    1. Suorita komentoriviltä seuraava komento ilman pääkäyttäjäoikeuksia, twrp:n img-tiedoston nimi ja -polku tarvittaessa soveltaen, ja --RECOVERY-parametri juuri kuten alla, eli isoin kirjaimin:
      heimdall flash --RECOVERY twrp-3.6.0_9-0-matisse.img --no-reboot
    LineageOS:n ja OpenGAppsin asennus
    1. irrota tabletti USB-kaapelista
    2. Käynnistä tabletti uudestaan pitämällä yhtä aikaa pohjassa kotinappia, äänenvoimakkuuden plus -nappia (joka on äänenvoimakkuusnapeista se virtakytkimestä kauempi) ja virtanappia. Vapauta kaikki napit vasta, kun näytölle ilmestyy Samsungin logo ja vasempaan yläkulmaan teksti “Recovery booting”. TWRP käynnistyy.
    3. Pyyhkäise Swipe to Allow Modifications -pyyhkäisyvalitsin vasemmalta oikealle.
    4. valitse TWRP:n päävalikosta Wipe → Advanced Wipe
    5. rastita
      • Dalvik/ART Cache
      • System
      • Data
      • Cache
    6. Pyyhkäise Swipe to Wipe -pyyhkäisyvalitsin vasemmalta oikealle. Näytölle ilmestyy pyyhkinnän etenemisestä kertovaa tekstiä, ja lopuksi yläpalkkiin “Wipe Complete” ja “Successful”.
    7. palaa TWRP:n päävalikkoon
    8. valitse TWRP:n päävalikosta Install
    9. valitse vasemman laidan hakemistonäkymästä Download-hakemisto
    10. valitse Lineage OS:n zip-tiedosto
    11. Pyyhkäise Swipe to confirm Flash -pyyhkäisyvalitsin vasemmalta oikealle. Näytölle ilmestyy asennuksen etenemisestä kertovaa tekstiä, ja reilun minuutin päästä yläpalkkiin “Install Zip” ja “Successful”.
    12. palaa hakemistonäkymään ja valitse OpenGAppsin zip-tiedosto
    13. Pyyhkäise Swipe to confirm Flash -pyyhkäisyvalitsin vasemmalta oikealle. Näytölle ilmestyy asennuksen etenemisestä kertovaa tekstiä, ja lopulta yläpalkkiin “Install Zip” ja “Successful”. Paketin koosta riippuen asennus voi kestää kauankin (mini-paketillakin kymmenisen minuuttia).
    14. Valitse Reboot System. LineageOS:n käynnistysanimaation pitäisi ilmestyä. Ensimmäinen käynnistys saattaa sekin kestää todella kauan.

    Sama tekijä on kääntänyt myös LineageOS 17:n ja 18:n näille laitteille. Hänen mukaansa

    17 and 18 can be used without any big problem, but they are less snappy.

    ja lisäksi

    LOS 16 is the most stable and light. Newer versions are just for people who need the features of new Android versions, or just to say: “hey, I have an updated Tab 4 at the almost latest version of Android!”

  • sudo -i not working with pam-u2f after upgrading Ubuntu from 20.04 to 22.04

    Authentication for sudo -i has been separated from non -i use (which is controlled by /etc/pam.d/sudo) into a separate configuration file, /etc/pam.d/sudo-i. So any changes you’ve made for U2F/FIDO2 need to be applied to that file too.

  • Swirling towards the inevitable

    It looks like I need to have a place for making notes while tackling Debian, so I’ve set up this blog. I don’t intend to make this as formal as my Ubuntu blog, but more of a “casual scribblings” type of thingy, so reader beware!

    This initial post might be a good place to elaborate on my choice of operating system.

    I’ve been a free software proponent for a long time, not only because of political reasons, but because I often find the open solutions superior to their closed counterparts. There was a time recently where this philosophy did not extend to the OS for some reason. I don’t recall what made me switch from Debian to XP; perhaps it was just laziness, not bothering to dual-boot when I had to have Windows for some tasks. So for some years I was a slave of Microsoft.

    I mentioned Ubuntu, and what was my production machine up until recently still runs Hardy Heron, which I installed about six months ago. Initially I installed it parallel to Windows XP on a whim, after trying it out and taking a liking in how everything Just Worked. Then I discovered VirtualBox and found out I could now do MSN video conferences and other necessities through it, without having to dual-boot, so I ditched the XP partitions altogether.

    Then I found myself more and more drawn back to Debian. It’s not that there’s anything technically wrong with Ubuntu. On the contrary, I think Canonical are doing a great job with it. It’s just that I’d rather see myself supporting (with my choices) a purely community-driven distribution than one involving a company, no matter how freedom-focused they may be. I wouldn’t consider myself a socialist either, however. I believe there is room for both community-driven and commercial operating systems — even closed-source ones.

    In fact, because of my personal beliefs, I’m sometimes tempted by the BSD variants due to their licensing. In my ideal world, most code would be released under a permissive license, and despite the possibility of closed derivatives, there would be enough open, solid code for us to choose to use it exclusively, should we want to. But it may be that in real world, a GPL-type hack is required for us to have this choice. At the very least, I believe it’s required for the time being.

    But I digress.

    When I switched to a slightly lower-end machine for my desktop use, I had a chance to switch the OS as well, and the choice was more or less obvious, especially after having played around with lenny inside VirtualBox. So after some years, I’m back in Debian.

  • Kolumni: Tietokoneesi on vaarassa!

    Toverini Juha linkkasi minut kuvaan hauskasti mönkään menneestä huijausyrityksestä: Linux-käyttäjä oli saanut Skypen kautta ilmoituksen, jonka mukaan hänen Windowsinsa tietoturva oli vaarantunut, ja missä häntä kehotettiin lataamaan paikkaustiedosto ongelman korjaamiseksi. Kyse on tietysti Windows-haittaohjelman levityksestä valheellisen tietoturvailmoituksen avulla.

    Huomioni kiinnittyi blogimerkinnän perässä olleeseen kommenttiin, jonka mukaan yrityksen kohteeksi joutunut käyttäjä voisi aivan hyvin ollakin vaarassa, koska hän käyttää Ubuntua, joka muistuttaa niin paljon Windowsia. Auts!

    Olen kyllä miettinyt, että Ubuntun (ja tietysti muidenkin vastaavien distrojen) tapa kysellä järjestelmänhallinnan salasanaa tuon tuostakin on pikkuisen huolestuttava sikäli, että siinä turtuu hyvin pian toimenpiteen ratkaisevuudelle. Olen itsekin asentanut Gutsyyni järjestelmänhallinnan oikeuksia käyttäen pari pakettia tutkimatta niiden alkuperää näin jälkikäteen ajateltuna riittävän hyvin. Kun web-sivuilla jaeltujen ohjelmapakettien asentaminen järjestelmänhallinnassa vaadittavin oikeuksin on näin suoraviivaista, ollaan jo käytännössä samalla viivalla Vistaa varhaisempien Windowsien kanssa siinä, että tietoturvan mahdollisesti vaarantavien ohjelmien asentelusta tulee liian helposti jokapäiväistä kauraa.

    Tähän järjestelmänhallinnan helppouteen tottuneena en kuitenkaan kovin mieluusti enää luopuisi siitä. Ja sikäli uskoisin Linux-käyttäjänä vielä olevani vanhojen Windowsien käyttäjiä paremmassa turvassa, että ainakaan niin kauan kuin en ole onnistunut vaarantamaan järjestelmääni, ohjelmat eivät pääse järjestelmääni käsiksi omine nokkinensa, siis minun siitä tietämättä. Vaarantuminen vaatii periaatteessa aina minulta sen virheen, että annan vaaralliselle ohjelmalle ne järjestelmänvalvojan oikeudet. Mutta miten tätä järjestelmänhallinnan oikeuksien jatkuvaan peräämiseen liittyvää tietoturvariskiä voisi vähentää?

    En ole perehtynyt SELinuxiin, mutta se voisi ehkä olla avuksi. Sen lisäksi en kyllä keksi äkkiseltään muuta ratkaisua kuin sen, että perusjärjestelmän päälle ei asenneta mitään muuta kuin virtualisointi, ja käyttäjä päästetään sen jälkeen vain virtuaalihiekkalaatikkoon, jossa saa asennella mitä huvittaa. Isäntäjärjestelmä tarjoaa palomuurin ja muita tietoturvaominaisuuksia, jotka valvovat tätä hiekkalaatikkoa, ja jos isäntä havaitsee hiekkalaatikossa epäilyttävää toimintaa kuten vaikkapa viruksen aiheuttamaksi epäiltyä liikennettä, se puuttuu peliin. Käyttäjää varoitetaan, ja vasta uhan torjumisen tai tietoturvan vaarantumisen paikkaamisen yhteydessä kysytään tarvittaessa oikeita järjestelmänvalvojan oikeuksia, eli oikeuksia isäntäjärjestelmän hallintaan.

    Siinä tapauksessa sitten kylläkään käyttäjää ei hiekkalaatikkonsa tyhjäksitekemisen takia välttämättä enää paljoa lohduta se, ettei isäntäjärjestelmä ole vaarantunut. Isäntäjärjestelmä voisi kuitenkin pelkän valvonnan ohella tehdä hiekkalaatikosta myös varmuuskopioita tai järjestelmäkuvatiedostoja (snapshot) säännöllisesti, jolloin kokonaan puhtaalta pöydältä aloittamisen sijasta käyttäjä voisikin valita aiempaan, vielä vaarantumattomaan hiekkalaatikkoon palaamisen eikä siten menettäisi ihan kaikkea.

    Lopuksi täytyy vielä todeta, että tähän ehdotukseeni voi olla sisältyä ammottavia aukkoja, sillä en ole tietoturva-asiantuntija, en virtualisointiasiantuntija enkä pidä itseäni edes Linux-asiantuntijana, vaikka siitä kokemukseni näistä kolmesta aiheesta lieneekin kaikkein laajin.